boot

Bootloader

Booter

初始化硬件

Loader

加载操作系统到内存中,并且跳转到操作系统的代码运行

X86启动过程

  • 开机
  • CPU跳转到BIOS的物理地址处
  • BIOS进行系统自检
  • 找到所有bootable devices
  • 从MBR加载boot sector
  • BIOS将控制流返回给Bootloader

BIOS

Basic Input/Output System,是被固化在电脑主板上的ROM芯片中的一组程序,由于与硬件系统集成在一起,所以也被称为固件

Power-On Self-Test

如果硬件出现问题,主板会发出不同含义的蜂鸣

Boot Sequence

现代BIOS可以让用户选择哪个设备引导电脑,如光盘驱动器、硬盘、软盘、USB等

MBR

硬盘上第0磁头第0磁道第一个扇区被称为MBR,也就是Master Boot Record,即主引导记录,大小为512B,存放了预启动信息(Bootloader)、分区表信息

image-20230320101742795

启动代码和数据

占用了MBR的前446B

分区表

分区表由四个分区项组成,每个分区项数据为16B,记录了启动时所需要的分区参数,占用了分区表的第447~510B

MBR限制了只能有四个主分区,系统必须装在主分区上面

硬盘分区有三种:主磁盘分区、扩展磁盘分区、逻辑分区

一个硬盘满足:主磁盘分区+扩展磁盘分区不能超过4个,主磁盘分区至少有一个,逻辑分区可以有若干个;主分区只能有一个是激活的,其余都是未激活的

分出主分区后,其余部分可以分成扩展分区,一般是剩下部分全部分成扩展分区,也可以不全分,剩下的部分就浪费了

扩展分区不能直接使用,必须分成若干逻辑分区,所以逻辑分区都是扩展分区的一部分

磁盘容量=主分区容量+扩展分区容量

扩展分区=各逻辑分区容量之和

幻数

后面紧跟着两个字节AA和55被称为幻数(Magic Number)

BIOS读取MBR时总是检查最后是不是有这两个幻数,如果没有就被认为是一个没有被分区的硬盘