From owner-freebsd-hackers Mon Mar 17 21:24:57 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id VAA03332 for hackers-outgoing; Mon, 17 Mar 1997 21:24:57 -0800 (PST) Received: from who.cdrom.com (who.cdrom.com [204.216.27.3]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id VAA03313 for ; Mon, 17 Mar 1997 21:24:54 -0800 (PST) Received: from genesis.atrad.adelaide.edu.au (genesis.atrad.adelaide.edu.au [129.127.96.120]) by who.cdrom.com (8.8.5/8.6.11) with ESMTP id VAA27147 for ; Mon, 17 Mar 1997 21:22:15 -0800 (PST) Received: (from msmith@localhost) by genesis.atrad.adelaide.edu.au (8.8.5/8.7.3) id PAA15498; Tue, 18 Mar 1997 15:51:33 +1030 (CST) From: Michael Smith Message-Id: <199703180521.PAA15498@genesis.atrad.adelaide.edu.au> Subject: Re: wd driver questions In-Reply-To: <199703180448.UAA13244@lestat.nas.nasa.gov> from Jason Thorpe at "Mar 17, 97 08:47:58 pm" To: thorpej@nas.nasa.gov Date: Tue, 18 Mar 1997 15:51:33 +1030 (CST) Cc: hackers@freebsd.org X-Mailer: ELM [version 2.4ME+ PL28 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-hackers@freebsd.org X-Loop: FreeBSD.org Precedence: bulk Jason Thorpe stands accused of saying: > > ...err, "kernel linker"?? Thing wot uses simplistic file services to assemble from data on disk (kernel link instructions, object files) a kernel and runs it. > I think what you really want is a 2-stage boot program, much like > Sun's... a primary bootstrap with the block numbers of the second-level > harcoded into it, the secondary has the file system, console, elf/a.out > goop, etc. Bearing in mind that my POV is still fairly x86/FreeBSD-centric, no I do _not_ want block numbers in my bootstrap 8) The 'plan' looks something like this : 1) Media-specific bootstrap (MSB) (disk, net, tape, punchcard) is loaded by platform's boot firmware from supported OS media. 2) MSB loads media-nonspecific bootstrap (MNB) from media. 3) MNB contains multiple media drivers, provides shell-like CLI, simplistic 'OS' services etc. Can run other standalone programs, incl. kernel linker. 4) Kernel linker uses MNB services to obtain basic components for kernel. (core, media-specific drivers etc.) 5) Kernel starts, discards MSB/MNB etc., uses internal linker for load/unload of optional modules. Now, it's quite likely that to do this for, say, a sparc system the MSB may be two parts with one blocklisted in the other, however I'm not looking at changing that at all; I'm targetting a level higher. > I was forwarded a message from Ian Taylor.. I'll see if I can't dig it up. > I'm told it will be in the next release of binutils. Neat. > ...well, it's right there around "write new Fujitsu SCSI driver"... :-) Ick. (Is the old one _that_ bad? Where can documentation on the Fuji part be obtained? This is getting off-thread...) > Jason R. Thorpe thorpej@nas.nasa.gov -- ]] Mike Smith, Software Engineer msmith@gsoft.com.au [[ ]] Genesis Software genesis@gsoft.com.au [[ ]] High-speed data acquisition and (GSM mobile) 0411-222-496 [[ ]] realtime instrument control. (ph) +61-8-8267-3493 [[ ]] Unix hardware collector. "Where are your PEZ?" The Tick [[