Date: Fri, 6 Oct 1995 11:22:59 -0700 (MST) From: Terry Lambert <terry@lambert.org> To: markem@primenet.com (Mark Monninger) Cc: freebsd-questions@freebsd.org Subject: Re: Big IDE Drives Message-ID: <199510061823.LAA01880@phaeton.artisoft.com> In-Reply-To: <199510060156.SAA05713@usr3.primenet.com> from "Mark Monninger" at Oct 5, 95 06:56:30 pm
next in thread | previous in thread | raw e-mail | index | archive | help
> I recently purchased a 1.2G IDE drive, planning to partition it between > Windoze and FreeBSD. I have BSD running off a partition of a 420M drive now > with no problems. Since my disk controller, which uses a WD chip, won't > handle drives > 500Mb or so, I also purchased a card which I believe has a > BIOS extension that handles > 500Mb drives. OK...the drive works fine with > DOS/Windoze but now FreeBSD won't boot at all from the 420Mb drive. It just > sits there...no nuthin. If I remove the BIOS card it works fine. Of course, > then the 1.2G drive isn't happy. Will FreeBSD work with LBA drives? Am I > just SOL with the big drive? I know...I shoulda went with SCSI but it's a > lot more $$. I can get a controller board that handles the big drive but I > don't know if it will work either. I'm running FreeBSD 2.0.5, I believe. I > found an old 386bsd boot floppy from a while back and it boots OK with the > BIOS board. The controller uses LBA ("Logical Block Addressing" or what the rest of the world has called "sector offset" since Winchester drives were invented). This is a BIOS abstraction that plugs in at INT 13 and INT 21, though not all software uses the extended INT 21 interface. So the drive looks like a standard C/H/S addressed drive with an 8G limit to most DOS software. To take full advantage of this, you will need to have a new driver. Here's your opportunity to get into kernel hacking. All us long time hackers use SCSI. The reason that the 386BSD boots is that it uses a controller-specific boot block and does controller level instead of BIOS level I/O. The 386BSD boot won't work on translate geometry, though, unless you use the whole drive for 386BSD and don't have a DOS MBR (it will get lost when it tries to locate the partition when it multiplies the C/H/S values for the partition it wants to boot by the wrong geometry). FreeBSD still has (I believe) WD and AHA 1542/1742 boot blocks that you *could* write using disklabel. Still assuming no DOS partition table on the drive. A secondary issue is that you must have partitioned the drive with a modern DOS, since older DOS pur the wrong sector offset in the partiton table (a 32 bit value corresponding to the 24 bit C/H/S address). Terry Lambert terry@lambert.org --- 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?199510061823.LAA01880>