Monday, 26 November 2012

BIOS


BIOS, in computing, stands for Basic Input/Output System or Basic Integrated Operating System. BIOS refers to the software code run by a computer when first powered on. 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 recognises and controls various devices that make up the computer.
The term BIOS is specific to personal computer vendors. Among other classes of computers, the generic terms boot monitor, boot loader or boot ROM are commonly used.
While the name BIOS is an acronym, it may also be a play on the Greek word βιος (bios), meaning life. The term first appeared in the CP/M operating system, describing the part of CP/M loaded during boot time that interfaced directly with the hardware (CP/M machines usually had a simple boot loader in ROM, and nothing else). Most versions of DOS have a file called "IBMBIO.COM" or "IO.SYS" that is analogous to the CP/M disk BIOS.

How the BIOS boots

The BIOS runs off the onboard PROM, EPROM or, most commonly, flash memory when the computer is powered on and it initializes and sometimes performs 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. Nearly all BIOS implementations can optionally execute a setup program interfacing the nonvolatile BIOS memory (CMOS). This memory holds user-customizable configuration data (time, date, hard drive details, etc.) accessed by BIOS code. The 80x86 source code for early PC and AT BIOS was included with the IBM Technical Reference Manual.
In most modern BIOS implementations, users select which device boots first: CD, hard disk, floppy disk, flash keydrive, and the like. This is particularly useful for installing operating systems or booting to Live CDs, and for selecting the order of testing for the presence of bootable media.
Some BIOSes allow the user to select the operating system to load (e.g. load another OS from the second hard disk), though this is more often handled by a second-stage boot loader.

BIOS as firmware

BIOS is sometimes called firmware because it is an integral part of the system hardware. Before 1990 or so BIOSes were held on ROM chips that could not be altered. As their complexity and the need for updates grew, BIOS firmware was stored on EEPROM or flash memory devices that can be easily upgraded by the user. This EEPROM chip sits on a FWH interface, but a newer interface named SPI is also emerging and in some newer boards EEPROM chips are already sitting on an SPI interface. However, an improperly executed or aborted BIOS update can render the computer or device unusable. To avoid BIOS corruption, some new motherboards have a backup BIOS ("Dual BIOS" boards). Also, most BIOSes have a "boot block" which is a portion of the ROM that runs first and is not updateable. This code will verify that the rest of the BIOS is intact (via checksum, hash, etc.) before jumping to it. If the boot block detects that the main BIOS is corrupt, then it will typically boot to a floppy so that the user can try flashing again, hopefully with a better image. Hardware manufacturers frequently issue BIOS updates to upgrade their products and remove bugs.

The BIOS boot specification

If the expansion ROM wishes to change the way the system boots (such as from a network device or a SCSI adapter for which the BIOS has no driver code), it can use the BIOS Boot Specification (BBS) API to register its ability to do so. Once the expansion ROMs have registered using the BBS APIs, the user can select among the available boot options from within the BIOS's user interface. This is why most BBS compliant PC BIOS implementations will not allow the user to enter the BIOS's user interface until the expansion ROMs have finished executing and registering themselves with the BBS API...

The Fall and Rise of the BIOS

Older operating systems such as DOS called on the BIOS to carry out most input-output tasks within the PC; with the introduction of newer operating systems such as Microsoft Windows and Linux, the BIOS was relegated to principally providing initial hardware setup, and bootstrapping. Once it was up and running, the operating system didn't have to rely on the BIOS for much.
In recent years, however, by way of systems such as ACPI, the BIOS has taken on more complex functions such as aspects of power management, hotplug, thermal management etc. This has led to renewed reliance on the BIOS by operating system producers, and an increase in complexity in the BIOS code.

                                                                        ...............TO BE CONTNUED

No comments:

Post a Comment