启动流程¶
- BIOS或者启动固件加载并运行引导装载程序。
mar
uefi
grub - 引导装载程序在磁盘上找到内核映像,将其载入内存并启动。
- 内核初始化设备及其驱动程序。 在启动时,Linux内核的初始化过程如下:
- 检查CPU;
- 检查内存;
- 检测设备总线;
- 检测设备;
- 设置附加内核子系统(如网络等);
- 挂载root目录;
- 启动用户空间。
- 内核挂载root文件系统。
- 内核使用PID 1来运行一个叫init的程序,用户空间在此时开始启动。
- init启动其他的系统进程。
- init还会启动一个进程,通常发生在整个过程的尾声,负责用户登录。