ROM BIOS
BIOS stands for Basic Input/ output System or Basic Integrated operating system. BIOS refer to the software code run by a computer when first powered on. It is permanently stored on the ROM chip. The primary function of BIOS is to prepare the machine so other software programs stored on various media (such as hard drives, floppies and CDs) can load, execute and assume control of the computer. This process is known as booting up. BIOS can also be said to be a coded program embedded on a chip that reconfigure and controls various devices that make up the computer.
BIOS perform diagnostic tests on the hard drive, memory, video, chipset and other hardware. Subsequently, it typically decompresses itself from the BIOS memory space into the system main memory and starts executing from there. The BIOS program is always located in a special reserved memory area; the upper 64K of the first megabyte of system memory (addresses F000h to FFFFh). Some BIOSs use more than this 64K area. BIOS are sometimes called firmware because it is an integral part of the system hardware.
BIOS have changed very little over the years in its physical form. There are three basic chips that have been used for the storage of BIOS:
- Erasable programmable Read Only Memory (EPROM),
- Electrically Erasable Programmable Read Only Memory (EEPROM)
- Flash EPROM.
The internal design of EPROM uses transistors in cells to be able to turn them on and off. Each cell consists of two transistors,
- The Floating gate
- The controls gate.
To program the chip, a low voltage charge is applied. If sufficient charge exists in any given cell, the floating gate and the control gate will be electrically linked, resulting in the binary equivalent of a 1. Insufficient charge results in a 0. The chip is erased by the exposure of ultraviolet radiation (UV). It drains all charges. These chips which no longer are used.
EEPROM were the first step toward a permanent solution. Each cell of an EEPROM can be erased by an electrical field, rather than using the UV rays. Also, the data can be erased in EEPROM bit by bit only the selected portion. The most significant drawback with EEPROM is that, because they are rewritten a bit at a time, the process is very slow.
Flash ROM is used to overcome the limitations of the EEPROM. It rewriting data in blocks of 512 bytes. By this process you can rewriting the entire contents so quickly which is not possible in EEPROM. Nearly, all computers manufacturer today use Flash ROM for their BIOS
.
What BIOS does
The BIOS software has a number of different rules, but its most important role is to load the operating system. When you turn on your computer and the microprocessor tries to execute its first instruction, it has to get those instructions from somewhere. It cannot get it from the operating system because the operating system is located on a hard disk, and the microprocessor cannot get to it without some instructions that tell it how. The BIOS provides those instructions. Some of the other common tasks that the BIOS perform include.
- A POST for all of the different hardware components in the system to make sure everything is working properly.
- Activating other BIOS chips on different cards installed in the computer. For example, SCSI and graphics cards often have their own BIOS chips.
- Providing a set of low level routines that the operating system uses to interface to different hardware devices.
- Managing a collection of settings for the hard disks, clock etc.
When you turn on your computer, the BIOS do several things. This is its usual sequence.
- Check the CMOS setup for custom settings.
- Load the interrupt handlers and device drives.
- Initialize registers and power management.
- Perform the POST (Power On Self Test).
- Display system settings.
- Determines which devices are bootable.
- Initiate the bootstrap sequence.
The first thing the BIOS do is check the information stored in a tiny (64 bytes) amount of RAM located on a Complementary Metal Oxide Semiconductor (CMOS) chip.
ROMPOST
On the majority of the computers, POST is a function of ROM BIOS chip. When power is supplied to the CPU, the first thing that it does is to execute the code located at memory address (FFFFO hex). This is the location in which all IBM compatible computers store the first line of the POST routine; the first step in what is known as the boot process. The first step of POST is to perform a systems check to make sure all components are properly functioning.
While checking main board functions, the video system is not yet up and running. Therefore, if anything fails to properly initializes, the ROM BIOS sends a series of beeps to the computer’s speaker to inform the user that something has failed. The next step may vary, depending on whether the BIOS is Plug and Play or not. The PnP BIOS will scan the system, looking for I\O addresses, IRQ lines, and DMA channels needed by PnP or PnP compliant devices.
Next, video memory locations on ROM are scanned and a search is made for both onboard and external video adapter. After this adapter has successfully initialized, the system will display a prompt.
CMOS Setup
Unlike the BIOS, which cannot be edited or reconfigured by the user, CMOS is where certain parameters that relate to BIOS can be changed. When a computer is booting up, the BIOS checks the CMOS for its settings and uses those settings in conjunction with the routine that it executes.
The CMOS stores parameters for setting up devices that every system uses.
- Basic Settings, which include real time clock setting, floppy disk drive settings, and on some brands of BIOS, the boot sequence of bootable devices.
- Hard disk drive detection and configuration.
- Configuration of onboard peripheral including serial and parallel ports. On some systems, this may also include VGA and USB.
- Configuration of PnP and PCI devices. This may include reserving IRQs for use by ISA.
- Security settings, including user and administrator passwords.
- Power management settings
CMOS is non volatile. In reality by taking away the battery charge, CMOS settings are lost. Therefore, CMOS is actually volatile memory, made nonvolatile by the constant supply of current provided by the battery.