PC PC的概念源自CP / M,CP / M是在IBM PC接管之前在基于8位Z-80“ S-100”总线的计算机上流行的操作系统。
CP / M期望与硬件相关的功能位于ROM(BIOS)中。引导加载程序从磁盘加载的另一部分是支持CP / M文件系统(BDOS),然后支持命令处理器或“外壳”(CCP)的软件。期望CP / M支持的硬件不是很多:磁盘驱动器,显示器,一个或两个串行端口(COM或AUX端口),可以连接打印机或调制解调器。
PC BIOS执行类似于CP / M的基本引导功能,而DOS则按预期使用BIOS功能执行基本输入和输出。程序员由于速度太慢而最终绕过了这些功能。这导致PC克隆制造商在80年代中期重新创建了整个平台(就像IBM很好地记录了原始PC的内外一样容易),而不仅仅是提供具有兼容接口的BIOS,尽管他们也必须这样做。
在这一点上,我们可以说,对于现代操作系统,除了启动系统之外,BIOS确实不是必需的。但是...
从90年代初开始,电源管理的概念就流行起来,BIOS为此承担了责任。APM与单任务操作系统(例如DOS)搭配使用时效果很好,但不适用于真正的多任务操作系统(例如Windows或Linux)。大约在386全面投入使用时,支持真正多任务处理的Intel CPU。DOS和BIOS并未针对此CPU的新功能进行更新,这主要是因为所有Intel CPU仍将以原始PC-BIOS设计的传统16位兼容模式运行。因此,除了可能在早期引导阶段外,现代OS几乎会忽略/绕过BIOS的所有类似于CP / M的输入/输出功能。
最终,开发了ACPI,它大部分是BIOS的一部分,它支持电源管理和(通常是笔记本电脑)平台特定内容的配置。ACPI还可以处理休眠,睡眠或关机的最终电源开关状态。
因此,如今是ACPI及其后继产品EFI使BIOS之类的东西成为PC的必要。总体概念是ACPI成为特定平台或主板与操作系统之间的接口,因此不需要单独构建操作系统必须为每种不同类型的主板制造。
装有运行Linux的ARM CPU(以及手机硬件)的开发板存在此问题。通常,它们将配备仅引导加载程序的固件(例如U-boot),但是操作系统几乎必须将每个板作为独立的平台来支持。