cvs commit: src/sys/boot/i386/boot0 boot0ext.s src/sys/boot/i386/boot0ext Makefile

John Baldwin jhb at FreeBSD.org
Wed Mar 31 12:57:54 PST 2004


On Tuesday 30 March 2004 11:29 pm, Bruce Evans wrote:
> On Wed, 31 Mar 2004, Bruce M Simpson wrote:
> > On Tue, Mar 30, 2004 at 06:00:10PM -0800, David O'Brien wrote:
> > > > > Sorry, but I'd like to have a useful boot0 -- one that tells me my
> > > > > partition is something other than "???".  That can't be done with a
> > > > > 1-sector boot0.
> > > >
> > > > Are you sure that the bug you're seeing isn't the one that was fixed
> > > > by this commit:
> > >
> > > 99% sure.  Our boot0 doesn't understand all possbile MS partition
> > > types.
> >
> > I recognised this and was the one who put David up to this. :-)
> >
> > Other things, such as grokking EMBRs to allow boot from extended
> > partitions, or support for serial console other than COM1, can't be done
> > in the 512-byte space we currently have.
> >
> > But because of system incompatibilities, I would emphasize boot0ext
> > remain purely optional; and added to son-of-sysinstall with the relevant
> > warnings.
>
> No; neither boot0ext nor boot0sio should exist.  boot0 should just load
> the next stage, which may or may not consist if a single 512-byte sector
> in the sector following boot0.  The problems are to allocate space for the
> next stage and find this space in boot0.  boot0ext only works if the next
> sector is free and will remain free.

Which is true on virtually all hard disks with an MBR (except for old 
dangerously dedicated disks which can't use boot0 anyway and wouldn't need to 
use it) since MBR slices always start on a cylinder boundary and are never 
allowed to start at cylinder 0.  Also, the 2 sector boot0 does start up and 
then load the larger version of itself as you suggest above.

-- 
John Baldwin <jhb at FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve"  =  http://www.FreeBSD.org


More information about the cvs-all mailing list