CMOS的主要功能为记录主板上面的重要参数, 包括系统时间、CPU 电压与频率、各项设备的 I/O 地址与 IRQ 等,因为这些数据的记录要花费电力,所以主板上面才有电池。 BIOS 为写入到主板上某一块 flash 或EEPROM 的程序,他能够在开机的时候执行,以加载 CMOS 当中的参数, 并尝试调用储存装置中的开机程序,进一步进入操做系统当中。BIOS 程序也能够修改 CMOS中的数据,每种主板调用BIOS设定程序的按键都不一样,通常桌面计算机常见的是使用[del]按键进入 BIOS 设定画面。测试
是系统引导的两种方式,开机检测程序,读取在MBR或者GPT中的bootloader程序(grub)操作系统
- 加载CMOS信息
- 开机检测(POST):硬件初始化
- 读取开机管理程序(bootloader)
早期的 Linux 系统为了兼容于 Windows 的磁盘,所以使用的是支持 Windows 的 MBR(Master Boot Record, 主要开机纪录区) 的方式来处理开机管理程序与分区表!而开机管理程序纪录区与分区表则 统统放在磁盘的第一个扇区,这个扇区一般是 512bytes 的大小 (旧的磁盘扇区都是 512bytes 喔!), 因此说,第一个扇区 512bytes 会有这两个数据:.net
- 主要启动记录区(Master Boot Record, MBR):能够安装开机管理程序的地方,有 446 bytes
- 分区表(partition table):记录整颗硬盘分区的状态,有 64 bytes 因为分区表所在区块仅有 64 bytes 容量,所以最多仅能有四组记录区,每组记录区记录了该区段的启 始与结束的磁柱号码。
- 主分区不能超过四个,引入扩展分区和逻辑分区的概念;
- 不能加载超过两T的磁盘[MBR 不超过2T限制](https://blog.csdn.net/hyy5801965/article/details/51136395 "MBR 不超过2T限制") ;
- 以磁柱为单位进行分区
- 扇区大小为4K
- 没有了主分区大小不超过4个的限制
- 对扇区直接进行分区操做
- 提供选单:用户能够选择不一样的开机项目,这也是多重引导的重要功能!
- 载入核心文件:直接指向可开机的程序区段来开始操做系统;
- 转交其余 loader:将开机管理功能转交给其余 loader 负责