[Oberon] My understanding of NO boot mechanics.

Srinivas Nayak sinu.nayak2001 at gmail.com
Sun Apr 17 15:20:52 CEST 2016


Little correction:

> cfdisk implicitly writes a MBR code (sector 0 of disk) to disk.

has to be

Gparted while creating partition table, implicitly writes a MBR code (sector 0 of disk) to disk.

> And then, OBL.Bin searches for Kernel module to execute it.

has to be

And then, OBL.Bin searches for boot image Native.Bin to load and execute it.
[Native.Bin contains Kernel and some necessary modules.
Again, Partitions.Format command implicitly writes Native.Bin to reserved area for boot image.]


With thanks and best regards,

Yours sincerely,
Srinivas Nayak

Home: http://www.mathmeth.com/sn/
Blog: http://srinivas-nayak.blogspot.in/

On 04/09/2016 12:01 AM, Srinivas Nayak wrote:
> Dear All,
>
> Here is my understanding of NO boot method.
>
> Oberon Kernel module and some other necessary modules are packed into ram.bin.
> While formatting Oberon0.Dsk, ram.bin is placed into sectors beginning from 0.
> Oberon0.Dsk has NatFS and contains Oberon0.zip and System.zip.
> When PC reboots, BIOS checks boot device list and order from CMOS.
> BIOS then loads sector 0 (MBR) of first boot device and executes it.
> When floppy is first boot device, Oberon0.Dsk (floppy disk) boots, ram.bin is loaded (from sector 0) and Kernel executes.
> Kernel creates RamFS (RAM:) and puts into RAM: all files unzipped from Oberon0.zip.
> This way floppy starts Oberon.
>
> Now Oberon will be installed on harddisk.
> We select a disk driver to access disk.
> The disk should have partition table, one primary partition and the partition flagged active/bootable.
> Normally cfdisk creates partition table (with -z option), primary partition and flag partition as active/bootable.
> cfdisk implicitly writes a MBR code (sector 0 of disk) to disk.
>
> [BIOS loads MBR code and executes it.
> This MBR code detects active partition and loads PBR code (sector 0 of partition) to RAM.
> This MBR code written by cfdisk can't load OS from extended partitions.
> For loading OS from extended partitions generally bootloaders such as grub or lilo is used.
> They write their own MBR code to disk. For such MBR code, active flag is irrelevant.
> Such a MBR code can load second stage loader or OS (loading PBR) even from extended partitions.
> If we wish to use bootloaders like grub or lilo, simply a partition (primary or extended) if available on disk is enough.]
>
> While formatting disk parttion (as AosFS), Partitions.Format implicitly write OBL.Bin to sector 0 (PBR) to 4 of the partition.
> OBL.Bin file (present in Oberon0.zip), at the time of Oberon installation, is available in RamFS (RAM:).
> Now files from System.zip are unzipped and copied to disk partition.
> After installation, when system reboots, MBR will load OBL.Bin (present at PBR).
> And then, OBL.Bin searches for Kernel module to execute it.
> This way disk starts Oberon.
>
>
> Kindly correct me, if I am wrong.
>
>
> With thanks and best regards,
>
> Yours sincerely,
> Srinivas Nayak
>
> Home: http://www.mathmeth.com/sn/
> Blog: http://srinivas-nayak.blogspot.in/
>


More information about the Oberon mailing list