The BIOS and Standard Devices
The BIOS is a complex piece of firmware ("software on a chip") that provides support for the following devices and features of your system:
Selection and configuration of storage devices, such as hard drives, floppy drives, and CD-ROM drives
Configuration of main and cache memory
Configuration of built-in ports, such as IDE hard disk, floppy disk, serial, parallel, PS/2 mouse, and USB
Selection and configuration of special motherboard features, such as memory error correction, antivirus protection, and fast memory access
Support for different CPU types, speeds, and special features
Support for advanced operating systems, including networks, Windows 9x, and Windows 2000 (Plug and Play)
Power management
Storing System Settings
To enable the BIOS to perform these tasks, two other components on the mother- board work with the BIOS: the CMOS chip, also known as the RTC/NVRAM (Real-Time-Clock/Non-Volatile RAM), and the battery. The CMOS stores the settings that you make with the BIOS configuration program and contains the system's Real-Time-Clock circuit. Power from a battery attached to the motherboard is used by the CMOS to keep its settings. Figure 3.1 shows a typical socketed BIOS and battery. The A+ Certification test might ask you to identify these devices on a motherboard and to explain their operation.
Most recent systems use various models of lithium batteries, which can last from two to five years. Figure 3.2 shows three of the many battery types used on motherboards over the years.
The most common batteries you will see in Pentium-class and newer systems are the DS12887A-type clock/battery chip seen in Figure 3.2 (left) and the CR-2032 lithium battery seen in both Figure 3.1 and Figure 3.2 (center). The AA-size Eternacell in Figure 3.2 on the right was used in many early 286- and 386-based systems made by Zenith Data Systems and others. Knowing that battery types can vary is not as important for the A+ Certification test as it will be for your day-to-day work.
When the battery starts to fail, the clock will start to lose time. Complete battery failure causes the loss of all CMOS configuration information. When this takes place, the system cannot be used until you install a new battery and re-enter all CMOS configuration information by using the CMOS configuration program.
Because the battery maintaining settings can fail at any time, and viruses and power surges can also affect the CMOS configuration, you should record important information before it is lost. See "Saving and Recording BIOS/CMOS Settings," later in this chapter, for details.
POST
The POST (power-on self test) portion of the BIOS allows the BIOS to find and report errors in the computer's hardware. For the POST to work correctly, the system must be configured correctly, as you will see in "System Configuration," later in this chapter.
The POST checks the following parts of the computer:
The CPU and the POST ROM portion of the BIOS
The system timer
Video display card
Memory
The keyboard
The disk drives
The system will stop the boot process if it encounters a serious or fatal error (see the following "Beep Codes" section). During the POST process, the BIOS uses any one of several methods to report problems:
Beep codes
Onscreen error messages
POST error codes
Beep Codes
Beep codes are used by most BIOS versions to indicate either a fatal error or a very serious error. A fatal error is an error that is so serious that the computer cannot continue the boot process. A fatal error would include a problem with the CPU, the POST ROM, the system timer, or memory. The serious error that beep codes report is a problem with your video display card or circuit. Although systems can boot without video, seldom would you want to because you can't see what the system is doing.
Beep codes vary by the BIOS maker. Some companies, such as IBM, Acer, and Compaq, create their own BIOS chips and firmware. However, most other major brands of computers and virtually all "clones" use a BIOS made by one of the "Big Three" BIOS vendors: American Megatrends (AMI), Phoenix Technologies, and Award Software (now owned by Phoenix Technologies).
As you might expect, the beep codes and philosophies used by these three companies vary a great deal. AMI, for example, uses beep codes for over 10 "fatal" errors. It also uses eight beeps to indicate a defective or missing video card. Phoenix uses beep codes for both defects and normal procedures (but has no beep code for a video problem), and the Award BIOS has only a single beep code (one long, two short), indicating a problem with video.
Because beep codes do not report all possible problems during the startup process, you should not rely exclusively on beep codes to solve system problems.
You can hear some typical beep codes by using the CD-ROM included with this book.
Onscreen Error Messages
Most BIOS versions do an excellent job of giving you onscreen error messages indicating what the problem is with the system. These messages can indicate problems with memory, keyboards, hard disk drives, and other components. Some systems document these messages in their manuals, or you can go to the BIOS vendors' Web site for more information. Keep in mind that the system almost always stops after the first error, so a serious problem early in the boot process will stop the system before the video card has been initialized to display error messages.
POST Codes and POST Cards
In Chapter 1, "Basic Concepts," you learned about the different ways data passes through the system. One method, used by virtually all devices, is to send data through one of 65,535 I/O port addresses. The POST also uses an I/O port address (usually 80h), sending a series of codes indicating the progress of testing and booting. The hexadecimal codes output by the BIOS change rapidly during a normal startup process as different milestones in the boot process are reached. These codes provide vital clues about what has gone wrong when your system won't boot and you don't have a beep code or onscreen messages to help you.
To monitor these codes, you need a POST card such as the one shown in Figure 3.3, available from a variety of vendors, including JDR Microdevices (http://www.jdr.com) or Jensen Tools (http://www.jensentools.com). These cards are available in versions that plug into either ISA or PCI expansion slots. The simplest ones have a two-digit LED area that displays the hex codes, whereas more complicated (and expensive) models also have additional built-in tests.
The same hex code has different meanings to different BIOSes. For example, POST code 31h means "display (video) memory read/write test" on an AMI BIOS, but it means "test base and extended memory" on the Award BIOS, and it is not used on Phoenix BIOS. As with other types of error messages, check your manual or the BIOS maker's Web site for the meaning of any given code.
The best way to learn to use a POST card is to plug it into a healthy system and watch the codes change during a normal system startup. Typically, the codes change very quickly until the final code (often "FF") is reached and the system starts. On a defective system, the codes will pause or stop when a defective item on the system is tested. The cards remove easily and need not be left in systems routinely.
To prepare yourself for the A+ Certification exam, make sure you can identify the three different methods computers use for identifying errors (beep codes, onscreen codes, and POST codes) and when each method is most appropriate for discovering why a computer cannot boot.
Transferring Control to the Operating System with the Bootstrap Loader
During the POST, drives and other standard devices have been detected. Frequently, information about the CPU, hard disk, floppy disk drive, memory size and type, and ports are displayed onscreen at the end of the POST (see Figure 3.4).
Next, the BIOS searches for an operating system on the drives listed in the BIOS configuration as bootable drives. The first drive containing an operating system will be used to start the computer, and at that point the BIOS transfers control of most of the computer to the operating system. The portion of the BIOS responsible for starting the system is called the bootstrap loader (from the old expression "pulling yourself up by your bootstraps").
For a more detailed look at how the startup process works after the BIOS locates the operating system, see Upgrading and Repairing PCs, 12th Edition, Chapter 25, "The Hardware Boot Process."
Warm and Cold Booting
A cold boot or hard boot refers to starting the computer with the power or reset switch, which runs the entire POST and bootstrap process. A warm boot or soft boot skips the POST and refers to restarting the computer with the MS-DOS Ctrl+Alt+Del key sequence or the Windows 9x/2000 Start, Shutdown, Restart menu. Figure 3.5 shows a typical screen displayed during a cold boot.
On an MS-DOSbased system whose hard disk and floppy disk drives are connected to the motherboard, the BIOS is used to operate the drives. However, for systems using Windows 95 and newer, device drivers are loaded by the operating system to replace the BIOS. Still, without the BIOS, the system would not know what hardware was onboard or whether it was working.