CN115202751A - 一种uefi快速启动的实现方法 - Google Patents

一种uefi快速启动的实现方法 Download PDF

Info

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
Application number
CN202210729182.0A
Other languages
English (en)
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.)
Jiangsu Lemote Information Technology Co ltd
Original Assignee
Jiangsu Lemote 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 Jiangsu Lemote Information Technology Co ltd filed Critical Jiangsu Lemote Information Technology Co ltd
Priority to CN202210729182.0A priority Critical patent/CN115202751A/zh
Publication of CN115202751A publication Critical patent/CN115202751A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic 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快速启动的实现方法
技术领域
本发明涉及一种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访问的数据,存到环境变量中;
快速启动时直接使用环境变量中的数据加快启动速度。
CN202210729182.0A 2022-06-24 2022-06-24 一种uefi快速启动的实现方法 Pending CN115202751A (zh)

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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116028129A (zh) * 2023-03-29 2023-04-28 湖南博匠信息科技有限公司 一种基于飞腾平台的uefi快速启动方法及飞腾平台

Cited By (1)

* Cited by examiner, † Cited by third party
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