Oberon/ETH Oberon/bootman

This document was originally hosted at the ETHZ. It remains under the ETH license and is in the WayBack archive.

Using a boot manager, with application to ETH Oberon

The next level of boot complexity is that of booting with the assistance of a boot manager. When a boot manager is installed, the genuine MBR installed with a particular OS is replaced and the notion of "active" partition becomes irrelevant. Instead, any partition, primary partition or logical drive in an extended partition can be booted. Some boot managers can also be cascaded.

More information on the subject can be found, for example, in the multi-booting article in Wikipedia.

OS-provided boot managers

Many operating systems include a multi-boot facility which can be profited from.

Windows NT/2000

When Windows NT is installed after DOS was installed, the existing DOS boot sector is overwritten with the NT boot sector. But immediately before that, the DOS boot sector is copied to a file BOOTSECT.DOS (usually in the root of C:).

Windows NT/2000 Multiboot

When MS-DOS is selected from the NT boot menu, NTLDR runs BOOTSECT.DOS, which in turn loads IO.SYS, loading DOS.

Starting ETH Oberon using a boot manager

The Windows NT/2000 boot manager can be recommended as simple to use and as reliable, but plenty of competitors offer equivalent products. It's principal advantage is that it does not capture a primary partition for itself.

From the Oberon point of view, this boot manager can be installed on a new, bare hard disk which will host only DOS in the first primary partition and any number of Native/Active Oberon partitions (primary or logical).

The installation can be conducted with Oberon facilities in a hand's turn, provided a source machine with a Windows/DOS combination is available.

On the source machine:

  • Execute Partitions.PartitionToFile dev#part MBR.Bin 0 1 ~
  • Backup MBR.Bin to a diskette
  • Copy C:\NTLDR, C:\BOOTSECT.DOS, C:\BOOT.INI to the diskette

On the destination machine awaiting the installation of DOS and Oberon on a (new) hard disk:

  • Install DOS in a primary partition. Choose among MS-DOS, IBM-DOS, Caldera DOS; even an old version will do. Be cautious with FreeDOS, since experimenting with the current version was not successful.
  • Copy NTLDR, BOOTSECT.DOS, BOOT.INI from the diskette to C:\
  • Execute Partitions.WriteMBR dev#0 MBR.Bin ~
  • Install Native Oberon from an Oberon-0 diskette. Remember that a primary partition can be created with Oberon.
  • Execute Partitions.PartitionToFile dev#part dev#part.MBR 0 1 ~
  • Copy dev#part.MBR to C:\
  • Edit BOOT.INI as ASCII file in Oberon to condition it to boot Native Oberon
    [boot loader] 
    [operating systems] 
    multi(0)disk(0)rdisk(0)partition(3)\WINNT="Microsoft Windows 2000 Professional" /fastdetect 
    C:\ = "MS-DOS" 
    C:\dev#part.MBR = "ETH Oberon / PC Native dd.mm.yy"
A selection of third-party boot managers

Here is a workable grub file for dual booting Linux and Bluebottle submitted by Alan Freed - Alan.D.Freed at nasa.gov

    # grub.conf generated by anaconda 
    # Note that you do not have to rerun grub after making changes to this file 
    # NOTICE:  You have a /boot partition.  This means that 
    #          all kernel and initrd paths are relative to /boot/, eg. 
    #          root (hd0,0)
    #          kernel /vmlinuz-version ro root=/dev/hda3
    #          initrd /initrd-version.img 
    password --md5  
    title Red Hat Linux (2.4.18-18.8.0) 
        root (hd0,0) 
        kernel /vmlinuz-2.4.18-18.8.0 ro root=LABEL=/ hdb=ide-scsi 
        initrd /initrd-2.4.18-18.8.0.img 
    title Bluebottle 
        rootnoverify (hd1,0) 
        chainloader +1

Example of application: a boot manager to control 39 separate, fully functional operating systems, including ETH Oberon, on a machine, by Richard Robbins. This site also provides an insight on multiboot solutions and problems.

18 Mar 2003 - Copyright © 2003 ETH Zürich. All rights reserved.
E-Mail: oberon-web at inf.ethz.ch [expired]
Homepage: http://www.ethoberon.ethz.ch/ [expired]