BIOS

ROM BIOSSystem BIOSBasic Input/Output SystemBIOS features comparisonBIOS setupIBM BIOSROM-BIOSBIOS flashingsystemABIOS
BIOS (an acronym for Basic Input/Output System and also known as the System BIOS, ROM BIOS or PC BIOS) is firmware used to perform hardware initialization during the booting process (power-on startup), and to provide runtime services for operating systems and programs.wikipedia
646 Related Articles

Firmware

BadUSBflashingflash
BIOS (an acronym for Basic Input/Output System and also known as the System BIOS, ROM BIOS or PC BIOS) is firmware used to perform hardware initialization during the booting process (power-on startup), and to provide runtime services for operating systems and programs.
Firmware such as the ROM BIOS of a personal computer may contain only elementary basic functions of a device and may only provide services to higher-level software.

OS/2

OS/2 WarpIBM OS/2OS/2 Warp 4
The real-mode portion was meant to provide backward compatibility with existing operating systems such as DOS, and therefore was named "CBIOS" (for "Compatibility BIOS"), whereas the "ABIOS" (for "Advanced BIOS") provided new interfaces specifically suited for multitasking operating systems such as OS/2.
OS/2 features an API for controlling the video display (VIO) and handling keyboard and mouse events so that programmers writing for protected-mode need not call the BIOS or access hardware directly.

CP/M

CP/M-80CP/M operating systemBDOS
The name originates from the Basic Input/Output System used in the CP/M operating system in 1975. The term BIOS (Basic Input/Output System) was created by Gary Kildall and first appeared in the CP/M operating system in 1975, describing the machine-specific part of CP/M loaded during boot time that interfaces directly with the hardware.

Reverse engineering

reverse engineeredreverse engineerreverse-engineered
The BIOS originally proprietary to the IBM PC has been reverse engineered by companies looking to create compatible systems.
One famous case of reverse engineering was the first non-IBM implementation of the PC BIOS which launched the historic IBM PC compatible industry that has been the overwhelmingly dominant computer hardware platform for many years.

Power-on self-test

POSTPower-on self testbeep code
Error codes or messages were displayed on the screen, or coded series of sounds were generated to signal errors when the power-on self-test (POST) had not proceeded to the point of successfully initializing a video display adapter.
In IBM PC compatible computers, the main duties of POST are handled by the BIOS, which may hand some of these duties to other programs designed to initialize very specific peripheral devices, notably for video and SCSI initialization.

IBM PC DOS

PC DOSPC DOS 1.0PC DOS 2.0
Versions of MS-DOS, PC DOS or DR-DOS contain a file called variously "IO.SYS", "IBMBIO.COM", "IBMBIO.SYS", or "DRBIOS.SYS"; this file is known as the "DOS BIOS" (also known as the "DOS I/O System") and contains the lower-level hardware-specific part of the operating system.
86-DOS had to be converted from 8-inch to 5.25-inch floppy disks and integrated with the BIOS, which Microsoft was helping IBM to write.

Nonvolatile BIOS memory

CMOS batteryCMOSCMOS memory
If Ctrl+Alt+Delete was pressed ("warm boot"), a special flag value stored in nonvolatile BIOS memory ("CMOS") tested by the BIOS allows bypass of the lengthy POST and memory detection.
Nonvolatile BIOS memory refers to a small memory on PC motherboards that is used to store BIOS settings.

Read-only memory

ROMRead Only MemoryROMs
Originally, BIOS firmware was stored in a ROM chip on the PC motherboard.
Later home or office computers such as the IBM PC XT often included magnetic disk drives, and larger amounts of RAM, allowing them to load their operating systems from disk into RAM, with only a minimal hardware initialization core and bootloader remaining in ROM (known as the BIOS in IBM-compatible computers).

Motherboard

motherboardsmainboardlogic board
Most BIOS implementations are specifically designed to work with a particular computer or motherboard model, by interfacing with various devices that make up the complementary system chipset.
Most motherboards have connectors for additional computer fans and integrated temperature sensors to detect motherboard and CPU temperatures and controllable fan connectors which the BIOS or operating system can use to regulate fan speed.

Booting

bootloaderboot loaderboot
The BIOS in modern PCs initializes and tests the system hardware components, and loads a boot loader from a mass memory device which then initializes an operating system.
The IBM Personal Computer included ROM-based firmware called the BIOS; one of the functions of that firmware was to perform a power-on self test when the machine was powered up, and then to read software from a boot device and execute it.

Gary Kildall

KnowledgeSetDorothy KildallComputer Connections: People, Places, and Events in the Evolution of the Personal Computer Industry
The term BIOS (Basic Input/Output System) was created by Gary Kildall and first appeared in the CP/M operating system in 1975, describing the machine-specific part of CP/M loaded during boot time that interfaces directly with the hardware.
In response, Kildall pioneered the concept of a BIOS, a set of simple programs stored in the computer hardware (ROM or EPROM chip) that enabled CP/M to run on different systems without modification.

Video card

graphics cardgraphics cardsvideo cards
The POST identifies, and initializes system devices such as the CPU, RAM, interrupt and DMA controllers and other parts of the chipset, video display card, keyboard, hard disk drive, optical disc drive and other basic hardware.
Almost all desktop computer motherboards with integrated graphics allow the disabling of the integrated graphics chip in BIOS, and have a PCI, or PCI Express (PCI-E) slot for adding a higher-performance graphics card in place of the integrated graphics.

IBM Personal Computer

IBM PCPCIBM-PC
The BIOS of the original IBM PC and XT had no interactive user interface. On the original IBM PC and XT, if no bootable disk was found, ROM BASIC was started by calling INT 18h.
The IBM copyright appears in only the ROM BIOS and on the company logo, and the company reportedly received no patents on the PC, with outsiders manufacturing 90% of it.

Text-based user interface

text-basedtext user interfaceTUI
Also, when errors occur at boot time, a modern BIOS usually displays user-friendly error messages, often presented as pop-up boxes in a TUI style, and offers to enter the BIOS setup utility or to ignore the error and proceed if possible.
On IBM Personal Computers and compatibles, the Basic Input Output System (BIOS) and DOS system calls provide a way to write text on the screen, and the ANSI.SYS driver could process standard ANSI escape sequences.

Video BIOS

BIOSvBIOSVGA BIOS
In addition, plug-in adapter cards such as SCSI, RAID, network interface cards, and video boards often include their own BIOS (e.g. Video BIOS), complementing or replacing the system BIOS code for the given component.
Video BIOS is the BIOS of a graphics card in a (usually IBM PC-derived) computer.

Option ROM

BIOS Boot Specification
A non-disk device such as a network adapter attempts booting by a procedure that is defined by its option ROM or the equivalent integrated into the motherboard BIOS ROM.
An Option ROM typically consists of PC firmware that is called by the BIOS.

IBM Personal Computer/AT

IBM PC/ATIBM ATIBM PC AT
In the interim period, IBM-compatible PCsincluding the IBM ATheld configuration settings in battery-backed RAM and used a bootable configuration program on disk, not in the ROM, to set the configuration options contained in this memory.

DOS

COM1AUX:LPT1
In the era of DOS, the BIOS provided a hardware abstraction layer for the keyboard, display, and other input/output (I/O) devices that standardized an interface to application programs and the operating system.

Wintel

PCdominated much of the personal computer marketIntel-based computers
A modern Wintel-compatible computer provides a setup routine essentially unchanged in nature from the ROM-resident BIOS setup utilities of the late 1990s; the user can configure hardware options using the keyboard and video display.
Given the very conservative engineering of the early IBM personal computers and their higher than average prices, this was not a terribly difficult task at first, bar only the great technical challenge of crafting a BIOS that duplicated the function of the IBM BIOS exactly but did not infringe on copyrights.

IBM PCjr

PCjrIBM PC JrChiclet rule
The IBM PCjr is unique among PCs in having two ROM cartridge slots on the front.
It retains the IBM PC's 8088 CPU and BIOS interface, but provides enhanced graphics and sound capabilities over the original IBM PC, ROM cartridge slots, joystick ports, and an infrared wireless keyboard.

BIOS interrupt call

BIOS callINT 18hBIOS interrupts
When using MS-DOS, BIOS services could be accessed by an application program (or by MS-DOS) by executing an INT 13h interrupt instruction to access disk functions, or by executing one of a number of other documented BIOS interrupt calls to access video display, keyboard, cassette, and other device functions.
BIOS interrupt calls are a facility that operating systems and application programs use to invoke the facilities of the Basic Input/Output System software on IBM PC compatible computers.

IBM BASIC

BASICACassette BASICIBM Cassette BASIC
On the original IBM PC and XT, if no bootable disk was found, ROM BASIC was started by calling INT 18h.
IBM Cassette BASIC came in 32 kilobytes (KB) of read-only memory (ROM), separate from the 8 KB BIOS ROM of the original IBM PC, and did not require an operating system to run.

Computer hardware

hardwarepersonal computer hardwaredevice
The term BIOS (Basic Input/Output System) was created by Gary Kildall and first appeared in the CP/M operating system in 1975, describing the machine-specific part of CP/M loaded during boot time that interfaces directly with the hardware. The POST identifies, and initializes system devices such as the CPU, RAM, interrupt and DMA controllers and other parts of the chipset, video display card, keyboard, hard disk drive, optical disc drive and other basic hardware.

Boot sector

boot blockBoot Blocksbootsector
The BIOS checks each device in order to see if it is bootable by attempting to load the first sector (boot sector).
A boot sector is the sector of a persistent data storage device (e.g. hard disk, floppy disk, optical disc, etc.) which contains machine code to be loaded into random-access memory (RAM) and then executed by a computer system's built-in firmware (e.g. the BIOS, Das U-Boot, etc.).

INT 13H

Enhanced Disk DriveDisk servicesinterrupt 13h
When using MS-DOS, BIOS services could be accessed by an application program (or by MS-DOS) by executing an INT 13h interrupt instruction to access disk functions, or by executing one of a number of other documented BIOS interrupt calls to access video display, keyboard, cassette, and other device functions.
The BIOS typically sets up a real mode interrupt handler at this vector that provides sector-based hard disk and floppy disk read and write services using cylinder-head-sector (CHS) addressing.