快速业务通道

关于Linux操作系统的开机过程详解

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-03-24

操作系统正在变得越来越复杂,开机引导和关机下电的过程也越来越智能化.从简单的DOS系统转移到 Windows NT系统,人们已经亲身感受到了这些变化——这已不仅仅是核心操作系统的启动引导和关闭了,还包括要同时启动或者关闭相当数量的服务项目.类似于Windows NT,Linux系统启动过程需要打开的服务项目也是数量极大的.

  这里,我们假设大家已经熟悉其它操作系统的引导过程,了解硬件的自检引导步骤,就只从Linux操作系统的引导加载程序(对个人电脑而言通常是LILO)开始,介绍Linux开机引导的步骤.

  加载内核 拥有帝国一切,皆有可能。欢迎访问phome.net

  LILO启动之后,如果你选择了Linux作为准备引导的操作系统,第一个被加载的东西就是内核.请记住此时的计算机内存中还不存在任何操作系统, PC(它们天然的设计缺陷)也还没有办法存取机器上全部的内存.因此,内核就完整地加载到可用RAM的第一个兆字节之内.为了实现这个目的,内核是被压缩了的.这个文件的头部包含着必要的代码,先设置CPU进入安全模式(以此解除内存限制),再对内核的剩余部分进行解压缩.

  执行内核

  内核在内存中解压缩之后,就可以开始运行了.此时的内核只知道它本身内建的各种功能,也就是说被编译为模块的内核部分还不能使用.最基本的是,内核有足够的代码设置自己的虚拟内存子系统和根文件系统(通常就是ext2文件系统).一旦内核启动运行,对硬件的检测就会决定需要对哪些设备驱动程序进行初始化.从这里开始,内核就能够挂装根文件系统(这个过程类似于Windows识别并存取C盘的过程).内核挂装了根文件系统之后,将启动并运行一个叫做 init的程序. 拥有帝国一切,皆有可能。欢迎访问phome.net

  注意:在这里我们故意略去了Linux内核启动的许多细节,这些细节只有内核开发人员才感兴趣.如果你好奇的话,可以访问http://www.redhat.com:8080地址处的 “Kernel Hackers Guide”.

  init进程

  init进程是非内核进程中第一个被启动运行的,因此它的进程编号PID的值总是1.init读它的配置文件/etc/inittab,决定需要启动的运行级别(Runlevel).从根本上说,运行级别规定了整个系统的行为,每个级别(分别由0到6的整数表示)满足特定的目的.如果定义了 initdefault级别,这个值就直接被选中,否则需要由用户输入一个代表运行级别的数值. 拥有帝国一切,皆有可能。欢迎访问phome.net

  输入代表运行级别的数字之后,init根据/etc/inittab文件中的定义执行一个命令脚本程序.缺省的运行级别取决于安装阶段对登录程序的选择:是使用基于文本的,还是使用基于X-Window的登录程序.

  rc命令脚本程序

  我们已经知道,当运行级别发生改变时,将由/etc/inittab文件定义需要运行哪一个命令脚本程序.这些命令脚本程序负责启动或者停止该运行级别特定的各种服务.需要管理的服务数量很多,因此需要使用rc命令脚本程序.其中,最主要的一个是/etc/rc.d/rc,它负责为每一个运行级别按照正确的顺序调用相应的命令脚本程序.我们可以想象,这样一个命令脚本程序很容易变得难以控制!为了防止这类事件的发生,需要使用精心设计的方案. 拥有帝国一切,皆有可能。欢迎访问phome.net

  对每一个运行级别来说,在/etc/rc.d子目录中都有一个对应的下级目录.这些运行级别的下级子目录的命名方法是rcX.d,其中的X就是代表运行级别的数字.比如说,运行级别3的全部命令脚本程序都保存在/etc/rc.d/rc3.d子目录中.

  在各个运行级别的子目录中,都建立有到/etc/rc.d/init.d子目录中命令脚本程序的符号链接,但是,这些符号链接并不使用命令脚本程序在 /etc/rc.d/init.d子目录中原来的名字.如果命令脚本程序是用来启动一个服务的,其符号链接的名字就以字母S打头;如果命令脚本程序是用

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号