并行启动应用程序从而加速 Linux 的引导

豆豆网   技术应用频道   2007年05月12日  【字号: 收藏本文

本文详细介绍并行启动应用程序从而加速 Linux 的引导

  内核引导

  找到引导设备后,开始 Linux 内核引导过程。这个过程发生在两个阶段(大约) —— 第一阶段引导 和第二阶段引导。第一阶段包含了一个简单的引导加载程序(这可以在引导设备的主引导记录 MBR 中找到),其作用是加载第二阶段的引导加载程序。第一阶段的引导加载程序使用分区表来找到第二阶段的引导加载程序。第一阶段的引导加载程序对表进行扫描,查找活动分区;当加载程序找到分区时,就将第二阶段的引导加载程序加载到 RAM 中并调用它。

  在第二阶段的引导加载程序加载到 RAM 中之后,Linux 内核映像和初始 RAM 磁盘映像(initrd)也会被加载到 RAM 中。当调用内核时,它会自解压到高端内存中,并拷贝 initrd 以供稍后安装和使用。

  LILO 和 GRUB

  第一阶段的引导加载程序和第二阶段的引导加载程序通常被称为 LInux LOader (LILO)或 GRand Unified Bootloader(GRUB),这取决于您的系统使用的名称。

  内核引导过程通常相当复杂,不过却非常迅速,因为大部分代码都是使用系统的机器语言编写的。在内核引导序列的结尾,会启动 init 进程。由于 init 是 Linux 系统中创建的第一个进程,因此它是所有其他进程的祖先(所有的进程都是 init 的后代)。

  系统初始化

  init 进程 —— 本文的重点 —— 是内核引导过程完成时创建的第一个进程。Linux 使用了 init 进程来对组成 Linux 的服务和应用程序进行初始化。

  当 init 进程启动时,它会打开一个名为 /etc/inittab 的文件。这个文件是 init 的配置文件,定义了如何对系统进行初始化。这个文件还包含了有关出现电源故障时执行的操作(如果系统支持)、以及在检测到 Ctrl-Alt-Delete 键序列时应该如何反应的信息。请参看 清单 1 中该文件的简短片段,了解它所提供的内容。

来源:ibm    作者:M. Tim Jones    责编:豆豆技术应用

正在加载评论...