Linux是怎么启动的?
几乎每个软件工程师都用过 Linux,但并不是每个人都知道它的启动过程,让我们深入了解一下。
下图给我们展示了具体步骤。
第1步
当我们打开电源时,BIOS(基本输入/输出系统,Basic Input/Output System)或 UEFI(统一可扩展固件接口,Unified Extensible Firmware Interface)固件会从非易失性内存中加载,并执行 POST(开机自检,Power On Self Test)。
第2步
BIOS/UEFI 检测连接到系统的设备,包括 CPU、内存和存储设备。
第3步
选择一个启动设备来启动操作系统。
可以是硬盘、网络服务器或 CD ROM。
第4步
BIOS/UEFI 运行引导加载器 (GRUB),它提供了一个选择操作系统或内核功能的菜单。
第5步
内核准备就绪后,我们现在切换到用户空间。
内核启动 systemd 作为第一个用户空间进程,负责管理进程和服务、探测所有剩余硬件、挂载文件系统并运行桌面环境。
第6步
系统启动时,systemd 默认激活 default.target 单元。
同时还会执行其他分析单元。
第7步
系统运行一组启动脚本并配置环境。
第8步
用户将看到一个登录窗口。
系统现已准备就绪。