在工作中,经常有用户会问到UEFI或者Legacy模式下安装操作系统的问题,大部分问题是由于用户对UEFIBIOS还不够了解。今天就与大家一起分享下UEFIBIOS和LegacyBIOS的区别,希望能够给大家提供帮助。
一、UEFIBIOS是传统BIOS的继任者,是计算机硬件发展的产物
BIOS即BasicInput/OutputSystem,翻成中文是“基本输入/输出系统”,是一种所谓的“固件”,负责在开机时做硬件启动和检测等工作,并且担任操作系统控制硬件时的中介角色。
因为硬件发展迅速,传统式(Legacy)BIOS成为进步的包袱,最新的UEFI(UnifiedExtensibleFirmwareInterface)可扩展固件接口应运而生,成为LegacyBIOS的继任者。
二、UEFIBIOS的优点
UEFIBIOS是一种新型BIOS,相较于传统BIOS(LegacyBIOS)有以下优点:
1.启动速度快
UEFIBIOS启动和LegacyBIOS启动流程区别如下图所示,UEFI方式减少了BIOS的自检过程,因此能够缩短开机时间,给用户带来良好的开机体验。
2.安全性高
与BIOS显著不同的是,UEFI是用模块化、C语言风格的参数堆栈传递方式、动态链接的形式构建系统,它比BIOS更易于实现,容错和纠错特性也更强,从而缩短了系统研发的时间。更加重要的是,它运行于32位或64位模式,突破了传统16位代码的寻址能力,达到处理器的最大寻址,此举克服了BIOS代码运行缓慢的弊端。
3.图形化管理界面
UEFIBIOS的图形化管理界面使用户有更好的操作体验,其内置图形驱动功能,可以提供一个高分辨率的彩色图形环境,用户进入后能用鼠标点击调整配置,一切就像操作Windows系统下的应用软件一样简单。
4.可扩展性
UEFI将使用模块化设计,它在逻辑上分为硬件控制与OS(操作系统)软件管理两部分,硬件控制为所有UEFI版本所共有,而OS软件管理其实是一个可编程的开放接口。借助这个接口,主板厂商可以实现各种丰富的功能。
三、UEFIBIOS与传统BIOS设计上的区别:
1.编码99%都是由C语言完成;
2.一改之前的中断、硬件端口操作的方法,而采用了Driver/protocol的新方式;
3.将不支持X86实模式,而直接采用Flatmode(也就是不能用DOS了,现在有些EFI或UEFI能用是因为做了兼容,但实际上这部分不属于UEFI的定义了);
4.输出也不再是单纯的二进制code,改为RemovableBinaryDrivers;
5.OS启动不再是调用Int19,而是直接利用protocol/devicePath;
6.对于第三方的开发,前者基本上做不到,除非参与BIOS的设计,但是还要受到ROM的大小限制,而后者就便利多了。
7.弥补BIOS对新硬件的支持不足的问题。
四、UEFIBIOS在应用过程中要重点了解的信息。
- BIOS类型和启动方式:UEFIBIOS和LegacyBIOS都是BIOS,但是是两种不同架构的BIOS。为解决对其它只支持Legacy模式硬件和操作系统的支持,UEFIBIOS做了相关兼容性设计,UEFIBIOS的启动方式支持UEFI启动和Legacy启动,LegacyBIOS只支持Legacy启动方式。
- BIOS启动方式为UEFI的对应硬盘格式为GPT的;启动方式为Legacy的对应到硬盘为MBR,最大容量不超过2T。【UEFI+GPT】【Legacy+MBR】
- UEFI模式下安装的操作系统,启动方式必须使UEFI启动;Legacy模式下安装的操作系统,启动方式必须使Legacy启动。
- UEFI模式下安装操作系统,为提高兼容性,需要在BIOS下设置SecureMode关闭,CSM打开。CSM(CompatibilitysupportModule)表示兼容模块,该选项专为兼容只能在legacy模式下工作的设备以及不支持或不能完全支持UEFI的操作系统而设置。