>>> 此贴的回复 >> 呵呵,到你看的这里的时候, kernel 已经启动完成了, /sbin/init 是应用层的程序, 和 kernel 不是一起的。
kernel 启动完成后,会主动将控制权移交给 /sbin/init,继续完成应用层的初始化,这也就是你看到的这几行代码。
这个程序不是 kernel 的一部分,任何人用任何语言都可以编写这个 /sbin/init 程序,你自己也可以编~ 不过虽说是如此,System V 对于 init 程序还是有个规范的,man init 就可以看到关于它所应该实现的功能的描述。 在我的 Linux(FC3) 上,/sbin/init 程序是 rpm 包 SysVinit-2.85-34 提供的。 因为 kernel 只是负责调用 init 程序,而对它的行为没有任何假设,因此理论上讲,你使用什么 init 程序都是不重要的。 事实上,根据我的观察,各个发行版自己都改过 init,这一点可以从启动时屏幕上打印出的信息中看到。
[ 关闭窗口 ]