视频字幕
操作系统引导是计算机启动过程中最关键的环节。当我们按下电源键时,计算机就像一个刚刚苏醒的人,需要逐步恢复各种功能。首先硬件开始工作,然后固件程序启动,接着加载引导程序,最后操作系统内核完全运行。这个过程虽然只需要几十秒,但包含了复杂的硬件检测、程序加载和系统初始化步骤。
操作系统引导过程包含四个主要阶段。第一阶段是硬件自检,也叫POST测试,检查CPU、内存、硬盘等硬件是否正常工作。第二阶段加载BIOS或UEFI固件程序,这些程序负责初始化硬件设备。第三阶段执行引导加载程序,它负责找到并加载操作系统。最后第四阶段启动操作系统内核,系统正式开始运行。
引导程序是连接硬件和操作系统的桥梁。它通常位于硬盘的第一个扇区,也就是主引导记录MBR,大小只有512字节。虽然体积很小,但作用巨大。它的主要任务是在系统启动时,找到硬盘上的操作系统内核文件,将其加载到内存中,然后把控制权交给操作系统。就像一个向导,指引计算机找到正确的操作系统。
现代计算机引导技术主要有两种:传统的BIOS和现代的UEFI。传统BIOS采用16位模式运行,只支持最大2TB的硬盘,界面是文本模式,启动速度相对较慢,使用MBR分区表。而现代UEFI则采用32位或64位模式运行,支持超大容量硬盘,提供图形化界面,启动速度更快,并且使用更先进的GPT分区表。UEFI已经成为现代计算机的主流选择。
BIOS或UEFI是固化在主板上的固件程序,是系统启动的第一步。当按下电源键后,BIOS首先执行POST加电自检,检查CPU、内存、硬盘等硬件组件是否正常工作。然后初始化各种硬件设备,检测可用的启动设备,并根据预设的启动顺序确定从哪个设备启动。最后定位并加载主引导记录,为后续的引导加载器做准备。
主引导记录MBR是硬盘启动的关键,位于硬盘的第0扇区,总共512字节。它包含三个重要部分:第一部分是引导代码区,占446字节,存放实际的引导程序代码;第二部分是分区表,占64字节,记录硬盘的分区信息;第三部分是结束标志,占2字节,固定值为0x55AA,用于标识这是一个有效的引导扇区。BIOS会将整个MBR加载到内存地址0x7C00处并开始执行。
引导加载器如GRUB采用多阶段加载机制来启动操作系统。第一阶段Stage1位于MBR的446字节中,它的主要任务是加载Stage1.5。Stage1.5包含文件系统驱动程序,能够理解不同的文件系统格式,并定位Stage2文件的位置。Stage2是完整的引导程序,提供图形化的操作系统选择菜单,负责加载内核映像和初始化内存盘,并向内核传递启动参数,最终将控制权交给操作系统内核。
内核被加载到内存后,开始执行复杂的初始化过程。首先进行内存管理初始化,设置页表和虚拟内存系统。然后启动进程调度器,创建系统的第一个进程。接着加载各种设备驱动程序,初始化硬件设备使其能够正常工作。随后挂载根文件系统,建立文件访问机制。最后启动init进程,这是用户空间的第一个进程,负责启动各种系统服务。至此,操作系统完成引导过程,用户界面出现,系统正式可用。