第一步--加载 BIOS 当打开计算机电源 , 计算机会首先加载 BIOS 信息 ,BIOS 信息是如此的重要 , 以至于计算机必须在最开始就找到它 . 这是因为 BIOS 中包含了 CPU 的相关信息、设备启动顺序信息、硬盘信息、内存信息、时钟信息、 PnP 特性等等 . 在此之后 , 计算机心里就有谱了 , 知道应该去读取哪个硬件设备了 .
第二步--读取
MBR
硬盘上第
0
磁道第一个扇区被称为
MBR,
也就是
MasterBoot Record,
即主引导记录
,
它的大小是
512
字节
,
别看地方不大
,
可里面却存放了预启动信息、分区表信息
.
系统找到
BIOS
所指定的硬盘的
MBR
后
,
就会将其复制到
0×7c00
地址所在的物理内存中
.
其实被复制到物理内存的内容就是
Boot Loader,
而具体到你的电脑
,
那就是
lilo
或者
grub
了
.
第三步--
引导装载程序
Boot Loader
就是在操作系统内核运行之前运行的一段小程序
.
通过这段小程序
,
我们可以初始化硬件设备、建立内存空间的映射图
,
从而将系统的软硬件环境带到一个合适的状态
,
以便为最终调用操作系统内核做好一切准备
.
Boot Loader
有若干种
,
其中
Grub
、
Lilo
和
spfdisk
是常见的
Loader.
系统读取内存中的
grub
配置信息(一般为
menu.lst
或
grub.lst
)
,
并依照此配置信息来启动不同的操作系统
.
第四步--加载内核
根据
grub
设定的内核映像所在路径
,
系统读取内存映像
,
并进行解压缩操作
.
此时
,
屏幕一般会输出
“UncompressingLinux”
的提示
.
当解压缩内核完成后
,
屏幕输出
“OK,booting the kernel”.
系统将解压后的内核放置在内存之中
,
并调用
start_kernel()
函数来启动一系列的初始化函数并初始化各种设备
,
完成
Linux
核心环境的建立
.
至此
,Linux
内核已经建立起来了
,
基于
Linux
的程序应该可以正常运行了
.
第五步--用户层 init 依据 inittab 文件来设定运行等级
内核被加载后
,
第一个运行的程序便是
/sbin/init,
该文件会读取
/etc/inittab
文件
,
并依据此文件来进行初始化工作
.
其实
/etc/inittab
文件最主要的作用就是设定
Linux
的运行等级
,
其设定形式是
“
:
id:3:initdefault:”,
这就表明
Linux
需要运行在等级
3
上
.Linux
的运行等级设定如下:
0
:关机
1
:单用户模式
2
:无网络支持的多用户模式
3
:有网络支持的多用户模式
4
:保留
,
未使用
5
:有网络支持有
X-Window
支持的多用户模式
6
:重新引导系统
,
即重启
第六步--
init
进程执行
rc.sysinit
在设定了运行等级后
,
Linux系统
执行的第一个用户层文件就是
/etc/rc.d/rc.sysinit
脚本程序
,
它做的工作非常多
,
包括设定
PATH
、设定网络配置(
/etc/sysconfig/network
)、启动
swap
分区、设定
/proc
等等
.
第七步--启动内核模块
具体是依据
/etc/modules.conf
文件或
/etc/modules.d
目录下的文件来装载内核模块
.
第八步--执行不同运行级别的脚本程序
根据运行级别的不同
,
系统会运行
rc0.d
到
rc6.d
中的相应的脚本程序
,
来完成相应的初始化工作和启动相应的服务
.
第九步--执行
/etc/rc.d/rc.local
如果打开了此文件
,
里面有一句话
,
读过之后
,
你就会对此命令的作用一目了然:
# This script will be executed *after* all theother init scripts.
# You can put your own initialization stuff inhere if you don’t
# want to do the full Sys V style init stuff.
rc.local
就是在一切初始化工作后
,Linux
留给用户进行个性化的地方
.
你可以把你想设置和启动的东西放到这里
.
第十步--执行
/bin/login
程序
,
进入登录状态
此时
,
系统已经进入到了等待用户输入
username
和
password
的时候了
,
你已经可以用自己的帐号登入系统了
.
本文出自 “就是任性” 博客,请务必保留此出处http://9756063.blog.51cto.com/9746063/1616416
原文:http://9756063.blog.51cto.com/9746063/1616416
【说明】:本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!