1 开机启动电源(加点自检 POST)
POST:硬件检测,读取ROM(例如:CMOS)芯片中的BIOS程序(basic input and output system)。其实,能够被CPU寻址的物理储存空间由两个部分组成:ROM(只读内存) + RAM(随机内存)。那么BIOS程序就能够识别磁盘设备,去读取MBR中的BootLoader
检查电脑硬件的问题,对于严重的问题则停机,对于故障则给出提示。
2 完成这个阶段之后,然后进入下一个阶段BIOS( 首先BIOS下面有ROM芯片(,是用于计算机开机过程中各种硬件设备的初始化和检测的芯片)BIOS会对计算机的硬件进行检查,并且设置一个启动顺序,这里以启动流程为例,第一个启动的设备是硬盘设备)
3 启动硬盘 (BIOS程序会读取硬盘中的MBR中的grub1阶段的程序,这个程序就是bootloader程序,并且读取MBR之后的第一个扇区 512字节 读取前446bit 如果是说明这个引导有效 (grub1.5阶段程序),让grub1阶段能够识别grub2阶段所在的分区上的文件系统)
注释:BOOT Sequence:既然可以识别磁盘设备、网卡设备、光驱设备,然后在选择的引导次序,可以是光盘启动、硬盘启动、网卡启动、U盘启动等。选择一个有引导程序的设备,而这个引导设备就是BootLoader,叫做引导加载器。这个BootLoader会给用户提供一个图形化窗口,让用户选择不同的系统的内核。只要用户选择了内核,就会将内核加载到RAM中,然后解压、展开,此时内核就运行在内存了。而对于有MBR分区表的硬盘来说,这个BootLoader程序就在MBR。MBR位于磁盘的0扇区,因为每一个扇区是512字节,那么前446个字节是BootLoader,后64个字节是分区表,最后两个字节是55AA,表示MBR有效。因为MBR表中的存储空间非常小,因此grub引导程序将其分为了两段,第一段是就在BootLoader中,而第二段程序在磁盘上,因此,对于grub而言,BootLoader中的程序是grub程序的第一阶段,grub的第一阶段是用来加载grub的第二阶段,grub的第二阶段位于/boot/grub目录下,由第二阶段的程序再去加载内核。
4 grub2在硬盘的