Learn about the technologies behind the Internet with The TCP/IP Guide!
NOTE: Using robot software to mass-download the site degrades the server and is prohibited. See here for more.
Find The PC Guide helpful? Please consider a donation to The PC Guide Tip Jar. Visa/MC/Paypal accepted.
View over 750 of my fine art photos any time for free at DesktopScenes.com!

[ The PC Guide | Systems and Components Reference Guide | Motherboard and System Devices | System Resources ]

Memory Addresses and Device BIOSes

While not really considered a standard system resource like the others mentioned in this section, a brief discussion of memory addresses is warranted here. Some devices, in addition to using interrupt lines, DMA channels and/or I/O addresses, require some space in the upper memory area for their own use. As with other resources, problems and conflicts can result if you attempt to overlap two such devices, or try to use the memory for programs when an adapter needs it.

The devices that use a memory area generally use it for their own BIOS, which contains code to control the device and is invoked by direct calls or calls from the internal system BIOS. These BIOSes are "mapped" into the upper memory area in particular places and the BIOS looks for them there and executes them if found. This is part of the system boot process.

There are three standard BIOSes present in most systems and located pretty much at the same place:

  • System BIOS: The main system BIOS is located in a 64KB block of memory from F0000h to FFFFFh.
  • VGA Video BIOS: This is the BIOS that controls your video card. It is normally in the 32KB block from C0000h to C7FFFh.
  • IDE Hard Disk BIOS: The BIOS that controls your IDE hard disk, if you have IDE in your system (which most do) is located from C8000h to CBFFFh.

The most common add-in device to use a dedicated memory address space for its own BIOS is a SCSI host adapter. This may default to C8000-CBFFFh, which will conflict with an IDE drive that is also in the system, but can be configured to use a different address space instead, such as D0000-D7FFFh. In addition, network cards that have the ability to boot the computer over the network typically also use a memory area for the boot BIOS.

Warning: Many systems use a memory manager (like EMM386) to allow the unused system RAM in the upper memory area to be used by programs, to save conventional memory (the standard 640KB normally available to programs.) If your system does this and you add a device that needs some of the upper memory area for its BIOS, you may have to add a parameter to the memory manager to tell it not to try to use the space that the device needs. See here for more details.

Next: System Configuration

Home  -  Search  -  Topics  -  Up

The PC Guide (http://www.PCGuide.com)
Site Version: 2.2.0 - Version Date: April 17, 2001
Copyright 1997-2004 Charles M. Kozierok. All Rights Reserved.

Not responsible for any loss resulting from the use of this site.
Please read the Site Guide before using this material.
Custom Search