论文部分内容阅读
[摘要]:计算机主板性能优越与否,很大程度上取决于主板上的BIOS管理功能是否先进。随着计算机的快速发展,新型EFI即UEFI可能会在三年内取代BIOS。
[关键词]:计算机 BIOS UEFI
中图分类号:F224-39 文献标识码:F 文章编号:1009-914X(2012)20- 0133 -01
随着计算机的普及,很多人都知道计算机的BIOS,是一种“固件”,负责在开机时做硬件启动和检测等工作,担任操作系统控制硬件的中介。然而,因为计算机硬件发展迅速,传统BIOS已成为计算机进步的瓶颈,现在发展出的UEFI(Extensible Firmware Interface,可扩展固件接口),代表未来将是一个“没有特定BIOS”的电脑时代。
UEFI与传统BIOS相比,最大的区别在于:UEFI编码99%都是由C语言完成;一改之前的中断、硬件端口操作的方法,而采用了Driver/protocol的新方式;将不支持X86实模式,而直接采用Flat模式;输出也不再是单纯的二进制代码,改为Removable Binary Drivers;操作系统启动不再是调用Int19中断,而是直接利用protocol/device Path;对于第三方的开发,后者基本上做不到,除非参与BIOS的设计,但是还要受到ROM的大小限制,而前者就便利多了;弥补BIOS对新硬件的支持不足的毛病。
使用UEFI有以下优点:
1.易于实现、容错和纠错特性更强
UEFI比BIOS更易于实现,容错和纠错特性也更强,从而缩短了系统研发的时间。更加重要的是,它运行于32位或64位模式,突破了传统16位代码的寻址能力,达到处理器的最大寻址,此举克服了BIOS代码运行缓慢的弊端。
2.驱动开发简单、兼容性好
与BIOS不同的是,UEFI体系的驱动并不是由直接运行在CPU上的代码组成的,而是用EFI字节代码编写而成的EFI字节代码是一组用于UEFI驱动的虚拟机器指令,必须在UEFI驱动运行环境下被解释运行,由此保证了充分的向下兼容性。一个带有UEFI驱动的扩展设备既可以安装在使用安腾的系统中,也可以安装在支持UEFI的新PC系统中,它的UEFI驱动不必重新编写,这样就无须考虑系统升级后的兼容性问题,还大大降低了UEFI驱动编写的门槛,所有的PC部件提供商都可以参与。
3.高分辨率彩色图形环境、支持鼠标操作
UEFI内置图形驱动功能,可以提供一个高分辨率的彩色图形环境,用户进入后能用鼠标点击调整配置,一切就像操作Windows系统下的应用软件一样简单。使BIOS不再是高手才能玩转的工具。
4.强大的可扩展性
UEFI将使用模块化设计,它在逻辑上分为硬件控制与OS软件管理两部分,硬件控制为所有UEFI版本所共有,而OS软件管理其实是一个可编程的开放接口。借助这个接口,主板厂商可以实现各种丰富的功能,如提供了强大的联网功能,其他用户可以对你的主机进行远程故障诊断。
另外,UEFI初始化模块和驱动执行环境通常被集成在一个只读存储器中,就好比如今的BIOS固化程序一样。UEFI初始化程序在系统开机的时候最先得到执行,它负责最初的CPU、北桥、南桥及存储器的初始化工作,当这部分设备就绪后,紧接着它就载入UEFI驱动执行环境(Driver Execution Environment,简称DXE)。当DXE被载入时,系统就可以加载硬件设备的UEFI驱动程序了。DXE使用了枚举的方式加载各种总线及设备驱动,UEFI驱动程序可以放置于系统的任何位置,只要保证它可以按顺序被正确枚举。借助这一点,我们可以把众多设备的驱动放置在磁盘的UEFI专用分区中,当系统正确加载这个磁盘后,这些驱动就可以被读取并应用了。在这个特性的作用下,即使新设备再多,UEFI也可以轻松地一一支持,由此克服了传统BIOS捉襟见肘的情形。UEFI能支持网络设备并联网,原因就在于此。
值得注意的是,一种突破传统MBR(主引导记录)磁盘分区结构限制的GUID(全局唯一标志符)磁盘分区系统将在UEFI规范中被引入。MBR结构磁盘只允许存在4个主分区,而这种新结构却不受限制,分区类型也改由GUID来表示。在众多的分区类型中,UEFI系统分区用来存放驱动和应用程序。那么当UEFI系统分区遭到破坏时怎么办?事实上,系统引导所依赖的UEFI驱动通常不会存放在UEFI系统分区中,当该分区的驱动程序遭到破坏,我们可以使用简单方法加以恢复,根本不用担心。
众所周知,X86处理器能够取得成功,与它良好的兼容性是分不开的。为了让不具备UEFI引导功能的操作系统能提供类似于传统BIOS的系统服务,UEFI还特意提供了一个兼容性支持模块,这就保证了UEFI在技术上的良好过渡。
那么,UEFI将来能代替或成为操作系统吗?实际上,UEFI只是硬件和預启动软件之间的接口规范,它尚不足以对操作系统构成威胁。另外,UEFI驱动程序使用“轮询”方式来检查硬件状态,它的运行效率并不如操作系统直接高效。同时UEFI只具备简单的存储器管理机制,不足以适应多任务环境的运行需求。从目前的情形看,UEFI想取代操作系统,至少还有漫长的路要走。
目前许多电脑厂商已经开始使用UEFI,并预计UEFI机型的销售今年将开始占主导地位。让我们做好迎接UEFI的准备吧!
参考文献:
[1]明月创作室,完全精通BIOS [M],人民邮电出版社,2002.05
[2]吴天麟、陈逸铭, BIOS Inside:BIOS研发技术剖析[M], 旗标出版股份有限公司, 2005.10.30
[3] Vincent Zimmer,Michael Rothman,Robert Hale,Beyond BIOS: Implementing the Unified Extensible Firmware Interface with Intel's Framework[M],intel press, January 19, 2011
[关键词]:计算机 BIOS UEFI
中图分类号:F224-39 文献标识码:F 文章编号:1009-914X(2012)20- 0133 -01
随着计算机的普及,很多人都知道计算机的BIOS,是一种“固件”,负责在开机时做硬件启动和检测等工作,担任操作系统控制硬件的中介。然而,因为计算机硬件发展迅速,传统BIOS已成为计算机进步的瓶颈,现在发展出的UEFI(Extensible Firmware Interface,可扩展固件接口),代表未来将是一个“没有特定BIOS”的电脑时代。
UEFI与传统BIOS相比,最大的区别在于:UEFI编码99%都是由C语言完成;一改之前的中断、硬件端口操作的方法,而采用了Driver/protocol的新方式;将不支持X86实模式,而直接采用Flat模式;输出也不再是单纯的二进制代码,改为Removable Binary Drivers;操作系统启动不再是调用Int19中断,而是直接利用protocol/device Path;对于第三方的开发,后者基本上做不到,除非参与BIOS的设计,但是还要受到ROM的大小限制,而前者就便利多了;弥补BIOS对新硬件的支持不足的毛病。
使用UEFI有以下优点:
1.易于实现、容错和纠错特性更强
UEFI比BIOS更易于实现,容错和纠错特性也更强,从而缩短了系统研发的时间。更加重要的是,它运行于32位或64位模式,突破了传统16位代码的寻址能力,达到处理器的最大寻址,此举克服了BIOS代码运行缓慢的弊端。
2.驱动开发简单、兼容性好
与BIOS不同的是,UEFI体系的驱动并不是由直接运行在CPU上的代码组成的,而是用EFI字节代码编写而成的EFI字节代码是一组用于UEFI驱动的虚拟机器指令,必须在UEFI驱动运行环境下被解释运行,由此保证了充分的向下兼容性。一个带有UEFI驱动的扩展设备既可以安装在使用安腾的系统中,也可以安装在支持UEFI的新PC系统中,它的UEFI驱动不必重新编写,这样就无须考虑系统升级后的兼容性问题,还大大降低了UEFI驱动编写的门槛,所有的PC部件提供商都可以参与。
3.高分辨率彩色图形环境、支持鼠标操作
UEFI内置图形驱动功能,可以提供一个高分辨率的彩色图形环境,用户进入后能用鼠标点击调整配置,一切就像操作Windows系统下的应用软件一样简单。使BIOS不再是高手才能玩转的工具。
4.强大的可扩展性
UEFI将使用模块化设计,它在逻辑上分为硬件控制与OS软件管理两部分,硬件控制为所有UEFI版本所共有,而OS软件管理其实是一个可编程的开放接口。借助这个接口,主板厂商可以实现各种丰富的功能,如提供了强大的联网功能,其他用户可以对你的主机进行远程故障诊断。
另外,UEFI初始化模块和驱动执行环境通常被集成在一个只读存储器中,就好比如今的BIOS固化程序一样。UEFI初始化程序在系统开机的时候最先得到执行,它负责最初的CPU、北桥、南桥及存储器的初始化工作,当这部分设备就绪后,紧接着它就载入UEFI驱动执行环境(Driver Execution Environment,简称DXE)。当DXE被载入时,系统就可以加载硬件设备的UEFI驱动程序了。DXE使用了枚举的方式加载各种总线及设备驱动,UEFI驱动程序可以放置于系统的任何位置,只要保证它可以按顺序被正确枚举。借助这一点,我们可以把众多设备的驱动放置在磁盘的UEFI专用分区中,当系统正确加载这个磁盘后,这些驱动就可以被读取并应用了。在这个特性的作用下,即使新设备再多,UEFI也可以轻松地一一支持,由此克服了传统BIOS捉襟见肘的情形。UEFI能支持网络设备并联网,原因就在于此。
值得注意的是,一种突破传统MBR(主引导记录)磁盘分区结构限制的GUID(全局唯一标志符)磁盘分区系统将在UEFI规范中被引入。MBR结构磁盘只允许存在4个主分区,而这种新结构却不受限制,分区类型也改由GUID来表示。在众多的分区类型中,UEFI系统分区用来存放驱动和应用程序。那么当UEFI系统分区遭到破坏时怎么办?事实上,系统引导所依赖的UEFI驱动通常不会存放在UEFI系统分区中,当该分区的驱动程序遭到破坏,我们可以使用简单方法加以恢复,根本不用担心。
众所周知,X86处理器能够取得成功,与它良好的兼容性是分不开的。为了让不具备UEFI引导功能的操作系统能提供类似于传统BIOS的系统服务,UEFI还特意提供了一个兼容性支持模块,这就保证了UEFI在技术上的良好过渡。
那么,UEFI将来能代替或成为操作系统吗?实际上,UEFI只是硬件和預启动软件之间的接口规范,它尚不足以对操作系统构成威胁。另外,UEFI驱动程序使用“轮询”方式来检查硬件状态,它的运行效率并不如操作系统直接高效。同时UEFI只具备简单的存储器管理机制,不足以适应多任务环境的运行需求。从目前的情形看,UEFI想取代操作系统,至少还有漫长的路要走。
目前许多电脑厂商已经开始使用UEFI,并预计UEFI机型的销售今年将开始占主导地位。让我们做好迎接UEFI的准备吧!
参考文献:
[1]明月创作室,完全精通BIOS [M],人民邮电出版社,2002.05
[2]吴天麟、陈逸铭, BIOS Inside:BIOS研发技术剖析[M], 旗标出版股份有限公司, 2005.10.30
[3] Vincent Zimmer,Michael Rothman,Robert Hale,Beyond BIOS: Implementing the Unified Extensible Firmware Interface with Intel's Framework[M],intel press, January 19, 2011