Return to BSD News archive
Path: sserve!newshost.anu.edu.au!harbinger.cc.monash.edu.au!msunews!uwm.edu!vixen.cso.uiuc.edu!howland.reston.ans.net!news.cac.psu.edu!news.pop.psu.edu!hudson.lm.com!godot.cc.duq.edu!ddsw1!not-for-mail From: chilton@MCS.COM (Christopher Hilton) Newsgroups: comp.os.386bsd.questions Subject: Re: Why no std BIOS INT 13 HD support for crappy HD's? Date: 16 Jan 1995 10:08:32 -0600 Organization: /usr/lib/news/organi[sz]ation Lines: 48 Message-ID: <3fe5m0$4si@Mars.mcs.com> References: <3fbrnf$7bd@utrhcs.cs.utwente.nl> NNTP-Posting-Host: mars.mcs.com In article <3fbrnf$7bd@utrhcs.cs.utwente.nl>, V.O.F. Roana Technologies <roana@cs.utwente.nl> wrote: >Folks, > > Please correct me if I'm wrong, but isn't it possible to write >a generic Hard disk driver that uses interrupt 13 from the PC BIOS? >Of course this will give lousy performance, but it seems to me that >a lot of questions posted in this group would be over when such >a driver existed, for users of non-standard SCSI adapters, for example. > Why not access them the same way Messy-DOS does? Excuse me for not >taking an in-depth look at the kernel sources, but do these BIOS >functions offer too little functions? or is usage of these interrupts >impossible/unwanted in the kernel sources? To do this you would have to switch the processor from protected mode to real mode. This would seriously limit performance. Also, the BIOS that you used would have to be reentrant because of the nature of the Unix as an operating system. MS-DOS, which is more of a glorified program loader than an operating system, doesn't require this so must BIOSes are not reentrant. Most BIOSes don't recognize the hardware interrupts used to signal changes of state from the hard drive but rather poll the status registers. A disk intensive program using this driver wouldn't be able to switch to another task while waiting for a dsik i/o operation to complete. Such programs would hog the CPU badly and unneccessarily. Finally, the BIOS doesn't run in protected mode, it runs in real mode so you would only be able to read/write from/to the first (1024+63) of memory. You could transfer memory from the real mode buffer but it would again be slow... The majority of people with these problems are people running the new enhanced IDE drives. The problem is that like all new technology in this market every company is free to implement things the way they see fit. So right now we are in the "competing standards" stage. In about another three months this should settle down and one standard will win. When that happens it should be an easy thing to modify the disk code to recognize and properly handle these drives. C. -- Christopher Sean Hilton E-mail: chilton@mcs.com ---------------------------------------------------------------------- ICBM address: | "Thus it is said if you know them and know 42 07 39 N/87 49 44 W | yourself, your victory will not be imperiled. For PGP key finger: | If you know Heaven and you know Earth, your chilton@mcs.com | victory will be complete." - Sun Tsu ----------------------------------------------------------------------