CN105808270A - 固件变量更新方法 - Google Patents

固件变量更新方法 Download PDF

Info

Publication number
CN105808270A
CN105808270A CN201410839601.1A CN201410839601A CN105808270A CN 105808270 A CN105808270 A CN 105808270A CN 201410839601 A CN201410839601 A CN 201410839601A CN 105808270 A CN105808270 A CN 105808270A
Authority
CN
China
Prior art keywords
firmware
archives
variable
encapsulation
update
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.)
Granted
Application number
CN201410839601.1A
Other languages
English (en)
Other versions
CN105808270B (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.)
Wistron Corp
Original Assignee
Wistron Corp
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 Wistron Corp filed Critical Wistron Corp
Publication of CN105808270A publication Critical patent/CN105808270A/zh
Application granted granted Critical
Publication of CN105808270B publication Critical patent/CN105808270B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/654Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1417Boot up procedures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1433Saving, restoring, recovering or retrying at system level during software upgrading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/658Incremental updates; Differential updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供了一种固件变量更新方法,用于计算机系统的基本输入输出系统,该方法包含有依据第一系统管理中断信号将固件更新封装档案及固件更新指令写入存储器,并执行关机程序;触发第二系统管理中断信号,并据以将变量更新指令写入存储器;将计算机系统切换至休眠状态并启始计时器;于计时器期满时执行第一重开机程序;于第一重开机程序期间,根据固件更新指令,利用固件更新封装档案更新基本输入输出系统的原始固件封装档案;以及执行第二重开机程序,并于第二重开机程序期间,根据变量更新指令,利用更新变量档案更新基本输入输出系统的原始变量档案。

Description

固件变量更新方法
技术领域
本发明关于一种固件(firmware)变量更新方法,尤指一种可依需求对固件变量进行更新的固件变量更新方法。
背景技术
基本输入输出系统(BasicInput/OutputSystem,BIOS)在计算机系统的开机过程中担任重要的角色。一般来说,在开机过程中,透过BIOS对计算机系统的每一个硬件进行启始化设定和测试,以及协助启动作业系统,将可确保系统能够正常工作。在实际操作上,BIOS的程式码通常会被储存于一储存装置中,当计算机系统供应一中央处理器所需的系统电源后,中央处理器会存取并执行储存装置中的BIOS的程式码,以进行计算机系统的开机程序。
由于计算机系统架构更新速度很快,BIOS必须不断更新,以因应最新的硬件架构。BIOS的程式码通常包含有一固件封装档案(capsulefile)与一变量档案(variablefile)。变量档案中所储存的参数通常可作为系统初始化、电器设备参数传递及记录状态等应用。然而,传统的更新程序中并没有对变量档案进行更新,而是保留原有的变量设定值,如此一来,当BIOS版本有变动时,将会导致变量档案中的变量数值错误而使储存装置的映像档案毁损而无法完成开机程序。
发明内容
为了解决上述问题,本发明提供一种固件变量更新方法,以实现更改或变动变量档案的目的而能避免造成储存装置的映像档案毁损而无法完成开机程序的问题。
本发明揭露一种固件变量更新方法,用于一计算机系统的一基本输入输出系统,该方法包含有:依据一第一系统管理中断信号将一固件更新封装档案及一固件更新指令写入一存储器,并执行一关机程序,其中该固件更新指令用以指示执行固件封装更新;触发一第二系统管理中断信号,并据以将一变量更新指令写入该存储器,其中该变量更新指令用以指示执行固件变量更新;于该关机程序结束之前,将该计算机系统切换至一休眠状态并启始一计时器;于该计时器期满时,执行一第一重开机程序;于该第一重开机程序期间,根据该固件更新指令,利用该固件更新封装档案更新该基本输入输出系统的一原始固件封装档案;以及执行一第二重开机程序,并于该第二重开机程序期间,根据该变量更新指令,利用一更新变量档案更新该基本输入输出系统的一原始变量档案。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一计算机系统的示意图。
图2为本发明实施例一固件变量更新流程的示意图。
图3为图2的固件变量更新流程的变化实施例示意图。
图4为本发明实施例一变量档案的示意图。
【符号说明】
102处理器
104、106储存单元
108存储器
110主要区块
112变量区块
20流程
200、202、204、206、208、210、步骤
212、214、302、304、306、308、
310、312、314、316、318、320
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,图1为本发明实施例一计算机系统10的示意图。计算机系统10包含一处理器102、储存单元104、106及存储器108。储存单元104耦接于处理器102,用来储存数据以供处理器102存取与执行。也就是说,数据会先载入到储存单元104中,处理器102再读取存于储存单元104中的数据,并执行相关操作。储存单元106用来储存一基本输入输出系统(BasicInput/outputSystem,BIOS)。其中,储存单元106包含一主要区块110与一变量区块112。主要区块110用来储存BIOS的一原始固件封装档案(originalcapsulefile)。变量区块112用来储存BIOS的一原始变量档案(originalvariablefile)。
储存单元104可为一随机存取存储器(RandomAccessMemory,RAM)或其他任何储存装置。储存单元106可为一非挥发性存储器,例如一快闪只读存储器(FlashReadOnlyMemory,FlashROM)。储存单元106也可为一电可擦洗可编程只读存储器(ElectricallyErasableProgrammableReadOnlyMemory,EEPROM),但并不以此为限,储存单元106可为其他任何可读写的储存装置。存储器108可为一实体存储器,且在进阶组态与电源介面(AdvancedConfigurationandPowerInterface,ACPI)的S3休眠状态下,存储器108仍维持有电源供应。
关于计算机系统10的运作方式,请参考图2,图2为本发明实施例BIOS的固件变量更新一流程20的示意图。图2所示流程主要是对应于图1的计算机系统10的操作。流程20包含以下步骤:
步骤200:开始。
步骤202:依据第一系统管理中断信号(SystemManagementInterrupt,SMI)将固件更新封装档案及固件更新指令写入存储器,并执行关机(shutdown)程序。
步骤204:触发第二系统管理中断信号,并据以将变量更新指令写入存储器。
步骤206:于关机程序结束之前,将计算机系统切换至休眠状态并启始计时器。
步骤208:于计时器期满时,执行第一重开机(reboot)程序。
步骤210:于第一重开机程序期间,根据固件更新指令,利用固件更新封装档案更新基本输入输出系统的原始固件封装档案。
步骤212:执行第二重开机程序,并于第二重开机程序期间,根据变量更新指令,更新基本输入输出系统的原始变量档案。
步骤214:结束。
根据流程20,于步骤202中,依据一第一系统管理中断信号将一更新固件封装档案及一固件更新指令写入存储器108并执行一关机程序。其中,第一系统管理中断信号可为一软体系统管理中断信号(SoftwareSMI),固件更新指令系用以指示执行固件封装更新程序。举例来说,于本实施例中,可利用BIOS触发第一系统管理中断信号,使得处理单元102进入一系统管理模式(SystemManagementMode,SMM)。接着,将固件更新封装档案及固件更新指令写入存储器108。于固件更新封装档案及固件更新指令被写入存储器108后,计算机系统10开始执行一关机程序并且将电源状态切换成一关机状态(即ACPI的S5关机状态)。
于本实施例中,可先行验证固件更新封装档案的合法性,再进行相关更新程序。请参考图3,首先执行一更新应用程式(例如Winflash烧录应用程式),并利用更新应用程式来检查固件更新封装档案是否为合法的固件档案(步骤302及步骤304)。当固件更新封装档案为合法时,触发第一系统管理中断信号(步骤306)。接着,根据第一系统管理中断信号,处理单元102进入系统管理模式并将固件更新封装档案及固件更新指令写入存储器108(步骤310)。计算机系统10开始执行关机程序且将电源状态切换成S5关机状态(步骤312)。此外,当固件更新封装档案为不合法时,则停止执行更新程序(步骤308)。
于步骤204中,在步骤202中所述的关机程序结束之前,依据一第二系统管理中断信号将一变量更新指令写入存储器108。其中变量更新指令系用以指示执行固件变量更新程序。其中,第二系统管理中断信号可为一sleeptrap系统管理中断信号。举例来说,于本实施例中,可利用BIOS触发一第二系统管理中断信号,使得处理单元102进入系统管理模式。接着,将变量更新指令写入存储器108。
关于将变量更新指令写入存储器108的详细运作,请继续参考图3,在前述的关机程序结束之前,利用BIOS触发一第二系统管理中断信号,使得处理单元102进入系统管理模式(步骤314)。接着,检查BIOS的一识别信息并据以判断是否更新固件变量,以产生一判断结果(步骤316)。其中识别信息包含BIOS的一版本信息、一建立日期及一产品种类中的至少其中之一。于判断结果指示需进行更新固件变量时,将变量更新指令写入存储器108(步骤318)。于判断结果指示不需进行更新固件变量时,不需将变量更新指令写入存储器108。
于步骤206中,在步骤202中所述的关机程序结束之前,计算机系统10切换至ACPI的S3休眠状态。接着,设定并启始一计时器开始计数,以触发后续的第一重开机程序(例如第3图中的步骤320)。由于计算机系统10在ACPI的S3休眠状态下,存储器108仍然具有电源供给而能维持足够的电量。在此情况下,当计算机系统10切换至ACPI的S3休眠状态后,储存在存储器108中的固件更新封装档案、固件更新指令及变量更新指令才不会流失而可在后续更新程序中提供使用。此外,于本实施例中,所述计时器可以是一即时唤醒计时器(RealTimeClockwakeuptimer,RTCwakeuptimer)。所述计时器的计时期间的长度可依需求而做不同的设定。
于步骤208中,当步骤206所启始的计时器期满时,计算机系统10执行第一重开机程序。也就是说,透过计时器来唤醒计算机系统10去执行第一重开机程序。
于步骤210中,于第一重开机程序期间根据固件更新指令来更新BIOS的原始固件封装档案。举例来说,于第一重开机程序的一可延伸固件前初始化(Pre-EFIInitializationEnvironment,PEI)阶段,检测存储器108是否储存有固件更新指令。若检测到储存有固件更新指令的话,表示必须执行固件封装更新程序。接着,根据固件更新指令将BIOS的启动模式设定成一更新模式,并清除存储器108中所储存的固件更新指令。由于BIOS的启动模式已被设定成更新模式,于该第一重开机程序的一选择启动装置(BootDeviceSelect,BDS)阶段会载入一更新驱动器。更新驱动器会利用固件更新封装档案来更新储存在主要区块110中的原始固件封装档案。例如,更新驱动器会使用固件更新封装档案来覆写主要区块110中的原始固件封装档案。也就是说,更新驱动器会先清除储存单元106的主要区块110中的原始固件封装档案,并将固件更新封装档案覆写至主要区块110中,以实现固件封装更新程序。
于步骤212中,当固件更新封装档案被更新至储存单元106的主要区块110后,计算机系统10执行一第二重开机程序。于第二重开机程序期间,检测存储器108是否储存有变量更新指令。若检测到储存有变量更新指令的话,表示必须执行固件变量更新程序。接着,根据变量更新指令利用一更新变量档案来更新储存在变量区块112中的原始变量档案。例如,使用更新变量档案来覆写变量区块112中的原始变量档案。也就是说,更新驱动器会先清除储存单元106的变量区块112中的原始变量档案,并将更新变量档案覆写至变量区块112中,以实现固件变量更新程序。当现固件变量更新程序完成后,计算机系统10清除存储器108中所储存的变量更新指令并执行一正常开机程序以进行正常运作。由于执行步骤210后,原始固件封装档案被更新成固件更新封装档案而原始变量档案仍然保留原有的设定,本实施例会于第二重开机程序后再做变量档案的更新而能避免变动后发生的非预期作用。
此外,于步骤212中,若是没有检测到储存有变量更新指令的话,表示必须不需执行固件变量更新程序,计算机系统10直接执行一正常开机程序。
由于在传统的固件更新程序中并不会对BIOS的固件变量档案(即图1的变量区块112中所储存的原始变量档案)进行更新。于本实施例中,通过系统管理中断信号将固件更新封装档案、固件更新指令及变量更新指令储存在存储器108中,并透过计算机系统10切换至ACPI的S3休眠状态,使得存储器108仍然具有电源供给,如此一来,将可确保储存在存储器108中的固件更新封装档案、固件更新指令及变量更新指令不会流失而可在后续更新程序中提供使用。接着,计算机系统10会依据存储器108中所储存的固件更新指令及变量更新指令来对储存单元106的主要区块110所储存的原始固件封装档案以及变量区块112所储存的原始变量档案进行更新,如此一来,于本实施例中,将可依据需求达到新增或删除变量档案的目的。另一方面,由于执行步骤210后,原始固件封装档案被更新成体更新封装档案而原始变量档案仍然保留原有的设定,本实施例会于第二重开机程序后再做变量档案的更新而能避免变动后发生的非预期作用。
请参考图4,图4为本发明实施例BIOS变量档案的示意图。图4分别表示BIOS#63版本、BIOS#64版本(以传统方式更新)以及BIOS#64版本(以本实施例方式更新)的变量档案内容。相较于BIOS#63版本,BIOS#64版本新增了新变量1与新变量2。其中新变量1的位置在offset0x39h,新变量2的位置在offset0x3Ah。在此情况下,原先在位置offset0x39之后的变量于更新程序后将会顺移两个位置,然而,传统的更新程序中并没有对变量档案进行更新,而是保留原有的设定值。举例来说,在传统方式更新后的BIOS#64版本中,变量1的位置在offset0x3Bh,而变量1的值将会直接沿用BIOS#63版本的位置offset0x3Bh中所储存的数值。也就是说,会采用BIOS#63版本的变量3的变量值,依此类推。同时,原先BIOS#63版本的位置offset0x3Eh和0x3Fh的栏位没有被定义,其初始值为0。因此当用传统方式将BIOS#63版本更新成BIOS#64版本后,变量4的值会从2变为0,变量5的值会从1变为0,而原本系统设定将会从容错式磁盘阵列(RedundantArrayofIndependentDisks,RAID)模式变成进阶主机控制器介面(AdvancedHostControllerInterface,AHCI)模式,如此一来,将会造成储存装置的映像档案毁损而无法开机。
相较之下,本实施例可以重新建构正确的更新变量档案并将更新变量档案覆写至变量区块112中,以实现固件变量更新程序。如图4所示,本实施例可于建构好正确的更新变量档案后(变量4的值为2,变量5的值为1),透过流程20的步骤将更新变量档案写入储存单元106的变量区块112而实现固件变量更新的目的。
值得注意的是,图1所示的计算机系统10系为本发明的一实施例,本领域具通常知识者当可根据系统需求做适当的变化。举例来说,在本发明一实施例中,计算机系统10的BIOS可为相应于统一可延伸固件介面(UnifiedExtensibleFirmwareInterface,UEFI)的BIOS,但本发明并不以此为限。计算机系统10可被实施为一用以存取网际网络的手持或者固定装置、一桌上型个人电脑、笔记型电脑、个人数字助理,或者任何具有一BIOS、起始固件或者相等物的其他处理装置。此外,处理器102也可透过一系统晶片来存取储存单元104、106及存储器108中的数据。
综上所述,由于在传统的固件更新程序中并不会对BIOS的固件变量档案进行更新。于本实施例中,藉由系统管理中断信号将固件更新封装档案、固件更新指令及变量更新指令储存在存储器中,并透过将计算机系统切换至ACPI的S3休眠状态使得存储器仍然具有电源供给。接着,计算机系统依据存储器中所储存的固件更新指令及变量更新指令来分别对储存单元的原始固件封装档案及原始变量档案进行更新,如此一来,将可依据需求达到新增或删除变量档案的目的。
以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。

Claims (10)

1.一种固件变量更新方法,用于一计算机系统的一基本输入输出系统,其特征在于,该方法包含有:
依据一第一系统管理中断信号将一固件更新封装档案及一固件更新指令写入一存储器,并执行一关机程序,其中该固件更新指令用以指示执行固件封装更新;
触发一第二系统管理中断信号,并据以将一变量更新指令写入该存储器,其中该变量更新指令用以指示执行固件变量更新;
于该关机程序结束之前,将该计算机系统切换至一休眠状态并启始一计时器;
于该计时器期满时,执行一第一重开机程序;
于该第一重开机程序期间,根据该固件更新指令,利用该固件更新封装档案更新该基本输入输出系统的一原始固件封装档案;以及
执行一第二重开机程序,并于该第二重开机程序期间,根据该变量更新指令,利用一更新变量档案更新该基本输入输出系统的一原始变量档案。
2.根据权利要求1所述的方法,其特征在于,其中依据该第一系统管理中断信号将该固件更新封装档案及该固件更新指令写入该存储器并执行该关机程序的步骤包含有:
检查该固件更新封装档案是否为合法的固件档案;
当该固件更新封装档案为合法时,触发该第一系统管理中断信号;
依据该第一系统管理中断信号,将该固件更新封装档案及该固件更新指令写入该存储器;以及
执行该关机程序。
3.根据权利要求2所述的方法,其特征在于,该方法另包含有:
执行一更新应用程式以检查该固件更新封装档案是否为合法的固件档案。
4.根据权利要求1所述的方法,其特征在于,其中触发该第二系统管理中断信号,并据以将该变量更新指令写入该存储器的步骤包含有:
于该关机程序结束之前,触发该第二系统管理中断信号;
根据该第二系统管理中断信号,检查该基本输入输出系统的一识别信息并据以判断是否更新固件变量,以产生一判断结果;以及
于判断结果指示需进行更新固件变量时,将该变量更新指令写入该存储器。
5.根据权利要求4所述的方法,其特征在于,其中该识别信息包含该基本输入输出系统的一版本信息、一建立日期及一产品种类中的至少其中之一。
6.根据权利要求1所述的方法,其特征在于,其中根据该固件更新指令利用该固件更新封装档案更新该基本输入输出系统的该原始固件封装档案的步骤包含有:
于该第一重开机程序的一可延伸固件前初始化阶段,检测该存储器中的该固件更新指令,并根据该固件更新指令,将基本输入输出系统的启动模式设定成一更新模式;
于该第一重开机程序的一选择启动装置阶段,载入一更新驱动器;以及
该更新驱动器利用该固件更新封装档案更新该基本输入输出系统的该原始固件封装档案。
7.根据权利要求6所述的方法,其特征在于,其中该更新驱动器利用该固件更新封装档案更新该基本输入输出系统的该原始固件封装档案的步骤包含有:
该更新驱动器利用该固件更新封装档案覆写该基本输入输出系统的该原始固件封装档案。
8.根据权利要求6所述的方法,其特征在于,该方法另包含有:清除该存储器中的该固件更新指令。
9.根据权利要求1所述的方法,其中执行该第二重开机程序并于该第二重开机程序期间根据该变量更新指令利用该更新变量档案更新该基本输入输出系统的该原始变量档案的步骤包含有:
于该第二重开机程序期间,检测该存储器中的该变量更新指令;以及
根据该变量更新指令,利用该更新变量档案更新该基本输入输出系统的该原始变量档案。
10.根据权利要求9所述的方法,其特征在于,该方法另包含有:清除该存储器中的该变量更新指令。
CN201410839601.1A 2014-12-17 2014-12-30 固件变量更新方法 Active CN105808270B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
TW103144142 2014-12-17
TW103144142A TWI515660B (zh) 2014-12-17 2014-12-17 韌體變量更新方法

Publications (2)

Publication Number Publication Date
CN105808270A true CN105808270A (zh) 2016-07-27
CN105808270B CN105808270B (zh) 2019-03-05

Family

ID=55640288

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410839601.1A Active CN105808270B (zh) 2014-12-17 2014-12-30 固件变量更新方法

Country Status (3)

Country Link
US (1) US9612824B2 (zh)
CN (1) CN105808270B (zh)
TW (1) TWI515660B (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108509210A (zh) * 2017-02-24 2018-09-07 广达电脑股份有限公司 自动更新基本输入输出系统的系统与方法
CN109189435A (zh) * 2018-09-21 2019-01-11 英业达科技有限公司 复杂可编程逻辑器件的固件更新方法
CN109213301A (zh) * 2017-06-29 2019-01-15 美商安迈科技股份有限公司 支援省电模式的uefi壳程序方法及其电脑系统
CN109343886A (zh) * 2018-12-12 2019-02-15 广东浪潮大数据研究有限公司 一种升级bios的方法、装置以及设备
CN110069280A (zh) * 2018-01-23 2019-07-30 纬创资通股份有限公司 电子装置与其固件更新方法
CN110321170A (zh) * 2018-03-29 2019-10-11 纬创资通股份有限公司 开机方法
CN110688141A (zh) * 2018-07-05 2020-01-14 慧荣科技股份有限公司 固件更新方法
CN111766797A (zh) * 2019-04-02 2020-10-13 海盗船存储器公司 微控制器、存储模块及用于更新微控制器的韧件的方法
WO2021233363A1 (zh) * 2020-05-21 2021-11-25 华为技术有限公司 计算设备及其bios更新方法和介质
CN114047959A (zh) * 2021-11-01 2022-02-15 东莞新能安科技有限公司 开机管理方法、装置及电源系统
WO2022040911A1 (en) * 2020-08-25 2022-03-03 Intel Corporation Methods and apparatus to perform pseudo-s3 protocol to update firmware and/or activate new firmware with warm reset

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10423425B2 (en) * 2016-06-13 2019-09-24 Dell Products, Lp System and method for runtime update of ESRT table for hot-pluggable disks
US10140117B2 (en) * 2016-06-30 2018-11-27 Microsoft Technology Licensing, Llc Fault-tolerant variable region repaving during firmware over the air update
US10185553B2 (en) 2016-06-30 2019-01-22 Microsoft Technology Licensing, Llc Fault-tolerant variable region repaving during firmware over the air update
CN106126264B (zh) * 2016-07-05 2020-04-21 河北建筑工程学院 基于amd平台am2接口的cpu移植方法和系统
CN107766066B (zh) * 2016-08-23 2021-02-26 中车株洲电力机车研究所有限公司 一种更新从属模块固件的方法
US10382262B1 (en) * 2017-05-10 2019-08-13 Appian Corporation Dynamic application configuration techniques
CN107506217A (zh) * 2017-09-14 2017-12-22 南京百敖软件有限公司 通过BIOS更新Capsule来更新用户输入SMBIOS信息的方法
US10871955B2 (en) * 2018-02-08 2020-12-22 Insyde Software Corp. System and method for providing firmware data updates
US10503489B1 (en) 2018-05-22 2019-12-10 Quanta Computer Inc. Updating firmware via a remote utility
US11580226B2 (en) * 2019-02-21 2023-02-14 Cisco Technology, Inc. Hybrid firmware code protection
WO2021131753A1 (ja) * 2019-12-24 2021-07-01 京セラ株式会社 通信機器、サーバ、及び制御方法
US11294691B2 (en) * 2020-02-03 2022-04-05 Dell Products L.P. Dynamic memory layouts for firmware updates based on OEM memory subsystem

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030033515A1 (en) * 2001-08-10 2003-02-13 Autry Mark A. Upgrading a bios
CN102331942A (zh) * 2011-07-07 2012-01-25 曙光信息产业股份有限公司 一种BIOS与Linux内核自动升级的方法
CN102609275A (zh) * 2011-01-20 2012-07-25 精英电脑股份有限公司 Bios更新系统及其方法
CN203324968U (zh) * 2012-05-23 2013-12-04 联阳半导体股份有限公司 更新系统固件或参数的装置及其电脑系统

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5333285A (en) * 1991-11-21 1994-07-26 International Business Machines Corporation System crash detect and automatic reset mechanism for processor cards
US6907524B1 (en) * 2000-10-13 2005-06-14 Phoenix Technologies Ltd. Extensible firmware interface virus scan
US20040076043A1 (en) * 2002-10-21 2004-04-22 Phoenix Technologies Ltd. Reliable and secure updating and recovery of firmware from a mass storage device
US7337309B2 (en) * 2003-03-24 2008-02-26 Intel Corporation Secure online BIOS update schemes
US20040230963A1 (en) * 2003-05-12 2004-11-18 Rothman Michael A. Method for updating firmware in an operating system agnostic manner
US7222339B2 (en) * 2003-06-13 2007-05-22 Intel Corporation Method for distributed update of firmware across a clustered platform infrastructure
US20050027954A1 (en) * 2003-08-01 2005-02-03 Rothman Michael A. Method and apparatus to support the maintenance and reduction of FLASH utilization as it pertains to unused or infrequently referenced FLASH data
US20070043833A1 (en) * 2005-08-22 2007-02-22 Inventec Corporation Computer platform system program remote upgrading control method and system
US20090006834A1 (en) * 2007-06-29 2009-01-01 Michael Rothman Proxied firmware updates
US7917689B2 (en) * 2007-12-28 2011-03-29 Intel Corporation Methods and apparatuses for nonvolatile memory wear leveling
US8117435B2 (en) * 2008-06-30 2012-02-14 Intel Corporation Method and system for secured dynamic bios update
US8904162B2 (en) * 2012-08-01 2014-12-02 Intel Corporation Methods and apparatus for performing secure BIOS upgrade
US20140189336A1 (en) * 2012-12-28 2014-07-03 Miguel Ballesteros Methods and apparatus to support authenticated variables
US20140258699A1 (en) * 2013-03-07 2014-09-11 Aspeed Technology Inc. Boot fault tolerant device and method thereof
US9779241B2 (en) * 2013-09-25 2017-10-03 Cisco Technology, Inc. Synchronization of UEFI secure boot variables on a managed server
US9208347B2 (en) * 2013-11-05 2015-12-08 Bank Of America Corporation Updating roles based access
US20160112252A1 (en) * 2014-10-15 2016-04-21 Cisco Technology, Inc. Deployment and upgrade of network devices in a network environment

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030033515A1 (en) * 2001-08-10 2003-02-13 Autry Mark A. Upgrading a bios
CN102609275A (zh) * 2011-01-20 2012-07-25 精英电脑股份有限公司 Bios更新系统及其方法
CN102331942A (zh) * 2011-07-07 2012-01-25 曙光信息产业股份有限公司 一种BIOS与Linux内核自动升级的方法
CN203324968U (zh) * 2012-05-23 2013-12-04 联阳半导体股份有限公司 更新系统固件或参数的装置及其电脑系统

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108509210A (zh) * 2017-02-24 2018-09-07 广达电脑股份有限公司 自动更新基本输入输出系统的系统与方法
CN109213301A (zh) * 2017-06-29 2019-01-15 美商安迈科技股份有限公司 支援省电模式的uefi壳程序方法及其电脑系统
CN110069280B (zh) * 2018-01-23 2021-09-17 纬创资通股份有限公司 电子装置与其固件更新方法
CN110069280A (zh) * 2018-01-23 2019-07-30 纬创资通股份有限公司 电子装置与其固件更新方法
CN110321170B (zh) * 2018-03-29 2022-07-29 纬创资通股份有限公司 开机方法
CN110321170A (zh) * 2018-03-29 2019-10-11 纬创资通股份有限公司 开机方法
CN110688141A (zh) * 2018-07-05 2020-01-14 慧荣科技股份有限公司 固件更新方法
CN110688141B (zh) * 2018-07-05 2022-11-29 慧荣科技股份有限公司 固件更新方法
CN109189435A (zh) * 2018-09-21 2019-01-11 英业达科技有限公司 复杂可编程逻辑器件的固件更新方法
CN109343886A (zh) * 2018-12-12 2019-02-15 广东浪潮大数据研究有限公司 一种升级bios的方法、装置以及设备
CN111766797A (zh) * 2019-04-02 2020-10-13 海盗船存储器公司 微控制器、存储模块及用于更新微控制器的韧件的方法
WO2021233363A1 (zh) * 2020-05-21 2021-11-25 华为技术有限公司 计算设备及其bios更新方法和介质
CN113703799A (zh) * 2020-05-21 2021-11-26 华为技术有限公司 计算设备及其bios更新方法和介质
CN113703799B (zh) * 2020-05-21 2024-06-04 华为技术有限公司 计算设备及其bios更新方法和介质
WO2022040911A1 (en) * 2020-08-25 2022-03-03 Intel Corporation Methods and apparatus to perform pseudo-s3 protocol to update firmware and/or activate new firmware with warm reset
CN114047959A (zh) * 2021-11-01 2022-02-15 东莞新能安科技有限公司 开机管理方法、装置及电源系统

Also Published As

Publication number Publication date
TWI515660B (zh) 2016-01-01
CN105808270B (zh) 2019-03-05
TW201624273A (zh) 2016-07-01
US20160179500A1 (en) 2016-06-23
US9612824B2 (en) 2017-04-04

Similar Documents

Publication Publication Date Title
CN105808270A (zh) 固件变量更新方法
CN107122321B (zh) 硬件修复方法、硬件修复系统以及计算机可读取存储装置
CN104850762B (zh) 防止计算机的动作不良的方法、计算机程序以及计算机
TWI664574B (zh) 唯讀記憶體之修補啟動碼的方法及系統單晶片
US9703635B2 (en) Method, computer program, and computer for restoring set of variables
CN101281469B (zh) 嵌入式系统及其启动加载的方法
TWI710952B (zh) 韌體更新方法及電腦系統
US20160328229A1 (en) System and method of online firmware update for baseboard management controller (bmc) devices
WO2016101503A1 (zh) 一种热补丁的实现方法和装置
TW201520895A (zh) Bios自動恢復系統及方法
CN111435311B (zh) 固件安全防护方法与使用此方法的电子系统
US9298371B1 (en) System and method of reducing write cycles and increasing longevity of non-volatile memory in baseboard management controller (BMC)
CN108319520A (zh) 基于安全存储的移动设备备用操作系统
WO2016171921A1 (en) Bridge configuration in computing devices
JP2019204488A (ja) リモートユーティリティによるファームウェアの更新
TW201426547A (zh) 可更新基本輸入輸出系統的電子裝置及其基本輸入輸出系統的更新方法
US9348603B2 (en) Electronic apparatus and booting method
CN105786545B (zh) 基于异构混合内存的断点恢复方法和系统
CN111078469A (zh) 一种数据处理方法和数据处理设备
US20160179626A1 (en) Computer system, adaptable hibernation control module and control method thereof
CN106909382B (zh) 输出不同类型系统启动信息的方法及装置
US20200133562A1 (en) Information processing device, controlling method and program
CN101354654A (zh) 自动切换基本输入/输出程序的系统及其方法
US9619355B2 (en) Booting verification method of computer and electronic device
CN111783162A (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