Date: Sat, 23 May 1998 12:32:42 +0100 (BST) From: Doug Rabson <dfr@nlsystems.com> To: John-Mark Gurney <gurney_j@resnet.uoregon.edu> Cc: current@FreeBSD.ORG Subject: Re: FreeBSD/alpha kernel status report Message-ID: <Pine.BSF.3.95q.980523121937.15699E-100000@herring.nlsystems.com> In-Reply-To: <19980523033210.46742@hydrogen.nike.efn.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 23 May 1998, John-Mark Gurney wrote: > Doug Rabson scribbled this message on May 23: > > The next step is to add device support for the various devices in the > > simulator with the aim of getting the system to single user mode. Since > > the alpha platform has a significantly more complex bus structure than the > > PC, I have decided to use the bus/device framework which I prototyped last > > year. Hopefully, this can form the base of a wider driver renovation > > project for the PC platform which badly needs it. > > could you send me a copy of what you prototyped out? I'm interested > as I was working on this project... but I haven't had much time to work > on getting a 3 stage boot loader up and running for FreeBSD... I haven't got the latest version (its on my machine at work) but most of the code is in freefall:~dfr/bus.diffs.gz. Most of the diff won't apply on a current kernel but the important files (bus.h, bus_private.h and subr_bus.c) are in there. The stage I have it at is that it works nicely for both statically declared devices and statically linked drivers. It can add new drivers and devices to the system at any time and (given driver support) can remove drivers and devices dynamically. Everything is driven by the module system so all drivers are demand loadable trivially. Resource support is extremely shaky (i.e. non-existent) and will need some attention. I was hoping to work with you on getting a system which conforms to at least the philosophy of your design in that area. I recently hacked on NetBSD's 3 stage boot loader until it built in our tree and at least appeared to work. I tested it under bochs (I just love simulators for doing kernel work - its so much more civilised...) Mike Smith took on my hack and was intending to spruce it up a bit to make a more generally useful standalone library and probably add ELF kernel loading. > > for what I would like to do with FreeBSD for bus/device support will > require the ability to have the boot loader support loading multiple > modules before the kernel starts running... and once this happens, we > can essecially eliminate main from the kernel, and simply have it use > the module loading code to initalize the kernel... Now I never thought of loading more than just the kernel from the bootloader. Its a very good idea given that we (nearly) have a flexible three stage loader. My original intention was to link the modules critical devices (console, system bus, root disk) statically with the kernel and load all the others during autoconfig as the system probes for devices. -- Doug Rabson Mail: dfr@nlsystems.com Nonlinear Systems Ltd. Phone: +44 181 951 1891 Fax: +44 181 381 1039 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.3.95q.980523121937.15699E-100000>