Wednesday, March 03, 2010

GRUB启动过程

电脑开机后,bios寻找可以启动的设备(一般就是硬盘啦)然后就从主引导扇区载入初始启动程序---硬盘上最开始的512字节,最后就是把控制权交给它了。

主引导扇区包含了grub的第一阶段。

因为主引导扇区很小,所以第一阶段就是载入grub的下一阶段(这个是硬盘的其他地方)

第一阶段可以直接载入第二阶段,或者 载入1.5阶段

这个1.5阶段就是保存在硬盘最开始的不包括最前面的的512字节的30兆字节里。

1.5阶段载入2阶段。

2阶段得到控制权后,它就显示一个让用户选择操作系统的界面。

一般是图形化的菜单。

如果不是这样的话,或者用户想要直接控制的话,GRUB也有命令行。

这样用户就可以手动设置启动参数。

GRUb也可以设置成指定的时间过后自动载入特定的系统内核。


选好启动选项后,GRUB就把内核载入内存,并把控制权交个内核了。

或者,GRUb也可以通过连锁载入把启动过程交个另一个引导程序。

比如像windows这样不支持多启动的系统就是用这样的方法。

在这种情况下,GRUB里就保有其他系统的启动信息。

就像是从MBR里启动的一样。

这个就是另一个启动管理程序了,比如windows的启动菜单,可以进一步选择不支持多重启动的操作系统。

(如果是在已安装windows的基础上安装linux系统的话,这个过程是自动化的。这样不必修改就可以在保有现存的系统,包括各种版本的windows系统)

No comments: