Article View: borland.public.cppbuilder.nativeapi
Article #8469Re: BIOS Programming
From: Tom|420
Date: Tue, 26 Oct 2004 23:51
Date: Tue, 26 Oct 2004 23:51
42 lines
3255 bytes
3255 bytes
Andrue Cope [TeamB] wrote: > Tom|420 wrote: > > >>You cannot tell a BIOS to load an OS. All the BIOS does is load the >>first sector of your first drive and give it control, hoping that it >>will load the OS or anything else which is going to take control of >>the machine. > > > Indeed. It's also worth noting (if the OP is actually trying to write a > BIOS) that modern OSes don't use the BIOS themselves. Once they have > control they kick the BIOS out of the address space and do everything > themselves. > This is true to some extends. For instance, a good example I know of, is Linux which does not use the BIOS for disk discoveries and accesses. All the BIOS needs to see is the boot partition of a disk, it doesn't even have to see the whole drive, and you can tell it that there is no other drives. Once Linux is started it will search for all drives in the system (even those disabled from the BIOS) and activate them for their full size. This is how you manage to painlessly install a 40 GB into a Pentium for which the BIOS is only able to recognize 2.1 GB of hard drive. Windows does seem to use the BIOS for all disk search and identification, but it seems to not use it much for disk accesses. BIOS disk management has always been problematic so it was inviting for OS makers to rewrite the stuff and not use it. Some other stuff are also ignored. However for others functionalities the BIOS is good enough and is still used (no example on hands). Originally I thought the OP wanted to write a software to access and change BIOS settings from a Windows software, but after reading again I think you are right, he wanted to implement a software BIOS, which is impossible. The BIOS is a harware chip which contains a small software responsible for system startup and present the OS with an API for accessing the hardware. The first part (system startup) cannot be bypassed in a way I can foresee, however, as said above, the second part is often not used.
Technical Details
Message-ID:
<417ee2de$1@newsgroups.borland.com>Path:
arc1-ca.pugleaf.net!g2news1.google.com!news2.google.com!proxad.net!fr.ip.ndsoftware.net!news2.euro.net!216.196.110.149.MISMATCH!border2.nntp.ams.giganews.com!border1.nntp.ams.giganews.com!nntp.giganews.com!news-hub.cableinet.net!blueyonder!news-peer-test!btnet!newsfeed.bt.es!195.5.65.34.MISMATCH!caladan.arrakis.es!caladan.landsraad.net!newsgroups.borland.com!not-for-mailReferences:
<416f7776@newsgroups.borland.com> <417da936$1@newsgroups.borland.com> <417e0c45@newsgroups.borland.com>Show Full Headers
Complete Article Headers
X-Google-Thread: 10cc67,9e62624b2064d8b7 X-Google-Attributes: gid10cc67,public X-Google-Language: ENGLISH,ASCII-7-bit Date: Tue, 26 Oct 2004 19:51:01 -0400 From: Tom|420 <tom420.duhamel@gmail.com> User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.6) Gecko/20040113 X-Accept-Language: en-us, en MIME-Version: 1.0 Newsgroups: borland.public.cppbuilder.nativeapi Subject: Re: BIOS Programming References: <416f7776@newsgroups.borland.com> <417da936$1@newsgroups.borland.com> <417e0c45@newsgroups.borland.com> In-Reply-To: <417e0c45@newsgroups.borland.com> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit NNTP-Posting-Host: 69.70.225.215 Message-ID: <417ee2de$1@newsgroups.borland.com> X-Trace: newsgroups.borland.com 1098834654 69.70.225.215 (26 Oct 2004 16:50:54 -0700) Lines: 42 Path: arc1-ca.pugleaf.net!g2news1.google.com!news2.google.com!proxad.net!fr.ip.ndsoftware.net!news2.euro.net!216.196.110.149.MISMATCH!border2.nntp.ams.giganews.com!border1.nntp.ams.giganews.com!nntp.giganews.com!news-hub.cableinet.net!blueyonder!news-peer-test!btnet!newsfeed.bt.es!195.5.65.34.MISMATCH!caladan.arrakis.es!caladan.landsraad.net!newsgroups.borland.com!not-for-mail