CN108536453A - 更新统一可扩展固件接口固件的方法 - Google Patents
更新统一可扩展固件接口固件的方法 Download PDFInfo
- Publication number
- CN108536453A CN108536453A CN201710123611.9A CN201710123611A CN108536453A CN 108536453 A CN108536453 A CN 108536453A CN 201710123611 A CN201710123611 A CN 201710123611A CN 108536453 A CN108536453 A CN 108536453A
- Authority
- CN
- China
- Prior art keywords
- firmware
- extensible
- unified
- firmware interface
- interface
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
一种更新统一可扩展固件接口固件的方法,包括:先建立一初始版统一可扩展固件接口固件为基底,同时创建出共享的变量数据于该初始版统一可扩展固件接口固件上;通过一计算机平台窗口应用软件的编辑器加载前述初始版的统一可扩展固件接口固件及一可扩展标记语言的配置文件,由此使统一可扩展固件接口固件动态新增共享的变量数据于此固件内,产生由初始版的统一可扩展固件接口固件与可扩展标记语言配置文件所结合的新版统一可扩展固件接口固件;通过本技术方案,可在更新固件过程中不用重新修改与编译程序代码即可完成固件更新操作,使开发者大幅减少系统软件开发时间,本方案还可用在衍生系统上而不用触及系统软件程序代码。
Description
技术领域
本发明是关于一种更新统一可扩展固件接口固件的方法,特别是关于一种不用触及系统固件程序代码,而更新可扩展固件接口基本输入输出系统的固件文档的方法。
背景技术
所谓基本输入输出系统(Basic Input Output System,BIOS)是指存放在主板上的闪存(Flash Memory)中,其中包含了许多例如计算机、平板计算机或智能型手机等系统平台输入输出的基本子程序,在主板上为处理软件与硬件沟通设定,其BIOS的设定与系统平台的硬件具有关联性。例如,如果任意更换系统平台的主板上的BIOS,很可能会造成系统平台无法启动。
BIOS的功能是用来设定与控制中央处理单元(CPU)和各相关芯片的运行、频率以及各种标准的周边装置作业的设定,例如:打印机、鼠标、键盘、硬盘与软盘驱动器。当BIOS启动系统平台时,其首先会确定所有周边装置是否就位运行,再从硬盘或磁盘驱动器将操作系统加载至随机存取内存(DRAM)。有了此BIOS,操作系统与应用程序可由BIOS承接输入输出装置的详细数据,如网络卡媒介访问控制(Medium Address Control,MAC地址)、磁盘驱动器容量及位置等,若装置变更,只需通过BIOS的更新,来通知操作系统或应用程序。
但是随着信息技术的发展,传统的BIOS由于只能以16位汇编程序代码,且又有许多基本且无法变更的开发限制,因此即使新型的中央处理器以及主板具有再强大的能力也会为了配合传统BIOS而降低效能。
因此,为了解决传统BIOS跟不上科技进步的问题,开发出了统一可扩展固件接口基本输入输出系统(Unified Extensible Firmware Interface Basic Input OutputSystem,UEFI BIOS)。相较于传统的BIOS,使用者可以在UEFI BIOS下对计算器进行更多种设定。例如使用者可以设定中央处理器(Central Processing Unit,CPU)的基频或倍频等参数,并将目前计算机运行的参数储存成为一配置文件。
统一可扩展固件接口(Unified Extensible Firmware Interface,UEFI)是一种计算机系统规格,用来定义操作系统与系统硬件之间的软件接口,作为先前基本输入输出系统(Basic Input Output System,BIOS)的替代方案。UEFI开机自我检测(Power On SelfTest,POST)、连接操作系统以及提供连接操作系统与硬件的接口。
由于UEFI程序架构相对于旧有BIOS相当庞大,所以每次开发新的系统都需要花费一定时间在编译程序代码上面,每当为了验证修改相关UEFI的设定就必须花费相对应的时间。或者当有类似的衍生系统需要产生时,而此衍生系统可能只有少部分不一样,比如内存规格不同,也都是一样需要花费时间来修改与编译程序代码而产生新的UEFI固件于衍生系统上。因此如何更快速及更简洁的方式完成新版的UEFI程序架构,成为本领域中急需被解决的问题。
发明内容
有鉴于此,为解决现有技术中更新统一可扩展固件接口(Unified ExtensibleFirmware Interface,UEFI)的程序架构的问题,本发明提供一种可以不用重新修改与编译程序代码即可完成更新统一可扩展固件接口固件的方法,减少相对应的统一可扩展固件接口固件程序架构开发时间或/及快速产生新的统一可扩展固件接口固件于衍生系统上,在开发新版的统一可扩展固件接口固件实施阶段可以免去开发时需编译程序代码的时间,也可以应用在不同的衍生系统上的微调。
为达成上述目的,本发明公开了一种更新统一可扩展固件接口固件的方法,其包括:先建立一初始版统一可扩展固件接口固件为基底,同时创建出共享的变量数据于该初始版统一可扩展固件接口固件内;更新固件时,通过一计算机平台窗口应用软件的编辑器加载前述初始版的统一可扩展固件接口固件及一可扩展标记语言(Extensible MarkupLanguage,XML)的配置文件;及通过编辑器的编译将可扩展标记语言的配置文件内共享的变量数据导入到该初始版统一可扩展固件接口固件文档内,由此使统一可扩展固件接口固件动态新增共享的变量数据于此固件内,产生由初始版的统一可扩展固件接口固件与可扩展标记语言配置文件所结合的新版统一可扩展固件接口固件。
其中,所述变量资料是由全局唯一标识符(GUID)与变量名称和数据(Data)所形成。
其中,该可扩展标记语言的配置文件内共享的变量数据导入到该初始版统一可扩展固件接口固件内最后一项变量数据的后面。该可扩展标记语言的配置文件内共享的变量数据将被导入到一统一可扩展固件接口固件的非易失性内存空间(NVRAM)。
本发明的有益效果在于,为了减少相对应的开发时间或/与快速产生新的统一可扩展固件接口固件于衍生系统上,本发明先建立初始版统一可扩展固件接口固件为基底,同时创建出共享的变量数据于初始版上,此变量资料是由全局唯一标识符(GUID)、变量名称和数据(Data)所形成;之后使用窗口应用程序基于可扩展标记语言的方法更新统一可扩展固件接口固件;而此应用软件也须加入共享的变量数据以及设计此变量数据的内容于可扩展标记语言上,最后参考所需要的系统设计来设定相关数据内容于此可扩展标记语言内,进而导入此可扩展标记语言配置文件与初始版统一可扩展固件接口固件于应用软件上编译而产生新的统一可扩展固件接口固件,整个新版固件的产生过程中可以不用重新修改与编译程序代码即可完成,使开发者大幅减少系统固件开发时间或可用在衍生系统上而不用触及系统固件程序代码。
附图说明
图1为本发明统一可扩展固件接口固件装置的空间模块示意图。
图2为本发明的初始版统一可扩展固件接口固件运行的流程示意图。
图3为本发明更新统一可扩展固件接口固件的流程示意图。
图4为本发明更新统一可扩展固件接口固件装置的模块示意图。
图中符号表示:
100 统一可扩展固件接口固件装置;
110 固件空间开机模块;
120 固件空间主要模块;
130 非易失性内存空间;
200 新版统一可扩展固件接口固件装置;
300 加入新变量数据;
S11、S12、S13、S14、S21、S22、S23、S24 步骤。
具体实施方式
有关本发明的详细内容及技术说明,现以实施例作进一步说明,但应了解,该等实施例仅为说明之用,而不应被解释为对本发明实施的限制。
由于统一可扩展固件接口基本输入输出系统(Unified Extensible FirmwareInterface Basic Input Output System,UEFI BIOS)是遵循UEFI论坛的规范定义下开发的,所以在此说明统一可扩展固件接口的开机流程如下:
1.SEC阶段:即安全性阶段,其主要的特色为cache as RAM,即处理器的高速缓存作为内存。由于C语言需要使用堆栈,在这个阶段的系统内存尚未被初始化,在没有内存可用的情况下,便把处理器的高速缓存当成内存来使用,在主存储器被初始化之前来进行预先验证CPU/芯片组及主板。
2.PEI阶段:和传统BIOS的初始化阶段类似,即可扩展固件接口(EFI)前初始化阶段,是用以唤醒CPU及内存初始化,这时候只初始了一小部分的内存,同时,芯片组和主板也开始初始化。接下来的服务程序会确定CPU芯片组被正确的初始化,在此时,可扩展固件接口驱动程序派送器将加载可扩展固件接口驱动程序内存,进入了起始所有内存的驱动程序执行环境(DXE)阶段。
3.DXE阶段:即驱动程序执行环境(DXE)阶段,其主要功能在于沟通可扩展固件接口驱动程序及硬件,也就是说,此阶段所有的内存、CPU(在此是指实体两个或以上的非核心数目,也就是双CPU插槽处理器甚至是四CPU插槽处理器)、PCI、USB、SATA和Shell都会被初始化。
4.BDS阶段:即开机设备选择(BDS)阶段,使用者可以自开机管理者程序页面,选择要从那个侦测到的开机设备来启动。
5.TSL阶段:即短暂系统加载(TSL)阶段,由操作系统接手开机。除此之外,也可以在开机设备选择阶段选择UEFI Shell,让系统进入简单的命令行,进行基本诊断和维护。
参阅图1,为本发明统一可扩展固件接口固件装置三大固件空间模块示意图。一统一可扩展固件接口固件装置100主要可规划出三大固件空间模块分别来存放上述不同开机阶段的程序代码与数据。一、固件空间开机模块(Firmware Volume Boot Block,FV BB)110用以存放统一可扩展固件接口前期开机相关的程序代码与数据,如SEC阶段及PEI阶段,也可称为可扩展固件前初始化(Pre-EFI Initialization Environment,PEI)。二、固件空间主要模块(Firmware Volume Main Block,FV MAIN)120用以存放统一可扩展固件接口中后期开机相关的程序代码与数据,如DXE阶段、BDS阶段及TSL阶段。三、非易失性内存空间(Non-Volatile RAM,NVRAM)130就是存放相关变量数据的地方,而变量资料的成员包含有全局唯一标识符(Globally Unique Identifier,GUID)/变量名称/数据(Data)。而每个变量数据成员都有其独一的全局唯一标识符与变量名称,所以编译者可以制定一个新的空变量,也就是只定义出新的全局唯一标识符与变量名称,而数据则为空数据,待由窗口应用程序基于一可扩展标记语言(Extensible Markup Language,XML)的方法产生变量数据所要的数据,如整数和/或字符串的。
参阅图2,本方法为初始版统一可扩展固件接口程序代码运行部分的流程示意图。开始后首先进行步骤S11:建立共同变量数据。本发明首先要建立初始版的统一可扩展固件接口固件为基底,并建立出共享的变量数据与系统默认的变量数据,此变量数据的内容是由全局唯一标识符、变量名称和数据所形成,且此变量数据存在于该统一可扩展固件接口固件装置100的非易失性内存空间130。
接下来进行步骤S12:取得共同变量资料。此变量数据集是通过窗口应用软件的编辑器(例如Win32)套用前述可扩展标记语言文档设定而成。
接续前述步骤S11及步骤S12进入步骤S13:判断取得的数据是否符合主板设定值,如果符合则套用共享的变量数据;或执行步骤S14:判断取得数据是否符合主板设定值,如果不符合则采用系统的默认值。利用默认原始版的共享变量数据在导入到固件空间开机模块(Firmware Volume Boot Block,FV BB)110前,必须先确认变量数据是否被建立,也就是说是否存在,若存在则将变量数据复制到模块交接区域 (Hand of Block,Hob),模块交接区域为PEI阶段所使用变量控制的方法。
当开始内存初始化时会先取得变量数据,若判断此数据符合此系统需求就会导入此变量数据,也就是系统所有硬件相关参数;反之若判断此数据不符合此系统需求时,就会采用系统默认值来当输入参数使用,完成启动程序。
参考图3及图4,说明新变量数据集的产生,即产生新的统一可扩展固件接口固件的流程。先通过一计算机平台窗口应用软件的编辑器进行步骤S21:载入初始版的统一可扩展固件接口固件与可扩展标记语言的设定。此步骤定义编辑器所需参考的输入参数,而其参数有两个,第一个是前述统一可扩展固件接口固件装置100内初始版统一可扩展固件接口固件,第二个为可扩展标记语言的配置文件。前述中的“初始版”统一可扩展固件接口固件可以是“第一版统一可扩展固件接口固件”也可以是最接近新主板所须验证修改相关统一可扩展固件接口的设定或最接近类似新衍生系统的统一可扩展固件接口固件装置100内的统一可扩展固件接口固件。
接下来通过窗口应用软件的编辑器进行步骤S22:建立新的变量数据,新的变量数据内容包含新的全局唯一标识符、变量名称和数据的共享全局唯一标识符与数据。通过编辑器由前步骤输入的初始版统一可扩展固件接口固件里面找出所有变量数据的存在,而所有变量数据皆存放在该统一可扩展固件接口固件装置100的非易失性内存空间130里面,也就是必须从该非易失性内存空间130内找出存放最后一项的变量数据。
接下来通过窗口应用软件的编辑器进行步骤S23:套用可扩展标记语言的设定于新变量数据。通过编辑器的编译将步骤22所带的新的变量数据导入到此最后一项变量数据的后面,而加入的此共享变量数据部分即含全局唯一标识符、变量名称与数据,而所有变量数据即由可扩展标记语言的配置文件所取得。也就是让新版的统一可扩展固件接口固件动态新增共享的变量数据于此新固件内。
最后如步骤S24:产生一新版统一可扩展固件接口固件装置200。加载新的共享变量数据的非易失性内存空间130将与前述载有初始版的统一可扩展固件接口固件的统一可扩展固件接口固件装置100不同,而更新生成为新版统一可扩展固件接口固件装置200,如图4中加入新变量数据300至该统一可扩展固件接口固件装置100的非易失性内存空间130后,使得该统一可扩展固件接口固件装置100形成为含有新变量数据的新版统一可扩展固件接口固件装置200。
也就是说,该新版统一可扩展固件接口固件装置200内的固件将是由初始版的统一可扩展固件接口固件与可扩展标记语言配置文件所结合的新版的统一可扩展固件接口固件。最后使用者即可以使用该新版统一可扩展固件接口固件装置200内新的统一可扩展固件接口固件导入到新的系统或是衍生系统上面来做统一可扩展固件接口的开机流程运行。
在新的统一可扩展固件接口固件的应用情况下,相似于前述图2中的初始版统一可扩展固件接口固件运行的流程,再判断取得的变量资料(包括初始版的变量资料及新加入的变量数据)是否符合主板设定值,如果符合则套用前述修改的变量数据;如果不符合则采用系统默认值。即由新修改的变量数据在固件空间开机模块(Firmware Volume BootBlock,FV BB)110前,必须先确认变量数据是否被建立,也就是说是否存在,若存在则将变量数据复制到模块交接区域 (Hand of Block,Hob),模块交接区域为PEI阶段所使用变量控制的方法。
当开始内存初始化时会先取得变量数据,若判断此数据符合此系统需求就会导入此变量数据,也就是系统所有硬件相关参数。反之若判断此数据不符合此系统需求时,就会采用系统默认值来当输入参数使用。
以下为本发明用以实现目标为系统内存参数的修改设定的实施例,主板的主要参数有Reference Board ID/Data Width/Channel 1 Rank 0 Enable/Channel 1 Rank 1Enable/Slot Density/DRAM Frequency Lo/DRAM Frequency Hi/DVFS Enable/DRAMType/Memory Down/Slot Bus Width/DRAM Speed Grade。(Reference Board ID:参考板ID/Data Width:数据宽度(x8, x16, x32)/ Channel 1 Rank 0 Enable:信道 1 容量 0开启/Channel 1 Rank 1 Enable:信道 1 容量 1 开启/Slot Density:槽密度(1Gbit,2Gbit, 4Gbit, 8Gbit, 16Gbit)/DRAM Frequency Lo:内存最低速(1066MHz)/DRAMFrequency Hi:内存最高速(1600MHz)/DVFS Enable:动态电压频率调整/DRAM Type:内存类别(DDR3L, LPDDR3)/Memory Down:嵌入式内存/Slot Bus Width:槽通道宽度(32bits,64bits)/DRAM Speed Grade:内存速度阶层(Fast, Typical, Slow, Slow Slow))。
编辑器内的可扩展标记语言的设定片段内容如下:
<mrc_setting byte_cnt="01" desc="0x3:CHTRVP-T4" name="Reference Board ID"offset="1">
<data>3</data>
</mrc_setting>
<mrc_setting byte_cnt="1" desc="0-disable, 1=enable" name="Channel 1Rank 0 Enable" offset="3" parameter_type="2">
<data>1</data>
</mrc_setting>
<mrc_setting byte_cnt="1" desc="0-disable, 1=enable" name="Channel 1Rank 1 Enable" offset="4" parameter_type="3">
<data>1</data>
</mrc_setting>
<mrc_setting byte_cnt="1" desc="0-x8, 1-x16, 2-x32" name="Data Width"offset="5" parameter_type="4">
<data>2</data>
</mrc_setting>
<mrc_setting byte_cnt="1" desc="0-1Gbit, 1-2Gbit, 2-4Gbit, 3-8Gbit, 4-16Gbit" name="Slot Density" offset="6" parameter_type="5">
<data>4</data>
</mrc_setting>
<mrc_setting byte_cnt="1" desc="0-800MHz, 1-1066MHz, 2-1600MHz" name="DRAM Frequency Lo" offset="7" parameter_type="6">
<data>1</data>
</mrc_setting>
<mrc_setting byte_cnt="1" desc="0-800MHz, 1-1066MHz, 2-1600MHz" name="DRAM Frequency Hi" offset="8" parameter_type="7">
<data>2</data>
</mrc_setting>
<mrc_setting byte_cnt="1" desc="0-disable, 1=enable" name="DVFS Enable"offset="9" parameter_type="8">
<data>1</data>
</mrc_setting>
<mrc_setting byte_cnt="1" desc="0-DDR3L, 1-LPDDR3" name="DRAM Type"offset="10" parameter_type="9">
<data>1</data>
</mrc_setting>
<mrc_setting byte_cnt="1" desc="0-Yes, 1=No" name="Memory Down" offset="11" parameter_type="10">
<data>0</data>
</mrc_setting>
<mrc_setting byte_cnt="1" desc="0-32bits, 1-64bits" name="Slot BusWidth" offset="12" parameter_type="11">
<data>1</data>
</mrc_setting>
<mrc_setting byte_cnt="1" desc="0-Fast, 1-Typical, 2-Slow, 3-Slow Slow"name="DRAM Speed Grade" offset="13" parameter_type="12">
假设实施上系统A所需的内存设定为Reference Board ID=1,DRAM Frequency Hi:1066MHz,DRAM Type:LPDDR3…等,当此相关变量数据加入至新版统一可扩展固件接口固件装置200的新版的统一可扩展固件接口统一可扩展固件接口固件时,系统A即会判断Reference Board ID 是否为1,如果是会导入上列新的相关变量数据设定,如果不是则会加载含初始版的统一可扩展固件接口固件的默认值。如前述可扩展标记语言的设定片段内容Reference Board ID(参考板ID)的数据为3,所以不会导入上列新的相关变量数据设定,而是加载含初始版的统一可扩展固件接口固件的默认值。
以上所述,仅为本发明的较佳实施例而已,不能以此限定本发明实施的范围,即凡依本发明申请专利范围及发明说明内容所作的简单的等效变化与修饰,皆仍属本发明专利涵盖的范围内。
Claims (4)
1.一种更新统一可扩展固件接口固件的方法,其特征在于,包括:
建立一初始版统一可扩展固件接口固件为基底,同时创建出共享的变量数据于所述初始版统一可扩展固件接口固件内;
更新固件时,通过一计算机平台窗口应用软件的编辑器加载所述初始版统一可扩展固件接口固件及一可扩展标记语言的配置文件;及
通过编辑器的编译将可扩展标记语言的配置文件内共享的变量数据导入到所述初始版统一可扩展固件接口固件内,由此使统一可扩展固件接口固件动态新增共享的变量数据于此固件文档内,产生由初始版统一可扩展固件接口固件与可扩展标记语言的配置文件所结合的新版统一可扩展固件接口固件。
2.如权利要求1所述的更新统一可扩展固件接口固件的方法,其特征在于,所述变量数据是由全局唯一标识符、变量名称和数据所形成。
3.如权利要求2所述的更新统一可扩展固件接口固件的方法,其特征在于,所述可扩展标记语言的配置文件内共享的变量数据导入到所述初始版统一可扩展固件接口固件内最后一项变量数据的后面。
4.如权利要求3所述的更新统一可扩展固件接口固件的方法,其特征在于,所述可扩展标记语言的配置文件内共享的变量数据将被导入到一统一可扩展固件接口固件的非易失性内存空间。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710123611.9A CN108536453A (zh) | 2017-03-03 | 2017-03-03 | 更新统一可扩展固件接口固件的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710123611.9A CN108536453A (zh) | 2017-03-03 | 2017-03-03 | 更新统一可扩展固件接口固件的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108536453A true CN108536453A (zh) | 2018-09-14 |
Family
ID=63488419
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710123611.9A Pending CN108536453A (zh) | 2017-03-03 | 2017-03-03 | 更新统一可扩展固件接口固件的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108536453A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102667716A (zh) * | 2009-12-18 | 2012-09-12 | 惠普发展公司,有限责任合伙企业 | 使用固件更新应用程序更新部件的固件的方法及装置 |
CN103207797A (zh) * | 2013-03-15 | 2013-07-17 | 南京工业大学 | 基于通用可扩展固件接口固件系统的胶囊式定制更新方法 |
CN104660447A (zh) * | 2015-01-29 | 2015-05-27 | 杭州初灵信息技术股份有限公司 | 一种snmp节点信息的管理方法和管理系统 |
TW201520894A (zh) * | 2013-11-18 | 2015-06-01 | Insyde Software Corp | 平台系統、通用可延伸韌體介面基本輸入輸出系統之支援硬體組態之變更方法、記錄媒體及電腦程式產品 |
US20160011879A1 (en) * | 2014-07-10 | 2016-01-14 | Cisco Technology, Inc. | Preconfiguring hardware and speeding up server discovery prior to bios boot |
US20160202964A1 (en) * | 2015-01-14 | 2016-07-14 | Wade Andrew Butcher | Systems And Methods Of Device Firmware Delivery For Pre-Boot Updates |
CN106201608A (zh) * | 2016-07-01 | 2016-12-07 | 南京百敖软件有限公司 | 计算机uefi固件更新方法 |
-
2017
- 2017-03-03 CN CN201710123611.9A patent/CN108536453A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102667716A (zh) * | 2009-12-18 | 2012-09-12 | 惠普发展公司,有限责任合伙企业 | 使用固件更新应用程序更新部件的固件的方法及装置 |
CN103207797A (zh) * | 2013-03-15 | 2013-07-17 | 南京工业大学 | 基于通用可扩展固件接口固件系统的胶囊式定制更新方法 |
TW201520894A (zh) * | 2013-11-18 | 2015-06-01 | Insyde Software Corp | 平台系統、通用可延伸韌體介面基本輸入輸出系統之支援硬體組態之變更方法、記錄媒體及電腦程式產品 |
US20160011879A1 (en) * | 2014-07-10 | 2016-01-14 | Cisco Technology, Inc. | Preconfiguring hardware and speeding up server discovery prior to bios boot |
US20160202964A1 (en) * | 2015-01-14 | 2016-07-14 | Wade Andrew Butcher | Systems And Methods Of Device Firmware Delivery For Pre-Boot Updates |
CN104660447A (zh) * | 2015-01-29 | 2015-05-27 | 杭州初灵信息技术股份有限公司 | 一种snmp节点信息的管理方法和管理系统 |
CN106201608A (zh) * | 2016-07-01 | 2016-12-07 | 南京百敖软件有限公司 | 计算机uefi固件更新方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9965270B2 (en) | Updating computer firmware | |
US9501289B2 (en) | Method of a UEFI firmware and computer system thereof | |
US7657881B2 (en) | Using optimized libraries to improve performance of deployed application code at runtime | |
JP2004021981A (ja) | イメージベースのソフトウェアインストール | |
US20060123223A1 (en) | Persistent memory manipulation using EFI | |
WO2017095720A1 (en) | Techniques to identify idiomatic code in a code base | |
US8539214B1 (en) | Execution of a program module within both a PEI phase and a DXE phase of an EFI firmware | |
Edler von Koch et al. | Exploiting function similarity for code size reduction | |
JPWO2010084617A1 (ja) | 構成変更機能を有する情報処理装置、システム構成変更方法及びシステム構成変更プログラム | |
CN104156234A (zh) | 启动多核处理器、bootloader大小端模式自适应的方法及装置 | |
US20140101425A1 (en) | Managing operating system components | |
TWI601072B (zh) | A New Way to Create Unified Extensible Firmware Interfaces | |
JP2023020861A (ja) | ファームウェアの更新 | |
US10216217B1 (en) | Adaptive compilation and execution for hardware acceleration | |
US11340876B2 (en) | Method implemented by processor of electronic device and processor to operate electronic device for heterogeneous processors | |
CN111651215A (zh) | 一种bios设定自适应的方法、装置、存储介质和计算机设备 | |
US7873807B1 (en) | Relocating a program module from NVRAM to RAM during the PEI phase of an EFI-compatible firmware | |
CN108536453A (zh) | 更新统一可扩展固件接口固件的方法 | |
CN105204896A (zh) | 一种数字存储示波器的BootLoader设计方法 | |
WO2019100704A1 (zh) | 用于多模IoT设备的启动方法、多模IoT设备及存储介质 | |
US11188361B1 (en) | Cross-architecture software distribution using a virtual instruction set architecture | |
US20130262910A1 (en) | Time keeping in unknown and unstable clock architecture | |
CN108958795B (zh) | 一种嵌入式系统中BootLoader代码重利用方法和开发板 | |
WO2022046105A1 (en) | Bios update | |
CN114253615B (zh) | 一种引导程序设置方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20180914 |