From owner-freebsd-current Tue Jul 29 08:19:26 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.5/8.8.5) id IAA20653 for current-outgoing; Tue, 29 Jul 1997 08:19:26 -0700 (PDT) Received: from godzilla.zeta.org.au (godzilla.zeta.org.au [203.2.228.19]) by hub.freebsd.org (8.8.5/8.8.5) with ESMTP id IAA20643 for ; Tue, 29 Jul 1997 08:19:23 -0700 (PDT) Received: (from bde@localhost) by godzilla.zeta.org.au (8.8.5/8.6.9) id BAA06551; Wed, 30 Jul 1997 01:14:05 +1000 Date: Wed, 30 Jul 1997 01:14:05 +1000 From: Bruce Evans Message-Id: <199707291514.BAA06551@godzilla.zeta.org.au> To: rgrimes@GndRsh.aac.dev.com, rhh@ct.picker.com Subject: Re: Multiple FreeBSD Systems on a Single Disk Cc: bde@zeta.org.au, current@FreeBSD.ORG Sender: owner-freebsd-current@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk > |And should be fixed (I've mentioned this before) to boot from the > |first ACTIVE (flag 0x80) FreeBSD slice. Should be a trival amount > |of code, and would do what everyone else does, even Microsoft got > |that part right. > >That's one option. Another one that'd be better is for FreeBSD to just >boot the slice whose Boot Record is loaded. I.e. if OS/BS transfers >control to Disk 1 Slice 2, Disk 1 Slice 2's Boot Record is loaded, which >should boot FreeBSD off Slice 2. Ditto for Slice 1 if I happen to have >FreeBSD in that slice as well. The slice number is difficult to determine. 1. If the FreeBSD bootstrap is on the MBR of a floppy or hard disk, then there is no slice number. 2. Booteasy documents passing the slice number indirectly as `ES:SI = address of partition table entry to boot. It also leaves useful garbage in registers. Even the documented interface is unportable (it isn't documented in the Phoenix BIOS book (1991) or _The Undocumented PC_ (1994), although these references document passing the drive number in DL and we know that isn't portable to floppies). The slice number could be encoded in the first sector of the FreeBSD bootstrap, but this would break device independence. Bruce