Wednesday, March 23, 2011

OPERATING SYSTEM BASICS:

BOOTING THE OPERATING SYSTEM

The bootstrap process is primarily used in disk drive-based systems to load an operating system to control the system. MS-DOS was the original disk operating system for IBM PC-compatible computers. Like any other operating system, its function is to oversee operation of the system by supporting executing programs,
controlling I/O devices, handling errors, and providing the user interface. MS-DOS is a disk-based, single-user, single-task operating system that featured Microsoft's original FAT-based disk management system. This disk management system continues as the basis from which the Windows 9x/ME operating systems derive their start up, command-line operations, and file management systems. Therefore, this chapter will use these features of the Microsoft FAT-based system to describe the basic operating system architecture and operation.

Hardware Startup Process


The system startup sequence is basically a hardware-related operation until the bootstrap process begins. At this point, the hardware starts searching for the operating system to take over the control of the hardware to increase its functionality. This process represents the starting point of every operation related to
the operating system. With the exception of some hardware configuration information that is collected during the initialization phase of the startup process and is eventually passed to the operating system, modern operating systems do not consider what goes on prior to the startup process. However, until the bootstrap process occurs, the system runs exactly the same no matter which operating system may eventually be
started to take over control of the system.The key components and events of the PC-compatible hardware system are:

  1. System Startup or Reset: When the system is started up or reset, the microprocessor is reset so that it begins take instructions from a specified location in the ROM BIOS address range to test and initialize the system for operation.
  2.  POST (Power-on Self-Test): The POST is a series of tests performed each time the system is turned on. Different tests check the operation of the microprocessor, keyboard, video display, floppy and hard disk drive units, and both RAM and ROM memory units.


The first instruction that the microprocessor executes causes it to jump to the POST test, where it performs standard tests, such as the ROM BIOS checksum test that verifies that the BIOS program is accurate, the
system's various Dynamic Random Access Memory (DRAM) tests that verify the bits of the memory, as well as testing the system's CMOS (Complementary Metal Oxide Semiconductor) RAM to make certain that its
contents have not changed due to a battery failure. During memory tests, the POST displays a running memory count to show that it is testing and verifying individual memory locations.

Hint:
Complementary Metal Oxide Semiconductor (CMOS): This technology is used to fabricate IC devices. It is slower than other Integrated Circuits (IC) technologies, but it possesses higher circuit-packing density than other technologies. CMOS ICs are very sensitive to voltage spikes and static discharges and must be protected from static shock.

During these tests, BIOS determines if the system is started from switched off position or reset from some other state. When the system is started from a switched off position, a cold boot is performed. If you press the CTRL, ALT, and DEL keys simultaneously while the system is in operation, a reset signal is generated in the system to perform a shortened startup routine. This operation is referred to as a warm boot and enables the system to shut down and restart without turning it off. This function also enables you to switch to another operating system.

           First,  System Initialization: During this part of the program, startup values stored in the ROM BIOS IC are moved to the programmable devices of the system to make them functional. These include the Interrupt Request (IRQ) and Direct Memory Access (DMA) channel configurations along with the standard I/O addresses that make the system PC-compatible.


Hint:
IRQ: These are hardware interrupt request lines in a PC-compatible system. System hardware devices use these lines to request service from the microprocessor as required. The microprocessor responds to the IRQ by stopping the current activity, storing its environment, jumping to a service routine, servicing the device, and returning to its original task.


DMA: High-speed I/O devices that perform data transfers themselves using a special IC device called the DMA controller.

  • Plug-and-Play Configuration: During the initialization process, the Plug-and-Play (PnP) BIOS checks the types and configuration of devices installed in the expansion slots and in which slots they are plugged. It then assigns each adapter a software handle (name) and stores their names and configuration information in a RAM table. After this, the BIOS perform an enumeration process to verify the adapter information against the system's basic configuration for resource conflicts. If no conflicts are detected, all devices required for startup will be activated

  • CMOS Setup Checks: During the initialization process, BIOS checks the battery-powered CMOS RAM configuration storage area to determine what types of options are installed in the system. In PnP systems, PnP process’s autodetect functions establish these settings. However, CMOS settings can be entered for manual configuration during this period. Additional POST Checks: After the final memory test and basic system configuration steps are    performed, the remaining I/O devices and adapters are tested.

    Second, Additional POST Checks: After the final memory test and basic system configuration steps are    performed, the remaining I/O devices and adapters are tested.


• BIOS Extensions: After the POST and initialization processes are completed, BIOS checks the area of memory between C0000h and DFFFFh for BIOS extension programs. IBM system designers created this memory area so that you can add new or non-standard BIOS routines to the basic BIOS structure. BIOS extensions are created in 512-byte blocks that must begin at a 2 KB marker, such as C8000h, C8200h, C8400h, C8800h, as shown in the following figure. These extended firmware routines match software
commands from the system to the hardware they support. Therefore, the software that runs on the system does not need to be directly compatible with the hardware.





Advanced video cards contain Video BIOS code in a ROM IC or built directly into the video controller Application Specific Integrated Circuit (ASIC). The IBM Enhanced Graphic Adapter (EGA) and Video Graphics Array (VGA) standards enable on-board ROM that uses addresses between C0000h and C7FFFh. Similarly, different types of HDD controller cards contain a BIOS extension IC that uses the address space between C8000h and C9FFFh. Some current HDD controllers, such as Small Computer
System Interface (SCSI) adapters, reserve memory blocks between C8000h and CBFFFh. SCSI is a system-level interface standard that helps connect various peripheral equipments to the system.

Another type of device that commonly uses the C000h-D000h blocks is the network adapter card. These cards enable the computer to be connected to other computers in the local area network.

The BIOS extension code on a network card may contain an Initial Program Load (IPL) routine that causes the local computer to load and operate with an operating system from a remote computer. This is the principle behind diskless workstations that boot up to remote computers and contain no local disk drives.

After the successful completion of these tests, most systems produce a single-beep tone through the system speaker to indicate the end of the POST phase of the startup process and the beginning of the bootup phase of the startup sequence.


          

No comments:

Post a Comment