计算机科学导论(10)什么是BIOS

文章目录

BIOS(Basic Input/Output System,基本输入/输出系统)固化在计算机内主板上一个 ROM 芯片上的程序,是计算机启动时运行的底层固件程序(和硬件相关的程序习惯称为固件),是连接硬件与操作系统的桥梁,主要负责初始化硬件、加载操作系统及提供硬件控制功能。以下是关于BIOS的详细介绍:

一、BIOS的核心功能

  1. 硬件初始化与自检(POST)

    • 计算机开机时,BIOS首先执行加电自检(Power-On Self Test,POST),检测CPU、内存、硬盘、显卡等硬件是否正常工作。
    • 初始化硬件设备的基本参数,如设置内存地址映射、配置I/O端口等。
  2. 引导加载

    • 自检通过后,BIOS根据预设的启动顺序(如硬盘、U盘、光驱等)查找并加载操作系统的引导程序(如Windows的bootmgr、Linux的GRUB)。
  3. 硬件抽象与接口提供

    • 为操作系统和应用程序提供底层硬件的抽象接口(如键盘输入、屏幕显示、磁盘读写等),简化上层软件对硬件的直接操作。
  4. CMOS设置(BIOS设置程序)

    • 允许用户通过特定按键(如Del、F2等)进入BIOS设置界面,修改硬件配置(如启动顺序、时钟、超频参数等),这些设置存储在主板的CMOS芯片中。

二、BIOS的历史与技术局限

  1. 历史背景

    • 诞生于20世纪70年代末的IBM PC,最初功能简单,仅支持基本I/O操作。
    • 20世纪90年代后,随着硬件发展,出现了Award BIOS、AMI BIOS等厂商定制版本,功能逐渐丰富(如支持大容量硬盘、USB设备等)。
  2. 主要局限

    • 容量与地址限制:基于16位实模式运行,最大支持1MB内存寻址,无法直接管理超过2TB的硬盘(需借助LBA模式)。
    • 启动速度慢:引导过程按固定顺序串行执行,且需加载大量硬件驱动,耗时较长。
    • 安全性不足:缺乏对引导过程的加密验证,易受恶意软件攻击(如引导区病毒)。
    • 用户界面简陋:多为文本菜单式界面,不支持鼠标操作和图形化显示。

三、BIOS与UEFI的对比

维度 BIOS UEFI
架构 16位实模式,基于x86汇编语言 32/64位保护模式,支持高级编程语言
启动速度 串行启动,速度较慢 并行加载驱动,启动速度更快
硬盘支持 最大支持2TB硬盘(需LBA) 原生支持GPT分区,突破2TB容量限制
安全性 无安全启动(Secure Boot)机制 支持Secure Boot,防止恶意引导程序
用户界面 文本菜单,仅支持键盘操作 图形化界面,支持鼠标和触摸操作
扩展性 驱动程序固化在BIOS中,难以更新 支持模块化驱动,可动态加载更新

四、现代BIOS的现状

  • 随着UEFI(统一可扩展固件接口)的普及,传统BIOS已逐渐被取代,但在以下场景中仍有应用:
    • 老旧计算机(如2010年前的设备)或嵌入式系统。
    • 部分服务器或工业设备为兼容legacy模式保留BIOS支持。
  • 现代主板通常同时支持"Legacy BIOS"和"UEFI"两种引导模式,用户可在BIOS设置中切换。

总结

BIOS是计算机启动的"基石",在硬件与系统间扮演着桥梁角色,但受限于技术架构,逐渐被更先进的UEFI替代。理解BIOS的原理,有助于排查计算机启动故障、优化硬件配置,以及理解现代固件技术的演进逻辑。

相关推荐
上天_去_做颗惺星 EVE_BLUE1 天前
【新 Linux 服务器上手全攻略】系统巡检、存储规划与开发环境初始化
linux·运维·服务器·ubuntu·macos·centos
das2m1 天前
WSL2 Ubuntu 配置完美版 docker compose 指南
linux·ubuntu·docker
MIXLLRED1 天前
Ubuntu 22.04 + ROS2 Humble 上部署 ScaRF‑SLAM指南
ubuntu·slam·ros2·离线建图
FlyWIHTSKY1 天前
JavaScript 和 TypeScript 分别是什么,可以相互写吗
javascript·ubuntu·typescript
iRayCheung1 天前
virtualbox安装的ubuntu系统跑numpy报错
linux·ubuntu·numpy
丑过三八线1 天前
Systemd Cgroup 驱动详解
linux·ubuntu·容器
指尖在键盘上舞动1 天前
RKNN 模型部署:onnx转rknn后精度下降 —— 精度调优与问题排查
python·ubuntu·rk3588·rknn·onnx·npu
2601_961194021 天前
考研专业课在哪里参加考试|考点|流程|资料已整理
linux·考研·ubuntu·缓存·centos·负载均衡
dust_and_stars1 天前
ubuntu24 suspend以后重新打开,桌面打不开了
ubuntu
半壶清水2 天前
ubuntu下利用ns-3 + NetAnim搭建可视化路由选路过程的方法
linux·运维·ubuntu