码迷,mamicode.com
首页 > 系统相关 > 详细

linux开机引导过程总览

时间:2018-01-08 01:19:42      阅读:257      评论:0      收藏:0      [点我收藏+]

标签:bios   成功   用户   传递   内存   ini   rip   distrib   sys   

简单的说,系统的启动过程如下:


1.开机自检:

按下电源按键后,计算机硬件会主动读取BIOS加载硬件信息并进行硬件的自我测试,然后系统会根据BIOS里的启动顺序读取第一个可启动的设备,从而移交系统控制权,大多数时候移交给本机硬盘。

2.MBR引导

当从本机硬盘中启动系统时,首先根据硬盘第一个扇区中MBR(Master Boot Record,主引导记录)的设置,将系统的控制权传递给包含操作系统引导文件的分区,或者直接根据
MBR记录中的引导信息调用启动菜单(如GRUB)。

3.GRUB菜单

启动过程中,每个引导装载程序使用的软件可能都不一样。目前各大linux distributions的主流为grub,但是早期默认使用LILO,包括现在有很多朋友喜欢使用spfdisk。当系统
控制权交给grub后,显示启动菜单供用户选择,并根据所选项(或者默认值)加载Linux内核文件,然后将系统控制权转交给内核。
4.加载Linux内核

linux内核是一个预先编译好的特殊二进制文件,介于各种硬件资源和系统程序之间,负责资源分配和调度。当加载内核到内存中,内核会检测所有硬件信息和加载适当的驱动
程序来使这部主机可以开始运行.。

5.init进程初始化
当内核检测和加载驱动成功后,将主动调用‘/sbin/int‘程序到内存中运行,(运行中的程序叫进程)init进程则负责完成一系列的系统初始化过程,最后等待用户登录。
(1)init会取得run-level信息;
(2)init执行/etc/rc.d/rc.sysinit文件来准备软件执行的操作环境(如网络、时区等);
(3)init执行run-level的各个服务的启动(script方式);
(4)init执行/etc/rc.d/rc.local文件;
(5)init执行终端机模拟程序mingetty来启动login进程,最后等待用户登录。

linux开机引导过程总览

标签:bios   成功   用户   传递   内存   ini   rip   distrib   sys   

原文地址:https://www.cnblogs.com/yuanhonli-xin/p/8232818.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!