CN115202751A - 一种uefi快速启动的实现方法 - Google Patents
一种uefi快速启动的实现方法 Download PDFInfo
- Publication number
- CN115202751A CN115202751A CN202210729182.0A CN202210729182A CN115202751A CN 115202751 A CN115202751 A CN 115202751A CN 202210729182 A CN202210729182 A CN 202210729182A CN 115202751 A CN115202751 A CN 115202751A
- Authority
- CN
- China
- Prior art keywords
- starting
- dxefv
- uefi
- quick start
- during
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种UEFI快速启动的实现方法,该方法包括:调整BIOS二进制的空间布局,增加用于快速启动的DXEFV。在PEI阶段的快速启动优化。在BDS阶段的快速启动优化。实现正常启动模式中对速度较慢的IO访问信息存储功能。该方法增加DXEFV_FASTBOOT用于记录快速启动时所需要的DXE模块,根据快速启动配置,将Flash中的DXEFV或DXEFV_FASTBOOT拷贝到内存,跳过主板未使用的桥片功能初始化,优化初始化顺序共用复位后的等待延时。增加第一启动项加载失败或主动退出时,重启进入正常启动模式功能。正常启动时保存IO访问的数据,存到环境变量中,快速启动时直接使用环境变量中的数据加快启动速度。本发明能够有效地缩减龙芯计算机启动时间,减少用户等待时间,提高用户对龙芯计算机的使用体验。
Description
技术领域
本发明涉及一种UEFI快速启动的实现方法,属于计算机软件工程技术领域。
背景技术
现有龙芯CPU虽然性能在不断提高,但是核心部件和***设备的增加也导致BIOS对各个部件的初始化管理工作也越来越多和繁琐,同时统一可扩展固件接口UEFI不断增加的功能配置也不同程度的延缓了计算机启动速度。目前的启动方式会对核心部件进行检测,对所有的外部设备进行初始化,而这整个过程往往都在10秒以上。而对于用户来说整个软硬件配置相对稳定,针对此情况可以在保留原有功能前提下,就需要增加一种快速启动模式尽可能的优化启动速度。本发明目的在于为龙芯计算机提供一种UEFI下的快速启动方法,
发明内容
本发明目的在于针对上述现有技术的不足,提出了一种UEFI快速启动的实现方法,该方法能够有效地缩减龙芯计算机启动时间,减少用户等待时间,提高用户对龙芯计算机的使用体验。
本发明解决其技术问题所采用的技术方案是:一种UEFI快速启动的实现方法,该方法包括:
调整BIOS二进制的空间布局,增加用于快速启动的DXEFV;
在PEI阶段的快速启动优化;
在BDS阶段的快速启动优化;
启动模式中对速度较慢的IO访问信息存储。
进一步地,在调整BIOS二进制的空间布局,增加用于快速启动的DXEFV时,所述方法包括:
增加DXEFV_FASTBOOT用于记录快速启动时所需要的DXE模块;
相较于正常DXEFV,DXEFV_FASTBOOT移除了非必须的DXE模块;
调整编译出的二进制布局,增加DXEFV_FASTBOOT存储区域。
进一步地,在PEI阶段的快速启动优化时,所述方法还包括:
根据快速启动配置,将Flash中的DXEFV或DXEFV_FASTBOOT拷贝到内存;
跳过主板未使用的桥片功能初始化,优化初始化顺序尽可能共用复位后的等待延时。
进一步地,在BDS阶段的快速启动优化时,所述方法包括:
BIOS界面下增加快速启动配置;
只针对所需的设备进行初始化和驱动装载,如显示、***盘、键盘;
增加第一启动项加载失败或主动退出时,重启进入正常启动模式功能。
进一步地,在实现正常启动模式中对速度较慢的IO访问信息存储功能时,所述方法包括:
正常启动时保存IO访问的数据,存到环境变量中;
快速启动时直接使用环境变量中的数据加快启动速度。
附图说明
图1为本发明的方法流程图。
具体实施方式
下面结合说明书附图对本发明创造作进一步地详细说明。
如图1所示,本发明提供了一种UEFI快速启动的实现方法,该方法能够有效地缩减龙芯计算机启动时间,减少用户等待时间,提高用户对龙芯计算机的使用体验。具体包括:
首先需要对UEFI代码中的FDF文件进行重新布局,FDF文件描述了BIOS二进制的组成结构。在原有基础上实现DXEFV_FASTBOOT,其中包含DXE核心模块以及最基本的外设驱动等。相较于正常启动时的DXEFV,减少了如界面相关、网络相关、部分USB相关等DXE模块,仅保证快速启动时最基本功能和加载***。增加DXEFV_FASTBOOT后会对二进制的布局造成影响,调整各个FV地址,并记录后续PEI阶段会使用到DXEFV_FASTBOOT的起始地址。
UEFI***可分为7个阶段:本发明主要涉及其中的三个阶段PEI、DXE和BDS。
(1)PEI阶段主要是对CPU、内存、桥片等核心器件的初始化。
PEI阶段前期:主要进行两个判断,是否使能快速启动和是否加载失败或退出快速启。后者的判断作用在于,当用户想要进入BIOS界面进行配置或者第一启动项的设备不存在时,可以从正常模式启动,
避免出现无法操作的问题。
PEI阶段中期:快速启动优化时主要优化芯片初始化过程,如关闭主板不使用的功能,部分时钟和phy配置好后需要reset才生效,但reset后需要等待一小段延时,优化后将所有启动的功能配置好同时reset能有效的缩减等待时间。正常启动时会涉及一些信息存储,如内存信息、EC里的配置信息、IO访问信息存储功能,并在快速启动时直接使用存储的信息,能有效的加快启动速度。
PEI阶段后期:会把DXE阶段的内容从flash中拷贝到内存,该操作中增加启动模式判断拷贝DXEFV还是DXEFV_FASTBOOT,之后跳转到DXE阶段。
(2)DXE阶段主要是驱动加载和初始化工作。
DXEFV:该FV中包含的驱动模块比较全面,可以保证在正常启动时BIOS下大部分设备的配置和功能。同样会涉及一些信息存储,主要为快速启动时smbios里信息。
DXEFV_FASTBOOT:相较于DXEFV做了模块的删减,如网卡驱动、PXE、BDS阶段界面相关模块、USB部分模块等,只保留启动必须的模块。该阶段也会使用正常启动时存储的信息尽可能加快启动。
(3)BDS阶段主要初始化控制台设备、界面和扫描启动项。
正常启动模式:在BIOS的“启动”配置界面增加快速启动的配置选项。
快速启动模式:因移除了界面相关模块,所以该模式下无法进入配置界面。在初始化控制台设备时,只针对选定的显卡、键盘进行驱动装载;读取第一启动的devicepath路径,对该路径下的存储设备进行驱动装载,完成装载直接加载grub进入内核。
(4)启动项加载阶段。
因DXEFV_FASTBOOT移除了BIOS界面功能,所以为了保留出错或用户想进入配置界面功能,增加了在用户退出grub或加载grub出错后,会记录本次行为并重启,该记录会在PEI阶段前期判断加载失败或退出快速启动时使用。
Claims (5)
1.一种UEFI快速启动的实现方法,特征在于,包括:
调整BIOS二进制的空间布局,增加用于快速启动的DXEFV;
在PEI阶段的快速启动优化;
在BDS阶段的快速启动优化;
启动模式中对速度较慢的IO访问信息存储。
2.根据权利要求书1的一种UEFI快速启动的实现方法,其特征在于,在调整BIOS二进制的空间布局,增加用于快速启动的DXEFV时,包括:
增加DXEFV_FASTBOOT用于记录快速启动时所需要的DXE模块;
移除了非必须的DXE模块;
调整编译出的二进制布局,增加DXEFV_FASTBOOT存储区域。
3.根据权利要求书1的一种UEFI快速启动的实现方法,其特征在于,在PEI阶段的快速启动优化时,包括:
根据快速启动配置,将Flash中的DXEFV或DXEFV_FASTBOOT拷贝到内存;
跳过主板未使用的桥片功能初始化,优化初始化顺序共用复位后的等待延时。
4.根据权利要求书1所述的一种UEFI快速启动的实现方法,其特征在于,在BDS阶段的快速启动优化时,包括:
BIOS界面下增加快速启动配置;
只针对所需的设备进行初始化和驱动装载,即显示、***盘和键盘;
增加第一启动项加载失败或主动退出时,重启进入正常启动模式功能。
5.根据权利要求书1所述的一种UEFI快速启动的实现方法,其特征在于,在实现正常启动模式中对速度较慢的IO访问信息存储功能时,包括:
正常启动时保存IO访问的数据,存到环境变量中;
快速启动时直接使用环境变量中的数据加快启动速度。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210729182.0A CN115202751A (zh) | 2022-06-24 | 2022-06-24 | 一种uefi快速启动的实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210729182.0A CN115202751A (zh) | 2022-06-24 | 2022-06-24 | 一种uefi快速启动的实现方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115202751A true CN115202751A (zh) | 2022-10-18 |
Family
ID=83578346
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210729182.0A Pending CN115202751A (zh) | 2022-06-24 | 2022-06-24 | 一种uefi快速启动的实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115202751A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116028129A (zh) * | 2023-03-29 | 2023-04-28 | 湖南博匠信息科技有限公司 | 一种基于飞腾平台的uefi快速启动方法及飞腾平台 |
-
2022
- 2022-06-24 CN CN202210729182.0A patent/CN115202751A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116028129A (zh) * | 2023-03-29 | 2023-04-28 | 湖南博匠信息科技有限公司 | 一种基于飞腾平台的uefi快速启动方法及飞腾平台 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7181609B2 (en) | System and method for accelerated device initialization | |
CN1261868C (zh) | 计算机快速启动方法 | |
US6336161B1 (en) | Computer configuration system and method with state and restoration from non-volatile semiconductor memory | |
US8296521B2 (en) | Method of configuring non-volatile memory for a hybrid disk drive | |
US6226740B1 (en) | Information processing apparatus and method that uses first and second power supplies for reducing booting time | |
CN101131671A (zh) | 控制对非易失性存储器的访问 | |
US9332147B2 (en) | Image forming apparatus and method of booting image forming apparatus having hibernation function | |
US8677084B2 (en) | Method of configuring non-volatile memory for a hybrid disk drive | |
JP2014534521A (ja) | ブートデータのロード | |
CN115202751A (zh) | 一种uefi快速启动的实现方法 | |
US8291206B2 (en) | Method for booting computer system | |
CN116414472A (zh) | 一种服务器开机快速启动方法、***、设备及存储介质 | |
Yang et al. | Shortening the boot time of android os | |
US20050108585A1 (en) | Silent loading of executable code | |
US20050223209A1 (en) | Apparatus for fast booting computer and method for the same | |
US20040225874A1 (en) | Method for reduced BIOS boot time | |
US7734904B2 (en) | Resetting a system in response to changes of component settings | |
US20060248327A1 (en) | Computer rapid boot system and method | |
US7600062B2 (en) | Method and apparatus for micro-code execution | |
US20090031288A1 (en) | Ejection failure mechanism | |
CN114880293A (zh) | 一种软件启动加速方法及装置与计算设备 | |
US20050027954A1 (en) | Method and apparatus to support the maintenance and reduction of FLASH utilization as it pertains to unused or infrequently referenced FLASH data | |
US8510605B2 (en) | Computer system inspecting defective cell and control method thereof | |
CN113448639B (zh) | 用户配置变量区的访问方法、装置、设备和存储介质 | |
CN117950738B (zh) | 显卡的自动控制方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |