CN1514970A - 被破坏的bios映像的自动替换 - Google Patents

被破坏的bios映像的自动替换 Download PDF

Info

Publication number
CN1514970A
CN1514970A CNA028118065A CN02811806A CN1514970A CN 1514970 A CN1514970 A CN 1514970A CN A028118065 A CNA028118065 A CN A028118065A CN 02811806 A CN02811806 A CN 02811806A CN 1514970 A CN1514970 A CN 1514970A
Authority
CN
China
Prior art keywords
bios
homing sequence
main bios
main
memory device
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
CNA028118065A
Other languages
English (en)
Other versions
CN100432948C (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.)
Intel Corp
Original Assignee
Intel 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 Intel Corp filed Critical Intel Corp
Publication of CN1514970A publication Critical patent/CN1514970A/zh
Application granted granted Critical
Publication of CN100432948C publication Critical patent/CN100432948C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • 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
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/575Secure boot
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/034Test or assess a computer or a system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2135Metering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2139Recurrent verification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2149Restricted operating environment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2151Time stamp

Landscapes

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

Abstract

在主BIOS被验证后,主BIOS可以被用来引导系统。如果主BIOS验证测试失败,备份BIOS可以自动被用来引导系统。如果主BIOS通过验证测试,但是在预定的时间内没有完成执行,备份BIOS可以自动被用来引导系统。用于验证主BIOS的代码可以被包含在备份BIOS中。主BIOS可以在系统操作中被修改,但是备份BIOS在系统操作中可以被写保护以避免备份BIOS被破坏。一种插件模块可以通过从插件模块,而不是从主BIOS或者次级BIOS引导;以及从插件模块拷贝BIOS程序到备份BIOS中而被用来修改备份BIOS。

Description

被破坏的BIOS映像的自动替换
技术领域
本发明一般地涉及计算机。具体地说,涉及计算机中BIOS映像的管理。
背景技术
计算机一般通过执行基本输入/输出系统(Basic Input/Output System,BIOS)而被初始化。BIOS是确定计算机在不从磁盘存取程序时能做什么的非易失代码。在个人计算机(PC)上,BIOS含有所有的用于自检和控制键盘、显示屏幕、磁盘驱动器、串行通信,和大量的其它功能的代码。然后BIOS从磁盘装载操作系统。最开始,BIOS被放置在只读存储器(ROM)中,并且除非物理地替换该ROM它不能被修改。随着BIOS执行的功能变得更复杂,且计算机在制造后变得更容易重新配置时,BIOS被放置在可重写的可编程ROM上,如闪存(flash memory)。
既然在计算机运行后,BIOS现在能够被重写,并且计算机没有一个有效的BIOS不能被引导,这就提出了可靠性和安全性问题。如果BIOS被不正确地重写所破坏,如使用者的错误、电源中断,或者软件故障,则计算机可能被禁用。为避免出现不可恢复的情况,许多系统含有系统BIOS的备份,这样如果主BIOS出错,仍可以依靠这个BIOS备份。然而,这些一般需要由使用者实际介入以激活备份BIOS。例如,备份BIOS可以在主板上由机械开关或者跳线来启用。那些具有某种自动恢复功能的系统仍需要操作者的实际存在和介入——比如选择引导选项或者插入一个恢复盘。如果出错的BIOS由在没有操作者存在的情况下下载到一个远程系统所导致,则改正过程(分派一个技术员到该站点)在费用和停机时间两个方面都可能是非常昂贵的。这种通常的BIOS冗余备份方法另外的缺点是两个BIOS拷贝常常被存储在两个分离的存储设备中,这就增加了制造成本。
附图说明
图1示出一个双BIOS系统的示意图。
图2A、2B、2C示出一种方法实施例的流程图。
图3A、3B、3C示出一种方法实施例的更详细的流程图。
图4示出一个具有用于对BIOS内容进行编程的的模块的双BIOS系统的简图。
具体实施方式
无论何时主BIOS映像出错,无需任何操作者的介入,各个实施例都允许备份BIOS映像自动被启用。它也可以允许两个BIOS映像被存储在一个实际驱动器中,降低了板的面积和成本。在操作中,执行可以从备份BIOS开始,这可以验证主BIOS。如果主BIOS通过该验证测试,然后控制可以被传递到主BIOS以执行引导序列。如果主BIOS没有通过验证测试,表明它已经被破坏,备份BIOS可以生成一警告指示符并且执行引导序列。如果主BIOS通过了该验证测试,但没有正确地完成引导序列,表明它出错了并且出错的方式能够逃避验证测试,备份BIOS可以被用来引导系统。用于主BIOS和备份BIOS映像的引导序列不一定是一致的。
图1示出一个双BIOS系统10的实施例的功能元件。存储设备112可以被用来存储备份BIOS 113和主BIOS 114的代码。在一个实施例中,存储设备112可以是一个可编程的只读存储器(programmable read-onlymemory,PROM),如闪存设备。在一个实施例中,存储设备112可以是一个单独的集成电路。控制逻辑111可以被用来控制存储设备112的操作以启用双BIOS系统10的特征。在操作中,总线的地址线ADR可以经过数据线DATA被用来读取存储设备112的内容以便取得用于初始化系统的指令。在一个实施例中,地址线ADR包括32位地址总线的所有的32位。为允许在备份BIOS 113和主BIOS 114之间的简单切换,最低有效地址位(the least significant address bit,LSAB)可以被直接传递到存储设备112,然而最高有效地址位(the most significant address bit,MSAB)可以被传递到控制逻辑111。控制逻辑111然后可以发出一些被选的最高有效位(selected ones of the most significant bit,SELECTION MSB)以选择备份BIOS 113或者主BIOS 114。在LSAB中的位的数量可以被设计成能容纳每个BIOS的最大的大小。在一个实施例中,LSAB由16条地址线组成以允许64k的BIOS地址空间的直接寻址。在一个32位地址环境中,这可以为MSAB留下16位。然而,在SELECTION MSB中位的数量可以被减少到只有那些在BIOS操作中将改变状态的位的数量,而输入到存储设备112的保留的高位地址位可以被忽略。SELECTION MSB必需的位的数量依赖于为备份BIOS 113和主BIOS 114选择的特定地址范围。在一个实施例中,SELECTION MSB只包括一位,以允许在两个地址范围之间的切换。
控制逻辑111还可以具有几个来自总线的控制输入。在一个实施例中,这些控制输入可以包括写允许(Write Enable,WE)、到BIOS设备的芯片选择(Chip Select,CS),和CPU-INIT。控制逻辑111可以输出多个控制信号到存储设备112。在一个实施例中,这些信号可以包括写允许(WE)和芯片选择(CS)。然而,这两个正从控制逻辑111输出的信号可以不跟踪正被输入到控制逻辑111的等价的信号,因为控制逻辑111可以操纵它们以控制自动的双BIOS功能。
备份BIOS 113可以位于将被控制逻辑111解码为只读的存储设备112的地址空间中,然而主BIOS 114可以位于将被控制逻辑111解码为读/写的存储设备112的地址空间中。只读状态可以通过对备份BIOS写保护而加强。这可以在备份BIOS 113的任何部分正被寻址的时候,通过“去断言”(deassert)连到存储设备112的写允许线而实现,这样就避免了写操作破坏备份BIOS 113的可能性。在这个实施例中,主BIOS 114可以通过再次编程而被修改,但是备份BIOS 113可以保持不变以便主BIOS 114任何被检测到的问题可以通过用更早的、已证实的备份BIOS 113引导系统而被避免。可以用验证装置115来验证主BIOS 114以确定主BIOS 114是否已经被破坏;即是否它的某部分没有被正确地编程。在一个实施例中,验证装置115包括在备份BIOS 113中的代码,它对主BIOS 114进行求和校验(checksum)。每当存储设备112被寻址的时候,控制逻辑111都可以“断言”(assert)连到存储设备112的芯片选择线,而不管哪个BIOS正被寻址。
图2A-C示出一个方法实施例20的流程图。BIOS入口点在框221示出。这个点可以作为例如系统复位、CPU初始化信号、或者跳转至引导向量等的结果被进入。在一个实施例中,BIOS入口点是在可寻址存储空间的顶部。框222确定是备份BIOS还是主BIOS正被执行。在一个实施例中,这可以通过检验被设置来控制哪个BIOS将被执行的位来确定。在另一个实施例中,这可以通过检验一个或者多个高位地址位来确定。如果备份BIOS正在执行,备份BIOS可以在框224验证主BIOS以确定主BIOS是否被破坏,并且还可以检查重试计数器,该计数器跟踪主BIOS试图执行而没有成功的次数。主BIOS的破坏可以是由各种原因引起的,如在写代码到存储设备中的含有主BIOS代码的部分时的错误。另一个原因可以是在存储设备的含有主BIOS代码的部分中至少一个存储单元发生故障。在一个实施例中,验证可以通过在主BIOS的至少一个部分的代码上执行求和校验来进行。在另一个实施例中,备份BIOS可以在主BIOS上进行更广泛的验证测试。如果发现主BIOS被破坏,或者如果重试计数器达到一个此处指定为“X”的预定值,备份BIOS可以在框225中设定一个错误指示符,如“无效”标志,以指示主BIOS是不可靠的,并且备份BIOS将被用来引导系统。框226可以被用来进行调整,因为主BIOS和备份BIOS映像可能是不同的。如果主BIOS以前被曾修改过,它可能已经改变了其它参数使得它与未改变的备份BIOS不兼容。例如,如果主BIOS需要与备份BIOS不同的CMOS设置,这些设置可能需要在框226中被修改以与备份BIOS相兼容。在做了这些调整之后,如果有必要,引导序列可以在框223处,在备份BIOS中继续执行,并且移到点“A”,在图2B中继续。
返回到框224,如果主BIOS被发现是有效的,并且重试计数器没有达到预定值,可以在框227中启动一个监视计时器,它以后可以被用来检测BIOS中没有被验证测试检测到的故障。在框224中被测试的重试计数器还可以被增加。“主BIOS”指示符可以在框228中被设置以将控制权切换到主BIOS。在一个实施例中,这可以包括设置硬件位。在框229中,CPU初始化信号可以被生成以强制执行返回到框221中的入口点。在一个实施例中,这种初始化信号可以在BIOS代码的控制下生成。在另一个实施例中,它可以在硬件中作为在框228中的设置选择位的结果而被生成。在执行转移到BIOS入口点后,框222可以再次确定是主BIOS还是备份BIOS正被执行。既然“主BIOS”指示符在框228中被设置,主BIOS现在正执行并且引导序列可以在框223处继续。从那里,执行可以在图2B中点“A”处继续。
在图2B中的框230中,被选择的引导序列执行。如果引导序列正确地执行,它将在监视计时器超时之前完成,并且在框232把控制权转移给操作系统之前,在框231中清除重试计数器和消除监视计时器。如果引导序列要花费比监视计时器可以被设置的最长周期更长的时间,引导序列可以被编程以周期性地重新启动监视计时器。否则,监视计时器可以被设置成单一的值以便允许引导序列有时间完成运行。图2C示出如果监视计时器超时发生的序列,如框240所示。监视计时器的超时可以说明BIOS的执行不是像计划的那样,并且执行过程中出错。这可以被用来检测在验证测试中逃避检测的BIOS中的一些故障。超时可以在框241中重新选择备份BIOS,并且把控制从图2C中的框241返回到图2A中的框221的BIOS入口点。这可以重新启动前面描述的验证测试和超时序列。如果监视计时器超时,说明主BIOS的执行失败,主BIOS可以通过利用重试计数器被重试预定的次数,该重试计数器在框224被测试、在框227被增加。当指定次数的重试发生时,重试计数器将达到值“X”,这导致在框225-226,223,和230-232中的备份BIOS的执行。重试计数器可以在主BIOS的第一引导序列被尝试之前被初始化(未示出)。
图3A-C示出一个实施例的流程图30,该实施例在高存储区和低存储区之间分配BIOS代码。许多处理器被设计成每当系统复位时就自动跳转至可寻址存储空间的顶部位置。在如图3A所示的实施例中,当仍在上面的存储区中时,在框331-339中确定哪个BIOS映像被执行,但是大多数主BIOS和次级BIOS代码被放置在可寻址的存储空间的更低一兆字节中,并且在框340-342中执行引导序列。在图示的实施例中,主引导序列和备份引导序列可以考虑处于可寻址的存储空间的更低一兆字节的低存储器中,而验证代码和BIOS选择代码可以考虑处于可寻址的存储空间的上端的高存储区中。
框331代表触发进入到BIOS代码的动作。在一个实施例中,这可以是系统重新启动,复位,或者CPU初始化信号。入口点的确切地址可以由处理器设计来确定,无需考虑正被执行的BIOS代码。在框332中,执行可以从这个预定的地址跳转至接近32位地址空间的顶部的BIOS映像。在一个实施例中,BIOS的内容被从可编程的只读存储器(PROM)复制到主存储器,然后在主存储器中继续执行。如果含有BIOS映像的PROM存储器的存取速度比主存储器低,这可以加速执行。主存储器的这部分可以被称作阴影存储器(shadow memory),因为它的内容现在遮蔽(shadow)了那些含有BIOS映像的PROM的内容。框333可以是一个决定点,以确定BIOS映像是否被放置在阴影存储器里地址空间的更低一兆字节中。如果是的话,执行可以在框339跳转至在更低一兆字节的阴影存储器的BIOS入口点。如果BIOS映像不在更低一兆字节的阴影存储器中,代码可以启用“大实模式(big real mode)”以允许访问在上层地址范围的BIOS映像。大实模式是公知的操作模式,该模式是介于实模式和保护模式之间的混和模式。实模式是从计算机地址空间被严格限制的时候的遗留下的模式,它只允许一兆字节的地址空间,而保护模式允许访问由32位地址所允许的地址空间的全部4G字节。大实模式具有实模式的一些简单性,但是仍允许访问到4G字节地址范围。在如图3A的实施例中,大实模式在框334中被启用。然后主BIOS映像被验证。在一个实施例中,验证过程包括在代码上进行求校验和以及将其与那个代码预定的校验和进行对比。重试计数器也可以在框335中被检查以查看它是否已经达到了预定值“X”。如果主BIOS代码在框335中被验证,说明该代码已经通过验证测试,重试计数器没能达到预定值,框336可以将复位计数器增加,并启动监视计时器,然后准备硬件以便将位于更低一兆字节的范围中的主BIOS解码。框339然后跳转至在那个更低范围的BIOS入口点。在一个实施例中,准备硬件用于将主BIOS解码的过程包括在控制逻辑111中设置某些位以便在存储设备112中选择主BIOS 114(见图1)。如果主BIOS代码在框335中没有通过验证,即如果验证测试失败,说明代码已经被破坏,或者如果重试计数器指示主BIOS已经被重试规定的次数,框337可以设置“无效”标志以警告使用者主BIOS映像是无效的,并且备份映像正被使用。在一个实施例中,这种警告可以采用向使用者发送消息的方式。框338然后可以准备硬件以在更低一兆字节范围中对备份BIOS解码,然后框339跳转至在更低范围的BIOS入口点。在一个实施例中,准备硬件以对备份BIOS解码的过程包括在控制逻辑111中设置某些位以在存储设备112中选择备份BIOS 113(图1)。
在跳转至框339中的低存储区之后,框340可以确定“无效”标志是否已经被设置。如果还没有设置,被选择的引导序列然后可以在框342处继续。如果已经被设置,框341可以做任何必需的调整以适应在主BIOS和备份BIOS之间的差异,如清除和重写CMOS设置。在一个实施例中,对于主BIOS,所有的BIOS相关设置可以在最初被设置,并且只有在故障的主BIOS映像导致向备份BIOS的切换时需要被改变。
一旦选择的引导序列在框342被启动,它可以通过点“B”继续到图3B中的框343。如果引导序列正确地执行,它将在监视计时器超时前完成,并且在框345把控制权转移给操作系统之前,它将在框344清除重试计数器和消除监视计时器。如果引导序列要花费比监视计时器可以被设置的最长的周期更长的时间,引导序列可以被编程以周期性地重新启动监视计时器。否则,监视计时器可以被设置成单一的值以便允许引导序列有时间完成运行。图3C示出如果监视计时器超时所发生的序列,如框350所示。监视计时器的超时可以说明BIOS的执行不是像计划的那样,并且执行过程中出错。这可以被用来检测在验证测试中逃避检测的BIOS中的一些故障。超时可以在框351重新选择备份BIOS,并且把控制从图3C的框352返回到图3A的框331的BIOS入口点。这可以重新启动前面描述的验证和超时序列。如果监视计时器超时,说明主BIOS的执行失败,主BIOS可以通过利用重试计数器被重试预定的次数,该计数器在框335被测试、在框336被增加。当指定次数的重试发生时,重试计数器将达到值“X”,这在框339-345中引起备份BIOS的执行。重试计数器可以在主BIOS的第一引导序列被尝试之前被初始化(未示出)。
图4示出系统40,该系统与图1中的系统10很类似,但该系统附加了用于对主BIOS和次级BIOS映像中的一个或者两个进行编程的模块。编程设备441可以被用来对备份BIOS 113的内容进行编程,并且还可以被用来对主BIOS 114的内容进行编程。在一个实施例中,编程设备441可以包括一个在具有连接器的模块上的预编程只读存储器芯片。接口442可以是在含有存储设备112的同样的印刷电路板上的一个相配的连接器,它允许设备441机械安装和电安装到系统或者从系统移除。在一个实施例中,所有的设备441通过接口442和/或者电路板而接收它的电源,输入信号,和机械支撑,这样对存储设备112编程就不需要外部连接。
当系统最初被构造时,存储设备112可以是空的,即未编程的BIOS。既然BIOS程序或者它的等价物对引导计算机系统可能是必需的,那么将设备441插入到接口442可以提供BIOS程序的等价物,并且还允许为了将来的引导操作用BIOS对存储设备112编程。一旦存储设备112已经被编程,设备441可以被移除。接口442可以提供从系统总线到设备441的数据线(DATA)和地址线(ADR),这样ROM的内容可以经过标准总线由系统处理器读取。连接器442还可以在线PROG上提供握手信号以允许控制逻辑111切换到设备441。在一个实施例中,接口442可以给控制逻辑111提供一个模块存在检测线以便在设备441被插入接口442时,为控制逻辑111提供一个指示。接收到这个ROM被插上的指示后,控制逻辑111可以通过去断言向存储设备112发出的芯片允许信号而阻断到存储设备112的访问,并且可以通过断言向设备441发出的芯片允许信号而提供到设备441的访问。当复位、系统重新启动、或者CPU初始化信号引起执行以跳转至如前所述的高存储器时,这个动作可以在响应中允许ROM提供指令到系统处理器。ROM可以含有初始BIOS代码的等价物,该代码允许系统处理器取得对基本系统资源的控制。ROM还可以含有允许控制逻辑111再次访问存储设备112的代码。有了这种能力,BIOS程序可以被从ROM拷贝到存储设备112。ROM还可以含有通过验证BIOS正确拷贝来验证存储设备112的内容的代码。
为初始BIOS编程或者为修改备份BIOS 113,插入设备441可以允许备份BIOS 113被编程到存储设备112。在一个实施例中,主BIOS 114还可以从设备441被编程。在另一个实施例中,一旦备份BIOS 113已经被编程,主BIOS 114可以在系统操作中由系统下载到存储设备112。在这两个实施例中,主BIOS 114可以在系统操作中由系统通过下载被修改过的主BIOS到存储设备112而被修改。这些特征可以允许主BIOS 114在系统操作中被升级,而无需特定的设备或者技术支持,并且还可以允许主BIOS 114被升级,而无需操作者现场使用远程下载。同时,备份BIOS113可以通过在它被重新编程之前要求设备441的插入而被保护,避免不注意的破坏。
本发明可以在电路中被实施或者作为一种方法被实施。本发明还可以作为存储在机器可读介质上的指令而被实施,该介质可以被至少一个处理器读取和执行以执行此处描述的功能。机器可读介质包括任何以机器(例如计算机)可读形式存储或者传送信息的机构。例如,机器可读介质可以包括只读存储器(ROM);随机存取存储器(RAM);磁盘存储介质;光存储介质;闪存设备;电、光、声或者其它传播形式的信号(例如载波、红外信号、数字信号等),及其它形式。
前述的说明书是说明性的,而不是限制性的。对本领域的那些技术人员来说可以做各种变化。那些变化用也被包括在本发明中,它们仅由权利要求的精神和范围来限制。

Claims (29)

1.一种方法,包括:
验证一个主BIOS以确定主BIOS是否被破坏;
如果该主BIOS没有被破坏,在主BIOS中自动选择第一引导序列用于执行;
如果该主BIOS被破坏,在备份BIOS中自动选择第二引导序列用于执行;以及
自动执行被选择的第一或者第二引导序列。
2.如权利要求1所述的方法,其中:
验证所述主BIOS的过程包括来自所述的备份BIOS的验证。
3.如权利要求1所述的方法,其中:
验证所述主BIOS的过程包括如果所述的主BIOS被破坏,则设置一个无效指示符。
4.如权利要求1所述的方法,其中:
验证所述的主BIOS的过程包括设置一个选择位以选择所述的第一或者第二引导序列。
5.如权利要求1所述的方法,其中:
验证所述的主BIOS的过程包括在主BIOS的至少一个部分之上进行求和校验。
6.如权利要求1所述的方法,其中:
自动选择第二引导序列用于执行的过程包括调整在所述的第一引导序列和第二引导序列之间的差异。
7.如权利要求1所述的方法,还包括:
如果所述的第一引导序列被选择用于执行,并且在预定的时间内没有完成执行,则重试第一引导序列的执行;以及
如果在预定的重试次数中每次都没有在预定的时间内完成所述的第一引导序列的执行,则自动选择所述的第二引导序列用于执行。
8.一种在其上存储指令的机器可读介质,当该指令被至少一个处理器执行时,该指令使所述的至少一个处理器进行操作,该操作包括:
验证主BIOS以确定该主BIOS是否被破坏;
如果主BIOS没有被破坏,则在该主BIOS中自动选择第一引导序列用于执行;
如果主BIOS被破坏,则在备份BIOS中自动选择第二引导序列用于执行;以及
自动执行被选择的第一或者第二引导序列。
9.如权利要求8所述的介质,其中:
验证所述的主BIOS的过程包括来自所述的备份BIOS的验证。
10.如权利要求8所述的介质,其中:
验证所述主BIOS的过程包括如果所述的主BIOS被破坏,则设置一个无效指示符。
11.如权利要求8所述的介质,其中:
验证所述的主BIOS的过程包括设置一个选择位以选择所述的第一或者第二引导序列。
12.如权利要求8所述的介质,其中:
验证所述的主BIOS的过程包括在主BIOS的至少一个部分之上进行求和校验。
13.如权利要求8所述的介质,其中:
自动选择第二引导序列用于执行的过程包括调整在所述的第一引导序列和第二引导序列之间的差异。
14.如权利要求8所述的介质,还包括:
如果所述的第一引导序列被选择用于执行,并且在预定的时间内没有完成执行,则重试第一引导序列的执行;以及
如果在预定的重试次数中每次都没有在预定的时间内完成所述的第一引导序列的执行,则自动选择所述的第二引导序列用于执行。
15.一种方法,包括:
连接一个编程模块到一个含有存储设备的电路板上;
通过读取来自该编程模块的内容而引导计算机系统;
从该编程模块拷贝一个备份BIOS程序到该存储设备;
从该电路板移去该编程模块;以及
随后从该存储设备引导该计算机系统。
16.如权利要求15所述的方法,还包括:
拷贝一个主BIOS到该存储设备而不使用所述的编程模块。
17.如权利要求15所述的方法,其中:
连接所述的编程模块包括从所述的电路板接收用于该编程模块的所有必需的电源。
18.如权利要求15所述的方法,其中:
连接所述的编程模块包括从所述的电路板接收用于该编程模块的所有必需的机械支撑。
19.一种装置,包括:
一个存储设备,该存储设备包括一个主BIOS和一个备份BIOS;
一个验证装置,用于验证该主BIOS的至少一个部分;和
连接到该存储设备的控制逻辑,用于如果主BIOS被验证,则在主BIOS中自动选择第一引导序列用于执行;而如果主BIOS没有被验证,则在备份BIOS中自动选择第二引导序列用于执行。
20.如权利要求19所述的装置,其中:
所述的验证装置包括在所述的备份BIOS中的代码,用于在所述的第一引导序列上执行验证过程。
21.如权利要求19所述的装置,其中:
所述的备份BIOS是写保护的。
22.如权利要求19所述的装置,其中:
除了对所述的备份BIOS进行编程操作期间,所述备份BIOS是写保护的。
23.如权利要求19所述的装置,其中:
所述的存储设备是单独的集成电路。
24.如权利要求19所述的装置,还包括:
一个编程设备,用于对所述的备份BIOS编程。
25.如权利要求24所述的装置,其中:
所述的编程设备包括一个只读存储器。
26.如权利要求24所述的装置,其中:
所述的编程设备以可移去的方式被连接到一个含有所述存储设备的电路板。
27.如权利要求26所述的装置,其中:
所述的编程设备被连接以从电路板接收所有电源。
28.如权利要求26所述的装置,其中:
所述的编程设备被连接以从电路板接收所有机械支撑。
29.如权利要求19所述的装置,还包括:
一个计时器,用于确定所述的主BIOS是否在预定的时间内执行。
CNB028118065A 2001-06-29 2002-06-21 一种双bios计算机系统和被破坏的bios映像的自动替换方法 Expired - Fee Related CN100432948C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/895,981 2001-06-29
US09/895,981 US6651188B2 (en) 2001-06-29 2001-06-29 Automatic replacement of corrupted BIOS image

Publications (2)

Publication Number Publication Date
CN1514970A true CN1514970A (zh) 2004-07-21
CN100432948C CN100432948C (zh) 2008-11-12

Family

ID=25405408

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB028118065A Expired - Fee Related CN100432948C (zh) 2001-06-29 2002-06-21 一种双bios计算机系统和被破坏的bios映像的自动替换方法

Country Status (7)

Country Link
US (1) US6651188B2 (zh)
CN (1) CN100432948C (zh)
DE (1) DE10296986B4 (zh)
GB (1) GB2392529B (zh)
HK (1) HK1059324A1 (zh)
TW (1) TWI233057B (zh)
WO (1) WO2003003212A2 (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100375049C (zh) * 2005-03-28 2008-03-12 联想(北京)有限公司 一种基本输入输出系统芯片的恢复方法
CN100451967C (zh) * 2007-02-14 2009-01-14 威盛电子股份有限公司 基本输入输出系统文件切换方法及可支持其切换的控制器
US7870378B2 (en) 2006-10-03 2011-01-11 Magic Pixel Inc. Electronic system with NAND flash memory storing boot code and highly reliable boot up method
CN101782950B (zh) * 2009-01-16 2012-05-30 深圳市维信联合科技有限公司 主板与板载设备之间的通信控制系统和方法
CN101783790B (zh) * 2009-01-16 2012-10-10 深圳市维信联合科技有限公司 对终端设备进行认证的认证设备、终端认证系统及方法
CN103761198A (zh) * 2014-01-06 2014-04-30 威盛电子股份有限公司 存储器芯片与数据保护方法
CN104182289A (zh) * 2013-05-27 2014-12-03 英业达科技有限公司 系统还原方法
CN105843712A (zh) * 2016-03-31 2016-08-10 联想(北京)有限公司 一种数据传输方法及电子设备
CN110032403A (zh) * 2018-01-11 2019-07-19 旺宏电子股份有限公司 存储器装置与电子装置的启动程序加载方法

Families Citing this family (112)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6892323B2 (en) * 1999-05-05 2005-05-10 Giga-Byte Technology Co., Ltd. Dual basic input/output system for a computer
TW462025B (en) * 1999-06-23 2001-11-01 Micro Star Int Co Ltd BIOS virus protection method
US6728922B1 (en) * 2000-08-18 2004-04-27 Network Appliance, Inc. Dynamic data space
KR100464147B1 (ko) * 2000-10-30 2004-12-31 엘지전자 주식회사 로딩 서버를 사용한 교환기 시스템 로딩 에러 처리장치 및방법
TW480444B (en) * 2000-11-29 2002-03-21 Mitac Technology Corp Computer system boot-up method capable of completing the startup procedure even the system BIOS code is damaged
US6976136B2 (en) * 2001-05-07 2005-12-13 National Semiconductor Corporation Flash memory protection scheme for secured shared BIOS implementation in personal computers with an embedded controller
US7069431B2 (en) * 2001-07-31 2006-06-27 Lenovo ( Singapore) Pte Ltd. Recovery of a BIOS image
JP4288893B2 (ja) * 2001-09-26 2009-07-01 ソニー株式会社 情報処理装置、プログラムロード方法、記録媒体、プログラム更新方法及び回路素子
TW535112B (en) * 2001-10-02 2003-06-01 Via Tech Inc Method for initializing computer system
US7434068B2 (en) * 2001-10-19 2008-10-07 Intel Corporation Content protection in non-volatile storage devices
TW548574B (en) * 2001-10-19 2003-08-21 Micro Star Int Co Ltd Display interface with dual basic input/output system and the computer having the same
JP4434539B2 (ja) * 2001-12-26 2010-03-17 富士通マイクロエレクトロニクス株式会社 プロセッサおよびそのブート方法
TWI251771B (en) * 2001-12-28 2006-03-21 Asustek Comp Inc Module and method for automatic restoring BIOS device, and the computer-readable recording media of storing the program codes thereof
US7313705B2 (en) * 2002-01-22 2007-12-25 Texas Instrument Incorporated Implementation of a secure computing environment by using a secure bootloader, shadow memory, and protected memory
US7562208B1 (en) * 2002-02-07 2009-07-14 Network Appliance, Inc. Method and system to quarantine system software and configuration
US6948057B2 (en) * 2002-02-08 2005-09-20 Via Technologies, Inc. Memory modules storing therein boot codes and method and device for locating same
US20030182561A1 (en) * 2002-03-25 2003-09-25 International Business Machines Corporation Tamper detection mechanism for a personal computer and a method of use thereof
US7318173B1 (en) * 2002-06-03 2008-01-08 National Semiconductor Corporation Embedded controller based BIOS boot ROM select
US7024550B2 (en) * 2002-06-28 2006-04-04 Hewlett-Packard Development Company, L.P. Method and apparatus for recovering from corrupted system firmware in a computer system
JP2004038529A (ja) * 2002-07-03 2004-02-05 Nec Corp 情報処理装置
US7849011B1 (en) 2002-07-16 2010-12-07 Diebold Self-Service Systems Division Of Diebold, Incorporated Automated banking machine bootable media authentication
US7143275B2 (en) * 2002-08-01 2006-11-28 Hewlett-Packard Development Company, L.P. System firmware back-up using a BIOS-accessible pre-boot partition
US7069471B2 (en) * 2002-10-18 2006-06-27 Sun Microsystems, Inc. System PROM integrity checker
US7237102B2 (en) * 2002-10-30 2007-06-26 Intel Corporation Methods and apparatus for configuring hardware resources in a pre-boot environment without requiring a system reset
KR100532413B1 (ko) * 2002-12-02 2005-12-02 삼성전자주식회사 플래시 메모리 보호 장치 및 방법
US20040193862A1 (en) * 2003-03-31 2004-09-30 Johnson Lin Device with high storage capacity and several BIOS backup copies
JP2004302991A (ja) * 2003-03-31 2004-10-28 Giga-Byte Technology Co Ltd コンピュータシステム用インターフェイスbiosのバックアップ方法
EP1465038B1 (en) * 2003-04-03 2013-03-27 STMicroelectronics (Research & Development) Limited Memory security device for flexible software environment
TWI265409B (en) * 2003-04-16 2006-11-01 Winbond Electronics Corp Method and structure of using one basic input/output system (BIOS) memory to start up a computer system
CN1277211C (zh) * 2003-05-06 2006-09-27 联想(北京)有限公司 一种计算机操作系统的修复方法
TWI307015B (en) * 2003-06-03 2009-03-01 Hon Hai Prec Ind Co Ltd System and method for automatically bootstrap with double boot areas in a single flash rom
TW200428284A (en) * 2003-06-03 2004-12-16 Hon Hai Prec Ind Co Ltd System and method for bootstrap with backup boot-code in single flash ROM
US20040268116A1 (en) * 2003-06-30 2004-12-30 Vasisht Virender K Fault tolerant recovery block with reduced flash footprint
CN100357891C (zh) * 2003-11-10 2007-12-26 华邦电子股份有限公司 利用一颗基本输出入系统存储器启始的计算机系统及方法
EP1538509A1 (fr) * 2003-12-04 2005-06-08 Axalto S.A. Procédé de sécurisation de l'éxécution d'un programme contre des attaques par rayonnement
JP4534498B2 (ja) * 2004-01-28 2010-09-01 ソニー株式会社 半導体装置およびその起動処理方法
CN1942865A (zh) * 2004-04-20 2007-04-04 皇家飞利浦电子股份有限公司 恢复光驱的固件和所有可编程内容
US20050273588A1 (en) * 2004-06-08 2005-12-08 Ong Soo K Bootstrap method and apparatus with plural interchangeable boot code images
TW200601150A (en) * 2004-06-28 2006-01-01 Wistron Corp Method and apparatus for switching among multiple initial execution addresses
US7409539B2 (en) * 2004-08-06 2008-08-05 International Business Machines Corporation System design and code update strategy to implement a self-healing, self-verifying system
US7340595B2 (en) * 2005-01-07 2008-03-04 International Business Machines Corporation Multiplex execution-path system
US7711989B2 (en) * 2005-04-01 2010-05-04 Dot Hill Systems Corporation Storage system with automatic redundant code component failure detection, notification, and repair
US7523350B2 (en) * 2005-04-01 2009-04-21 Dot Hill Systems Corporation Timer-based apparatus and method for fault-tolerant booting of a storage controller
US20060236084A1 (en) * 2005-04-15 2006-10-19 Dune-Ren Wu Method and system for providing an auxiliary bios code in an auxiliary bios memory utilizing time expiry control
US7716464B2 (en) * 2005-06-23 2010-05-11 Intel Corporation Method to have fault resilient booting
CN100386732C (zh) * 2005-07-05 2008-05-07 英业达股份有限公司 远程切换操控计算机平台备用系统程序的方法及系统
FR2888651B1 (fr) * 2005-07-13 2009-06-05 Neoware Systems Inc Procede pour la prise en compte automatique et le stockage persistant de parametres de personnalisation a priori volatils
TWI284813B (en) * 2005-10-21 2007-08-01 Inventec Corp Auto reset system, and method thereof
KR100698141B1 (ko) * 2005-10-26 2007-03-22 엘지전자 주식회사 무선 주파수 교정 데이터 복구 기능을 갖는 이동통신단말기 및 교정 데이터 백업 및 복원 방법
US7814368B2 (en) * 2006-03-22 2010-10-12 G2 Microsystems Pty. Ltd. Adjusting threshold for software error reset attempts to be commensurate with reserve power
US8495415B2 (en) * 2006-05-12 2013-07-23 International Business Machines Corporation Method and system for maintaining backup copies of firmware
US8055989B2 (en) * 2006-08-08 2011-11-08 Stmicroelectronics, Inc. Boot security using embedded counters
US7676671B2 (en) * 2006-10-31 2010-03-09 Hewlett-Packard Development Company, L.P. System for multi-profile boot selection of an embedded device
US7900036B2 (en) * 2006-12-18 2011-03-01 International Business Machines Corporation System and method for implementing boot/recovery on a data processing sysem
US7971056B2 (en) * 2006-12-18 2011-06-28 Microsoft Corporation Direct memory access for compliance checking
US20080168299A1 (en) * 2007-01-08 2008-07-10 Jim Kateley Recovery Mechanism for Embedded Device
JP2008225858A (ja) * 2007-03-13 2008-09-25 Nec Corp Biosストール障害時の復旧装置、その方法及びそのプログラム
TW200849096A (en) * 2007-06-12 2008-12-16 Realtek Semiconductor Corp Data recovering method
JP2009009227A (ja) * 2007-06-26 2009-01-15 Aruze Corp システム情報を自動複写する情報処理装置
US20090063834A1 (en) * 2007-09-05 2009-03-05 Inventec Corporation Auto-Switching Bios System and the Method Thereof
US7971051B2 (en) * 2007-09-27 2011-06-28 Fujitsu Limited FPGA configuration protection and control using hardware watchdog timer
TWI362588B (en) * 2007-10-12 2012-04-21 Asustek Comp Inc Monitor apparatus, a monitoring method thereof and computer apparatus therewith
JP2009157632A (ja) * 2007-12-26 2009-07-16 Toshiba Corp 情報処理装置
CN101488106A (zh) * 2008-01-18 2009-07-22 鸿富锦精密工业(深圳)有限公司 具有至少两个bios存储器的系统
WO2009094021A1 (en) * 2008-01-23 2009-07-30 Hewlett-Packard Development Company, L.P. Bios graphical setup engine
TWI355608B (en) * 2008-01-30 2012-01-01 Inventec Corp Computer system with dual basic input output syste
US20090199014A1 (en) * 2008-02-04 2009-08-06 Honeywell International Inc. System and method for securing and executing a flash routine
US8392762B2 (en) * 2008-02-04 2013-03-05 Honeywell International Inc. System and method for detection and prevention of flash corruption
TWI360077B (en) * 2008-02-19 2012-03-11 Asustek Comp Inc Update method of basic input output system and upd
TWI411959B (zh) * 2008-03-21 2013-10-11 Asustek Comp Inc 具雙開機程式碼區之電腦系統及其啟動方法
TW200945192A (en) * 2008-04-28 2009-11-01 Asustek Comp Inc Motherboard and method for recovering BIOS thereof and for booting computer
US8495349B2 (en) * 2008-10-09 2013-07-23 International Business Machines Corporation Generating a primary BIOS code memory address and a recovery BIOS code memory address, where the recovery BIOS service code is loaded when the primary BIOS code fails to execute
TWI382346B (zh) * 2008-10-20 2013-01-11 Asustek Comp Inc 保護雙基本輸出入系統程式之電腦系統及其控制方法
JP5460167B2 (ja) * 2009-07-31 2014-04-02 キヤノン株式会社 情報処理装置、情報処理装置の制御方法及び制御プログラム
US8055948B2 (en) * 2009-09-14 2011-11-08 International Business Machines Corporation Resilient software-controlled redundant array of independent disks (RAID)
TW201118731A (en) * 2009-11-18 2011-06-01 Inventec Corp Method for upadating firmware of embedded system
JP5185918B2 (ja) * 2009-12-25 2013-04-17 東芝テック株式会社 電子機器及びプログラム
TWI459294B (zh) * 2011-03-18 2014-11-01 Phoenix Tech Ltd Bios程式的更新方法與其電腦系統
US8726087B2 (en) * 2011-03-18 2014-05-13 Denso International America, Inc. System and method for curing a read inability state in a memory device
US8826080B2 (en) 2011-07-29 2014-09-02 The Boeing Company Methods and systems for preboot data verification
KR101845512B1 (ko) * 2011-08-10 2018-04-04 삼성전자주식회사 메모리 시스템의 초기화 방법
US8832455B1 (en) * 2011-09-21 2014-09-09 Google Inc. Verified boot path retry
TW201314575A (zh) * 2011-09-26 2013-04-01 Pegatron Corp 開機方法及開機系統
US9471435B2 (en) * 2012-01-05 2016-10-18 Mitsubishi Electric Corporation Information processing device, information processing method, and computer program
TWI474163B (zh) * 2012-12-17 2015-02-21 Hon Hai Prec Ind Co Ltd 基本輸入輸出系統的存取系統及方法
CN105144185B (zh) 2013-04-23 2018-06-05 惠普发展公司,有限责任合伙企业 验证控制器代码和系统启动代码
EP2989547B1 (en) 2013-04-23 2018-03-14 Hewlett-Packard Development Company, L.P. Repairing compromised system data in a non-volatile memory
WO2014175861A1 (en) * 2013-04-23 2014-10-30 Hewlett-Packard Development Company, L.P. Recovering from compromised system boot code
US9542195B1 (en) * 2013-07-29 2017-01-10 Western Digital Technologies, Inc. Motherboards and methods for BIOS failover using a first BIOS chip and a second BIOS chip
CN104423890A (zh) * 2013-08-27 2015-03-18 鸿富锦精密电子(天津)有限公司 固态硬盘
TWI515557B (zh) * 2014-02-26 2016-01-01 緯創資通股份有限公司 電腦系統與控制方法
US9772856B2 (en) * 2014-07-10 2017-09-26 Lattice Semiconductor Corporation System-level dual-boot capability in systems having one or more devices without native dual-boot capability
US10169052B2 (en) * 2014-07-22 2019-01-01 Hewlett-Packard Development Company, L.P. Authorizing a bios policy change for storage
TWI541724B (zh) 2014-07-22 2016-07-11 技嘉科技股份有限公司 寫入基本輸入輸出系統程式碼的電路與寫入方法
US20160232057A1 (en) * 2015-02-11 2016-08-11 Sandisk Technologies Inc. Safe mode boot loader
US9983885B2 (en) * 2015-05-06 2018-05-29 Elbit Systems Of America, Llc BIOS system with non-volatile data memory
US9904543B2 (en) 2015-10-26 2018-02-27 Hewlett-Packard Development Company, L.P. Setting a build indicator to enable or disable a feature
CN106776086A (zh) * 2015-11-23 2017-05-31 英业达科技有限公司 芯片初始化方法及其芯片初始化系统
WO2017131680A1 (en) * 2016-01-27 2017-08-03 Hewlett-Packard Development Company, L.P. Operational verification
US9946553B2 (en) * 2016-05-04 2018-04-17 America Megatrends, Inc. BMC firmware recovery
CN106095625A (zh) * 2016-07-13 2016-11-09 上海斐讯数据通信技术有限公司 无线接入设备启动方法及系统
US10133637B2 (en) * 2016-08-04 2018-11-20 Dell Products L.P. Systems and methods for secure recovery of host system code
US10534618B2 (en) * 2016-09-27 2020-01-14 American Megatrends International, Llc Auto bootloader recovery in BMC
US11113133B2 (en) * 2016-12-27 2021-09-07 Intel Corporation Cross-component health monitoring and improved repair for self-healing platforms
US10986220B2 (en) * 2017-05-16 2021-04-20 II John Thomas Walker Device for radio communications and method for establishing and maintaining communications between device and fixed location radio communication facilities
US10620879B2 (en) 2017-05-17 2020-04-14 Macronix International Co., Ltd. Write-while-read access method for a memory device
CN108196858A (zh) * 2017-12-22 2018-06-22 天津麒麟信息技术有限公司 一种基于飞腾平台的双bios系统及其实现方法
TWI682271B (zh) * 2018-11-28 2020-01-11 英業達股份有限公司 伺服器系統
WO2020159533A1 (en) 2019-02-01 2020-08-06 Hewlett-Packard Development Company, L.P. Security credential derivation
US11520662B2 (en) 2019-02-11 2022-12-06 Hewlett-Packard Development Company, L.P. Recovery from corruption
US11567844B2 (en) * 2021-01-21 2023-01-31 Infineon Technologies LLC Nonvolatile memory devices, systems and methods for fast, secure, resilient system boot
US12014187B2 (en) * 2022-05-04 2024-06-18 Micron Technology, Inc. Boot processes for storage systems

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0449242A3 (en) * 1990-03-28 1992-10-28 National Semiconductor Corporation Method and structure for providing computer security and virus prevention
US5214695A (en) * 1990-07-23 1993-05-25 International Business Machines Corporation Apparatus and method for loading a system reference diskette image from a system partition in a personal computer system
US5522076A (en) * 1993-05-13 1996-05-28 Kabushiki Kaisha Toshiba Computer system having BIOS (basic input/output system)-ROM (Read Only Memory) writing function
US5797023A (en) * 1994-10-17 1998-08-18 Digital Equipment Corporation Method and apparatus for fault tolerant BIOS addressing
US5918047A (en) * 1996-01-26 1999-06-29 Texas Instruments Incorporated Initializing a processing system
US5793943A (en) * 1996-07-29 1998-08-11 Micron Electronics, Inc. System for a primary BIOS ROM recovery in a dual BIOS ROM computer system
KR100280637B1 (ko) 1997-11-24 2001-02-01 윤종용 고정된플래시롬의데이터갱신이가능한컴퓨터시스템및그제어방법
US6167532A (en) 1998-02-05 2000-12-26 Compaq Computer Corporation Automatic system recovery
FI991411A (fi) * 1999-06-21 2000-12-22 Nokia Networks Oy Mikroprosessorin alkulatausohjelmiston päivittäminen

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100375049C (zh) * 2005-03-28 2008-03-12 联想(北京)有限公司 一种基本输入输出系统芯片的恢复方法
US7870378B2 (en) 2006-10-03 2011-01-11 Magic Pixel Inc. Electronic system with NAND flash memory storing boot code and highly reliable boot up method
CN100451967C (zh) * 2007-02-14 2009-01-14 威盛电子股份有限公司 基本输入输出系统文件切换方法及可支持其切换的控制器
CN101782950B (zh) * 2009-01-16 2012-05-30 深圳市维信联合科技有限公司 主板与板载设备之间的通信控制系统和方法
CN101783790B (zh) * 2009-01-16 2012-10-10 深圳市维信联合科技有限公司 对终端设备进行认证的认证设备、终端认证系统及方法
CN104182289A (zh) * 2013-05-27 2014-12-03 英业达科技有限公司 系统还原方法
CN103761198A (zh) * 2014-01-06 2014-04-30 威盛电子股份有限公司 存储器芯片与数据保护方法
CN103761198B (zh) * 2014-01-06 2017-04-05 威盛电子股份有限公司 存储器芯片与数据保护方法
CN105843712A (zh) * 2016-03-31 2016-08-10 联想(北京)有限公司 一种数据传输方法及电子设备
CN105843712B (zh) * 2016-03-31 2020-02-21 联想(北京)有限公司 一种数据传输方法及电子设备
CN110032403A (zh) * 2018-01-11 2019-07-19 旺宏电子股份有限公司 存储器装置与电子装置的启动程序加载方法
CN110032403B (zh) * 2018-01-11 2022-02-22 旺宏电子股份有限公司 存储器装置与电子装置的启动程序加载方法

Also Published As

Publication number Publication date
TWI233057B (en) 2005-05-21
DE10296986T5 (de) 2004-11-25
WO2003003212A3 (en) 2003-04-17
US6651188B2 (en) 2003-11-18
CN100432948C (zh) 2008-11-12
HK1059324A1 (en) 2004-06-25
US20030005277A1 (en) 2003-01-02
GB2392529B (en) 2005-06-15
WO2003003212A2 (en) 2003-01-09
GB0327176D0 (en) 2003-12-24
DE10296986B4 (de) 2009-01-08
GB2392529A (en) 2004-03-03

Similar Documents

Publication Publication Date Title
CN100432948C (zh) 一种双bios计算机系统和被破坏的bios映像的自动替换方法
EP0936548B1 (en) Automatic system recovery
CN1115637C (zh) 用于提供定制软件映象给计算机系统的方法和系统
JP6198876B2 (ja) セキュア・リカバリ装置及び方法
US8943302B2 (en) Method of flashing bios using service processor and computer system using the same
US7900036B2 (en) System and method for implementing boot/recovery on a data processing sysem
US7050859B1 (en) Systems and methods to port controller state and context in an open operating system
US9027014B2 (en) Updating firmware compatibility data
US6442067B1 (en) Recovery ROM for array controllers
US6622246B1 (en) Method and apparatus for booting and upgrading firmware
US6253281B1 (en) Method for updating firmware of a computer peripheral device
US6317827B1 (en) Method and apparatus for fault tolerant flash upgrading
KR101143679B1 (ko) 자동 펌웨어 복원
CN109582332B (zh) 互联网摄像机的系统升级方法及装置
JP2005166043A (ja) アダプタの高速ロードのための装置、システムおよび方法
US5794007A (en) System and method for programming programmable electronic components using board-level automated test equipment
EP1185932B1 (en) Method and apparatus for automatically reintegrating a module into a computer system
US6216225B1 (en) PC system having flash-ROM controlling device and method for protecting BIOS stored in flash-ROM
CN115129384A (zh) 一种电子设备的启动程序的运行方法和电子设备
US20050198449A1 (en) Determination of memory configuration
CN114625389A (zh) 嵌入式设备升级方法、嵌入式设备及存储装置
CN111783162A (zh) 数据保护实现方法、装置及计算机设备
US7069471B2 (en) System PROM integrity checker
JP2649190B2 (ja) 外部記憶装置
US11250929B2 (en) System for detecting computer startup and method of system

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20081112

Termination date: 20180621