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

Linux的启动流程,回答面试官自用

时间:2015-03-17 02:07:46      阅读:190      评论:0      收藏:0      [点我收藏+]

标签:面试官   终端机   linux   程序   电源   

技术分享

对于Linux的启动流程,是一个很复杂的过程

下面我来介绍一下:

    1、当我们按下电源键通电后,我们的BIOS会去检查硬件(CPU、显卡、硬盘、光驱等等)是否有问题,取得主机的各项硬件配置后,就会去找启动设备,这里说的就是硬盘,找到硬盘的MBR,这时候就将控制权交到MBR中

    2、MBR的功能就是去找到安装在MBR的grub菜单,也就是Boot loader,随后grub就把系统的kernel(内核)给引导出来了

    3、当boot loader读取到kernel文件后,会将内核加载到内存中,此时内核会取代BIOS的功能,重新检查一次硬件,在硬件驱动成功后,kernel会主动调用init进程

    4、接着就会初始化系统了,init会取得/etc/inittab的信息,获取系统的运行级别

    5、init执行/etc/rc.d/rc.sysinit文件来准备软件执行的操作环境(网络、时区等)

    6、init执行run-level的各个服务等

    7、init执行/etc/rc.d/rc.local文件

    8、init执行终端机模拟程序mingetty来启动login进程,最后就是等待用户登陆


①BIOS:Basic Input Output System,基本输入输出系统。

    它是一个韧体,写在主板上的一个ROM芯片的程序,CMOS就是ROM芯片,是一个硬件,要与之区别

②MBR:Master Boot Record,主引导记录。在硬盘的0柱面、0磁头、1扇区,称为主引导扇区

    有512个字节:主引导程序(Boot loader)占446个字节

                 分区表信息:占64字节

                 结束校验位:2字节(固定为22AA)

③GRUB:Grand Unified Bootloader,多重操作系统的启动管理器。GRUB可用于选择操作系统分区上的不同内核,也可用于向这些内核传递启动参数

/etc/inittab:这个配置文件会去默认运行哪个级别的系统,id:5:initdefault: 意思是默认运行5级别的系统

⑤/etc/rc.d/rc.sysinit:会设置主机名,启动网络服务,加载外部设备(鼠标、键盘)反正就是加载各项系统服务,设置系统环境。

本文出自 “小旭” 博客,请务必保留此出处http://loopholes.blog.51cto.com/9445813/1621294

Linux的启动流程,回答面试官自用

标签:面试官   终端机   linux   程序   电源   

原文地址:http://loopholes.blog.51cto.com/9445813/1621294

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