FreeBSD 引导过程

2009-05-13 08:33:43来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折


                               
概述
在 x86 硬件体系中,基本输入/输出系统 (BIOS) 负责加载操作系统,
为了做到这一点,BIOS 在磁盘上寻找主引导记录 (MBR),而 MBR
必须在放置的磁盘的特定位置。BIOS 有足够的能力来读入和运行 MBR, 且假使地认为 MBR
能完成加载操作系统的剩余任务, MBR可能需要BIOS的帮助。
  在MBR中的代码通常被提为引导管理器,
尤其是与用户交互的那类。这一类引导器通常有更多代码位于磁盘第一 轨道或在操作系统的文件系统中。 (引导管理器有时也被称为boot loader,
但是FreeBSD对后面的引导阶段才使用这个术语。) 流行的引导管理器包括boot0(亦称Boot Easy,标准的 FreeBSD
引导管理器)、 Grub、GAG,以及 LILO。 (只有boot0能装得进MBR。)
  如果您只安装了一个操作系统,那么一个标准的 MBR 就足够了。 这个 MBR
先在磁盘上搜索可引导的(亦称“活动的”)分区,
然后运行分区上的代码以加载操作系统的其它部分。 MBR由
fdisk(8)
安装,是一个缺省的MBR。相关文件为 /boot/mbr。
  如果您在磁盘上安装了多个操作系统那么您可以安装一个不同的
引导管理器,它能显示一张操作系统的列表,您能从中选择启动哪个。
这样的两种引导器将在下一小节中讨论。
  启动系统的剩余部分被分为三个阶段。第一阶段由 MBR
执行,它只是使计算机进入特定的状态然后执行第二阶段。
第二阶段稍微干得多一些。第三阶段完成加载操作系统的任务。 工作被分为三个阶段是因为 PC
标准对第一第二阶段执行的程序的大小有所限制。 把这些任务连在一起使得 FreeBSD
可以提供更大伸缩性的加载器 (loader)。
  然后内核启动,它开始探测设备并初始化它们。
一旦内核引导进程完成任务,内核将控制权交给用户进程
init(8)

它确认磁盘是否处于可用状态。
init(8)
然后开始用户级资源配置: 加载文件系统启动网卡,及粗略地启动所有 FreeBSD
系统加载时经常运行的进程。
引导管理器和各引导阶段
1. The Boot Manager
  在MBR或引导管理器中的代码有时被提为引导过程的 阶段0。这一小节半夜前面提到引导器中的两种: boot0和LILO。
boot0引导管理器:. 由 FreeBSD 的安装程序以及 boot0cfg(8) 所安装的 MBR,
默认基于 /boot/boot0。 (程序boot0非常简单, 由于在MBR中的程序只能有446字节长, 分区表和MBR末端的0x55AA标识也要挤占一些空间。) 如果你已经安装boot0 并且有多个操作系统在你的硬盘上, 那么你如果您安装了 FreeBSD
MBR 而且安装了多个操作系统, 则会在系统启动时看到类似下面的提示:
例  boot0 截屏
F1 DOS
F2 FreeBSD
F3 Linux
F4 ??
F5 Drive 1
Default: F2
  目前已经知道一些其它操作系统,特别是 Windows® , 会以自己的 MBR 覆盖现有 MBR。
如果发生了这种事情, 或者您想用 FreeBSD 的 MBR 覆盖现有的 MBR,您可以使用以下的命令:
# fdisk -B -b /boot/boot0 device
  device 是要写入 MBR 的设备名,比如 ad0 代表第一个 IDE 磁盘,ad2
代表第二个 IDE 控制器上的第一个 IDE 磁盘, da0 代表第一个
SCSI 磁盘,等等。 抑或,如果你需要一个自行配置的MBR,请使用
boot0cfg(8)

The LILO Boot Manager: 要想安装这个引导管理器并也用来引导FreeBSD,

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:关于pure-ftpd的不明白

下一篇:FreeBSD下常见的声卡的安装