CN1996254A - 用于冗余控制器固件更新的装置、系统和方法 - Google Patents

用于冗余控制器固件更新的装置、系统和方法 Download PDF

Info

Publication number
CN1996254A
CN1996254A CNA2007100015100A CN200710001510A CN1996254A CN 1996254 A CN1996254 A CN 1996254A CN A2007100015100 A CNA2007100015100 A CN A2007100015100A CN 200710001510 A CN200710001510 A CN 200710001510A CN 1996254 A CN1996254 A CN 1996254A
Authority
CN
China
Prior art keywords
control device
major control
memory storage
subcontrol
firmware
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
CNA2007100015100A
Other languages
English (en)
Inventor
D·C·道格拉斯
刘磊
寺下善彦
K·D·里奇森
J·J·格拉韦斯
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN1996254A publication Critical patent/CN1996254A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2089Redundant storage control functionality

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

用于冗余控制器固件更新的装置、系统和方法
技术领域
本发明涉及分布式处理系统,特别涉及用于更新冗余嵌入式控制器中的固件的系统和方法。
背景技术
数据处理系统常常利用分布式处理器来执行多种操作、管理和控制功能。例如,服务器类数据处理系统可包含主服务器处理器和一个或多个嵌入式控制器。主服务器处理器与嵌入式控制器通信并指导嵌入式控制器的活动,而嵌入式控制器又与其它附属装置例如存储装置等等通信并指导其操作。
在如图1的框图所示的一个这样的数据处理系统10中,经由共享通信路径16,主服务处理器12通过主要嵌入式控制器的输入/输出接口15a与主要嵌入式控制器14通信。在本示例中,共享的通信路径16为常规的RS485总线,但可包括现有技术中已知的任何数据通信通道。主服务处理器12管理主要嵌入式控制器14,包括配置主要嵌入式控制器14、监视主要嵌入式控制器14的状态、按照需要更新位于存储装置20a中的、主要嵌入式控制器的固件18a。存储装置20a可包括静态随机存取存储装置、闪存装置、动态存储装置或其它类似的数据存储装置。固件18a可包括操作系统22a,该操作系统包括由处理器24a执行以管理例如数据存储装置等附属装置26的指令代码。
为了提供冗余,通过共享通信路径16,辅助嵌入式控制器28通过辅助嵌入式控制器的输入/输出接口15b与主服务处理器12通信。辅助嵌入式控制器28与主服务处理器12通信并在主要嵌入式控制器14发生故障或变得不可用的情况下管理附属装置26。在这种示例性数据处理系统10中,在任何给定时刻,主要嵌入式控制器14或者辅助嵌入式控制器28是有效的(“有效的嵌入式控制器”),但不是二者都有效。无论哪个嵌入式控制器当前不是有效的,则采取备用状态(“备用控制器”)。
主要嵌入式控制器14与辅助嵌入式控制器28可通过控制器间的通信路径30相互通信。这种通信可包括交换数据和其它信息。另外,每一嵌入式控制器可利用控制器间的通信路径30查询另一嵌入式控制器的有效/备用状态。尽管本示例示出了主要嵌入式控制器14和辅助嵌入式控制器28,任何数量的嵌入式控制器可附加于同一个控制器间通信路径30。
在这一示例性系统中,主要嵌入式控制器14采取默认的有效状态,而辅助嵌入式控制器28采取默认的备用状态。如果主要嵌入式控制器14发生故障或变为无效,则辅助嵌入式控制器28通过控制器间的通信路径30检测到这种状态变化,并在附属装置26的管理以及与主服务处理器的通信中承担有效角色。当主要嵌入式控制器14重新变为可用时,主要嵌入式控制器14经由控制器间通信路径30通知辅助嵌入式控制器28,并重新确立对附属装置以及与主服务处理器12的通信的控制。
主服务处理器12通过传送包括主要嵌入式控制器的地址的消息与主要嵌入式控制器14通信。为了提供真正的冗余,辅助嵌入式控制器28包括与主要嵌入式控制器14的地址相同的地址。使备用嵌入式控制器的输入/输出接口无效以防止与主服务护理器12的通信。通过这种方法,无论哪一嵌入式控制器当前处于备用模式对于主服务处理器12来说是透明的。
如上所述,主服务处理器12负责更新有效的嵌入式控制器的固件。某些嵌入式控制器利用第三存储装置32,例如电可擦除可编程只读存储器(“EEPROM”)来保持固件更新的映像34。在缺少这样的第三存储装置32的情况下,更新有效的嵌入式控制器变得成问题。因为操作系统22a、22b是固件18a、18b的组成部分并包括由处理器24a、24b执行的指令,嵌入式控制器的运行在其固件被更新时必须被挂起(suspend)。因此,正在经历固件更新的嵌入式控制器可进入备用模式,而允许其冗余嵌入式控制器承担附属装置26的管理。然而,由于主服务处理器发起固件更新,冗余嵌入式控制器在此过程中不能与主服务处理器12通信。
为了使备用嵌入式控制器与有效嵌入式控制器一样地发挥功能,备用嵌入式控制器的固件也必须更新。然而,由于备用嵌入式控制器对于主服务处理器12来说是透明的,存在着透明地向两个嵌入式控制器14、28下载固件的需要。
更新多个嵌入式控制器上的固件的传统方法对主服务处理器通常不是透明的。例如,美国专利6,247,168介绍了一种用于对多个计算装置编程的可编程工具。然而,该可编程工具知道有待编程的各个计算装置,因此冗余装置的编程对该编程工具来说不是透明的。
当前的数据处理系统的另一种设计考虑是对嵌入式控制器固件进行更新所需要的存储装置个数。例如,美国公开2004/0030877介绍了将操作系统复制到计算装置的BIOS中。接着,操作系统从BIOS被复制到计算装置的固件中。然而,这种方法需要额外的存储装置-计算装置的BIOS-来帮助更新计算装置的固件。
从上面的讨论应当清楚地看到,需要一种用于更新嵌入式控制器和冗余嵌入式控制器上的固件的装置、系统和方法,其中,冗余嵌入式控制器的固件的更新对主服务处理器来说是透明的。这样的装置、系统和方法可有利地完成这一任务而不需要单独的存储装置来在更新被装载到嵌入式控制器的固件时保持它。
发明内容
针对本技术领域的当前状态,特别是针对本技术领域中通过当前可用的数据处理系统未能完全解决的问题和需要开发出本发明。因此,开发本发明以提供一种用于更新冗余嵌入式控制器上的固件的装置、系统和方法,其克服了本技术领域中的上述许多或所有缺点。
更新冗余控制器上的固件的装置具有多个模块,这些模块被配置为功能性地执行以下必要步骤:将固件更新写到位于主要控制器上的存储装置并将固件更新复制到位于辅助控制器上的另一存储装置,其中,主要控制器与辅助控制器互为冗余。所介绍的实施例中的这些模块包括管理模块和更新模块。
在一个实施例中,该装置被配置为检测由管理模块写到主要控制器的第一存储装置的固件映像,并以对管理模块透明的方式将固件映像的副本写到辅助控制器中的第二存储装置。
在一个实施例中,该装置进一步被配置为从主要控制器到辅助控制器复制固件而不利用用于在将固件映像副本写到辅助控制器的第二存储装置之前存储固件映像副本的第三存储装置。
还提出了本发明的系统以便更新多个冗余控制器上的固件。该系统可体现为数据处理系统。特别地,在一个实施例中,该系统包括包含服务处理器的管理模块、包含第一存储装置并具有第一通信路径地址的主要控制器、包含第二存储装置并具有与第一通信路径地址相同的第二存储路径地址的辅助控制器、用于将管理模块连接到主要控制器以及辅助控制器的共用通信路径,其中,管理模块适用于将固件映像写到第一存储装置,主要控制器适用于以对管理模块透明的方式将固件映像的副本写到第二存储装置。
该系统可还包含主要控制器,该主要控制器进一步适用于将固件映像的副本写到第二存储装置而不需要利用存储固件映像的第三存储装置。
还提出了本发明的方法,以便更新多个冗余控制器上的固件。所公开实施例中的方法基本包括执行上面关于所述装置和系统的操作所提出的功能的必要步骤。在一个实施例中,该方法包括:从管理模块向主要控制器的第一存储装置写固件映像;以及以对管理模块透明的方式将固件映像复制到辅助控制器的第二存储装置。该方法还包括在将固件映像写到主要控制器的第一存储装置之前将主要控制器置于备用模式。
在进一步的实施例中,该方法包括在向辅助控制器的第二存储装置复制固件映像之前将辅助控制器置于挂起模式。
贯穿本说明书全文对特征、优点的引用或类似的措辞并非暗示着可利用本发明实现的所有这些特征和优点应当或就是在本发明的任何一个实施例中。相反,提到特征和优点的措辞应被理解为意味着与一实施例相关地介绍的具体特征、优点或特性被包括在本发明的至少一个实施例中。因此,贯穿本说明书对特征和优点的讨论以及类似的措辞可以但不是必须指同一实施例。
另外,所介绍的本发明的特征、优点和特性可以以任何适当的方式组合在一个或多个实施例中。本领域技术人员将认识到,可以实践本发明而无需特定实施例的一个或多个具体特征或优点。在其他的情况中,可以某些实施例中看到可能不是在本发明的全部实施例中存在的额外特征和优点。
通过下面的介绍和所附权利要求可更充分明了本发明的这些特征和优点,或者通过下面给出的本发明的实践,可以获知本发明的这些特征和优点。
附图说明
为容易理解本发明的优点,将参照附图中示出的具体实施例给出对上面简单介绍的本发明的详细介绍。理解到附图仅示出了本发明的典型实施例,因此不应被认为是对其范围的限制,将使用附图更加具体详细地介绍和阐释本发明。在附图中:
图1为示出了根据现有技术的数据处理系统的原理框图;
图2为示出了根据本发明的数据处理系统的一个实施例的原理框图;
图3为示出了根据本发明的控制器的一个实施例的原理框图;以及
图4为示出了根据本发明一实施例用于更新冗余控制器上的固件的过程的框图。
具体实施方式
本说明书中介绍的某些功能单元被标识为模块,以便更为特别地强调其实现独立性。例如,模块可被实现为硬件电路,包括定制的VLSI电路或门阵列、例如逻辑芯片、晶体管或其他分立部件等成品半导体。模块还可在可编程硬件装置例如现场可编程门阵列、可编程阵列逻辑、可编程逻辑装置等中实现。
模块还可在由各种类型的处理器执行的软件中实现。例如,可执行代码的被识别模块可包括计算机指令的一个或多个物理或逻辑块,所述指令可被组织为例如对象、过程或函数。然而,被识别模块的可执行代码不需要物理地位于一起,而是可包含存储在不同位置上的不同指令,这些指令在被连接在一起时构成该模块并实现该模块的规定目的。
事实上,可执行代码的模块可以是单个指令或者是许多个指令,甚至可以分布在几个不同的代码片段上、不同的程序中以及几个存储装置上。类似地,操作数据可在这里被识别为或示为在模块中,并可以体现为任何合适的形式以及组织在任何合适类型的数据结构中。操作数据可被汇集为单个数据集,或可分布在不同的位置上、包括在不同的存储装置上,并可以至少部分地仅作为系统或网络上的电子信号存在。
贯穿本说明书谈到“一个实施例”、“一实施例”或类似的措辞意味着与实施例相关描述的特定特征、结构或特性被包括在本发明的至少一个实施例中。因此,贯穿本说明书,短语“在一个实施例中”、“在一实施例中”以及类似的措辞的出现可能但不必全部指同一实施例。
通过使用产生软件、固件、硬件或其任意组合的标准编程或工程技术,可以将这里公开的发明实现为方法、装置或信号承载介质。信号承载介质可以采用任何能够产生信号、使信号被产生或使机器可读指令的程序在数字处理装置上执行的形式。信号承载介质可由传输线、光盘、数字视频盘、磁带、伯努利驱动器、磁盘、穿孔卡片、闪存、集成电路、光存储装置、软盘、电可擦除可编程只读存储器(“EEPROM”)、易失性存储装置、非易失性存储装置、现场可编程门阵列(“FPGA”)、专用集成电路(“ASIC”)、复杂可编程逻辑装置(“CPLD”)、可编程逻辑阵列(“PLA”)、微处理器(“uP”)、可编程逻辑装置(“PLD”)或其他数字处理装置体现。
另外,所介绍的本发明特征、结构或特性可以用任何合适的方式组合在一个或多个实施例中。在下面的介绍中,为提供对本发明实施例的充分理解,提供了大量的特定细节,例如编程、软件模块、用户选择、网络事务、数据库查询、数据库结构、硬件模块、硬件电路、硬件芯片等等的示例。然而,相关领域的技术人员将明了,可实践本发明而不采用一个或多个所述特定细节,或采用其他方法、部件、材料等等。在其他的情况中,为了避免混淆本发明的方面,没有示出或介绍公知的结构、材料或操作。
图2示出了根据本发明实施例的数据处理系统100的原理性框图,该系统包含经由共享通信路径108与主要控制器104以及辅助控制器106通信的管理模块102。在本发明的这一实施例中,共享的通信路径108包括RS 485总线。然而,本发明不限于使用RS485总线,而是可包括任何通信路径,包括局域网(“LAN”)、广域网(“WAN”)、无线网络、光纤通道网络、交换网络、PCI总线等等在内。主要控制器104和辅助控制器相互通过控制器间的通信路径110彼此通信。本发明的这一示例性实施例示出:主要控制器104负责指导包括数据存储装置116-其可包括硬盘驱动器、磁带盒等等-在内的附属装置114的活动。如果主要控制器104发生故障或变为不可用,其角色可由辅助控制器106承担。
管理模块102可包括例如服务处理器等数字数据处理装置,而该数字数据处理装置又可包括现场可编程门阵列(“FPGA”)、专用集成电路(“ASIC”)、复杂可编程逻辑装置(“CPLD”)、可编程逻辑阵列(“PLA”)、微处理器(“uP”)、可编程逻辑装置(“PLD”)或其他类似的数字处理装置。管理模块102负责配置主要控制器104、管理主要控制器104并更新主要控制器的操作系统。
主要控制器104和辅助控制器106可包括数字数据处理装置,例如现场可编程门阵列(“FPGA”)、专用集成电路(“ASIC”)、复杂可编程逻辑装置(“CPLD”)、可编程逻辑阵列(“PLA”)、微处理器(“uP”)、可编程逻辑装置(“PLD”)、嵌入式控制器或其他类似的数字处理装置。
图3示出了主要控制器104的原理性框图,该主要控制器包含用于将主要控制器104接口到共享通信路径108的输入/输出接口112。输入/输出接口112包括通信路径地址113。该地址为主要控制器104利用,以识别从管理模块102到来的消息。在本发明的这一示例性实施例中,主要控制器104被配置为负责与管理模块102通信并管理包括数据存储装置116在内的附属装置114的主要装置。在执行这些功能时,主要控制器104在有效模式中运行。
图3的原理性框图还示出了辅助控制器106的元件,主要控制器104与辅助控制器106之间的主要不同在于主要控制器被配置为默认为有效状态而辅助控制器被配置为默认为备用状态。这里,辅助控制器106被配置为主要控制器104的冗余装置。辅助控制器106的输入/输出接口的通信路径地址113与主要控制器104的相同。因此,主要控制器104与辅助控制器的通信路径地址113可被视为共有的通信路径地址。
辅助控制器106在大多数情况下运行在备用模式,表示其当前在与管理模块102的通信中不是有效的且其当前不管理附属装置114。尽管本发明的该实施例被示为具有仅仅两个控制器104、106,任何数量的控制器可以与管理模块通信以及相互通信以便提供附属装置114的冗余控制。
辅助控制器106包括共享通信路径108上的地址,该地址与主要控制器104的相同。这样,如果主要控制器104发生故障或变为不可用,辅助控制器106可变为有效,与管理模块102通信以及管理附属装置114。
由于主要控制器104与辅助控制器106共用同一地址,冗余控制器的存在对于管理模块102来说是透明的。为了防止管理模块同时与主要控制器104以及辅助控制器106通信,暂时使当前处于备用模式的无论哪一控制器的输入/输出接口无效。如果一控制器将其状态从备用模式改变为有效模式,则其输入/输出接口开启,从而允许其与管理模块102通信。
每个控制器104、106包括包含固件120的存储装置118,例如闪存装置、静态随机存取存储(“SRAM”)装置、动态随机存取存储(“DRAM”)装置或类似物。固件120、120包含用于其对应的控制器104、106的操作系统122,该操作系统包括被装载到控制器处理器124并由控制器处理器124执行的操作指令。
在本发明的这一实施例中,各个控制器104、106在其被加电或复位时利用引导过程。在这种引导过程期间,各控制器104、106查询连接到控制器间通信路径的其他控制器。如果主要控制器104检测到其他有效的控制器,它通知该有效的控制器主控制器104将变为有效并且该其他有效的控制器应当进入备用模式。或者,在引导时,主要控制器104可变为有效,而任何其他有效的控制器必须检测主要控制器当前是有效的。如果辅助控制器106在其引导过程中检测到其他有效控制器,它进入备用模式。或者,如果没有检测到其他的有效控制器,辅助控制器106进入有效模式,与主模块102通信,并管理附属装置114。
数据处理系统100包含负责管理辅助控制器106的固件更新的更新模块126(图2)。管理模块102负责更新主要控制器104的固件,而更新模块126负责更新辅助控制器106的固件。这一点是必要的,因为当主要控制器104有效时辅助控制器106对于管理模块102来说是透明的。尽管更新模块126在本发明的这一实施例中被示为位于主要控制器104之中,更新模块的功能可分布在主要控制器104和辅助控制器106两者上。另外,更新模块126可作为算法存在于信号承载介质128上,如上面提到的那样。
图4中的框图示出了固件更新算法200。所示出的顺序和所标示的步骤表示本方法的一个实施例。可以想到在功能、逻辑或作用上与所示出的方法的一个或多个步骤或其部分等同的其他步骤和方法。另外,所采用的形式和符号用于阐释本方法的逻辑步骤,并可被理解为并非对本方法的范围进行限制。尽管在流程图中可能采用多种箭头类型和线条类型,可理解它们并非限制相应的方法的范围。事实上,某些箭头或其他连接物可用于仅仅表示方法的逻辑流程。例如,箭头可表示所示方法的所列步骤之间未指定持续时间的等待或监视阶段。另外,特定方法发生的顺序可严格按照或者不严格按照所示对应步骤的顺序。
当管理模块102通过将主要控制器104置于202备用模式而发起固件更新时,固件更新算法200开始。为了防止主要控制器104在固件120被更新的同时管理附属装置114,这一点是有必要的。在主要控制器104处于备用模式的同时,辅助控制器106暂时变为有效,从而它可管理附属装置114。然而,辅助控制器106的输入/输出接口112保持无效,以便防止辅助控制器与管理模块102通信。
接着,管理模块102用新的固件映像改写204主要控制器104的存储装置118中已有的固件120。由于主要控制器不包括用于在将固件映像复制到主要控制器的存储装置118之前存储固件映像的第三存储装置,新的固件映像被直接写到存储装置118中。
一旦更新后的固件映像被写到主要控制器中,主要控制器将辅助控制器置于206挂起模式。这防止辅助控制器在其固件被更新的同时管理附属装置。于是,主要控制器104将固件映像从主要控制器的存储装置复制208到辅助控制器106。由于主要控制器也不包括用于存储固件映像的第三存储装置,固件映像的副本被直接写到辅助控制器的存储装置118中。应当注意的是,主要控制器从主要控制器的存储装置118中读取用于在主要控制器的控制器处理器124上执行的操作指令,同时从同一存储装置118读取用于传送到辅助控制器106的固件映像120。
一旦固件映像已经被复制到辅助控制器的存储装置118中,辅助控制器106的控制器处理器124被重新引导。在该重新引导过程中,辅助控制器106查询主要控制器104。该查询通知212主要控制器104辅助控制器106的固件更新已经成功。主要控制器104返回214有效模式,并通知216管理模块102由管理模块102发起的固件更新已经成功。
本发明还可体现在其他具体的形式中,而不脱离本发明的精神或实质特性。所介绍的实施例在所有方面都应被看作说明性而不是限制性的。因此,本发明的范围由所附权利要求而不是前面的说明书表示。属于权利要求的等同物的含义以及范围的所有改变将属于权利要求的范围。

Claims (13)

1.一种复制固件的装置,该装置包含:
主要控制器,其具有第一存储装置和第一通信地址;
辅助控制器,其具有第二存储装置和第二通信地址,所述第二通信地址与所述第一通信地址相同;以及
与所述主要控制器以及辅助控制器通信的更新模块,其中,所述更新模块被配置为检测由管理模块写到所述第一存储装置的固件映像并以对所述管理模块透明的方式将所述固件映像的副本写到所述第二存储装置。
2.根据权利要求1的装置,进一步包含:用于将所述主要控制器和所述辅助控制器连接到所述管理模块的共享通信路径。
3.根据权利要求1的装置,其中,所述更新模块进一步被配置为从所述主要控制器向所述辅助控制器复制固件而不利用用于在将所述固件映像副本写到所述辅助控制器的所述第二存储装置之前存储所述固件映像副本的第三存储装置。
4.根据权利要求1的装置,其中,所述辅助控制器对所述主要控制器是冗余的。
5.一种更新多个控制器上的固件的系统,该系统包含:
管理模块,其包含服务处理器;
主要控制器,其包含第一存储装置并具有第一通信地址;
辅助控制器,其包含第二存储装置并具有第二通信地址,所述第二通信地址与所述第一通信地址相同;以及
共享通信路径,其用于将所述管理模块连接到所述主要控制器和所述辅助控制器;
其中,所述管理模块适用于将固件映像写到所述第一存储装置,并且所述主要控制器适用于以对所述管理模块透明的方式将所述固件映像的副本写到所述第二存储装置。
6.根据权利要求5的系统,其中,所述主要控制器进一步适用于将所述固件映像的副本写到所述第二存储装置而不利用第三存储装置存储所述固件映像。
7.根据权利要求5的系统,还包含控制器间的通信路径,所述通信路径适用于帮助所述主要控制器向所述第二存储装置写入所述固件映像。
8.一种用于从主要控制器向辅助控制器复制固件的方法,其中,所述主要控制器具有第一通信地址,所述辅助控制器具有第二通信地址,所述第二通信地址与所述第一通信地址相同,该方法包括:
从管理模块向所述主要控制器的第一存储装置写固件映像;以及
以对所述管理模块透明的方式向所述辅助控制器的第二存储装置复制所述固件映像。
9.根据权利要求8的方法,其中,该方法还包括:在向所述主要控制器的所述第一存储装置写所述固件映像之前,将所述主要控制器置于备用模式。
10.根据权利要求8的方法,其中,该方法还包括:将所述固件映像复制到所述辅助控制器的所述第二存储装置之前,将所述辅助控制器置于挂起模式。
11.根据权利要求8的方法,其中,该方法还包括通知所述主要控制器所述固件映像已被成功复制到所述辅助控制器的所述第二存储装置。
12.根据权利要求8的方法,其中,该方法还包括通知所述管理模块所述固件映像已被成功写入所述主要控制器的所述第一存储装置。
13.根据权利要求9的方法,其中,该方法还包括将所述主要控制器返回到有效状态。
CNA2007100015100A 2006-01-03 2007-01-04 用于冗余控制器固件更新的装置、系统和方法 Pending CN1996254A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/324,436 2006-01-03
US11/324,436 US7600055B2 (en) 2006-01-03 2006-01-03 Apparatus, system, and method for firmware update of redundant controllers

Publications (1)

Publication Number Publication Date
CN1996254A true CN1996254A (zh) 2007-07-11

Family

ID=38251352

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2007100015100A Pending CN1996254A (zh) 2006-01-03 2007-01-04 用于冗余控制器固件更新的装置、系统和方法

Country Status (2)

Country Link
US (1) US7600055B2 (zh)
CN (1) CN1996254A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101409641B (zh) * 2008-11-04 2011-04-06 中兴通讯股份有限公司 通过控制模块主备用方式实现远程下载的系统及其方法
CN101794270B (zh) * 2008-12-16 2012-04-18 国际商业机器公司 用于基于资源角度选择冗余控制器的方法和系统
CN105988853A (zh) * 2015-03-16 2016-10-05 国际商业机器公司 用于在所管理的部件上执行代码加载操作的方法与系统
CN109564506A (zh) * 2016-04-11 2019-04-02 江森自控消防有限合伙公司 具有自动固件更新的火灾检测系统
CN109815186A (zh) * 2018-12-18 2019-05-28 北京航天晨信科技有限责任公司 双冗余通信设备及方法
CN114690857A (zh) * 2020-12-28 2022-07-01 技嘉科技股份有限公司 机箱管理控制装置以及机箱管理控制系统
TWI807947B (zh) * 2022-08-01 2023-07-01 精英電腦股份有限公司 多顆嵌入式控制器的更新和檢驗方法與其電子設備

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7814479B2 (en) * 2005-12-14 2010-10-12 International Business Machines Corporation Simultaneous download to multiple targets
US8707290B2 (en) * 2006-02-22 2014-04-22 Dell Products L.P. Firmware update in an information handling system employing redundant management modules
US7908470B1 (en) * 2006-10-31 2011-03-15 Hewlett-Packard Development Company, L.P. Multi-processor computer with plural boot memories
US8271968B2 (en) * 2006-12-12 2012-09-18 Dell Products L.P. System and method for transparent hard disk drive update
US7761735B2 (en) * 2007-04-13 2010-07-20 International Business Machines Corporation Automated firmware restoration to a peer programmable hardware device
US7761734B2 (en) * 2007-04-13 2010-07-20 International Business Machines Corporation Automated firmware restoration to a peer programmable hardware device
CN101815988A (zh) * 2007-10-04 2010-08-25 无极公司 固件映像更新和管理
US8082439B2 (en) * 2007-12-06 2011-12-20 Hewlett-Packard Development Company, L.P. Firmware modification in a computer system environment supporting operational state changes
US8136108B2 (en) * 2008-09-03 2012-03-13 Computime, Ltd Updating firmware with multiple processors
US8255676B2 (en) * 2009-07-22 2012-08-28 Netapp, Inc. Non-disruptive methods for updating a controller of a storage system
CN102970502A (zh) * 2011-08-31 2013-03-13 中强光电股份有限公司 投影系统及其更新方法
US20130210486A1 (en) 2012-02-14 2013-08-15 Calamp Corp Remotely Managed Data Radios Including Remote Management Capabilities
US9015694B2 (en) 2012-10-31 2015-04-21 Aruba Networks, Inc Cloud-based firmware distribution service
DE102013103379A1 (de) * 2013-04-04 2014-10-09 Phoenix Contact Gmbh & Co. Kg Steuer- und Datenübertragungsanlage zur redundanten Prozesssteuerung und Verfahren zur Firmware-Aktualisierung
JP6195352B2 (ja) * 2013-05-27 2017-09-13 キヤノン株式会社 配信制御装置、配信制御方法、プログラム、並びに、配信制御システム及びその制御方法
FR3010553B1 (fr) * 2013-09-10 2015-09-04 Sagemcom Broadband Sas Procede de mise a jour d'un logiciel de demarrage d'un dispositif multiprocesseur
JP6484965B2 (ja) * 2014-09-03 2019-03-20 富士通株式会社 ストレージ装置、ファームウェアの更新方法、およびファームウェアの更新プログラム
US9385920B1 (en) * 2015-04-16 2016-07-05 Aic Inc. Rack having multiple rack management modules and firmware updating method for the same
US20160306623A1 (en) * 2015-04-16 2016-10-20 Aic Inc. Control module of node and firmware updating method for the control module
US9836417B2 (en) * 2015-04-20 2017-12-05 Western Digital Technologies, Inc. Bridge configuration in computing devices
JP2017017473A (ja) * 2015-06-30 2017-01-19 キヤノン株式会社 情報処理装置、その制御方法、および制御プログラム、並びに情報処理システム
CN107526538B (zh) * 2016-06-22 2020-03-20 伊姆西Ip控股有限责任公司 用于在存储系统中传递消息的方法和系统
US10169120B2 (en) 2016-06-24 2019-01-01 International Business Machines Corporation Redundant software stack
US10756975B2 (en) * 2016-12-13 2020-08-25 Avago Technologies International Sales Pte. Limited Multiple site rolling upgrade protocol
JP7314692B2 (ja) 2019-07-31 2023-07-26 コニカミノルタ株式会社 画像形成装置および画像形成装置診断システム
US11669385B2 (en) * 2019-08-30 2023-06-06 Intel Corporation Power error monitoring and reporting within a system on chip for functional safety
JP7423945B2 (ja) 2019-09-13 2024-01-30 コニカミノルタ株式会社 画像形成装置および画像形成装置診断システム
JP7379977B2 (ja) * 2019-09-17 2023-11-15 コニカミノルタ株式会社 画像形成装置および画像形成装置診断システム
TWI764481B (zh) * 2020-12-28 2022-05-11 技嘉科技股份有限公司 機箱管理控制裝置以及機箱管理控制系統
CN114826910B (zh) * 2021-01-29 2024-04-16 青岛海信宽带多媒体技术有限公司 一种光模块
US20230125853A1 (en) * 2021-10-26 2023-04-27 Schneider Electric Systems, USA Inc. Remote terminal unit processor redundancy sychronization

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5812857A (en) 1996-08-28 1998-09-22 Extended Systems, Inc. Field configurable embedded computer system
US6247168B1 (en) 1997-04-29 2001-06-12 Rockwell Technologies, Llc Embedded non-volatile programming tool
US20010000355A1 (en) 1998-12-28 2001-04-19 Esteban Santos Electronic trip unit having software download capabilities
JP2002075855A (ja) * 2000-06-14 2002-03-15 Canon Inc 自重補償装置およびこれを用いたステージ装置並びに露光装置およびそれを用いたデバイス製造方法
US6675258B1 (en) * 2000-06-30 2004-01-06 Lsi Logic Corporation Methods and apparatus for seamless firmware update and propagation in a dual raid controller system
US7093244B2 (en) 2001-04-18 2006-08-15 Domosys Corporation Method of remotely upgrading firmware in field-deployed devices
US20040030877A1 (en) 2002-08-06 2004-02-12 Aleksandr Frid Using system BIOS to update embedded controller firmware
US7562360B2 (en) 2003-12-01 2009-07-14 Texas Instruments Incorporated Method and system for firmware downloads
US7197634B2 (en) * 2004-01-16 2007-03-27 Dell Products L.P. System and method for updating device firmware

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101409641B (zh) * 2008-11-04 2011-04-06 中兴通讯股份有限公司 通过控制模块主备用方式实现远程下载的系统及其方法
CN101794270B (zh) * 2008-12-16 2012-04-18 国际商业机器公司 用于基于资源角度选择冗余控制器的方法和系统
CN105988853A (zh) * 2015-03-16 2016-10-05 国际商业机器公司 用于在所管理的部件上执行代码加载操作的方法与系统
CN109564506A (zh) * 2016-04-11 2019-04-02 江森自控消防有限合伙公司 具有自动固件更新的火灾检测系统
CN109564506B (zh) * 2016-04-11 2022-06-03 江森自控消防有限合伙公司 具有自动固件更新的火灾检测系统
CN109815186A (zh) * 2018-12-18 2019-05-28 北京航天晨信科技有限责任公司 双冗余通信设备及方法
CN114690857A (zh) * 2020-12-28 2022-07-01 技嘉科技股份有限公司 机箱管理控制装置以及机箱管理控制系统
CN114690857B (zh) * 2020-12-28 2024-07-09 技钢科技股份有限公司 机箱管理控制装置以及机箱管理控制系统
TWI807947B (zh) * 2022-08-01 2023-07-01 精英電腦股份有限公司 多顆嵌入式控制器的更新和檢驗方法與其電子設備

Also Published As

Publication number Publication date
US7600055B2 (en) 2009-10-06
US20070174601A1 (en) 2007-07-26

Similar Documents

Publication Publication Date Title
CN1996254A (zh) 用于冗余控制器固件更新的装置、系统和方法
CN102360317B (zh) 分离和存留控制应用的静态和动态部分的方法
EP1839156B1 (en) Managing multiprocessor operations
CN101405691B (zh) 从raid适配器卸载盘相关任务
CN102612685B (zh) 经由存储器高速缓存操纵的无阻碍数据传送
US20050132249A1 (en) Apparatus method and system for fault tolerant virtual memory management
CN101373433A (zh) 更新bios的方法以及使用该方法的电脑与系统
US20140181420A1 (en) Distributed cache coherency directory with failure redundancy
CN102597963A (zh) 集群中的动态副本卷交换
CN114489898A (zh) 悬浮窗的处理方法、电子设备及计算机可读存储介质
US20090198916A1 (en) Method and Apparatus for Supporting Low-Overhead Memory Locks Within a Multiprocessor System
CN102708023A (zh) 备用系统计算器、集群系统、提供服务的方法和记录介质
CN100444130C (zh) 存储设备、数据处理系统及方法、数据库和存储控制单元
CN112860595A (zh) Pci设备或pcie设备、数据存取方法及相关组件
JP4789263B2 (ja) メモリ制御システム、メモリ制御装置、メモリ制御方法
JP3547208B2 (ja) マルチプロセッサシステム及びその構成方法
US20240086076A1 (en) Systems and methods for using a storage device as persistent memory
JP2023001446A (ja) 制御システム、方法、及び、プログラム
JP3448407B2 (ja) ファイル制御装置のサポートシステム
CN117785554A (zh) 设备掉电数据保持方法、系统、设备和可读存储介质
CN116467021A (zh) 一种用户界面运行方法、装置、设备及存储介质
JP2001216147A (ja) 不揮発メモリ書き換え方法、及びその方法を用いた監視制御システム
JP2003186938A (ja) スコアボードを用いた検証方法
CN117742809A (zh) 一种文件系统升级或修复方法及外部存储介质
JP2001327102A (ja) 電力系統監視制御装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication