BIOS

历史

BIOS最早可追溯到1970年代的CP/M操作系统。BIOS是CP/M操作系统中只能在特定机器上运行(machine-specific)的部分，它在系统引导时直接与硬件交互。
1980年代，IBM发明了IBM PC，但最初BIOS是IBM PC上唯一不开放的组件，给IBM PC的复制(Clone)带来了麻烦。随后COMPAQ复制了IBM PC，Phoenix Technologies等公司亦复制了IBM PC的BIOS部件，可为当时的IBM PC兼容机厂商提供BIOS。
现时UEFI已经取代旧式BIOS。

系统引导

当计算机的电源打开，BIOS就会从主板上的ROM芯片运行，运行加电自检（POST），测试和初始化CPU、RAM、直接存储器访问控制器、芯片组、键盘、软盘、硬盘等设备。当所有的Option ROM被加载后，BIOS就试图从引导设备（如硬盘、软盘、光盘）加载引导程序，由引导程序加载操作系统。BIOS也可从网卡等设备引导。

设置画面

大约从80386 PC开始，个人计算机的BIOS ROM集成了设置程序（Setup）。主板的CMOS芯片用于存储BIOS设置值及硬件侦测值。主板上的钮扣电池用于让CMOS存储BIOS设置值，以及计算机在断电时依然可以让系统时钟运作。
现代的BIOS可以让用户选择由哪个引导设备引导计算机，如光盘驱动器、硬盘、软盘、USBU盘等等。

BIOS固件

由于BIOS与硬件系统集成在一起（将BIOS程序指令刻录在IC中），所以有时候也被称为固件。在大约1990年BIOS是保存在ROM（只读存储器）中而无法被修改。因为BIOS的大小和复杂程度随时间不断增加，而且硬件的更新速度加快，令BIOS也必须不断更新以支持新硬件，于是BIOS就改为存储在EEPROM或者闪存中，让用户可以轻易更新BIOS。然而，不适当的运行或是终止BIOS更新可能导致计算机无法使用。为了避免BIOS损坏，有些主板有备份的BIOS（“双BIOS”主板）。现在的BIOS有“引导区块”（Boot Block），属于BIOS ROM的一部分，一引导就会被运行。这个程序会在运行BIOS前，验证BIOS其他部分是否正确无误（经由检查码，凑杂码等等）。如果引导区块侦测到主要的BIOS已损坏，则可自动读取U盘/光盘中的特定BIOS文件并更新BIOS。主板厂商/OEM经常发出BIOS升级来更新他们的产品和修正已知的问题。

操作系统服务

BIOS可通过BIOS中断调用为MS-DOS操作系统及MS-DOS程序提供磁盘、键盘、显示等标准服务。通过BIOS中断调用访问视频硬件非常缓慢，因此，有些DOS程序（尤其是游戏）通过直接访问视频硬件提高效率。
现代操作系统仅在操作系统引导时通过BIOS中断调用访问硬件。

微代码更新

自P6微架构开始，Intel处理器支持可重新编程的微码。BIOS可能包含处理器微代码更新。

超频

一些BIOS支持超频。

现代用途

BIOS以16位实模式运行。现代操作系统以保护模式或长模式运行，访问BIOS的16位实模式服务（如BIOS中断调用）是低效的。现代操作系统仅在引导时使用BIOS中断调用服务。后来的BIOS加入了ACPI等功能。

BIOS与CMOS的关系

CMOS是计算机上另一个重要的存储器。之所以提到它，是因为BIOS程序的设置值、硬件参数侦测值就保存在CMOS中。而且，在BIOS程序引导计算机时，需要加载CMOS中的设置值。CMOS通常被集成在南桥芯片组中。UEFI系统则多用NVRAM存储设置。

BIOS与CMOS的区别

二者的区别是，BIOS是存储在唯读记忆体（EEPROM），而CMOS为随机存储器（RAM）；BIOS中存储的是程序，而CMOS中存储的是普通信息。
CMOS的内容在断电会消失。所以，把主板的电池拆出，便可重置其内容。另外，拆出电池也会重置时间。UEFI使用NVRAM存储数据，主板电池没有电量会导致时间不正确，可能会导致UEFI设置值丢失。可通过主板的有关Jumper重置UEFI设置。

扩展程序（Option ROM）

扩展卡如硬盘控制器、显卡、网卡可能包含BIOS扩展程序（即Option ROM），为BIOS提供附加的功能。在BIOS引导操作系统前，Option ROM被BIOS运行。部分内置于主板的设备，其Option ROM可作为主板BIOS的一部分。Option ROM通过BIOS引导规范扩展BIOS的引导功能。

系统初始化

系统在加电自检（POST）阶段，查找Option ROMs（也叫BIOS Extension ROMs）且运行Option ROMs。Option ROM通过BIOS中断调用对硬件进行测试、初始化，并显示诊断信息或显示配置画面。

取代

英特尔于2000年开发出可扩展固件接口（Extensible Firmware Interface），随后，由业界多家著名公司共同成立统一可扩展固件接口论坛（UEFI Forum），EFI被更名为UEFI，且由UEFI论坛制定新的UEFI规范。
现时UEFI已经取代传统BIOS，且Intel将于2020年弃用传统BIOS接口，届时Intel产品不再支持基于16位实模式的UEFI CSM（UEFI兼容性支持模块）。