AW: [Oberon] USB Boot
Aubrey.McIntosh at ridgewater.edu
Thu Jan 19 17:27:25 CET 2006
With the kernel size growing, does it make sense to produce a boot loader that writes into protected mode memory? Perhaps this could be an Oberon language application that has modules such as Modules0 and Files0 according to the pattern published in the Oberon operating system book, and uses the BIOS Int 10H for rudimentary file I/O. That is, put an additional boot layer between the OBL and the Aos<driver>.Bin
-- Aubrey McIntosh, Ph.D.
>>> staubesv at student.ethz.ch 1/18/2006 5:28 AM >>>
>At that point I read through the source for the linker and boot loader, and I had the impression that the bootloader executed >in real mode, so it only had access to the legacy 640Kb memory limit, and so the linker limit was not so much an >unfortunately chosen constant as a hard engineering constraint.
Yes, unfortunetely. I'm still working with an older release where the USB boot file is ~580K (which works). Some tests showed that the boot process will hang at "Oberon loading" if the boot file does not fit into 640K. I'll try to make the USB files somewhat smaller.
Things you can do for making it smaller by just re-linking it:
- Don't link AosATADisks into AosUSB.Bin - load it later via config string
- Don't link all USB host controller drivers into AosUSB.Bin (AosUsbOhci is required for OHCI HC's, AosUsbUhci for UHCI HC's and AosUsbEhci for high-speed transfers (EHCI HC's always have integrated UHCI or OHCI HC's to support low-/fullspeed transfers)).
-Set various Debug variables to FALSE
More information about the Oberon