BIOS 是一个写入到主板上的韧体(韧体就是写入到硬件上癿一个软件程序)。 这个 BIOS 就是在开机的时候,计算机系统会主动执行的第一个程序了,接下来 BIOS 会去分析计算机里面有哪些储存设备,我们以硬盘为例,BIOS 会依据使用者的设定去取得能够开机的硬盘, 并且到该硬盘里面去读取第一个扇区的 MBR 位置。 MBR 这个仅有 446 bytes 的硬盘容量里面会放置最基本癿开机管理程序, 此时 BIOS 就功成圆满,而接下来就是 MBR 内的开机管理程序的工作了。这个开机管理程序的目的是在加载(load)核心档案, 由于开机管理程序是操作系统在安装时候所提供的,所以他会认识硬盘内的文件系统格式,因此就能够读取核心档案, 然后接下来就是核心档案的工作,开机管理程序也功成圆满,之后就是大家所知道的操作系统的任务啦!
简单说,整个开机流程到操作系统之前的动作应该是这样:
1. BIOS:开机主动执行的韧体,会认识第一个可开机装置;
2. MBR:第一个可开机装置的第一个扇区内的主要启动记录区块,内含开机管理程序;
3. 开机管理程序(boot loader):一支可读取核心档案来执行的软件;
4. 核心档案:开始操作系统的功能...
由上面说明我们会知道,BIOS 和 MBR 都是硬件本身会支持的功能, Boot loader 则是操作系统安装在 MBR 上面的一套软件了。因为MBR 仅有 446 bytes 而已,所以这个开机管理程序是非常小而美的。 这个 boot loader 主要任务有底下这些项目:
提供选单:用户可以选择不同的开机项目,这也是多重引导的重要功能!
载入核心档案:直接指向可开机的程序区段来开始操作系统;
转交其他 loader:将开机管理功能转交给其他 loader 负责。上面前两点还容易理解,但是第三点很有趣喔!那表示你的计算机系统里面可能具有两个以上的开机管理程序呢! 有可能吗?我们的硬盘不是只有一个 MBR 而已?是没错啦!但是开机管理程序除了可以安装在 MBR 之外, 还可以安装在每个分割槽的启动扇区(boot sector)!这个特色造就了『多重引导』的功能!