Linux 启动过程有三个阶段:1. BIOS/UEFI 初始化2. 引导加载程序3. 内核阶段 [一] BIOS/UEFI 初始化 作用:完成硬件自检,并找到启动设备。 过程: 1. 计算机通电后,BIOS或 UEFI开始运行。2. 进行 POST(Power-On Self Test,自检),检查 CPU、内存、硬盘等硬件是否正常。3. 通过 Boot Sequence(启动顺序),寻找可引导的设备(如硬盘、U盘)。4. BIOS/UEFI 发现可引导设备后,读取设备的 MBR(Master Boot Record,主引导记录) 或 GPT(GUID Partition Table),找到 引导程序Bootloader(如 GRUB)。 [二]引导加载程序作用:提供菜单,让用户选择启动哪个内核,并加载 Linux 内核。 过程:1. 引导程序如GRUB 运行,开始引导操作系统,引导程序首先会向用户显示一个菜单列表,每个菜单项对应一个不同的操作系统选项。用户选择想要启动的操作系统后,系统会开始引导过程。2. 如果选择启动 Linux 时,引导程序会在内存中加载并解压 Linux 内核。3. 接着,Linux 内核会加载一个叫做 initrd(初始 RAM 磁盘)的文件,它是一个临时的内存文件系统。initrd 包含了一些必要的工具和内核模块,用于完成启动过程。4. 除了 initrd,一些 Linux 系统也使用 initramfs,它的作用和 initrd 类似,只不过它是 initrd 的继任者,相比之下更现代化一些。5. 接下来,系统会运行 linuxrc,这是一个可执行文件,它会探测硬盘和其他大容量存储设备,并加载相应的内核模块来驱动这些设备。 [三]内核阶段 作用:挂载根文件系统,启动init进程 过程:1. 在 Linux 启动过程中,内核阶段的关键任务是根据 linuxrc 探测到的结果,挂载真正的根文件系统。这个根文件系统就是系统的实际根目录"/"。用户能够看到的文件和子目录,实际上都位于这个根文件系统下。2. 接下来,内核会启动一个名为 init 的进程。这个进程是 Linux 启动时的第一个后台进程,它的PID是 1。init 进程是内核启动的第一个进程,所有其他的后台守护进程都是由 init 进程派生出来的。#计算机 #编程 #操作系统 #算法摘要:Linux 启动过程有三个阶段:1. BIOS/UEFI 初始化2. 引导加载程序3. 内核阶段 [一] BIOS/UEFI 初始化 作用:完成硬件自检,并找到启动设备。 过程: 1. 计算机通电后,BIOS或 UEFI开始运行。2. 进行 POST(Powe
来源:职场心灵导师