Date: Wed, 14 Jun 95 14:50:14 MDT From: terry@cs.weber.edu (Terry Lambert) To: hlew@genome.Stanford.EDU (Howard Lew) Cc: bugs@FreeBSD.org, terry@cs.weber.edu (Terry Lambert) Subject: Re: 2.05R panics on boot Message-ID: <9506142050.AA19501@cs.weber.edu> In-Reply-To: <Pine.SUN.3.91.950614121446.11155A-100000@vegemite.Stanford.EDU> from "Howard Lew" at Jun 14, 95 12:22:17 pm
next in thread | previous in thread | raw e-mail | index | archive | help
> > > Now only if the system would boot up with the boot manager. What ever > > > happened to the boot manager that was used on the SNAPs? That one > > > seemed to work be able to boot up even on this 850 WDC drive with Ontrack > > > DM installed. Booteasy wasn't able to do it. They were different > > > right? or has something changed? > > > > Boot DOS from the hard drive to get the DM stuff installed and subtracting > > 64 from the sector number on all references. [ SIZES IN THE FOLLOWING ARE NOT RELATIVE... ] Without DM: ,---------.---------------.---------------.---------------- | DOS MBR | PARTITION ... | PARTITION ... | ... `---------'---------------'---------------'---------------- ^ | A With DM: ,--------.---------.---------------.---------------.------- | DM MBR | DOS MBR | PARTITION ... | PARTITION ... | ... `--------'---------'---------------'---------------'------- ^ | A' The DOS MBR: ,------.---------------------.-------------------. | JUMP | DOS PARTITION TABLE | DOS MBR BOOT CODE | `------'---------------------'-------------------' The DM MBR: .------.-------------------------.---------------. | JUMP | FAKE DOS PARTIOTN TABLE | DM MAGIC CODE | `------'-------------------------'---------------' The PBR (partition boot record; second stage boot): ,-----------.------------------------------- | IBMIO.SYS | ... REST OF THE PARTITION ... `-----------'------------------------------- > Do I subtract 64 from the sector number while in the FreeBSD install > program under disk partitioning or are you referring to a DOS utility to > do this? OK, DM has a boot record it writes on the drives that's 63 or so sectors long (depends on the version, etc.). When this things load, instead of like a normal DOS MBR, going to the partition table embedded in itself, finding the one marked active in the partition table flags field, and loading the PBR and that booting the OS on that partition, it cheats. It loads itself in, loads up some crap as an INT 13 redirector, and does geometry translation on you. One of the the things it does is lie about where the disk starts: it pretends the disk starts after itself. THEN it loads the DOS MBR and runs it. Since it's lying about not being there, any request that somes in for a sector 'x' will have the request changed to be 'x' + 63 (or 64 or whatever) and any disk references will get the relative address instead of the real address. Now what is "OS-BS", "BootEasy", "LILO", the"OS/2 Boot Manager", etc. going to do? Well, they're supposed to replace the DOS MBR. So if you boot off the hard drive to install them, then the BIOS sees A' as "sector 0". And if you install them under DOS on a DM disk, then they will overwrite the DOS MBR. Now what happens if you boot off a floppy (oh, say a DOS floppy) and do the install? Unless the know about DM, they overwrite the DM MBR instead, because since you booted off the floppy, it didn't patch the INT 13 vecotr to hide itself. Now you are screwed. OK, now say you boot off a BSD floppy. You are still screwed, because even if it had loaded the DM MBR and patched INT 13, except for actually loading, the BSD code doesn't use the BIOS at all. Not that you could load the DM MBR anyway, if you boot off a floppy. Now BSD's new slice code knows about the DM MBR. But the installation of the MBR code does not. And the installation doesn't use BIOS, so like a raw floppy boot, it overwrites the DM MBR. The fix is to make the "OS-BS" or other boot track installation in BSD know about the DM MBR by recognizing it (it has ID crap so you can do this). OR YOU CAN INSTALL THE BOOT MANAGER AFTER BOOTING DOS OF THE HARD DRIVE. Terry Lambert terry@cs.weber.edu --- Any opinions in this posting are my own and not those of my present or previous employers.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?9506142050.AA19501>