Basic Instinct

Why The BIOS Is The Central Nervous System Of Your PC

First Published: Smart Computing
Date Published: April 2003
By Kevin Savetz

We tend to think of the OS (operating system) as something that runs the show on our PCs. Indeed, the OS defines the look and feel of the interface, displays the error messages, and is what we see when we sit down at the computer. But out of sight, there's another program at work, doing tasks that the OS can't do. It's called the BIOS (Basic Input/Output System), and it's the low-level, behind-the-scenes workhorse of any computer.

The BIOS is the traffic controller for all of the PC's hardware. It makes sure the CPU can talk to the motherboard and the hard drives can talk to the IDE (Integrated Drive Electronics) bus. It's responsible for booting the PC, keeping track of the time, and reading the keys you type on the keyboard. The BIOS is like the queen bee, coordinating and constantly keeping track of the worker bees, which include the memory, CPU, peripherals, and everything else within the PC.

The BIOS coordinates communication between the OS and the hardware. The OS doesn't control the computer's hardware directly. Instead, it asks the BIOS to do it. The BIOS controls the hard drive, optical drive, keyboard, monitor, mouse, serial ports, PCI (Peripheral Component Interconnect) cards, as well as other hardware, and passes the information on to the OS.

When you press a key on the keyboard or insert a floppy diskette into its drive, the BIOS sends a message to the OS. It doesn't matter which OS you use--Windows, Linux, or something else--the OS talks to the BIOS, and the BIOS talks to the hardware.

The BIOS, part of the motherboard, is actually a computer program stored on a chip. Like any software on your PC, you can upgrade the BIOS firmware (software stored on a chip) to fix bugs or add features (that is, if it's a flash BIOS, which most newer PCs have).

Boot Me Up. Although the BIOS is always active, it's most visible in the first few seconds when you start the computer, during the bootup process. You know the drill: You press the power button, the diskette drive makes a noise, and then there's a beep. Next, a logo and mysterious system information appear on-screen. Then, a second later, Windows starts to load.

In those first moments, the BIOS performs the POST (power on self test), which is a diagnostic program that takes a quick inventory of the hardware and makes sure that each device is working properly. If something is amiss, the booting process stops. When this happens, you may see an error message and hear a series of diagnostic beeps rather than the usual quick, happy beep.

If a PC that used to work fine suddenly starts emitting these "beep codes" at startup, it may mean that a piece of hardware has gone bad. But not necessarily; simply reseating (that is, removing and reinserting) the memory modules or add-on cards could fix the problem. Of course, whenever you open your computer case to remove hardware components, you should take all the necessary precautions to protect these delicate components, such as touching something metal to dispel static electricity buildup.

Check your system's users manual or the manufacturer's Web site to find out what particular error messages and beep codes mean. (See the "Beeps That Signify Trouble" sidebar for an explanation of POST beep codes.)

When you turn on the computer, the BIOS knows practically nothing about the hardware it controls. Even if it's the 10th time you've turned on the computer that day, the BIOS must still relearn which hardware components your PC has every time. Thus, the BIOS takes a thorough inventory of the hardware and gets each piece ready to work.

After the self-test, the BIOS finds and initializes the video card, the IDE card (which controls the hard drive), and any other devices it finds. If your computer handles plug-and-play hardware, the BIOS looks for and configures any plug-and-play devices. Some of those devices, such as the video card, will print version or configuration information on-screen when the BIOS initializes them.

Now the BIOS is ready to put some information of its own on-screen. For one thing, you may see a logo (such as a brand insignia or the Energy Star symbol), along with information about the BIOS itself, such as the manufacturer, version, serial number, and creation date. It also shows information about the CPU type and speed, amount of memory, and other hardware.

Finally, the BIOS needs to find a drive to boot from. It has a list of devices, such as hard drives, optical drives, and diskette drives, that it may boot from, and it looks to each one according to the order listed in its configuration. When it finds one it can boot from, it passes control to the OS, which starts to boot.

And what is the amount of time that elapses while all of this occurs? Just a few seconds.

The BIOS Setup Utility. Every PC includes a utility for configuring the BIOS settings. You can access it regardless of which OS you have installed or even before one is installed. The BIOS settings reside in a special type of memory known as the CMOS (complementary metal-oxide semiconductor). A battery backs up the CMOS, retaining these essential settings even when the computer is off.

You can access the BIOS setup utility by pressing and holding down a key (often the DELETE, ESC, F1, or F2 key) when the computer begins booting (or repeatedly pressing the key). (The BIOS information that appears on-screen when you turn on the PC will indicate which key your system requires you to push.) In a moment, you'll see the main menu of the BIOS setup utility. You'll probably have to use the keyboard to navigate its options, although a few setup utilities include mouse support. However, you can't count on a USB (Universal Serial Bus) keyboard or mouse at this point because the PC hasn't loaded USB drivers yet, so you'll need a PS/2 mouse and a keyboard plugged into the keyboard port.

Use the arrow keys on your keyboard to move the cursor, the ENTER key to select items, and the ESC key to undo a change or move to a previous screen. Function keys have special purposes, which typically appear in a list at the bottom of the screen. For instance, some BIOS setup utilities designate F10 as the key you should push to save your changes to the CMOS and reboot the computer.

If you look at the BIOS setup utilities of several PCs, you'll probably notice that they're different. There are two major BIOS manufacturers: Phoenix and AMI (Ameri-can Megatrends Inc.). A third company, Award, merged with Phoenix in 1998. With only two major BIOS manufacturers, you'd think BIOS setup utilities would rarely have differences, but that isn't the case. As hardware manufacturers introduce new types of computer devices, BIOSes must change, too. Also, PC manufacturers sometimes add their own specifications to BIOSes. So even if you have two PCs with, for instance, Phoenix BIOSes, the setup utilities may look different.

Just like the look of the setup utilities, the optimal BIOS settings vary among motherboards and PC manufacturers. Because of this, don't assume that the settings that are correct for one PC are correct for another. Check the users manual that came with your PC to find out what features are available and what settings are optimal for your particular machine. Be careful, though; improper BIOS settings can drastically affect system performance, make certain peripherals invisible to the system, or even prevent the PC from booting.

Here are some of the key functions you can control and information you can view within the BIOS setup utility. Change these settings only if you know exactly what you're doing because random modifications can make your system less reliable and may even harm the hardware.

Processor and clock speeds. The BIOS needs to know about the type of CPU, processor cache, memory, and other hardware in the PC, and the BIOS setup utility is where this information resides. All of the information will be preset when you buy the PC, and you shouldn't need to change any of these details unless you install a new processor or are experimenting with overclocking (changing a computer system's hardware settings so it runs at a speed faster than what the manufacturer intended, although doing so risks damaging the CPU and other components). There are a multitude of options in this area, including CPU speed, RAM frequency, and the multiplier factor. Don't mess with these settings unless you know exactly what you're doing.

Order of boot devices. Normally, your PC boots from the hard drive. But it can boot from other devices, too, such as the diskette drive, optical drive, Zip drive, or from another server on a LAN (local-area network). The BIOS setup utility lets you change the order in which the PC looks for bootable devices. You can often find these settings in the BIOS setup utility's Advanced Setup menu.

Many manufacturers configure their PCs to boot from the diskette drive first (which also leads to a frustrating "nonsystem disk" error if you happen to leave a diskette in the drive). You can change this by making the hard drive or an optical drive the primary boot device. So, for example, if you want to force the PC to boot from a CD-ROM, change the first boot device to an optical drive and change the second boot device to your hard drive.

Power consumption. Modern PCs include energy-management features, typically under the Power Management Setup menu. Your PC may include several power-saving modes that you can configure in the BIOS setup utility. For instance, you can set the computer to go to a low-power standby mode after a period of inactivity and designate which types of events (such as mouse movement, USB or serial port activity, or the modem's phone line ringing) will "wake" it up and spring it back into action. Depending on the hardware, you may be able to make hard drives spin down, the CPU slow down, and the display turn off to save more electricity. These tricks reduce the amount of energy the computer uses while idle, but they also make your system take slightly longer to wake up from low-power mode.

Floppy diskette drive setup. These settings merely tell the system about the type and number of diskette drives installed.

Boot errors. You can tell the PC what to do in case of "nonfatal" problems at bootup. For instance, you can have the PC halt or proceed normally if no keyboard or floppy drive is found during POST. This setting is often called "Halt On" (as in, "booting should halt on the following problems").

Key repeat rate. You can change the typematic rate (the speed at which characters repeat when you hold down a key). There are generally two settings: one, the initial delay between when you press a key and when it starts to repeat, measured in milliseconds; and two, the number of times per second it will repeat once it starts. BIOS setup utilities typically label these settings as Typematic Rate and Typematic Delay. Poor typists, children, and users with physical disabilities may benefit from slowing down or turning off the key repeat rate.

NumLock status. Often found within the Start Options or Advanced Setup screen your BIOS setup utility, you can use the Keyboard NumLock State or Boot-Up NumLock setting to determine whether your system should automatically enable the keypad's Num Lock function when the computer starts.

Date and time. You can set the system's date and time using a setting of the same name (or something similar), although it is more convenient to make this change from the Windows Control Panel.

Virus warnings. Although it's no substitute for a full-featured Windows virus prevention utility, you can set the BIOS to warn you if software attempts to access the boot sector, partition table, or other critical areas of the hard drive. Some utilities (such as partitioning programs) have legitimate reasons to do this, but enabling this feature can prevent some types of virus attacks. This feature is often referred to as "Virus Warning."

Passwords. If you feel the need for some additional security, you can give your PC a measure of protection with BIOS passwords. There are typically two passwords. The first one is a user password (also known as a system password) you must type when the computer boots (before it loads the OS). You can use this password to prevent casual passers-by from booting into your PC. Second, there's a setup password, which is required to enter the BIOS setup utility. By default, neither password is generally set. You'll typically find these settings under the Power-On Password, Administrator Password, or Supervisor Password menu items.

Don't put too much faith in the security of these two passwords because both are stored in the battery-backed-up CMOS memory, and a determined cracker (one who hacks into systems for malicious and/or illegal reasons) can erase the passwords by removing the battery and draining the CMOS power. (This also is a good backdoor if you set and then forget your PC's BIOS password.)

System monitoring. You also can use the BIOS setup utility to spy on the inner workings of the PC. The Hardware Monitor or PC Health command, usually available from the BIOS setup utility's main menu, will show you the CPU temperature, fan speeds, hardware voltages, and other technical information. You may be able to set the temperature at which the CPU temporarily shuts down in order to prevent overheating.

Save BIOS Settings & Reload Defaults. The functions we just mentioned in the previous section certainly aren't the only settings you'll find in your BIOS setup utility, but they're generally the most common. You might also notice other settings, such as PCI bus and IRQ (interrupt request lines) configuration menus, hard drive configuration settings, and plenty of other technical system management settings. Feel free to explore your PC's BIOS setup utility to see what's hidden there, but think twice before saving any changes to hardware settings.

When you finish using the BIOS setup utility, you have the option of saving your changes or throwing them away. The utility's main menu will have Save and Exit commands, which will officially install your changes by writing the settings to the CMOS and rebooting the computer. If you're unhappy with the changes you've made, choose the Quit Without Saving command (or something similar), which will leave the current CMOS settings alone and reboot the PC.

If you managed to mess something up (and you aren't quite sure how to fix it), the BIOS utility provides a way to reset the BIOS back to safe, default settings. There are usually two options. The first option, Load Fail-Safe Defaults (or an option with a similar name), will change all the BIOS settings so that the system should work no matter what, although it may not be optimized for the best performance. The Load Best Performance Settings (or a similar option) will reset the BIOS with settings that should work--and work well. If you need to reset the BIOS settings, try using the option associated with the best performance settings first. Then, if things still aren't right, use the option for fail-safe default settings.

Back Up The CMOS. Because CMOS stores the BIOS settings, these settings will be lost if the tiny battery on the motherboard runs dry. Other events, such as upgrading the BIOS, a power surge, or a virus, can also erase these settings. That's why it's a good idea to back up your BIOS settings.

You can back up BIOS settings onto a diskette or old-fashioned paper. Once you do, store the information in a safe place so you can easily reset the BIOS settings if necessary.

Some motherboards include software, either as part of the BIOS setup utility or as separate software, that saves CMOS settings to a diskette. Check your system's users manual to find out if yours does, too. If not, you can use a utility such as CMOSsave ($10; http://www.mindprod.com/products.html) to back up the CMOS.

CMOSsave is simple shareware that will copy the CMOS data to the hard drive or a diskette. After downloading and unzipping the program, insert a formatted diskette, access the command line, and type CMOSSAVE a:\cmos.sav. When the program finishes its job, label the diskette and put in a safe place. CMOSsave also includes a program to restore the CMOS from the backup.

A simple solution, but a bit more tedious, is to simply go through each screen of the BIOS setup utility and write down the settings. Some PCs will let you print these screens in their entirety by pressing the Print Screen button. (If this works at all, it will require a parallel, not USB, printer.)

Upgrade The BIOS. If necessary, users can upgrade most BIOSes. This can be a handy way to extend the range of hardware your PC can use without buying a new motherboard. For instance, if your old PC only works with hard drives smaller than 40GB, you wouldn't be able to use the full capacity of a new 80GB drive, but a BIOS upgrade could change that. Performing this upgrade could let you install a wider variety of processors or use new peripherals, such as a DVD-RW drive, that manufacturers developed after you purchased your PC.

You must remember, however, that a BIOS upgrade isn't magic. For example, it won't turn your old 486 machine into a Pentium 4 computer, but it may be able to stretch the capabilities of your PC a little bit.

Also, flashing your PC's BIOS is an extremely delicate process, so do it with care. You should only upgrade a PC's BIOS if there's a good reason, such as the need to add support for a new processor you plan to install. Don't bother upgrading the BIOS just because there's a new version available. Yes, it's good to know that you can upgrade your BIOS if you need to, but remember that most users never need to upgrade their BIOSes for the life of their PCs.

On rare occasions, there may be bugs in the BIOS that you can fix with a simple upgrade. For instance, if you've been struggling for a few years with a PC that isn't Y2K-compliant, a BIOS upgrade can fix that. Or, if there's a quirk in your system's BIOS that prevents Linux from correctly determining the amount of memory your system has, an upgrade might fix that, too.

In early PCs, the system BIOS was stored in ROM (read-only memory; a type of built-in semiconductor-based memory that users cannot alter in any way). Because of this, BIOS settings may as well have been written in stone. With this type of BIOS, if a new type of hardware came out that the PC wasn't compatible with, you were basically out of luck. Maybe you could replace the chip that stored the BIOS with a new version, but this often wasn't a possibility.

Nowadays, there's an easier way. Today's PCs store the BIOS on EEPROMs (electrically erasable programmable read-only memory), which are programmable chips. But to upgrade your PC's BIOS code, you'll need to flash (write a new version of the firmware) the BIOS chip.

You can check the PC or motherboard manufacturer's site to see if a newer version of a particular BIOS is available and what features it adds. Motherboard manufacturers usually modify BIOSes from the standards created by the BIOS manufacturers, and PC manufacturers sometimes modify them further. Because of this, it's better to first check the PC manufacturer's site for upgrades. If it doesn't have any information, try the motherboard manufacturer's site next.

Flashing is a simple process. Although the exact steps vary from system to system, in general, the process involves a couple of easy steps:

1. First, back up, print, or write down the current settings found on the BIOS setup screens. This information may be lost during the upgrade, so it's best to prepare yourself for the worst-case scenario.

2. Download the software required to update the BIOS. For this, you'll need two things: the flash utility (the software that reprograms the BIOS) and a copy of the new BIOS firmware. The two items may be separate downloads, or they may be part of the same file.

If the flashing program you found doesn't explicitly support your motherboard and BIOS, don't try to make it work because this could spell disaster. Triple-check that the flash utility and new BIOS firmware are designed specifically for your particular PC model or motherboard. Installing the wrong BIOS can be the PC equivalent of a lobotomy.

Then, when you're ready, format a diskette and make it bootable. To do this in Windows XP, Windows Me, and Windows 98, open My Computer, right-click the diskette drive icon, and choose Format. In WinXP, select the Create An MS-DOS Startup Disk checkbox and click Start. In Win98 and WinMe, open the Control Panel and double-click the Add/ Remove Programs icon. Next, choose the Startup Disk tab and click the Create Disk button. Copy the update software and new BIOS firmware to the diskette. Restart the PC, booting from the diskette. Run the firmware and upgrade software and follow the prompts. In just a few minutes, the process will upgrade the BIOS code. Don't trip on any power cords while you're waiting or change your mind halfway though the process because it's vital that nothing interrupts the flashing process.

In some cases, your hardware may require more steps, such as resetting the motherboard's CMOS memory by moving a jumper. Read the flash utility's instructions carefully to find out how. If you do have to reset the CMOS, you'll need to reset all of the BIOS settings, so when you boot the computer, enter the BIOS setup utility and re-enter or reload your settings.

The Underlying Stimulus. Think of the BIOS as your PC's central nervous system; after all, it's responsible for coordinating everything that goes on between the OS and the hardware. Most of the time, it does its job invisibly. But remember that it's just a piece of software you can upgrade. Not only does the BIOS setup utility give you insight into the inner workings of your PC, but a well-tuned BIOS also leads to a speedy, stable computer.

BIOS Diagnostics Utilities

To gain insight into the internal operations of your PC's BIOS (Basic Input/Output System), you might want to consider using a third-party utility suited for the job. The utilities we cover here should work well with most systems, but this isn't a guarantee. Therefore, you should check your motherboard manufacturer's Web site to find out if there are diagnostic utilities developed specifically for your system.

BIOS Agent (free; http://www.esupport.com/biosagent) is a simple utility that displays basic information about your PC's BIOS, such as the motherboard brand and model, BIOS type and date, and the chipset. The same information is shown when your system boots, but BIOS Agents presents a more convenient way to access it.

Techfacts XP ($20 shareware; http://www.winutils.com/tfxp.htm) is a thorough PC diagnostics, monitoring, and troubleshooting utility. You can even use the CMOS (complementary metal-oxide semiconductor) listing feature to take a peek at what's stored in the computer's CMOS memory and what every byte does. Unfortunately, this function won't work on Windows XP systems, but it does work on systems running Windows Me and Windows 98.

BIOS Wizard (free; http://www.esupport.com/bioswiz/index2.html) will tell you exactly what the capabilities of your motherboard and BIOS are. It runs a few quick tests and it lets you know details such as whether you can boot your computer from a CD-ROM or other removable media and whether your motherboard and BIOS support plug-and-play hardware. In addition, BIOS Wizard provides details about more than a dozen other capabilities. If you don't know what "APM Test" or any of its other tests are, simply right-click the test name for a more thorough description.

Beeps That Signify Trouble

A lot happens from the moment you turn on your PC to a moment a few seconds later when it makes a "beep!" sound. That short period is devoted to the POST (power on self test) in which the BIOS (Basic Input/Output System) checks out the PC's hardware.

When things are working properly, you hear a quick little beep from the PC's internal speaker, and the OS (operating system) begins to load. But if something is wrong with the hardware, the computer will alert you with a different sound: several ominous beeps. These BIOS beep codes usually form a pattern that can tell you what's wrong, or at least tell you what component is having trouble.

But why does your system have to resort to beeping? Well, for one thing, the POST may happen before the system enables the display, or the error may prevent the PC from using the display. Although most BIOSes will attempt to display an error message for you, sometimes all they can do to communicate is to make noise through the system's little internal speaker.

There isn't much standardization when it comes to beep codes. If your system is beeping rather than booting, check the users manual or the manufacturer's Web site to find out what those beeps mean in your particular case.

Sometimes, you may need to consider removing a newly installed expansion card and trying to reboot your computer. If the PC boots, the card is causing a conflict. If not, consult the PC's manufacturer.

To give you some examples of what various beep codes mean, we listed some from two major BIOS manufacturers: Phoenix and AMI (American Megatrends Inc.).

If the developer of your system's BIOS is AMI, your computer may be running AMIBIOS 8. If so, there are specific problems associated with the number of beeps you hear upon startup.

Systems running a version of Phoenix's BIOS tend to use three groups of beeps to signify trouble. For instance, one beep, followed by four beeps, and then two beeps (1-4-2) indicates bad RAM. We listed other possible codes below.

Any other beep codes indicate a problem with the motherboard.

Reprinted with permission from Smart Computing magazine.


Articles by Kevin Savetz