From owner-freebsd-hackers Thu Oct 26 19:58:17 1995 Return-Path: owner-hackers Received: (from root@localhost) by freefall.freebsd.org (8.6.12/8.6.6) id TAA16839 for hackers-outgoing; Thu, 26 Oct 1995 19:58:17 -0700 Received: from genesis.atrad.adelaide.edu.au (genesis.atrad.adelaide.edu.au [129.127.96.120]) by freefall.freebsd.org (8.6.12/8.6.6) with ESMTP id TAA16814 for ; Thu, 26 Oct 1995 19:58:09 -0700 Received: from msmith@localhost by genesis.atrad.adelaide.edu.au (8.6.9/8.6.9) id MAA12415; Fri, 27 Oct 1995 12:16:17 +0930 From: Michael Smith Message-Id: <199510270246.MAA12415@genesis.atrad.adelaide.edu.au> Subject: Re: boot disk.... To: terry@lambert.org (Terry Lambert) Date: Fri, 27 Oct 1995 12:16:16 +0930 (CST) Cc: msmith@atrad.adelaide.edu.au, terry@lambert.org, lenzi@cwbone.bsi.com.br, hackers@FreeBSD.ORG In-Reply-To: <199510261817.LAA21413@phaeton.artisoft.com> from "Terry Lambert" at Oct 26, 95 11:17:03 am Content-Type: text Content-Length: 2273 Sender: owner-hackers@FreeBSD.ORG Precedence: bulk Terry Lambert stands accused of saying: > Define "work". 8-). If I have a disk that claims to be 2000/10/17, and I rewrite it to 1000/20/17, will the BIOS make the right calculations. It would appear not 8( Here are some scribbles wrt. what I'm trying to work out... Bootmanager (MBR) looks up first sector of FreeBSD slice. Have to assume (for now) that it knows how to reach beyond the 1024 cyl. mark. Stage 0 bootstrap (first sector of FreeBSD slice) reads Stage 1 bootstrap from next N sectors of FreeBSD slice. Uses same technique as the MBR code to reach beyond 1024 cyls. Stage 1 boostrap (lives in first track(s) of FreeBSD slice) (code that currently gives the Boot: prompt) should search all FreeBSD slices and partitions looking for an 'a' filesystem containing a file called 'boot2' (or whatever - it's the stage 2 bootstrap code). This should be read in (version checks? checksums? fallbacks?) and called. (Still in real mode) Stage 2 boostrap runs in real mode under the BIOS. It should provide facilities to select the root filesystem and kernel. It should be able to read the device configuration out of the kernel, and thus inherit the functionality of userconfig(). It should perform MBR fixup to guarantee that the absolute offset field in the MBR matches the c/h/s values for the slice under the BIOS geometry. It should also be buildable as a DOS program, to allow it to work with Ontrack's Disk Mangler. The ability to provide the correct major/minor numbers to the kernel (automatic detection of the wd/hd/sd stuff in the current idiom) would follow as a matter of course. ... Now, I'm sure that the purists and the serial console people are screaming here, so there's a need to continue to support the current scheme as well. Input and, naturally, time are required. Alternatively, if someone wants to pick this up and play with it, please do! -- ]] Mike Smith, Software Engineer msmith@atrad.adelaide.edu.au [[ ]] Genesis Software genesis@atrad.adelaide.edu.au [[ ]] High-speed data acquisition and [[ ]] realtime instrument control (ph/fax) +61-8-267-3039 [[ ]] My car has "demand start" -Terry Lambert UNIX: live FreeBSD or die! [[