Linux启动过程
来源:互联网 发布:json.dumps python 编辑:程序博客网 时间:2024/05/21 09:39
按下电源按钮的直到欢迎页出来之后,linux总共做的事可以分为五步来完成。
1、 BIOS加电自检:
加电自检,检测硬件设备。然后按照cmos上面的顺序来搜索处在活动状态下的可以引导的设备。可以是光驱、软盘、USB等。
2、 加载主引导加载程序(MBR):
主引导程序是一个512字节的映像。包含一点机器码还有一个小的分区。
主引导程序的任务就是查找并且加载处在硬盘分区上的次引导程序。通过分区表查找活动分区,并将处在活动分区的次引导加载程序读取到内存里面运行。
3、 加载次引导记载程序(GRUB)
次引导加载程序只要就是加载linux内核。
上一阶段结束之后次引导加载程序就会在内存里面跑起来。就会出现GRUB图形界面,让用户选择加载什么样的内核。
4、 linux内核映像:
用户选择要加载的内核之后,次引导加载程序(GRUB)就会根据/boot/grub.conf配置文件中所设置的信息,从/boot/所在的分区上读取Linux内核映像,然后把内核映像加载到内存中并把控制权交给Linux内核。
linux内核获得控制权之后开始干自己的事
检测硬件
解压缩自己并安装必要驱动
初始化与文件系统相关的虚拟设备,LVM或RAID
装载根文件系统,挂在根目录下面
完成之后,linux在进程空间里面加载init程序,下面轮到init干活
init进程
init是所有进程的发起者和控制者,所有的进程都由此衍生。
init进程获得控制权之后,它会执行/etc/rc.d/rc.sysinit脚本,根据里面的代码设置环境变量、网络、启动swap、检查并挂载文件系统、执行其他初始化工作。
至此,linux启动完成。
我们稍微总结一下:
首先是BIOS加电自检,之后加载主引导加载程序、次引导加载程序,最后就是linux内核映像,完了把控制权交给init进程,完成初始化工作。
swap分区是什么?
类似windows系统中的虚拟内存,当物理内存不够用的时候,使用swap中的内存。
转自:http://mp.weixin.qq.com/s?__biz=MzA3MDc1MzQ2NA==&mid=204516686&idx=1&sn=8f4e12823345d70076e9c0e460ab6d06&scene=5&srcid=1012txW9hXlV5j7NzdYitTqL#rd
- linux启动过程
- Linux启动过程综述
- Linux启动过程概述
- Linux启动过程综述
- Linux启动过程综述
- Linux启动过程综述
- Linux启动过程综述
- Linux启动过程
- Linux启动过程详解
- Linux服务器启动过程
- Linux启动过程综述
- linux启动过程综述
- Linux启动过程综述
- linux启动过程
- Grub--Linux启动过程
- Linux的启动过程
- Linux启动过程综述
- Linux启动过程
- NSUserDefaults 本地小量数据存储
- Java 复制大文件方式FileChannel 用法
- hihocoder 1241:Best Route in a Grid
- android Rom修改关于系统时间日期格式的修改
- iOS中多线程的使用
- Linux启动过程
- 标准模板库(五):STL算法函数介绍
- Centos6.5 安装教程
- Linux下定时执行脚本
- FastStone Capture 注册码
- 系统提供的几种UITableViewCell的样式
- 如何防止验证码接口被恶意攻击
- msyql 日志篇(二)日志的常用配置和原理
- javascript:理解try...catch...finally