
- •3.1 Structure
- •3.1.1 Layers of Software
- •Layers and Process Management
- •Encapsulation and Abstraction
- •Layers of Software
- •3.1.2 The bios: Life at the Bottom
- •The Role of the bios
- •Changing bios Settings
- •3.1.3 Process Control
- •3.2 Device Management and Configuration
- •3.2.1 Interrupt Handling
- •Interrupts
- •Interrupt Priority and Nested Interrupts
- •Traps and Faults
- •3.2.2 Hardware Attributes
- •Installing Drivers
- •Changing a Driver's Configuration
- •3.2.3 Configuration
- •3.3 Resource Sharing
- •3.3.1 Virtual Memory
- •Managing Memory
- •Relocation
- •Virtual Memory
- •3.3.2 File and Printer Sharing
- •Printers
- •3.4 File Systems
- •3.4.1 File Organization
- •Folders
- •Shortcuts
- •File Names and Types
- •3.4.2 File Allocation Table and nt File System
- •Clusters and File Allocation Tables
- •Nt File System
3.1.2 The bios: Life at the Bottom
The Role of the BIOS
Changing BIOS Settings
The Role of the bios
Most of this course is concerned with the higher levels of the software hierarchy: file systems, operating systems, and applications. But, in this section, we will look at the lowest level of software on the machine—the BIOS, or Basic Input/Output System. The BIOS performs three major functions: it initializes the hardware when the computer is first turned on, it loads the operating system, and it provides basic support for devices such as the keyboard, mouse, and serial ports. The BIOS is always present, but, it is only visible when you first power on the computer, before the operating system takes control.
When a computer is first turned on, there is no operating system present in memory. RAM is empty. (Remember that RAM is volatile memory; it loses the data stored in it when the power is turned off.) The BIOS must reside in a different kind of memory in order to perform its function. It resides in a ROM (Read-Only Memory) chip on the motherboard. ROM is permanent memory; it retains the data stored in it when the power is turned off. During the power-on sequence, the processor automatically starts executing instructions from the ROM. Since ROM is slower than RAM, the BIOS on most systems immediately copies itself from ROM into RAM. Then it tells the processor to fetch all further instructions from the RAM version.
Another special type of memory used by the BIOS is CMOS memory. CMOS (Complementary Metal Oxide Semiconductor) is a chip technology that uses very little power. A small amount of CMOS memory, often as little as 64 bytes, is included on the motherboard to store BIOS parameter settings that control the operation of the hardware. Another parameter controls the timing of main memory operations. If you purchase faster DRAM chips for your main memory, you can change the BIOS settings to tell the memory bus controller to take advantage of the higher DRAM speed. The CMOS memory is volatile, but, its contents are preserved by a tiny battery on the motherboard when the computer is turned off. Because the battery is recharged by the motherboard, it can last for years; however, if it were disconnected or drained of energy, the BIOS would revert to default parameter settings. Therefore, it is important that CMOS has low power consumption. The major drawback of CMOS technology is that it is slower than regular DRAM, but, that does not matter if the memory is only used for BIOS parameter settings, since the contents are only needed during startup.
When power is applied to the system and the BIOS begins to execute, the BIOS initiates the POST (Power-On Self Test) sequence. First, it enables the video card (you will see the screen flash) and displays some basic information like the type of video card installed, the name of the BIOS manufacturer, and the BIOS version number. It then determines the amount of DRAM installed in the system, and it may perform a memory test. Whether or not it does, the test is controlled by yet another BIOS parameter setting. (On systems with a lot of memory, disabling the memory test will allow the computer to boot up more quickly.) The memory configuration and test results are displayed on the monitor. Then, after determining what expansion cards and adapters are present, the BIOS initializes those cards and adapters. At the conclusion of the POST sequence, the BIOS displays system configuration information, such as the type of processor installed, cache memory information, the types of each of the disk drives it found, the addresses of any serial and parallel ports, and a list of other expansion cards it detected.
Once the POST sequence is completed, the next job of the BIOS is to load in a program that will in turn load the operating system. In order to do this, the BIOS has to know just enough about disk drives to be able to read in one chunk of data, called the Master Boot Record, or MBR. By convention, this is the first sector of the first track of the disk. The MBR program then loads in the operating system and starts it running.
On a system with multiple disk drives, which one should be used to load the operating system? The BIOS follows a search order to find an operating system to load. It begins by looking in drive A, which is normally a floppy drive. If there is no disk in that drive, or if the disk does not contain a master boot record, then it looks in the drive B (second floppy drive), if one exists. If unsuccessful there, it moves to the drive C, which is normally the main hard disk drive, and looks for a master boot record there. And so on.
Checking the floppy drive first turns out to be very useful, because unlike the hard drive, the floppy is a removable medium. So, if you do not want to load the version of the operating system that is stored on the hard drive, all you have to do is insert a boot disk in drive A and the computer will boot from there. A boot disk is a floppy that contains a bootable copy of some operating system. If the version of the operating system on the hard drive ever becomes corrupted, perhaps due to a system crash, the only way to get the computer running again is to use a boot disk. Then you can get to work repairing the damaged data on the hard drive.
A computer that can be booted from a floppy drive is not fully secure. Your private files are normally protected by the operating system's refusal to allow other users access to them. But, if someone slips a boot disk into drive A, they can boot their own version of the operating system that ignores file protections and permits access to everything on the hard drive. The only guaranteed defense against this type of attack is to encrypt the disk. Another risk associated with bootable floppy drives is MBR viruses. These viruses live in the master boot record of a floppy disk. If someone leaves an infected floppy in drive A, the next time the system boots, the virus can infect the hard drive. Most computers today cannot be booted easily from the floppy drive because operating system files have become so large that they are distributed on CDs. However, the BIOS still checks the floppy drive for an operating system. Perhaps you have left a floppy disk in the A drive when you tried to start your computer and have seen the message, "Nonsystem disk or disk error Replace and strike any key when ready". This message is a result of the BIOS checking the floppy drive for an operating system.
Some BIOSs will allow you to change the search order used for booting. This is useful if you want the system to boot by default from a CD-ROM drive, or from a server on the local network, rather than from the hard drive. You can also disable booting from the floppy drive if security is a concern.