在给自己的电脑装系统的时候,都会遇到uefi引导和legacy引导方式的选择,装系统就要知道这俩种引导方式的区别。
1、 UEFI引导启动模式 与 legacy引导启动模式
legacy引导启动模式: 就是这么多年来PC一直在使用的启动方式(从MBR中加载启动程序),UEFI BIOS作为一种新的BIOS自然也应该兼容这种老的启动方式;
UEFI启动模式: UEFI BIOS下新的启动技术。如果你的PC在UEFI启动模式下预装了Win8,你会发现有两个很小的隐藏分区。一个叫ESP(EFI系统分区),另一个MSR(Microsoft保留分区,通常为128MB)。MSR是windows要求的。ESP对UEFI启动模式很重要,UEFI的引导程序是以后缀名为.efi的文件存放在ESP分区中的,ESP分区采用fat32文件系统。此外,可能还存在一个小分区叫WinRE Tools,这个是win8的恢复分区,体积也很小。所以千万不要把这三个分区删了。
因此第一个关键问题就是确定自己的启动模式,方法是进入BIOS,然后你会发现有一项叫”boot mode”,选中”UEFI boot”就是UEFI启动模式,选中”Legacy boot”就是Legacy启动模式。
2、 UEFI启动模式只支持64位的系统,预装的win8是64位的, Ubuntu(乌班图)是一个以桌面应用为主的Linux操作系统,也需要64位的。
3、 UEFI BIOS 和 Legacy BIOS。我们都知道可以在传统的bios中调整设备的启动优先级,UEFI BIOS在UEFI启动模式下不但可以调整设备的优先级,还可以调整设备中引导程序的优先级,安装完ubuntu之后,你再进BIOS就会发现多了一个可选择的启动项叫ubuntu。此外,UEFI BIOS也引入了一些新的技术,例如Fast boot和secure boot,当然后面一项完全是用来坑爹的。
4、 UEFI启动模式下如何从u盘或移动硬盘引导
只要u盘或移动硬盘上有一个fat32的分区,分区的根目录下有个文件夹叫EFI,UEFI就会自动去查找相应的启动文件(.efi)
如果你刚制作了ubuntu(kylin)-13.04-64位的启动u盘,可以打开它,你会发现分区的文件系统是fat32,确实有一个EFI文件夹,进去看看就是各种.efi引导文件(这里再次强调64位,32位下你是找不到这个文件夹的)。因此现在想制作可启动的u盘或移动硬盘就简单了,只需要复制粘贴就行了。
Legacy BIOS Boot 是如何启动或引导的
当系统首次引导时,或系统被重置时,处理器会执行一个位于已知位置处的代码。这个位置在基本输入 / 输出系统(BIOS) 中。CPU 会调用这个重置向量来启动一个位于闪存/ROM 中的已知地址处的程序。通常,它执行一个启动自测(POST)来检查机器。最后,它从引导驱动器上的主引导记录(MBR)加载第一个扇区。
引导程序就位于 MBR 第一个扇区里面。此时引导程序就被装入 RAM 并执行。这个引导加载程序在大小上小于 512 字节(一个扇区)。BIOS 自检完成之后,将 MBR 的代码读入内存,管理权交给 MBR , MBR 再读取 DPT ,从 DPT (Disk Partition Table,硬盘分区表占据 MBR 扇区的64个字节(偏移01BEH–偏移01FDH))找出硬盘的所有分区哪一个是激活的主分区。到这里为止,所有系统都是一样的。下面就有区别了。 DPT读完找到主分区之后然后找到这个主分区的 PBR (Partition Boot Record分区引导记录),PBR位于激活主分区的第一个扇区。安装不同操作系统的时候 PBR 是会被改变的, XP 的 PBR 写死的代码是去找 NTLDR 。而 Vista 和 7 的 PBR 里写进的就是去找 Bootmgr 。
这个时候显示器上还没有显示引导管理器的界面。 Bootmgr 被找到之后管理权就交到了 Bootmgr。 Boot Manager 首先从 BCD 中读取 Boot Manager 菜单的语言版本信息,然后再调用 BOOTMGR 与相应语言的 BOOTMGR.EXE.MUI 组成相应语言的启动菜单,之后才会在显示器上显示引导管理器,也就是选择多操作系统的那个文字界面。最后,当你选择了相应的操作系统,这里是 Win7 或 8 (如果选择 XP, 会转入 XP 的启动流程,找到 XP 的NTLDR 然后启动), Bootmgr 就去寻找系统分区(系统分区和主分区的概念不是一样的哦)Windows/System32 下的 Winload.exe 加载操作系统内核。
UEFI是新式的BIOS,legacy是传统BIOS。你在UEFI模式下安装的系统,只能用UEFI模式引导;同理,如果你是在Legacy模式下安装的系统,也只能在legacy模式下进系统。UEFI只支持64为系统且磁盘分区必须为GPT模式,传统BIOS使用INT13中断读取磁盘,每次只能读64KB,非常低效,而UEFI每次可以读1MB,载入更快。此外,Win8,更是进一步优化了UEFI支持,号称可以实现瞬时开机。