可按需要动态调整的uefibios快速安全启动方法

文档序号:6379882阅读:893来源:国知局
专利名称:可按需要动态调整的uefi bios快速安全启动方法
技术领域
本发明涉及一种使用在UEFI BIOS (统一可扩展固件接口基本输入输出系统)中的快速启动方法,特别是一种安全可信的方法。
背景技术
UEFI BIOS为了模块化,通常将启动过程分成了多个阶段,如图1所示。从平台启动到平台初始化,再到操作系统启动,最后到关机UEFI BIOS共有七个阶段,每个阶段由不同的模块来实现,各阶段之间都有定义好的接口。在操作系统启动前有四个阶段初始代码检测SEC、环境初始化PE1、驱动执行环境DXE、启动设备选择BDS。操作系统启动后有三个阶段系统加载TSL、系统运行RT、运行结束AL。现有的UEFI BIOS启动时会将检测和初始化所有的设备,加载所有的服务,从兼容性和扩展性方面来看,确实能够较好的满足各类不同的需求,但存在以下几点不足I)启动时间过长现有UEFI BIOS是面向终端、服务器、嵌入式等所有计算设备的,但对便携终端和嵌入式设备来说,有相当部分的驱动和服务是多余的,同时该类设备通常要求平台启动迅速,因此无法满足该类的需求;2)每次启动均要重新枚举硬件现有UEFI BIOS在每次启动时,均会进行枚举设备操作,但由于通常计算平台的硬件不会有任何变化,因此枚举工作显然是多余的;3)安全性不强现有UEFI BIOS在每次启动时,CPU将直接读取FLASH中的固件镜像,并分阶段开始执行,没有考虑到固件镜像本身的安全性。

发明内容
本发明就是为了解决上述问题,提供一种能实现快速启动的高效安全实用方法,在UEFIBI0S启动过程中能够根据用户需求动态调整平台启动流程,实现平台的高性能和
高安全。本发明的特征在于,是一种适用于面向包括便携式终端盒嵌入式设备在内的系统平台的快速而且安全的启动方法,是在计算机中依次按以下步骤实现的步骤(I ),系统平台主控计算机初始化设置签名验证式初始代码检测模块、环境初始化模块、非设备枚举式驱动执行环境模块、瞬时系统加载模块、操作系统运行模块以及操作系统运行结束判断模块,其中签名验证式初始代码检测模块,依次进行用户签名认证和初始代码检测两个步骤,环境初始化模块,采用设定的前期初始化PEI模块,也称环境初始化模块,把检测后的初始化代码输入CPU、芯片组和主板,非枚举式驱动执行环境模块,依次执行由内设的内部服务子模块下达的设定的设备、总线和服务的驱动程序,瞬时系统加载模块,在所述UEFI驱动度控制下加载操作系统引导程序或操作系统内核以完成系统引导启动,操作系统运行模块,在所述瞬时系统加载后形成的最终的初始化操作系统环境下运行操作系统应用程序,操作系统运行结束判断模块,若操作系统运行尚未结束,则返回操作系统运行模块,若已结束,则所述的UEFI快速安全启动结束;步骤(2)依次执行下述快速安全启动步骤步骤(2.1)用户签名认证和初始代码检测,步骤(2. 2)按已检测的初始代码依次进行CPU初始化、芯片组初始化、主板初始化,并把初始化结果在环境初始化核心服务指令控制下输入环境初始化模块,步骤(2. 3)根据所述内部服务子模块下达的指令,用UEFI驱动调度命令加载包括所述便携终端或嵌入式设备在内的设定的设备、总线和服务的驱动程序,步骤(2. 4)按照所述UEFI驱动调度的控制指令加载操作系统引导程序或操作系统内核,完成系统的引导启动,步骤(2. 5)在步骤(2. 4)形成的最终的初始化操作系统环境下运行操作系统应用程序,步骤(2. 6)运行所述的操作系统运行结束判断模块。本发明具有以下效果1、验证固件签名2、只初始化特定或指定的硬件设备,3、只加载特定或指定的服务和驱动,4、在BDS阶段,仅初始化与启动对象相关的硬件,5、在BDS阶段,使用已保存的有效启动项,不去检测扫描,6、默认不进入CMOS设置界面,7、硬件无变化时,无需重新枚举,8、优化访问耗时硬件设备的时序,提升启动过程中驱动的性能。


图1、UEFI BIOS正常启动执行流程图。图2、本发明所述的可按需要动态调整的UEFI BIOS快速安全启动执行流程图。图3、本发明的程序流程框图。
具体实施例方式一种UEFI BIOS的快速安全启动方法,其特征在于快速启动和安全可信。本发明将UEFIBI0S从一成不变、全面覆盖的固件系统变成快速有效、安全可信的固件系统。本发明的主要功能与传统的UEFI BIOS启动流程一样,但从平台性能来看,由于可以动态的调整系统流程,去掉一些没必要的驱动和服务,使得平台效率成倍地提高,实现的UEFI BIOS系统的启动时间将大幅度的提高。另外从安全性来看,由于启动时会对读取的固件镜像进行签名验证,能够保证CPU所执行程序的安全性。本发明能很好的解决启动时间过长和安全性不强的问题。
一种UEFI BIOS的快速安全启动方法,从平台启动到平台初始化,再到操作系统启动,最后到关机共有六个阶段,每个阶段由不同的模块来实现。在初始代码检测SEC阶段,先对固件进行签名验证,确保固件未受篡改;在环境初始化PEI阶段,平台不做任何特殊处理;在驱动执行环境DXE阶段,取消对PC1、USB等硬件设备枚举的相关模块,只加载特定的设备、总线和服务的驱动,之后直接加载操作系统引导程序或操作系统内核完成系统引导启动,具体如图2所示。
权利要求
1.可按需要动态调整的UEFI BIOS快速安全启动方法,其特征在于,是ー种适用于面向包括便携式终端或嵌入式设备在内的系统平台的快速而且安全的启动方法,是在系统平台主控计算机中依次按以下步骤实现的 步骤(I ),系统平台主控计算机初始化 设置签名验证式初始代码检测模块、环境初始化模块、非设备枚举式驱动执行环境模块、瞬时系统加载模块、操作系统运行模块以及操作系统运行结束判断模块,其中 签名验证式初始代码检测模块,依次进行用户签名认证和初始代码检测两个步骤, 环境初始化模块,采用设定的前期初始化PEI模块,也称环境初始化模块,把检测后的初始化代码输入CPU、芯片组和主板, 非枚举式驱动执行环境模块,依次执行由内设的内部服务子模块下达的设定的设备、总线和服务的驱动程序, 瞬时系统加载模块,在所述UEFI驱动度控制下加载操作系统引导程序或操作系统内核以完成系统引导启动, 操作系统运行模块,在所述瞬时系统加载后形成的最終的初始化操作系统环境下运行操作系统应用程序, 操作系统运行结束判断模块,若操作系统运行尚未结束,则返回操作系统运行模块,若已结束,则所述的UEFI快速安全启动结束; 步骤(2)依次执行下述快速安全启动步骤 步骤(2.1)用户签名认证和初始代码检测, 步骤(2. 2)按已检测的初始代码依次进行CPU初始化、芯片组初始化、主板初始化,并把初始化结果在环境初始化核心服务指令控制下输入环境初始化模块, 步骤(2. 3)根据所述内部服务子模块下达的指令,用UEFI驱动调度命令加载包括所述便携终端或嵌入式设备在内的设定的设备、总线和服务的驱动程序, 步骤(2. 4)按照所述UEFI驱动调度的控制指令加载操作系统引导程序或操作系统内核,完成系统的引导启动, 步骤(2. 5)在步骤(2. 4)形成的最終的初始化操作系统环境下运行操作系统应用程序, 步骤(2. 6)运行所述的操作系统运行结束判断模块。
全文摘要
可按需要动态调整的UEFI BIOS快速安全启动方法属于UEFI BIOS的快速启动技术领域,其特征在于,是一种适用于现有的包括便携式终端或嵌入式设备在内的系统平台的快速而安全的方法,包括平台主控机初始化,用户签名认证和初始代码检测,环境初始化,加载设定的设备、总线和服务的驱动程序,加载操作系统引导程序或操作系统内核,运行操作系统应用程序和判断应用程序是否已运行完毕等各个阶段,本发明提高了系统平台的效率,也保证了CPU的执行程序的安全性。
文档编号G06F9/445GK103034510SQ20121041845
公开日2013年4月10日 申请日期2012年10月26日 优先权日2012年10月26日
发明者曾颖明, 王斌, 姚金利, 赵政耀, 马书磊, 黄晨 申请人:中国航天科工集团第二研究院七〇六所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1