Oberon/Booting
Brief remarks here are intended to guide the student toward study of the authoritative references.
V2
editFor V2 running on a Ceres machine, system startup and the core are described in sections 14.1 and 14.2 of Project Oberon, 1992(PDF).
ETH Oberon
editIn ETH Oberon, the inner core comprises basic operating system functions including storage management, file system, loader, compiler and etc. The outer core comprises management of display, keyboard and mouse. Inner and outer cores together are somewhat comparable to the kernel of a Unix-like system. Structure of the sytem can be understood from the system building tool, Native.Tool.
V4
editV5
editFrom Joerg Straube in http://lists.inf.ethz.ch/pipermail/oberon/2021/015938.html,
"The functionality of UEFI is somewhat comparable to BootLoad.Mod in FPGA Oberon. BootLoad resides in ROM and is the first code the RISC-5 CPU executes after power up. It loads the inner core from disk to address 0000 and jumps to 0000.
The inner core then loads the outer core. And the outer core loads the Oberon system."
In V5, Project Oberon, the inner core comprises only the modules Kernel (memory mgmt, disk storage mgmt, traps, timer), FileDir (directory handling), Files (File handling) and Modules (module loading). The authoritative exposition is in sections 14.1 and 14.2 of Project Oberon, 2013 Edition(PDF).
Multi-booting
editETH Oberon, A2 and other systems working directly on x86 hardware offer the further possibility of multiple operating systems requiring boot management. Boot Manager was written by André Fischer according to Oberon principles and is now maintained in the SVN repository at the ETH. These pages have additional information.
- Using a boot manager, with application to ETH Oberon, predating Boot Manager.
- André Fischer's instructions for Boot Manager.
- In contemporary PCs GPT and UEFI have complicated the subject further. Contributions to the documentation are welcome.