剖析Linux系统启动的后台全过程

热度26票  浏览35次 【共0条评论】【我要评论 时间:2009年8月12日 00:27

8w2be%};W6B0_ E?g0  4. process

E u9w)i'F X4\0

,G [v4]r-w NY)C0  process为具体的执行程序。程序后面可以带参数。私募社区 - 私募股权投资知识学习网 - www.simu001.cnCs'`fV x6pI&VF

私募社区 - 私募股权投资知识学习网 - www.simu001.cn wD^v0H6uo7}

  第三部分:系统初始化私募社区 - 私募股权投资知识学习网 - www.simu001.cn}a TWwf

私募社区 - 私募股权投资知识学习网 - www.simu001.cnUQ"Wf*`6o

  在init的配置文件中有这么一行:私募社区 - 私募股权投资知识学习网 - www.simu001.cn} hY:lt*K

9lxt+f8l^A0  si::sysinit:/etc/rc.d/rc.sysinit私募社区 - 私募股权投资知识学习网 - www.simu001.cn+iR } F~D0^

私募社区 - 私募股权投资知识学习网 - www.simu001.cn:b^ IOg%H

  它调用执行了/etc/rc.d/rc.sysinit,而rc.sysinit是一个bash shell的脚本,它主要是完成一些系统初始化的工作,rc.sysinit是每一个运行级别都要首先运行的重要脚本。它主要完成的工作有:激活交换分区,检查磁盘,加载硬件模块以及其它一些需要优先执行任务。

4z/x'P*UIy0 私募社区 - 私募股权投资知识学习网 - www.simu001.cn4k)EVvCxZ&C0f

  rc.sysinit约有850多行,但是每个单一的功能还是比较简单,而且带有注释,建议有兴趣的用户可以自行阅读自己机器上的该文件,以了解系统初始化所详细情况。由于此文件较长,所以不在本文中列出来,也不做具体的介绍。当rc.sysinit程序执行完毕后,将返回init继续下一步。私募社区 - 私募股权投资知识学习网 - www.simu001.cn+yK0`zz#C

7{&xckVpm:z0  第四部分:启动对应运行级别的守护进程私募社区 - 私募股权投资知识学习网 - www.simu001.cn)O:K3_ U eJ

*qe7H Gi:F8R(k0H(R0  在rc.sysinit执行后,将返回init继续其它的动作,通常接下来会执行到/etc/rc.d/rc程序。以运行级别3为例,init将执行配置文件init tab中的以下这行:

k g6S)_x#L3\l#tm0 私募社区 - 私募股权投资知识学习网 - www.simu001.cnwRL;P }D2Z#x4oY

  l5:5:wait:/etc/rc.d/rc 5

x+`y8C'}B7]7a0 私募社区 - 私募股权投资知识学习网 - www.simu001.cn,Vw)B6FPE.a&]#l

  这一行表示以5为参数运行/etc/rc.d/rc,/etc/rc.d/rc是一个Shell脚本,它接受5作为参数,去执行 /etc/rc.d/rc5.d/目录下的所有的rc启动脚本,/etc/rc.d/rc5.d/目录中的这些启动脚本实际上都是一些链接文件,而不是真正的rc启动脚本,真正的rc启动脚本实际上都是放在/etc/rc.d/init.d/目录下。而这些rc启动脚本有着类似的用法,它们一般能接受 start、stop、restart、status等参数。私募社区 - 私募股权投资知识学习网 - www.simu001.cn+DD&t])|P

私募社区 - 私募股权投资知识学习网 - www.simu001.cn%U k'TWnk%T

  /etc/rc.d/rc5.d/中的rc启动脚本通常是K或S开头的链接文件,对于以以S开头的启动脚本,将以start参数来运行。而如果发现存在相应的脚本也存在K打头的链接,而且已经处于运行态了(以/var/lock/subsys/下的文件作为标志),则将首先以stop 为参数停止这些已经启动了的守护进程,然后再重新运行。这样做是为了保证是当init改变运行级别时,所有相关的守护进程都将重启。

r;T/|w Y_@0
顶:2 踩:2
对本文中的事件或人物打分:
当前平均分:-0.7 (10次打分)
对本篇资讯内容的质量打分:
当前平均分:-0.67 (6次打分)
【已经有6人表态】
上一篇 下一篇
发表评论
换一张

网友评论仅供网友表达个人看法,并不表明本网同意其观点或证实其描述。

查看全部回复【已有0位网友发表了看法】

网络资源