The Basic Input-Output System, or BIOS, is computer code that helps to locate and load an operating system. Its main purpose is to provide low level support to talk to the hardware of a system. Typically this includes driving the keyboard interface and providing simple output to a display.
In the modern PC era BIOS has come to refer to the code whose primary purpose is to issue the first commands to the system during power-up, or boot process, about where to find and how to load the operating system software. BIOS code also contains diagnostic capabilities, and on most systems it contains a small setup program interfacing the CMOS Memory. This memory holds user-customizable configuration data that is accessed by the BIOS code.
This sort of BIOS is usually refered to as firmware as its an integral part of the hardware it comes with. Originally BIOS's where held on ROM chips that could not be altered. As their complexity (and the need for updates) has grown they have been stored on devices such as EEPROM or Flash that can be upgraded in software.
A computer system may contain several BIOS chips. The system BIOS, which contains code to access fundamental hardware components such as the keyboard or the floppy drive resides on every IBM or Compatible Computers's main board. In addition, hardware components such as SCSI hard disk adapters or video boards may include their own BIOS, complementing or replacing the system BIOS code for the given component.