下载此文档

a系统启动流程.docx


文档分类:IT计算机 | 页数:约10页 举报非法文档有奖
1/10
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/10 下载此文档
文档列表 文档介绍
系统启动流程
本章学习的要点:



*运行级别:
0 关机
1 不开启任何服务,只允许root用户登陆,单用户模式。用于系统维护。
2 不开启网络服务,开启部分服务,多用户模式
3 开启所有网络服务,完整的多用户模式,也叫字符模式
4 自定义模式
5 跟3运行级别类似,多一个图形系统
6 重新启动
*破密码

加载BIOS的硬件信息与进行自我测试,并依据设置取得第一个可启动的设备
(第一个扇区)
,驱动硬件设备
硬件驱动成功后,kernel会主动调用系统第一个进程—init进程
init执行/etc/
init执行run-level的各个服务的启动
init执行/etc/
init执行终端机模拟程序mingetty来启动login进程,等待用户登录
初始化BIOS
检测所有外置设备
寻找操作系统内核(BIOS中的设置,去磁盘的第1块磁盘的1磁道/柱面的第1个扇区或者去标记为启动分区的第一个扇区中寻找操作系统内核)
启动加载器(boot loader)
存放位置:MBR(master boot record)或partition中的boot sector
作用: 提供启动菜单
加载内核文件
转交控制权至其他loader

上图为grub启动加载器执行画面
加载操作系统内核和虚拟文件系统,驱动硬件设备

Linux内核会向BIOS查询硬件信息,并接手这些硬件设备的管理


必然需要驱动程序,驱动程序是以模块的形式存放在磁盘上,但此时内核尚未挂载也无法直接挂载磁盘,故无法驱动硬件设备
initrd—RAM disk(虚拟文件系统),提供disk、usb设备的驱动程序,且由grub直接加载
*注:硬件驱动程序分为静态驱动程序和动态驱动程序。静态驱动程序被编译在内核镜像文件中;动态驱动程序存放在磁盘上。而要驱动其他硬件设备需要先驱动磁盘~这就是为什么需要initrd的原因!

Linux尝试去挂在根文件系统(/etc/、/bin/、/sbin/、/lib、/dev)
这五个目录中存放着系统开机所需要的各种配置文件、命令执行文件、执行文件所需的链接库文件和设备文件。所以这五个目录一定要在根文件系统中
!
注:为什么要以只读的方式挂载?
启动过程中运行不太稳定,如果是以可读写的
:
安装适当的内核模块,以驱动其他硬件设备
启动存放在根文件系统中的init程序,以让init程序接手后面的启动工作

启动init服务
寻找init服务顺序:
先找/sbin/
然后/etc/init
再/bin/init
如果都找不到,如下图,最后执行/bin/sh
内核调用第一个进程àini

a系统启动流程 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数10
  • 收藏数0 收藏
  • 顶次数0
  • 上传人mh900965
  • 文件大小149 KB
  • 时间2018-01-14
最近更新