一台机器上多操作系统安装的原理
一、基本概念
主引导记录(Master Boot Record,MBR):512字节,位于硬盘的第一个扇区;可存放一小段程序及主分区表。
扩展引导记录(Extended Boot Record,EBR):512字节,位于扩展分区的第一个扇区,存放逻辑分区信息。
分区引导区(Partition Boot Record,PBR):512字节,位于每个非扩展主分区及每个逻辑分区的第一个扇区;可存放小段程序。
活动分区(Active Partition):可将所有主分区和逻辑分区中的一个标识为Active,表示系统启动时即加载运行其PBR程序的分区。
二、一般单操作系统启动过程
1. BIOS加载并启动保存在硬盘MBR中的引导程序,该引导程序一般在操作系统安装时写入
2. MBR引导程序扫描所有分区表,找出活动分区(Windows MBR程序只会在MBR中的分区表中查找活动分区,即Windows只能安装在主分区;Linux无此限制)
3. MBR引导程序加载并启动保存在活动分区PBR中的引导程序
4. 活动分区PBR中的引导程序加载并启动安装在其上的操作系统(例如对Win98,定位并执行io.sys;对WinXP,定位并执行 ntoskrnl.exe;对于Linux,定位并执行vmlinuz-xxx内核映像)。显然PBR引导程序与操作系统密切相关,一般在操作系统安装时 写入。
总结为:BIOS --> MBR code -- > PBR code --> OS files
三、修改标准过程实现按需启动指定操作系统
使用Boot Loader软件置换MBR中的引导程序或PBR中的引导程序,如Windows的NT Boot Loader,Linux下的Lilo、Grub等。Windows NT Boot Loader一般用于在一台机器上安装多个Windows系统;Lilo或Grub用于在一台机器上安装多个Linux系统或同时安装Linux和 Windows系统。
Lilo:http://www.linux.org/docs/ldp/howto/LILO.html
Grub:http://www.gnu.org/software/grub/
Windows NT Loader:http://www.tburke.net/info/ntldr/ntldr_hacking_guide.htm
四、具体步骤
Google "dual-boot"或"multibooting"(http://www.google.com/search?hl=en&newwindow=1&q=dual-boot+%7C+multibooting&btnG=Search)。了解基本原理后,对具体操作步骤自然会得心应手。