Understanding Your Computer's BIOS

This report is to help you understand how your computer's BIOS works, what it does and understand the importance it plays in the use of your computer.

Definition: Basic Input/Output System (BIOS)
The BIOS chip uses EEPROM (Electrically Erasable Programmable Read-Only Memory) to be able so store the information contained in the BIOS software. This type of memory permits us to be able to later upgrade our BIOS to a newer version. The BIOS works in conjunction with the CMOS chip where the information from the BIOS settings is saved.

How it works:
When you turn the power ON on the computer, before your CPU can start loading your operating system, it needs to know what peripherals are available and what options your computer has. To be able to obtain all this information, the BIOS need to take over and begin it's tasks. Once all the BIOS's tasks are completed without any errors, the computer then goes on to boot up the operating system to be able to run normally. This is when you here the notorious beep, meaning your computer is working well according to your BIOS.

BIOS tasks:
Check the CMOS Setup for custom settings: The CMOS (Complementary Metal Oxide Semiconductor) is the chip where all the BIOS settings are stored. The CMOS chip can hold between 64 bytes to 256bytes of data. They need to be loaded up into the BIOS so it may begin to perform it's tasks, according to the way you have configured it.

Load the interrupt handlers and device drivers
The interrupt handlers are pieces of software that translate the actions of the hardware to make them understandable for the operating system. The device drivers are software that identify the type of hardware in question. The BIOS gets its name from this section, were it perform the basic input/output transactions between the hardware and the operating system. All the information that the BIOS gets is stored in a library of interrupt handlers. While your computer is running, whenever for example you press a key, the CPU must break to lookup that key in the library to know more about it.

Initialize registers and power management
After the information in the CMOS is loaded, and the video card is found, the BIOS sends a signal to start the BIOS located on the graphics card. When the graphics card's BIOS begins loading, the memory and graphics processor are initialized. Once the graphics have been taken care of, the BIOS checks to see if the computer underwent a cold boot or a reboot. The BIOS determines the type of boot by looking at the value at memory address 0000:0472. If the value is 1234h, then the computer was rebooted. Any other value corresponds to a cold boot.

Perform the power-on self-test (POST)
POST (Power On Self Test) is used to test all the hardware peripherals that are attached to your computer to see if they are working properly. It perform's a read/write test to all addresses in the memory, it look's for a mouse and keyboard on either the PS/2 or USB ports. It then proceeds to look trough, if available, all the PCI port to determined what is connected to the motherboard. This testing is skipped if the computer was rebooted
, determined in the previous step.

Display system settings
When you turn on your computer and screen, the first thing that you see it information display by your BIOS about your computer. You can normally see the amount of memory that is available, the different CD-ROM and hard drives available on your system, BIOS revision, date and more depending on your BIOS make. During the first few seconds that your computer is turned on, there is a very large amount of work being done to get your system ready to use. However, if your video card does not work, your BIOS will send a certain beeping command to either your internal speaker or you external speakers to notify you of this problem.

Determine which devices are bootable
Once the floppy, CD-ROM and hard drives are located, the BIOS checks to see which of these drives are bootable. It also refers to the CMOS setting to see the order of booting devices.

Initiate the bootstrap sequence
If there hasen't been any problems so far, the BIOS will attempt to load up the operating system. To be able to do so, it will go through in order the items listed from the CMOS and try to load the boot sector from each device, proceeding to the next if there is a failure in loading.

Configuring the BIOS:
Refer to you motherboard's manual to configure your BIOS settings! The different options vary from one BIOS maker to the other and therefore cannot be described here in depth.
To be able to configure your BIOS, you must first enter its setup window. To do so you must press a specific key, usually displayed at the bottom of your screen. If you don't know what key to press, refer to your motherboard's manual on configuring the BIOS. Once you have entered the BIOS configuration window, you we see the different sections listed at the top of the screen. So of the options that appear in all BIOS configuration windows are the following items.
System Time/Date - Set the time and date of the system
Boot Sequence - The order that BIOS search for a boot sector (operating system) on each device
Plug and Play - Used to auto-detect connected devices. It should be set to "Yes" if your operating system and you computer support it
Mouse/Keyboard - Enable Num Lock on startup, enable the keyboard, auto-detect mouse, require mouse/keyboard on startup, ...
Drive Configuration - Configure hard drives, CD-ROM and floppy drives
Memory - Direct the BIOS to shadow or copy itself to a specific memory address (increases the speed)
Security - Ability to set a password at the boot screen before accessing the computer
Exit - Save your changes, discard changes or restore default settings

Any changes made to any setting is saved in the CMOS memory chip to be used for future boot ups. The information in the CMOS is save even when the computer is turned off or even unplugged. There is a small 3 volt battery that maintains the information stored in the chip.

Many more option are included in the BIOS configuration window, but they all depend on the BIOS manufacturer. Usually there is a explanation on the right and side of the screen when you have the indicator over a item. For more information, refer to your motherboard manual.

BIOS Update:
Use extreme caution when updating the BIOS, an error could result in your computer no longer booting!
The BIOS may need to be updated to be able to support the newer technologies. This is especially true for older BIOS. These older ones do not always support the newer larger hard drives, new graphic cards, newer and faster memory, ... In order to make your computer support these newer technologies, you need to update your BIOS to a newer version, able to support these technologies. There are three ways to upgrade your BIOS to a newer version. The first way is called "Flashing the BIOS" which included overwriting the information in the EEPROM. Do can do this by accessing the flash window in your BIOS options. You normally need to press either the "Delete" key or the "F2" key. The second way is to use a "Flash BIOS Update" package that is usually distributed by the motherboard company. Follow the manufacturers instruction to make sure that the flashing goes properly and prevent serious damage to your computer. The third way is to change your BIOS chip. This is the hard and probably the most expensive way to upgrade it. I would only suggest using this as a last result, and have it done by a computer technician. You may need to consider this option for older computers, where the BIOS is unable to be flashed due to the type of memory it uses.

Useful tools:
Guide to understand BIOS beep codes for multiple BIOS manufacturers:
These beep codes have been made available trough the work of multiple people for TechRepublic. You can check here to see if a newer version is available

Bios beep codes list version 3 Microsoft Word Document .doc - Portable Document Format .pdf

BIOS Agent
This tool help you to identify the BIOS on your motherboard, give its name, date, ID, and size on memory of it. The program also gives information on your CPU, operation system, chipset and memory. The program is used to send in a report to eSupport.com so they can sell you a BIOS upgrade designed to work with your motherboard.

BIOS Agent Zipped Executable

Sources:

The BIOS Survival Guide
Auld Farts How To - BIOS Explained
eSupport - BIOS Agent
How Stuff Works - How BIOS Works
RLROUSE Directory - Your PC's BIOS Explained
TechRepublic - BIOS Beep Codes List for Desktops


Copyright© 2005 - Matthew Stevens, RemoteLAN.net admin@remotelan.net