CN103729219B - 一种uefi bios架构方法及系统 - Google Patents

一种uefi bios架构方法及系统 Download PDF

Info

Publication number
CN103729219B
CN103729219B CN201310726268.9A CN201310726268A CN103729219B CN 103729219 B CN103729219 B CN 103729219B CN 201310726268 A CN201310726268 A CN 201310726268A CN 103729219 B CN103729219 B CN 103729219B
Authority
CN
China
Prior art keywords
udxe
drivers
bds
load
protected modes
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201310726268.9A
Other languages
English (en)
Other versions
CN103729219A (zh
Inventor
郑红文
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hefei Lianbao Information Technology Co Ltd
Original Assignee
Hefei Lianbao Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hefei Lianbao Information Technology Co Ltd filed Critical Hefei Lianbao Information Technology Co Ltd
Priority to CN201310726268.9A priority Critical patent/CN103729219B/zh
Publication of CN103729219A publication Critical patent/CN103729219A/zh
Application granted granted Critical
Publication of CN103729219B publication Critical patent/CN103729219B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明公开了一种UEFI BIOS架构方法及系统,涉及计算机技术领域,其方法包括BIOS执行的以下步骤:启动SEC运行进行安全检测,并在SEC运行的后期,将CPU的运行模式切换到64位保护模式;然后,在所述64位保护模式下启动UDXE运行,完成驱动程序装载;接着,在所述64位保护模式下启动BDS运行,以便根据用户设定,装载UEFI OS;最后,在所述64位保护模式下启动RT运行,使所述UEFI OS开始运行;其中,所述BIOS是指基本输入/输出系统,所述UDXE是指统一可扩展固件接口。本发明UEFI BIOS代码全部运行在64位保护模式下,节省BIOS启动时间。

Description

一种UEFI BIOS架构方法及系统
技术领域
本发明涉及计算机技术领域,特别涉及一种UEFI(Unified Extensible FirmwareInterface,统一的可扩展固件接口)BIOS(Basic Input Output System,基本输入输出系统)架构的方法及系统。
背景技术
目前的UEFI BIOS架构由五部份构成:SEC(Security phase,安全阶段),PEI(Pre-EFI Initialization phase,EFI初始化准备阶段),DXE(Driver Execution Environmentphase,驱动执行环境阶段),BDS(Boot Device Selection phase,启动设备选择阶段)和RT(Run Time phase,运行时期阶段)。SEC运行在大实模式,而PEI运行在32位保护模式下,然后通过DXE IPL(Initial Program Load,初始程序导入)模块将CPU切换到64位保护模式中的长模式。随后的DXE、BDS和RT均运行在64位保护模式下。在UEFI BIOS架构中,我们需要增加一个模块DXE IPL来完成CPU模式从32位移到64位模式下。带来的问题是:
1.UEFI BIOS代码一部分运行在32位保护模式下,而另一部份运行在64位保护模式下。这两部份代码必须分别编译,无法共享运行库。
2.UEFI BIOS要利用DXE IPL模块完成32位到64位保护模式的切换,这个切换过程会占用一部份BIOS启动时间。
为解决上述问题,本发明提供了一种UEFI BIOS架构的方法及系统。
发明内容
本发明的目的在于提供一种UEFI BIOS架构的方法及系统,解决了现有技术中需要进行32位到64位保护模式的切换,使得BIOS启动时间慢的问题。
根据本发明的一个方面,提供了一种UEFI BIOS架构的方法,包括BIOS执行的以下步骤:
启动SEC运行进行安全检测,并在SEC运行的后期,将CPU的运行模式切换到64位保护模式;
然后,在所述64位保护模式下启动UDXE(Unified Driver ExecutionEnvironment,统一驱动执行环境)运行,完成驱动程序装载;
接着,在所述64位保护模式下启动BDS运行,以便根据用户设定,装载UEFI OS(Operation System,操作系统);
最后,在所述64位保护模式下启动RT运行,使所述UEFI OS开始运行;
其中,所述BIOS是指基本输入/输出系统,所述UDXE是指统一驱动执行环境。
优选地,在所述64位保护模式下启动UDXE运行,完成驱动程序装载的步骤包括:
在所述64位保护模式下启动UDXE运行,并按照指令将所述UDXE内核装载到所述CPU的二级缓存中进行缓存;
所述缓存在所述CPU的二级缓存中的所述UDXE内核按照第一装载指令装载64位UDXE驱动程序分发器;
所述64位UDXE驱动程序分发器按照第二装载指令装载64位内存控制器驱动程序。
优选地,当所述装载64位内存控制器驱动程序后,将所述UDXE内核从所述CPU的二级缓存中移至4M内存中进行保存。
优选地,所述64位UDXE驱动程序分发器通过装载BDS_ARCH_PROTOCOL驱动程序,启动BDS运行。
优选地,还包括:
当所述64位UDXE驱动程序分发器装载所述64位内存控制器驱动程序或装载所述BDS_ARCH_PROTOCOL驱动程序失败时,结束运行工作。
根据本发明的另一方面,提供了一种UEFI BIOS架构的系统,包括BIOS执行的以下模块:
SEC模块,用于启动SEC运行进行安全检测,并在SEC运行的后期,将CPU的运行模式切换到64位保护模式;
UDXE模块,用于在所述64位保护模式下启动UDXE运行,完成驱动程序装载;
BDS模块,用于在所述64位保护模式下启动BDS运行,以便根据用户设定,装载UEFIOS;
RT模块,用于在所述64位保护模式下启动RT运行,使所述UEFI OS开始运行;
其中,所述BIOS是指基本输入/输出系统,所述UDXE是指统一驱动执行环境。
优选地,所述UDXE模块包括:
缓存单元,用于在所述64位保护模式下启动UDXE运行,并按照指令将所述UDXE内核装载到所述CPU的二级缓存中进行缓存;
装载单元,用于所述缓存在所述CPU的二级缓存中的所述UDXE内核按照第一装载指令装载64位UDXE驱动程序分发器;以及所述64位UDXE驱动程序分发器按照第二装载指令装载64位内存控制器驱动程序。
优选地,当所述装载64位内存控制器驱动程序后,将所述UDXE内核从所述CPU的二级缓存中移至4M内存中进行保存。
优选地,所述64位UDXE驱动程序分发器通过装载BDS_ARCH_PROTOCOL驱动程序,启动BDS运行。
优选地,还包括:
当所述64位UDXE驱动程序分发器装载所述64位内存控制器驱动程序或装载所述BDS_ARCH_PROTOCOL驱动程序失败时,结束运行工作。
与现有技术相比较,本发明的有益效果在于:
本发明通过使用UDXE,使得UEFI BIOS代码全部运行在64位保护模式下,节省了BIOS启动时间,提高了用户体验。
附图说明
图1是本发明实施例提供的一种UEFI BIOS架构的方法流程图;
图2是本发明实施例提供的一种UEFI BIOS架构的系统的示意图;
图3是本发明实施例提供的UEFI BIOS的架构流程图。
具体实施方式
以下结合附图对本发明的优选实施例进行详细说明,应当理解,以下所说明的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
图1显示了本发明实施例提供的一种UEFI BIOS架构的方法流程图,如图1所示,包括BIOS执行的以下步骤:
步骤S101:启动SEC运行进行安全检测,并在SEC运行的后期,将CPU的运行模式切换到64位保护模式;
步骤S102:在所述64位保护模式下启动UDXE运行,完成驱动程序装载;
步骤S103:在所述64位保护模式下启动BDS运行,以便根据用户设定,装载UEFIOS;
步骤S104:在所述64位保护模式下启动RT运行,使所述UEFI OS开始运行;
其中,所述BIOS是指基本输入/输出系统,所述UDXE是指统一驱动执行环境。
本发明在启动SEC运行进行安全检测,并在SEC运行的后期,将CPU的运行模式从大实模式切换到64位保护模式。
本发明在所述64位保护模式下启动UDXE运行,完成驱动程序装载的步骤包括:在所述64位保护模式下启动UDXE运行,并按照指令将所述UDXE内核装载到所述CPU的二级缓存中进行缓存;所述缓存在所述CPU的二级缓存中的所述UDXE内核按照第一装载指令装载64位UDXE驱动程序分发器;所述64位UDXE驱动程序分发器按照第二装载指令装载64位内存控制器驱动程序。
其中,当所述装载64位内存控制器驱动程序后,将所述UDXE内核从所述CPU的二级缓存中移至4M内存中进行保存。
本发明所述64位UDXE驱动程序分发器通过装载BDS_ARCH_PROTOCOL驱动程序,启动BDS运行。
本发明还包括:当所述64位UDXE驱动程序分发器装载所述64位内存控制器驱动程序或装载所述BDS_ARCH_PROTOCOL驱动程序失败时,结束运行工作。
图2显示了本发明实施例提供的一种UEFI BIOS架构的系统的示意图,如图2所示,包括BIOS执行的以下模块:SEC模块201,用于启动SEC运行进行安全检测,并在SEC运行的后期,将CPU的运行模式切换到64位保护模式;UDXE模块202,用于在所述64位保护模式下启动UDXE运行,完成驱动程序装载;BDS模块203,用于在所述64位保护模式下启动BDS运行,以便根据用户设定,装载UEFI OS;RT模块204,用于在所述64位保护模式下启动RT运行,使所述UEFI OS开始运行;其中,所述BIOS是指基本输入/输出系统,所述UDXE是指统一驱动执行环境。
其中,所述UDXE模块202包括:缓存单元,用于在所述64位保护模式下启动UDXE运行,并按照指令将所述UDXE内核装载到所述CPU的二级缓存中进行缓存;装载单元,用于所述缓存在所述CPU的二级缓存中的所述UDXE内核按照第一装载指令装载64位UDXE驱动程序分发器;以及所述64位UDXE驱动程序分发器按照第二装载指令装载64位内存控制器驱动程序。
其中,当所述装载64位内存控制器驱动程序后,将所述UDXE内核从所述CPU的二级缓存中移至4M内存中进行保存。
所述64位UDXE驱动程序分发器通过装载BDS_ARCH_PROTOCOL驱动程序,启动BDS运行。
本发明还包括:当所述64位UDXE驱动程序分发器装载所述64位内存控制器驱动程序或装载所述BDS_ARCH_PROTOCOL驱动程序失败时,结束运行工作。
图3显示了本发明实施例提供的UEFI BIOS的架构流程图,如图3所示,包括以下步骤:
步骤1、BIOS模块启动进入SEC阶段后,在SEC最后阶段切换CPU模式为64位保护模式长模式。
步骤2、BIOS将UDXE内核装载到CPU二级缓存,所述UDXE内核再装载64位UDXE驱动程序分发器,若加载成功,进入步骤3,若加载失败,结束运行工作。
64位UDXE驱动程序分发器装载64位内存控制器驱动程序,完成内存初始化后,将所述UDXE内核从CPU二级缓存移到4M常规内存中,在所述常规内存中64位UDXE驱动程序分发器继续装载其它64位驱动程序,如显卡,南桥等。
步骤3、64位UDXE驱动程序分发器装载BDS_ARCH_PROTOCOL驱动程序,进入BDS阶段,若加载成功,进入步骤4,若加载失败,结束运行工作。
步骤4、BDS阶段根据用户设定,装载并运行UEFI OS从所选定启动分区上,若加载成功,进入步骤5,若加载失败,结束运行工作。
步骤5、UEFI OS开始运行,进入RT阶段。
综上所述,本发明的新型UEFI BIOS架构由四部份构成:SEC、UDXE、BDS及RT。SEC运行在大实模式,而UDXE运行在64位保护模式中的长模式,是新型UEFI BIOS架构的第二阶段,此阶段驱动程序全部为64位微软PE32+格式驱动程序,并且提供一个64位的驱动程序装载器,在随后的BDS及RT均运行在64位保护模式下。
综上所述,本发明具有以下技术效果:
a.UEFI BIOS代码全部运行在64位保护模式下,不再需要32位模块。
b.无需再利用DXE IPL模块进行32位到64位保护模式切换,节省BIOS启动时间。
尽管上文对本发明进行了详细说明,但是本发明不限于此,本技术领域技术人员可以根据本发明的原理进行各种修改。因此,凡按照本发明原理所作的修改,都应当理解为落入本发明的保护范围。

Claims (10)

1.一种UEFI BIOS架构方法,其特征在于,包括BIOS执行的以下步骤:
启动SEC运行进行安全检测,并在SEC运行的后期,将CPU的运行模式切换到64位保护模式;
然后,在所述64位保护模式下启动UDXE运行,完成驱动程序装载;
接着,在所述64位保护模式下启动BDS运行,以便根据用户设定,装载UEFI OS;
最后,在所述64位保护模式下启动RT运行,使所述UEFI OS开始运行;
其中,所述BIOS是指基本输入/输出系统;所述OS是指操作系统;所述UDXE是指统一驱动执行环境,是UEFI BIOS架构中SEC、UDXE、BDS及RT四阶段中的第二阶段,所述UDXE运行在64位保护模式中。
2.根据权利要求1所述的方法,其特征在于,在所述64位保护模式下启动UDXE运行,完成驱动程序装载的步骤包括:
在所述64位保护模式下启动UDXE运行,并按照指令将所述UDXE内核装载到所述CPU的二级缓存中进行缓存;
所述缓存在所述CPU的二级缓存中的所述UDXE内核按照第一装载指令装载64位UDXE驱动程序分发器;
所述64位UDXE驱动程序分发器按照第二装载指令装载64位内存控制器驱动程序。
3.根据权利要求2所述的方法,其特征在于,当所述装载64位内存控制器驱动程序后,将所述UDXE内核从所述CPU的二级缓存中移至4M内存中进行保存。
4.根据权利要求2或3所述的方法,其特征在于,所述64位UDXE驱动程序分发器通过装载BDS_ARCH_PROTOCOL驱动程序,启动BDS运行。
5.根据权利要求4所述的方法,其特征在于,还包括:
当所述64位UDXE驱动程序分发器装载所述64位内存控制器驱动程序或装载所述BDS_ARCH_PROTOCOL驱动程序失败时,结束运行工作。
6.一种UEFI BIOS架构系统,其特征在于,包括BIOS执行的以下模块:
SEC模块,用于启动SEC运行进行安全检测,并在SEC运行的后期,将CPU的运行模式切换到64位保护模式;
UDXE模块,用于在所述64位保护模式下启动UDXE运行,完成驱动程序装载;
BDS模块,用于在所述64位保护模式下启动BDS运行,以便根据用户设定,装载UEFI OS;
RT模块,用于在所述64位保护模式下启动RT运行,使所述UEFI OS开始运行;
其中,所述BIOS是指基本输入/输出系统;所述OS是指操作系统;所述UDXE是指统一驱动执行环境,是UEFI BIOS架构中SEC、UDXE、BDS及RT四阶段中的第二阶段,所述UDXE运行在64位保护模式中。
7.根据权利要求6所述的系统,其特征在于,所述UDXE模块包括:
缓存单元,用于在所述64位保护模式下启动UDXE运行,并按照指令将所述UDXE内核装载到所述CPU的二级缓存中进行缓存;
装载单元,用于所述缓存在所述CPU的二级缓存中的所述UDXE内核按照第一装载指令装载64位UDXE驱动程序分发器;以及所述64位UDXE驱动程序分发器按照第二装载指令装载64位内存控制器驱动程序。
8.根据权利要求7所述的系统,其特征在于,当所述装载64位内存控制器驱动程序后,将所述UDXE内核从所述CPU的二级缓存中移至4M内存中进行保存。
9.根据权利要求7或8所述的系统,其特征在于,所述64位UDXE驱动程序分发器通过装载BDS_ARCH_PROTOCOL驱动程序,启动BDS运行。
10.根据权利要求9所述的系统,其特征在于,还包括:
当所述64位UDXE驱动程序分发器装载所述64位内存控制器驱动程序或装载所述BDS_ARCH_PROTOCOL驱动程序失败时,结束运行工作。
CN201310726268.9A 2013-12-25 2013-12-25 一种uefi bios架构方法及系统 Active CN103729219B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310726268.9A CN103729219B (zh) 2013-12-25 2013-12-25 一种uefi bios架构方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310726268.9A CN103729219B (zh) 2013-12-25 2013-12-25 一种uefi bios架构方法及系统

Publications (2)

Publication Number Publication Date
CN103729219A CN103729219A (zh) 2014-04-16
CN103729219B true CN103729219B (zh) 2017-07-18

Family

ID=50453303

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310726268.9A Active CN103729219B (zh) 2013-12-25 2013-12-25 一种uefi bios架构方法及系统

Country Status (1)

Country Link
CN (1) CN103729219B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105159810B (zh) * 2015-10-16 2019-05-24 合肥联宝信息技术有限公司 对计算机系统的bios进行测试的方法及装置
US10776524B2 (en) 2016-01-14 2020-09-15 Intel Corporation Secure communication channel for system management mode
CN105893833B (zh) * 2016-03-31 2019-07-05 山东超越数控电子有限公司 一种用于固件安全管理的硬件接口
CN106095630A (zh) * 2016-05-31 2016-11-09 合肥联宝信息技术有限公司 执行bios上电自检程序的方法
CN114090095B (zh) * 2022-01-19 2022-05-24 苏州浪潮智能科技有限公司 一种多路服务器中cpu的bios加载方法及相关组件

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8086839B2 (en) * 2008-12-30 2011-12-27 Intel Corporation Authentication for resume boot path

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8086839B2 (en) * 2008-12-30 2011-12-27 Intel Corporation Authentication for resume boot path

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Vol2_DXE CIS_1_3;UEFI FORUM;《http://www.uefi.org/specifications》;20130329;第1-126页 *
传统bios和UEFI bios启动流程分析;ymzhou117;《http://blog.csdn.net/ymzhou117/article/details/7085621》;20111219;第1-4页 *

Also Published As

Publication number Publication date
CN103729219A (zh) 2014-04-16

Similar Documents

Publication Publication Date Title
CN103729219B (zh) 一种uefi bios架构方法及系统
CN109992972B (zh) 一种云环境内信任链的建立方法及系统
CN100561433C (zh) 嵌入式系统及其升级方法
JP2002287978A5 (zh)
CN103942069A (zh) 一种基于X86平台Vxworks操作系统的快速启动优化方法
WO2002065281A8 (en) Method, system and computer program product for efficiently utilizing limited resources in a graphics device
JP2007206885A (ja) コンピュータシステム及びシステム起動方法
CN102279769B (zh) 一种面向嵌入式Hypervisor 的中断虚拟化操作方法
US20220237144A1 (en) Baseboard management controller and construction method thereof
JP2010140240A (ja) プロセッサ、マルチプロセッサ、及び、デバッグ方法
CN104865904B (zh) 一种面向多周期运算任务的无扰组态方法
CN102253844B (zh) 一种启动处理器的方法和设备
JP2022051506A (ja) 早期のディスプレイの初期化及び視覚化のためのブート処理の改善
CN101241442A (zh) 具有双开机程序代码区的计算机系统及其启动方法
CN110308920B (zh) 一种不影响正常运行的在轨修改星上产品软件的方法
WO2016033941A1 (zh) Boot在线升级装置及方法
US20110106522A1 (en) virtual platform for prototyping system-on-chip designs
CN109656758B (zh) 用于异构双处理器系统芯片的调试方法及系统
CN103019774A (zh) 一种dsp处理器的动态重载方法
US9471344B1 (en) Hardware support for processing virtual machine instructions
CN103218250B (zh) 一种处理器模拟方法
CN104182271A (zh) 一种基于申威处理器的虚拟化实现方法
CN102799451B (zh) Wince系统镜像构建方法和系统、wince系统镜像
US20140244992A1 (en) Extensible Firmware Interface External Graphic Card, Mainframe System, and Extensible Firmware Interface BIOS Booting Method
CN102520992B (zh) 一种嵌入式系统启动方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant