CN1312922A - 容错计算机*** - Google Patents

容错计算机*** Download PDF

Info

Publication number
CN1312922A
CN1312922A CN99809589A CN99809589A CN1312922A CN 1312922 A CN1312922 A CN 1312922A CN 99809589 A CN99809589 A CN 99809589A CN 99809589 A CN99809589 A CN 99809589A CN 1312922 A CN1312922 A CN 1312922A
Authority
CN
China
Prior art keywords
event
event handling
fault
main
standby
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
CN99809589A
Other languages
English (en)
Other versions
CN1137439C (zh
Inventor
M·隆斯特伦
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.)
Telefonaktiebolaget LM Ericsson AB
Original Assignee
Telefonaktiebolaget LM Ericsson AB
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 Telefonaktiebolaget LM Ericsson AB filed Critical Telefonaktiebolaget LM Ericsson AB
Publication of CN1312922A publication Critical patent/CN1312922A/zh
Application granted granted Critical
Publication of CN1137439C publication Critical patent/CN1137439C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime 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/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/2097Error 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 maintaining the standby controller/processing unit updated
    • 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/202Error 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 processing functionality is redundant
    • G06F11/2038Error 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 processing functionality is redundant with a single idle spare processing component
    • 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/202Error 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 processing functionality is redundant
    • G06F11/2041Error 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 processing functionality is redundant with more than one idle spare processing component

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)

Abstract

要求降低内部单元通信的容错计算机***和方法。一个主***用来执行事件处理以响应接收到的命令。每次一个事件处理的执行被停止,由于正常终止或一个中断,一个事件发生器生成一个表示事件处理类型和停止事件处理的原因和时间的事件消息。该事件消息用来指导一个备份***执行同样的事件处理。因为该事件消息也指定停止事件处理的原因和时间,在备份***上能复制执行该事件处理。因此,主***和至少一个备份***将被同步。提供至少一个备用***来在一个事件日志中记录事件消息序列,并来保存主***的存储器内容的一个档案副本。有档案副本的事件日志可以用来恢复主***的***状态。

Description

容错计算机***
本发明涉及容错计算机***并涉及计算机***的容错操作。
计算机或计算机***越来越多地用于故障敏感性的应用,如银行***或电信网络。如果计算机瘫痪或者甚至如果出现一个错误操作可能引起严重问题。例如,在银行***中,一笔钱可能在帐户之间错误地转移,在电信***中通信线路可能没有通知就被中断,可能建立不期望的连接或者***可能完全停止一个延长的时间。显然,希望避免这种问题。
对付上述问题的一般已知的方法是在一对一的基础上复制一个计算机***,并使得2个计算机***执行同样的指令序列。然而,这将在2个计算机***之间需要一个高度的内部单元通信负载,因为在一个十分细化的层次上操作需要被检查和同步。而且,计算机不断较高频率地运行,其中内部单元通信处理变成一个重要的负担因数。
减少内部单元通信负载的一个方法在美国专利US5,554,304中描述过。一个活动单元和一个后备单元二者接收和查询命令。只有活动单元处理命令。***提供在活动单元和查询或提供特殊命令状态的后备单元之间传递的短消息。在涉及到在活动单元和后备单元的控制器之间交换的短信号的2个单元之间执行周期性握手。
然而,一旦发生故障,该***需要一个长时间来重新启动使用后备单元的操作,因为只有在2个单元之间执行周期性的握手,不能维持高水平同步。
因此本发明的目的是提供一个容错计算机***和容错计算机的操作方法,在主计算机和后备计算机之间需要低的通信负载同时容许高层次同步。
本发明的目的由有权利要求1的特征的容错计算机和有权利要求13的特征的计算机***的容错操作方法来解决。
依照本发明,主计算机包括一个主中央处理单元,用来保存***数据和应用程序数据的主存储器装置,和每次主中央处理单元停止一个事件处理的执行时生成事件消息的事件发生器。事件消息至少包括事件处理的类型和停止事件处理执行的原因。至少提供一个备份***,包括一个备份中央处理单元,备份存储器装置和接收和中间保存从主计算机接收到的事件消息序列的缓冲区。后备控制装置安排对应各自事件消息的事件处理的执行。数据处理以同样的方式在主计算机中和在备份***中被执行。
有利地是,主处理单元只在一个事件处理的执行被中止的情况下向备份***报告一个事件消息。这使得内部单元通信显著降低,不再需要主***详细检查至少一个备份***的状态。
由于在至少一个备份***上,有关事件处理和中止事件处理的执行的原因的所有必要信息通过事件消息是已知的,至少一个备份***能够复制在主计算机上的事件处理的执行过程。这包括被访问的,产生的或其它受影响的数据,并包括在完全一样的地点或时间点,即在同样条数的指令后中止一个事件处理,如同在主计算机前一样。
有了在主计算机和至少一个备份***上的一个完全一样的事件处理的执行,可以实现在主计算机和至少一个备份***的状态中间的高层次同步,包括存储器内容的同步。不再需要在细化层次上检查如存储器装置,或向存储器装置报告变化情况,这在以前是需要的。至少一个备份***将对数据库或***数据实行完全一样的变化,如同在主计算机上实行一样。
在本发明的优先实施例中,考虑2个中止事件处理的可能理由。第一,事件处理能正常中止,即如果完成执行相应的命令。第二,事件处理可以被,如另一个命令中断,要求另一个事件处理的执行和有更高的优先级。这样,信息将被包括在由于正常终止或由于中断是否停止中止事件处理的事件消息中。
在本发明的另一个优先实施例中,提供产生事件数据的装置,该数据表示在主计算机和至少一个备份***上的事件处理的执行。而且,提供这样的装置,它根据在主计算机和至少一个备份***上产生的事件数据的比较检测***故障。这样,能决定计算机***的操作是否为无故障的。在检测出主计算机上发生故障的情况下,可以选择备份***来确保功能如新主***。故障可以包括主***上的软件故障或硬件故障或备份***上的硬件故障。
可以提供任意数量的备份***来进一步加强***的容错能力。如,多个备份***使得故障本地化简单化。
而且,最好可以提供至少一个备用***来接收和保存***数据和应用程序数据的档案备份。该备用***可以在一个事件日志中记录在主***上产生的事件消息序列。该备用***可以用来使用***和应用程序数据的档案副本,执行对应保存在事件日志中的事件消息的事件处理。因此,如果在产生档案备份后的所有事件在备用***上是已知的,***和应用程序数据的档案副本能被更新为当前版本,而不丢失任何数据或事件处理。备用***进一步增加了容错能力,因为可以在任何时间恢复主***的状态。
主***可以连接多个外部设备,它们可以是计算机***的区域处理器或分布式中央处理器。事件处理可以通过执行一个区域处理器的信号和执行一个分布式中央处理器的信号而组成。而且,事件处理可以由于一个内部计时器中断由处理器工作表的扫描操作而组成,并可以由主***的内部功能而组成。通过定义由区域处理命令或分布式中央处理命令引起的外部事件处理,和定义由计时器中断或其它***功能引起的内部事件处理,可以描述主***的***状态的所有可能的变化。
有利的是,一个事件消息可以包括一个表示事件处理的执行序列的序列号,例如,如果事件处理序列不是由在至少一个备份***上的事件消息的接收序列来定义。而且,事件消息可以包含执行的指令数目,如,来帮助指定事件处理停止条件。一个事件消息还可包含根据一个中断信号而出现的在主***上的寄存器状态,以及事件处理定义或存取的数据。将该信息合并到一个事件消息中容许更全面描述一个事件处理,这样它可以在至少一个备份***上以完全一样的方式执行或停止。
如果主***上检测出软件故障,事件消息可以包括指明软件故障的信息和使得备份***避免该软件故障的信息。结果是备份***可以接管操作。
根据本发明的另一个优先实施例,可以提供多个处理节点,每个节点包括为第一个处理节点的主***和为第二个处理节点的备份***。而且,每个处理节点可以包括为第三处理节点的备用***。这样,每个节点在同一时间可以与主***和/或备份***和/或备用***一样工作。最好提供在所有节点间通信的装置。有可能主处理单元,后备处理单元和备用处理单元由单个数据处理单元组成。
而且,本发明的优先实施例在附属权利要求中作进一步描述。
结合附图阅读本发明的优先实施例的下面描述将更全面理解本发明。
图1示出了根据本发明的容错计算机***的一个实施例;
图2示出了根据本发明的容错计算机***的另一个实施例;
图3示出了根据本发明的容错计算机***的容错操作方法的一个实例的流程图;
图4示出了根据本发明的容错计算机***的容错操作方法的的第2个实例;
图5示出了根据本发明的容错计算机***的方法的第3个实例;
图6示出了根据本发明的***,包括主***和备份***的***操作例的时间/流程图;
图7示出了一个根据本发明的***,包括主***和备用***的实施例的操作实例;
图8示出了多个处理节点,每个包括一个主***,一个备份***和一个备用***的;
下面参照图1-7描述本发明的优先实施例。在这些图中相同的标号表示相同的部件。
图1示出了根据本发明的容错计算机***的第一个实施例。图1中的容错计算机***由一个主***100(PS),一个备份***110(BS),故障检测装置120(FD)和多个外部设备141,142,143和144组成。提供中央通信装置130,容许各个***元件彼此通信。
根据图1的本发明实施例的容错计算机***可以使用在对故障敏感的应用中,如银行***,售票***和电信网络。
根据本发明,主***负责操作,即主***执行所有应用必要的操作。在当前情况下,如在电信网络中的主***负责接收通信链接的请求,负责建立通信,并负责处理订户服务数据,订户地点数据等等。
备份***并不直接执行***的功能和操作,但提供主要资源使容许计算机***的容错操作。
外部设备141-144优先安排与主***100通信,在主***上发出命令或产生事件。在一个电信网络中,外部设备可以由一个分布式电信网络的交换机和区域处理器组成,或可以是一个分布式中央处理***的单元,如在电信网络的移动交换中心。外部设备也可以发出通信请求,要求有关订户服务信息的命令,或发出关于外部设备和类似物采取的行动的通知。
所有与外部设备的交互,如命令,优先由主***100处理。备份***110也可以接收命令,然而优先地,备份***将不直接处理命令。
根据图1的内部通信装置130的结构,容错计算机***的所有元件经过通信装置130互相连接,然而,在其它实施例中,外部设备141-144可能仅与主***100连接。根据容错计算机***的操作,如根据主***上的***故障,外部设备141-144能从主***上断开连接并连接至备份***110。为此,能提供交换设备,然而,这不成为本发明的部分,因此不在此描述。
主***100包括根据本发明操作计算机***的几个部件。主***优先包括接收和处理命令以及处理与外部设备141-144通信的主中央处理单元101(P-CPU)。
而且,主***100包括保存有关主******状态的***数据和有关应用的应用程序数据的主存储器装置102(PM)。在本实施例中,订户数据和内部数据可以保存在主存储器装置之内。在图1,主存储器装置显示为一个单一单元,然而,主存储器装置102可以分成几个独立单元。第一个单元能否储存有关主******状态的***数据,主存储器装置的第二个单元能由保存订户数据的数据库组成。
主中央处理单元101的运行由命令控制,这一点现有技术是已知的。主中央处理单元101的运行将例如影响***状态或主存储器装置的内容。
一个命令能由外部设备141-144之一发出,或能根据主***100的某种***状态内部产生。在任何一种情况下,主中央处理单元101,根据接收到的命令或事件,将采取行动执行事件处理中的命令。事件处理可以引起保存在主存储器装置102中的数据的变化,并导致与外部设备141-144之一的通信,等等。在执行事件处理的过程中,可以生成执行进一步的事件处理的进一步命令或指令。一个命令优先导致主***上的包括主中央处理单元操作的***操作序列,也可以包括保存在主存储器装置内的数据,如应用程序数据和***数据的变化。
如同数字信号处理的通常情况,根据接收到的一条命令执行一个事件处理或由于正常终止可以结束一个事件,或可以被另一条命令或事件,如有更高优先级水平的命令或事件而中断。在这种情况下,主中央处理单元101的当前运行将被停止,有较高优先级的命令将被执行,然后,可以恢复第一条命令的执行。一个中断可以,例如,根据内部计时器装置的通知而出现,或从外部世界接收。一个中断的出现可以不仅依靠与外部世界的交互,也可以由主***内的内部事件引起。因此,主***内的命令或事件或中断的准确计时不容易决定,并因此例如,当出现一个中断时,只报告命令或中断的出现是不足够的,而要求准确地表示全部环境和准确计时。
为了保证备份***将有与主***完全一样的状态和存储器内容,根据本发明,提供了一个连接至主中央处理单元101的事件发生器103(EG),用于每次主中央处理单元停止一个事件处理的执行(一条命令的执行)时,事件发生器103产生一个事件消息。如上所述,对于一个备份***和一个主***之间的同步,仅仅报告命令或事件是不足够的,还必须传送有关一个事件处理执行过程的进一步信息。因此,事件消息至少包括有关在主***上执行的事件处理类型的信息,还包括有关停止执行事件处理的原因和环境的信息。
备份***110,与主***相似,优先包含一个后备中央处理单元111(B-CPU),和后备存储器装置112(BM)。如同主存储器装置,后备存储器装置用来保存有关备份******状态的***数据和应用程序数据。
而且,备份***包含一个缓冲区113(B),用来接收或中间保存在主***100上产生的事件消息序列,并包含连接至后备中央处理单元的后备控制装置114(BC),用来安排事件处理的执行,如按照从主***接收对应的在缓冲区上的事件消息的次序,或根据一个事件处理指示器来表示在主***上的事件处理的执行序列。
注意到,即使在图1中只描述了单个备份***,可以提供单个备份***,都执行对应主***的事件处理序列。
因此,有一个短的时间延迟,如在0.5ms至1ms的范围内,备份***将执行如同在主***上执行的完全一样的事件处理序列,主存储器装置102和后备存储器装置112将被同步。
如果在主***上接收到一条命令或在主***内产生一条命令,即如果在主***100上发生一个事件,主中央处理单元101根据安排规则,将根据该命令执行一个事件处理。在某个事件点,事件处理或者由于事件处理的正常执行或者由于一个中断将被停止。在2种情况下,在停止执行一个事件处理的时候,事件发生器将产生一个包含表示事件处理和表示停止处理原因的信息的事件消息。停止处理的原因,如前所述,可以由于一个完整执行事件处理或出现一个中断而正常终止。
在主***上停止事件处理之后,事件消息被优先地传送至由后备控制装置114控制的备份***,在这里对应的事件处理将被执行,它与主***比较有一个小小的延迟。
一个事件消息也可以包含表示主***上的事件处理的执行序列的序列号,它可以包括被执行的指令号,直到主***上的事件处理的执行停止。而且,一个事件消息可以根据该事件处理定义的或存取的一个事件和数据的出现,包含主***的寄存器状态。
注意到,主***内的所有可能的处理需要由事件处理适当地定义,这样没有未定义的处理能引起主***和备份***中的不同的执行。因此,要保证与例如外部I/O***的通信是在定义好的事件处理的概念范围内进行。不容许与文件***TCP/IP等的无组织的通信和直接通信。通信必须通过执行事件处理的方式,仔细检查主中央处理单元处理的定义好的信号。如果这些先决条件满足,事件消息能用来全面描述主***内的所有转变,影响***状态或影响保存在主存储器装置内的数据。
作为本发明的一个重要特征,一旦一个事件处理的执行被停止/终止,产生事件消息,因而能够向备份***发送关于事件处理的执行的准确信息,包括关于事件处理的事件和停止事件处理的原因的数据。一个事件处理可以通过从一个外部设备,例如一个区域处理器或一个分布式中央处理器,执行一个信号而建立。一个事件处理也可以由于主***内的一个内部计时器的计时器中断,通过一个工作表的扫描指令而建立。而且,一个事件处理可以由主***的一个内部功能或主***中的一个内部功能的执行而建立。相应地,根据事件处理的终止,主***的事件发生器103产生一个事件消息,至少包含事件处理的类型和停止事件处理的原因。
如果一个事件将进行一个扫描工作表,该扫描被执行,并根据扫描工作表事件处理的正常终止或根据扫描工作表处理的中断,由事件发生器产生一个事件消息。
还有,一个事件消息可以根据从一个外部设备,如一个区域处理器或一个分布式中央处理器接收的一条命令或信号而产生。
如前面描述的,该事件消息将被发送至备份***110,在该备份***他们将被优先地中间保存在缓冲区113中。然后该后备控制装置114将根据在该缓冲区中接收到的事件消息,或根据包含在事件消息中的序列号码,安排事件处理的执行。
每个事件消息包含执行一个事件处理的全部必要信息,后备控制装置114将能够指示后备中央处理单元111执行同样的事件处理,如同前面在主中央处理单元执行的一样。而且,因为每个发送的信息包含关于停止原因和一个事件处理的信息,后备控制装置将能够指导后备中央处理单元111在完全一样的地点停止事件处理的执行,如同在主中央处理单元110中停止的一样。在该上下文中的地点是当后备中央处理单元已经完成事件处理的同级执行时在执行过程中的一个点,如同当对应的事件处理停止时在主中央处理单元完成的一样。因此,如果主***的事件处理由于正常执行而终止,在备份***上的对应的事件处理也将由于正常执行而终止。如果在主***上的事件处理由于一个中断而停止,在备份***上的对应的事件处理的执行将在执行事件处理的完全一样的阶段被中断。
在主***和指示一个备份***之间的完全对应和同步直到在主***和/或至少一个备份***出现一个有故障操作才成功。因此,一个***故障可以通过比较来自主***和位于备份***上的执行参数来检测。
依照本发明的容错计算机***可以包含检测一个***故障的故障检测装置120。该故障检测装置120可以是一个分开单元,它连接至数据通信装置130,或可以包括在备份***110和主***100之中,或包括在容错计算机***的任何其它设备之中。
最好是故障检测装置120将比较记录的有关在主***上执行一个事件处理的的数据和记录的在备份***上的有关执行对应的事件处理的数据。该容错计算机***优先包含用来生成表示有关在主***上执行事件处理的的事件数据的第一个装置,和生成表示在至少一个备份***上执行同样的事件处理的的事件数据的第二装置。
在主***和备份***上生成的事件数据将优先转移到故障检测装置,它在接收事件数据时,将根据事件数据的比较结果检测***故障。如果主***和备份***的事件数据完全符合,***故障并没有发生。如果有关主***和备份***上的一个事件处理的执行的事件数据不符合,表示有一个***故障。一个***故障的检测是根据主***和至少一个备份***上的***数据的比较,这在现有技术上是已知的,并因此不在此描述,例如,在提供单个备份***的情况下,可以使用大多数表决的方法来决定故障发生在哪个位置。
如果检测出主***的一个***故障,可以选择一个备份***来保证***功能如同新主***。在这种情况下,计算机***的操作将不再由主***执行,但由备份***取代。根据计算机***的结构,特别是通信装置130的结构,这将涉及外部设备141-144之间的从主***至被选择的备份***之一的交换通信链结。
由于主***和备份***经常地维持在高水平的同步上,即仅以很短时间的延迟,如0.5ms至1ms在运行,被选择的备份***能容易地保证主***的功能,不丢失数据,命令和不延长停工时间。
下面参照图2,将描述本发明的容错计算机***的第2个实施例。
图2示出了容错计算机***的一个例子,与图1中描述的相似。
还是主***100和备份***110,在第2个实施例中提供了一个备用***150。而且,与图1中的本发明的第一个实施例相反,故障检测装置120合并到备份***110。提供外部设备145和146。现在通信装置130连接主***100,备份***110,备用***150和外部设备145和146。
如同在本例中参照图1描述的一样,在本发明的第2个实施例中,备份***执行与主***完全一样的事件处理序列,象前面一样,保存在主存储器装置和后备存储器装置中的数据将被同步。
每次停止主***上的事件处理时,事件发生器103产生一个事件消息,如,由于事件处理的正常终止或者由于一个中断的出现。象前面一样,事件消息可以包含表示事件处理的一个执行序列的一个序列号码,可以包含数个执行的指令,例如如果出现一个中断时的寄存器状态,以及事件处理定义的或存取的数据。事件消息也可以包含表示在主***上执行对应的事件处理的事件数据,用来比较对应在备份***上执行的的事件处理的事件数据。
除了传送至备份***之外,在第2个实施例中,该事件消息还被传送至备用***150。
注意到,可以提供多个备用***,即使在图2中只示出了单个***。该备用***最好不执行事件处理,但只对在事件日志153(EL)中接收到的事件消息记录日志。在图2的实例中,备用***150包含备用存储器装置152,用来保存已保存在主存储器装置102上的数据的一个档案副本。根据本发明,保存在主存储器装置102上的***和应用程序数据的一个档案副本优先以某种时间间隔传送至备用存储器装置。例如,可以每一个小时,每一天等等生成一个档案副本。
为了能够重新产生主***的***状态,需要考虑产生一个档案副本后的所有事件消息。因此,最好在传送一个档案副本至备用***之后,从主***接收到的所有事件消息记录在一个事件日志中。这样,因为该事件消息清楚地定义了在主***100上的事件处理的执行过程,包括事件类型,停止执行事件处理的原因和时间等等,可以一起使用事件日志和保存在备用存储器装置152上的档案副本来恢复主***的***状态。
备用***150也可以包含一个备用中央处理单元151和一个备用命令装置154。如果主***的***状态,例如根据主***的故障,需要恢复,备用控制装置154可以依照保存在事件日志中的事件消息序列生成指令,使得备用中央处理单元以完全一样的方式执行完全一样的事件处理序列,如同他们在主***上执行的一样。相应地,即使有一个时间延迟,同样的改变可以应用于保存在备用存储器装置152中的档案副本的数据。
备用***与备份***十分相似,如同参考图1描述的,然而,备用***主要是为了在后来的时间点能恢复主***的***状态,用来记录在一个事件日志的事件消息和记录主***的存储器内容的档案副本。
例如,如果检测到在备份***上的一个***故障,备用***可以取代备份***的操作。
而且,如果在主***上检测到一个软件故障,例如,如果主***不能再继续运行,传送至备份***的事件消息可以包括指定软件故障的信息和使得备份***避免该软件故障的信息。在这种情况下,备份***可以,例如,跳过执行一个引起软件故障的事件或在执行该事件时跳过某种通信或软件流程。该软件故障也可以报告给备用***。当然,在主***的故障之后,备份***可以取代主***的操作,如前面描述一样。因此可以实现一个向前的错误校正。
图3示出了根据本发明的一个计算机***的容错操作方法的一个实例的流程图。象在前面的情况一样,计算机***包含一个主***,一个备份***和一个可选的备用***。下面参考图3,将描述在计算机***的容错操作过程中的主***的操作。
该***可以用来作为图1和图2的第一个和第二个实施例。特别地,备份***用来接收根据主***上的一个事件处理的执行产生的事件消息。然而,图3的流程主要描述主***的运行。
在步骤301,主中央处理单元根据安排规则执行一个事件处理,如根据下一条将要执行的命令的下一个处理。该事件处理可以是将在主***上执行的事件处理序列中的下一个事件处理,由从外部设备接收到的命令指导。一个事件处理也可以根据主***内的计时装置的通知来执行。这可以是,例如,由于一个扫描工作表的内部计时中断的一个指令。一个事件处理也可以是相关于主***的一个内部功能而执行。
在事件处理的执行过程中,可以产生执行其它事件处理的其它命令或指令。一条命令首先导致主***上的一个***操作序列,包括主中央处理单元的操作序列,也可以包括保存在主存储器装置内的数据如应用程序数据或***数据的变化。再者,如前面的实施例一样,主***的所有可能操作必须是一个事件处理的一部分。主中央处理单元可以不执行除了事件处理的其它任何操作。
在某个时间点,当前事件处理的执行将要终止,如,由于执行正常完成,或由于一个中断而强迫停止该事件处理的执行。因此,在步骤302,根据停止事件处理,检查是否发生当前事件处理的一个正常执行,即,为了决定是否出现一个正常执行,监督该事件处理。
在检测出当前事件处理的正常执行的情况下,在步骤304,产生表示当前事件处理的正常终止的一个事件消息。该事件消息可以至少包括有关当前事件处理类型的信息,和表示由于正常执行当前事件处理被终止的信息。该事件消息还可以包括表示事件处理的执行序列的序列号,当事件处理的执行的一个优选序列不仅由接收的对应事件消息的序列如在备份***上决定时,这可能是有优势的。该事件消息也可以包含关于事件处理定义的或存取的数据,特别是关于保存在主存储器装置中的***状态或应用程序数据的数据的信息。
换句话说,需要保证事件消息包含描述对应的当前事件处理的所有必要数据,使得在备份***上执行完全一样的事件处理。一般地,应该充分传送执行的事件处理的种类的标识符并传送指明事件处理的执行环境的参数,如在电信***的情况下确定订户,电信线路等。
在步骤304检查一个中断的出现。如果在步骤304没有检测出一个中断,流程返回步骤302。如果检测出一个中断,在步骤305生成一个现在表示当前事件处理被中断的事件消息。对应的事件消息最好也将包括当出现中断时,有关在当前事件处理的执行过程中恰好时间点的信息。事件消息可以包括直到出现中断时执行的指令号,如汇编指令。而且,事件消息可以包括在中断时出现的主***,特别是主中央处理单元的寄存器状态。而且,与在步骤304产生的事件消息类似,可以包括表示事件处理的执行序列的序列号,以及有关事件处理定义或存取的数据的信息。
在步骤306生成表示主***上的当前事件处理的执行过程的事件数据。该事件数据将优先包括用来决定事件处理是否无故障执行的信息。这可以,例如包括有关***状态或某种关键数据或检查信号的信息,这在现有技术是已知的。
在步骤307,事件数据被传送至故障检测装置120。如果故障检测装置合并到备份***中,事件数据也可以包括在事件消息之中,这样在步骤308被传送至备份***和/或备用***,如果有的话。
在步骤309,根据当前事件处理的执行决定是否需要一个外部设备通信。外部设备通信可以,例如,包括向另一个处理器或向任何其它设备的通信。这种决定步骤可以有次序进行,以避免如果在主***出现故障操作,由于外部设备通信故障将进一步繁殖到整个计算机***。
如果在步骤309不需要向一个外部设备通信,流程可以直接返回步骤301,来执行后面的事件处理。
在步骤309,如果根据事件处理的执行需要一个外部设备通信,在步骤310,主***可以等待表示主***上和备份***产生的并由故障检测装置比较过的事件数据的比较结果的一个消息。在等待比较结果的过程中,主***可以在中间执行其它事件处理,如不需要外部设备通信的事件处理。然而,需要一个外部通信的事件处理也可以中间执行。在这种情况下,多个比较消息将同时等待。
在步骤311,根据接收到有关比较主***和备份***的事件数据的消息,决定主***的操作是否是无故障的。如果是的话,在步骤312,执行所要求的一个外部设备通信,流程返回步骤301,并根据安排规则执行下一个事件处理。
如果在步骤311决定主***不执行在无故障操作中的当前事件处理,在步骤313启动有关恢复过程。该恢复过程可以包括将至少一个备份***之一指定为新主***,并可以包括通过外部设备的通信链结从主***切换到备份***。如果容错计算机***也包含备用***,恢复过程可以包括将记录在备用***上的一个事件消息日志应用到预先转移到备用***的一个档案副本。在恢复过程之后,主***的操作被终止,如用来修理。
注意到这些步骤的序列不必要依照图3中的流程,该序列可以在其它实施例中有所不同,如,在一个事件消息之前可以生成事件数据,等等。
下面参考图4,描述了计算机***的容错操作方法的第二个实施例。图4示出了执行命令和对应的执行事件处理的更详细的实例。而且,该流程主要关心主***的操作。
在主***启动操作之后,在一个中央主要处理单元,在步骤401决定根据一个计时中断是否扫描一个工作表。这种工作表可以包括将要执行的工作序列。工作表的扫描可以包括决定工作序列的正确性,决定下一步将要进行哪项工作,等等。在步骤401,也可以决定是否将要执行另一个内部***功能。换句话说,在步骤401,决定是否出现一个要求执行一个事件处理的内部命令。
在本例中,假设主***连接至网络处理器的区域处理器和分布式中央处理器。计算机***可以例如运行一个电信***。
如果在步骤401没有检测出内部命令,在步骤402决定是否接收到任何区域处理器信号。这些区域处理器信号可以是要求实现事件处理的命令。如果在步骤402没有检测出这样的信号或命令,在步骤403决定是否有任何分布式中央处理器信号确实到达主***。该分布式中央处理器信号也可以是要求执行事件处理的命令。一个事件处理也可以由执行一个***功能或一个外部功能的启动构成,如在一个电信网络中的服务功能。主***可以只执行事件处理,不容许其它影响***状态,***数据或应用程序数据的动作。
如果在步骤403没有检测出分布式中央处理器信号,流程返回至步骤401。
如果在步骤401,402和403的任何一个步骤中,检测到接收一个命令或要求执行一个事件处理的事件,在步骤404将根据安排规则决定下一步将执行哪个信号。除了在步骤401,402和403检测出的命令,可以提供一个要求执行事件处理的工作缓冲区,这样在步骤404可以应用优先考虑。
在选择将要执行的下一个事件处理之后,在步骤405,执行事件处理直到正常终止或直到出现一个中断。
接着,在步骤406记录表示直到停止事件处理的事件处理的执行过程的事件数据。该事件数据可以在后面的时间点使用,来检测主***和/或备份***和/或备用***的一个故障操作。而且,在步骤406,将产生一个至少表示事件处理类型和停止事件处理的原因的事件消息。
下面,在步骤407,已生成的事件数据和/或生成的事件消息被传送至至少一个备份***和/或备用***。
然后,流程返回至步骤401。
图5生成了计算机***的容错操作方法的操作的另一个例子。下面将参照图5描述备份***的操作。
***配置与参考前面的实施例描述的一个实施例相似。
如同参考图1和图2特别描述的,该备份***用来接收确认事件处理和特别在主***上执行的类型的事件消息,这样备份***就能够以同样的方式执行同样的事件处理,如同在主***执行的一样,包括中间停止事件处理或终止事件处理。
在步骤501,备份***接收来自主***的一个事件消息。如果有在备份***上的事件消息的后备日志,即还没有执行的对应较早事件消息的事件处理,备份***可以中间保存事件消息于一个缓冲区中。
在步骤502决定后备中央处理单元对于相应于在步骤501中接收到的事件消息是否是可用的。如果事件消息中间保存在该缓冲区中,例如,在一个FIFO缓冲区中,首先接收到的事件消息将被安排执行。然而,如果所希望的执行序列不能从接收到的事件消息的次序中决定,执行次序也可以跟随序列号,它可以例如包括到每个事件消息之中。该序列号最好表示主***上的事件消息的执行序列。安排执行可以由后备控制单元进行,如参照图1描述的一样。
如果处理器不可用,在步骤503,后备控制装置可以等待直到处理器可用为止。
在步骤504后备控制装置读取下一个事件消息,并根据事件消息生成控制信号。该控制信号被传送至后备中央处理单元,并将引起主***上的对应的事件处理的执行。这可以例如涉及改变保存在后备存储器装置中的***数据或应用程序数据。根据事件消息,该控制信号也将引起停止事件处理,类似前面停止在主***上的事件处理。这可以涉及产生一个中断,与前面在主***上产生的一个中断相同。
在停止事件处理之后,在步骤506,生成事件数据,表示备份***上的事件处理的执行过程。
在步骤507,如果检测装置合并到备份***之中,在备份***上生成的事件数据可以容易地与在主***上生成的事件数据比较,并且例如准备接收备份***上的事件消息。比较结果可以传送至主***。
在这种情况下,在步骤508判断主***和备份***的事件数据匹配,流程返回步骤501,排队的下一个事件处理将被安排执行。
如果在步骤508判断事件数据不匹配,在步骤509执行一个恢复过程。该恢复过程优先包括检测在哪个涉及到的***,主***或备份***,发生故障。该恢复过程可以包括选择备份***,或如果有多个备份***,选择一个备份***以确保功能如同新的主***。也可以包括决定哪个事件处理是在主***上最后成功执行的一个事件处理,例如,根据在主***上生成的事件数据,并可以包括传送在最后成功执行的事件处理上的信息至所有涉及到的备份***和/或备用***。而且,接管消息可以送至所有剩下的后备和备用***并送至容错计算机***的所有其它设备。
下面参考图6,描述了根据本发明的包括一个主***和一个备份***的容错计算机***特别执行事件处理序列的一个实例。
假设事件处理A,B,C和D将要执行。它们的执行可以象前面例子描述的一样进行。特别地,在主***执行一个事件处理之后,包括终止事件处理原因的一个事件消息将在主***上产生并传送至备份***。当在备份***上接收到事件消息之后,如果当前不执行其它事件处理,对应接收到的事件消息的事件处理将在备份***上执行。而且,如果在主***上检测到一个请求外部设备通信,在执行同外部设备的通信操作之前,主***首先等待表示在主***上无故障操作的的一个信号。在这个时间内,在主***上可以执行其它事件。
在步骤601,在主***上执行一个事件处理A。假设事件处理A的执行正常结束,即在主***上检测到正常终止。相应地,在步骤602一个事件消息EA被传送至备份***,如同前面描述的一样。该事件消息,例如包括有关事件处理类型,***数据和/或受影响的应用程序数据,停止事件处理的原因的信息。因为事件消息包括有关主***上的事件处理A的类型和执行的所有必要信息,在接收到备份***上的事件消息EA之后,事件处理A可以在备份***上以完全一样的方式执行。这将涉及在备份***上存取同样的数据,与前面在主***上执行事件处理A的过程在主***上一样。
当在备份***上执行事件处理A,在步骤604,在主***上执行第二个事件处理B(1)(部分一)。
现在假设在事件处理B(部分一)的执行过程中,要求执行事件处理C的一个命令C产生一个中断,并引起中断执行事件处理B(部分一)。根据本发明,在步骤605,在主***上生成一个事件消息EB1并传送至备份***。
因为执行事件处理A在备份***接收事件消息EB1之前是正常终止,在备份***上能执行对应的事件处理B(1)(部分一)之前在备份***上出现一个短的等待周期。在步骤606,在备份***上执行事件处理B(1)(部分一),因为关于由于命令C的中断的信息也被包括到事件消息EB1之中,事件处理B在执行过程中在完全一样的时间点在备份***上被中断。为了有助于备份***上的正确中断,执行过的指令号可以包括到事件消息之中。在备份***上的中断的生成在标号607上表示。
当在备份***上执行事件处理B(1)时,在步骤608,生成中断的事件处理C在主***上执行。
在本例中,假设事件处理C正常终止并且对应的事件消息EC在步骤609被传送至后备处理器。然而,在备份***接收到事件消息C的时候,备份***仍然忙于执行事件处理B(1)的第一部分,因为中断不是安排在那个时间点上出现。因此,事件消息EC,例如保存在一个中间缓冲区中,直到被安排的中断在备份***上出现。
在人工中断备份***上的事件处理B之后,现在备份***执行在中间保存的事件消息EC中指定的事件处理C(步骤610)。
在步骤611,因为事件处理C在主***上正常终止,主***在同样的时间恢复中断的事件处理B。在事件处理B(2)的第二部分正常终止之后,在步骤612主***生成并传送一个事件消息EB2至备份***。
因为有了事件消息EB1,由于命令C而中断时主***的准确状态在备份***上是已知的,备份***现在在步骤613能恢复执行事件处理B2直到正常终止。注意到,主***的寄存器状态可能已经传送至备份***,即使根据在备份***上生成人工中断,在备份***上应该出现同样的寄存器状态,如同由于命令C在主***上出现中断寄存器状态出现一样。
假设在执行事件处理的第二部分过程中,恢复执行事件处理之后,在步骤614从外部设备接收到应该外部命令D,在电信***的情况下它可能是一个区域处理器或一个分布式中央处理器。
在事件处理B正常终止之后,在步骤615,在主***上能够执行事件处理D。
还假设事件处理B将引起一个外部设备通信。然而,为了避免在主***内的故障操作的蔓延,该通信请求一直不进行,直到决定在主***上无故障操作。因此,在执行向外部设备的通信之前,主***等待一个表示根据在主***上执行事件处理B生成的事件数据与根据在备份***上执行事件处理B生成的事件数据匹配的信号。如果在步骤616,一个同步检查表示在主***上没有出现故障,在步骤617,可以执行外部设备的通信。
注意到,说明的实例仅仅描述容错计算机***一个可能的操作过程。例如,不是在所有情况下通信请求都先暂扣住,例如,非关键通信以及时间/关键通信可以进行而不等待上述同步检查。
下面参考图7,根据本发明将描述容错计算机***操作的另一个例子。在这种情况下,将说明主***和备用***的主通信和操作。
备用***用来保存来自主***的存储器内容的档案副本。一个档案副本首先以预定的时间间隔产生。而且,该备用***记录事件消息于一个事件日志中,用于一旦检测到一个故障,恢复主***或备份***的***状态。
该***的操作将使用示范性事件处理E,F和G说明。
在第一步701,第一个档案副本从主***的存储器装置传送至备用***的存储器装置。首先,该档案副本包括所有相关的应用程序数据和/或所有相关的***数据。因此,当生成该档案副本时,备用存储器装置的存储器内容代表在某一时间点的主***的存储器状态。
接着,在步骤702,象前面描述的,在主***上执行一个事件处理E,并根据事件处理的正常终止,在步骤703,一个事件消息EE被传送至备用***。在步骤704,在备用***上事件消息E记录在一个事件日志之中。
在同样的时间附近,在步骤705在主***执行一个在某个时间点被中断的事件处理F。相应地,在步骤706,包括所有指定事件处理F的必要数据的事件消息EF和该中断被传送至备用***。
在步骤707,在备用***上事件消息EF被记录在事件日志中。同样的,在步骤708,执行一个事件处理G,并根据事件处理G的正常终止,在步骤709一个事件消息EG被传送至备份***。在步骤710该事件消息EG被记录在事件日志中。
因为在步骤701在备用***上生成的一个档案副本和记录的事件日志的事件消息包含从主***传送的所有事件消息序列,可以重构主***的***状态,如同前面描述的一样。
档案副本可以以某种时间间隔产生。在传送一个新的档案副本之后,如同在步骤711指出的,所有前面记录的事件目志的事件消息可以被清除并可以开始一个新的事件日志。
这样,总是有可能重构主***的***状态,直至对应在备用***上记录在事件日志中的最后一个事件消息的事件处理。
下面参考图8,将描述根据本发明容错计算机***的另一个实施例。
图8示出了根据本发明的一个容错计算机***的4个处理节点800,810,820和830。这些处理节点经过网络840连接,它可以是一个聚簇互连。
每个处理节点包含一个主***,一个备份***和一个备用***。注意到,并不是必须提供备用***,在其它实施例中,一个处理节点可能只包含一个主***和一个备份***。
如在图8中所示,第一个处理节点800包含第一个处理节点800的一个主***801,和第二个处理节点810的一个备份***802以及第三个处理节点820的一个备用***803。
类似地,第二处理节点810包含第二个处理节点810的一个主***811,和第三个处理节点820的一个备份***812以及第四个处理节点830的一个备用***813。
第三处理节点820包含第三个处理节点820的一个主***,和第四个处理节点830的一个备份***812以及第一个处理节点800的一个备用***。
最后,第四处理节点830包含第四个处理节点830的一个主***831,和第一个处理节点800的一个备份***832以及第二个处理节点810的一个备用***833。
通过多重赋予主后备和后备功能,能改进容错功能。注意到,可以提供任意数目的处理节点,每个包含一个主***,一个备份***和/或一个备用***。即使主处理单元,后备处理单元和备用处理单元作为独立实体在图8中分别说明,它们可以由单个处理器构成,即主***,备份***和/或备用***的功能可以由单个处理单元执行。

Claims (23)

1.容错计算机***,包括:
连接至外部设备(141-146)的一个主***(100),包括:
执行事件处理的一个主中央处理单元(101),事件处理是在在主***(100)上出现一条命令而执行的一个处理;
连接至主中央处理单元(101)的主存储器装置(102),用来保存***数据和应用程序数据;
连接主中央处理单元的一个事件发生器(103),用于每次主中央处理单元(101)停止执行一个事件处理时生成一个事件消息,该事件消息至少包括有关事件处理的类型和停止执行事件处理的原因的信息;
至少一个连接主***(100)的备份***(110),包括:
执行事件处理的一个后备中央处理单元(111);
连接后备中央处理单元(111)用于保存***和应用程序数据的后备存储器装置(112);
从主***(100)接收和中间保存事件消息序列的一个缓冲区(113);和
连接后备中央处理单元(110)的后备控制装置(114),用来依照事件消息安排事件处理的执行。
2.根据权利要求1的容错计算机***,其特征是事件发生器(103)生成一个事件消息
它根据一个事件处理的一个中断;和
它根据一个事件处理的正常终止。
3.根据权利要求1或2的容错计算机***,其特征是:
用来生成表示在主***上的一个事件处理的执行的事件数据的第一装置;
用来生成表示在至少一个备份***(110)上的同样的事件处理的执行的事件数据的第二装置;和
根据比较事件数据检测***故障的装置(110),如果检测到在主***上有一个***故障,该装置用来选择至少一个备份***中的一个来确保功能如新主***。
4.根据前述权利要求中任一个的容错计算机***,其特征是有关在主***(100)上执行事件处理的事件数据包括到相应的事件消息之中。
5.根据前述权利要求中任一个的容错计算机***,其特征是至少一个备用***(150)包括:
用来接收和保存***数据和应用程序数据的有关档案副本的第一备用存储器装置(152);和
在生成档案副本后在一个事件日志中记录事件消息序列的第二备用存储器装置(153)。
6.根据前述权利要求中任一个的容错计算机***,其特征是该备用***(150)还包括:
连接第一备用存储器装置(152)和第二备用存储器装置(153)的一个备用中央处理单元(151);和
连接备用中央处理单元(151)的备用控制装置(154),用来安排执行对应在事件日志中的事件消息序列的事件处理序列。
7.根据前述权利要求中任一个的容错计算机***,其特征是外部设备(141-146)是一个分布***的区域处理器或分布式中央处理器。
8.根据前述权利要求中任一个的容错计算机***,其特征是一个事件处理由至少一个组构成,该组包括:
执行区域处理器的一条命令;
执行分布式中央处理器的一条命令;
扫描计时中断产生的一个工作表;和
执行主***的一个内部命令。
9.根据前述权利要求中任一个的容错计算机***,其特征是一个事件处理还包括至少一个组构成,该组包括:
表示事件处理的一个执行序列的序列号;
执行的指令号;
由于出现一个中断而产生的寄存器状态;和
有关事件处理定义或存取过的信息;
10.根据前述权利要求中任一个的容错计算机***,其特征是一旦检测到主***(100)上的一个软件故障,一个事件消息包括指明软件故障的信息,以及备份***(110)跳过执行至少部分对应的事件处理。
11.根据前述权利要求中任一个的容错计算机***,其特征是:
多个处理节点(800,810,820,830),每个包括至少一个组,该组包括:
第一处理节点的一个主***;
第二处理节点的一个备份***;
第三处理节点的一个备用***;
互连所有处理节点的装置。
12.根据前面权利要求11的容错计算机***,其特征是多个处理节点中的至少一个处理节点的主处理单元,后备处理单元和备用处理单元都是由单个处理器构成。
13.包括主***(100)和至少一个备份***(110)的计算机***的容错操作方法,包括步骤:
在主***(100):
由主中央处理单元(101)执行事件处理,事件处理是一个根据在主***(100)上出现一条命令而执行的处理;
每次主中央处理单元(101)停止一个事件处理的执行生成一个事件消息,该事件消息至少包括有关事件处理类型和停止执行事件处理的原因的信息;
传送每个事件消息至至少一个备份***(110);
在至少一个备份***(110):
在一个缓冲区(113)记录和中间保存来自主***(100)的事件消息;
安排在缓冲区(113)上对应的事件消息的事件处理的执行;和
依照事件消息由后备中央处理单元(111)执行事件处理。
14.根据权利要求13的计算机***的容错操作方法,其特征是根据一个事件处理的一个中断和一个事件处理的正常终止生成一个事件消息。
15.根据权利要求13或14的计算机***的容错操作方法,其特征是:
在主***上(100)生成表示执行一个事件处理的事件数据;
在至少一个备份***(110)上生成表示执行同样事件处理的事件数据;和
根据比较事件数据检测***故障,并且在检测出主***的一个***故障的情况下,选择至少一个备份***中的一个来确保功能如新主***。
16.根据权利要求13至15的计算机***的容错操作方法,其特征是:
在至少一个备用***(150)上接收和保存来自主***(100)的***数据和应用程序数据的一个档案副本;和
产生档案副本之后,在至少一个备用***(150)上在一个事件日志中记录在主***上产生的事件消息序列。
17.根据权利要求16的计算机***的容错操作方法,其特征是:
在至少一个备用***要承担一个备份***的功能的情况下,安排保存在事件日志中的对应事件消息的事件处理序列的执行;和
在备用中央处理单元执行由事件消息指定的事件处理并对档案副本应用相应的变化。
18.根据权利要求13至17的计算机***的容错操作方法,其特征是一个事件处理由至少一个组构成,该组包括:
执行区域处理器的一条命令;
执行分布式中央处理器的一条命令;
扫描计时中断产生的一个工作表;和
执行主***的一个内部命令。
19.根据权利要求13至18的计算机***的容错操作方法,其特征是一个事件消息还包括至少一个组构成,该组包括:
表示事件处理的一个执行序列的序列号;
执行的指令号;
由于出现一个中断而产生的寄存器状态;和
有关事件处理定义或存取过的信息;
20.根据权利要求13至19的计算机***的容错操作方法,其特征是一旦检测到主***(100)上的一个软件故障,一个事件消息包括指明软件故障的信息,以及备份***(110)跳过执行至少部分对应的事件处理。
21.根据权利要求13至20的计算机***的容错操作方法,其特征是至少一个备份***(110)执行事件处理,按照接收在缓冲区上的对应的事件消息的次序,或由表示在主***(100)上的事件处理的执行序列的序列号指定。
22.根据权利要求13至21的计算机***的容错操作方法,其特征是选择一个备份***来承担一个新主***的功能,包括:
决定哪个事件处理是最后成功执行的一个;
传送在最后成功执行的事件处理上的信息至所有的备份***(110)和备用***(150);和
向所有剩下的备份***和备用***以及所有设备发送接管消息;
23.根据权利要求13至22的计算机***的容错操作方法,其特征是只在至少一个备份***完成执行前面的事件以及没有检测出一个***故障之后,主***向一个外部设备通信。
CNB998095893A 1998-08-11 1999-08-09 容错计算机*** Expired - Lifetime CN1137439C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE19836347.8 1998-08-11
DE19836347A DE19836347C2 (de) 1998-08-11 1998-08-11 Fehlertolerantes Computersystem

Publications (2)

Publication Number Publication Date
CN1312922A true CN1312922A (zh) 2001-09-12
CN1137439C CN1137439C (zh) 2004-02-04

Family

ID=7877184

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB998095893A Expired - Lifetime CN1137439C (zh) 1998-08-11 1999-08-09 容错计算机***

Country Status (10)

Country Link
US (1) US6438707B1 (zh)
EP (1) EP1110148B1 (zh)
JP (1) JP2002522845A (zh)
KR (1) KR100575497B1 (zh)
CN (1) CN1137439C (zh)
AU (1) AU5731699A (zh)
BR (1) BR9912879A (zh)
CA (1) CA2339783C (zh)
DE (1) DE19836347C2 (zh)
WO (1) WO2000010087A1 (zh)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1326043C (zh) * 2004-05-05 2007-07-11 国际商业机器公司 在数据存储***之间提供时间点复制的***及方法
CN100339834C (zh) * 2003-04-10 2007-09-26 联想(新加坡)私人有限公司 数据处理***内从失败的恢复
CN100350396C (zh) * 2002-10-14 2007-11-21 最大可用性有限公司 用于为***对象记录日志的方法和***
CN100372094C (zh) * 2004-10-29 2008-02-27 力晶半导体股份有限公司 具自动回复功能的晶片测试装置与晶片测试方法
CN100397349C (zh) * 2001-11-30 2008-06-25 甲骨文国际公司 用于在网络***上提供资源高可用性的方法
CN100461123C (zh) * 2003-09-29 2009-02-11 国际商业机器公司 用于形成一致性组的方法和***
CN1652623B (zh) * 2004-02-07 2010-04-28 乐金电子(中国)研究开发中心有限公司 移动通信终端的出错记录管理方法
CN101815009A (zh) * 2010-03-30 2010-08-25 南京恩瑞特实业有限公司 支持容错的热备同步方法
CN101145946B (zh) * 2007-09-17 2010-09-01 中兴通讯股份有限公司 一种基于消息日志的容错集群***和方法
CN1708755B (zh) * 2002-09-03 2010-09-08 诺基亚有限公司 用于同步为处理中断的同步过程而提供的数据的方法、设备和***
CN102385637A (zh) * 2011-12-22 2012-03-21 山东中创软件商用中间件股份有限公司 一种数据库信息的备份方法及***
CN101431401B (zh) * 2008-09-08 2012-04-04 华为终端有限公司 一种同步故障处理方法、客户端、服务器及其***
CN101593136B (zh) * 2008-05-30 2012-05-02 国际商业机器公司 使得计算机具有高可用性的方法和计算机***
CN101661414B (zh) * 2008-08-27 2012-07-04 株式会社日立制作所 计算机***及其备份方法
CN103248499A (zh) * 2013-03-27 2013-08-14 天脉聚源(北京)传媒科技有限公司 一种信息交互的方法和***
CN103581177A (zh) * 2013-10-24 2014-02-12 华为技术有限公司 虚拟机管理方法及装置

Families Citing this family (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19836347C2 (de) 1998-08-11 2001-11-15 Ericsson Telefon Ab L M Fehlertolerantes Computersystem
US6898189B1 (en) * 2000-08-23 2005-05-24 Cisco Technology, Inc. Restartable spanning tree for high availability network systems
US7054892B1 (en) * 1999-12-23 2006-05-30 Emc Corporation Method and apparatus for managing information related to storage activities of data storage systems
GB0002972D0 (en) * 2000-02-09 2000-03-29 Orange Personal Comm Serv Ltd Data handling system
DE10014390C2 (de) * 2000-03-23 2002-02-21 Siemens Ag Hochverfügbares Rechnersystem und Verfahren zur Umschaltung von Bearbeitungsprogrammen eines hochverfügbaren Rechnersystems
US6694450B1 (en) * 2000-05-20 2004-02-17 Equipe Communications Corporation Distributed process redundancy
JP3968207B2 (ja) * 2000-05-25 2007-08-29 株式会社日立製作所 データ多重化方法およびデータ多重化システム
GB2372673B (en) * 2001-02-27 2003-05-28 3Com Corp Apparatus and method for processing data relating to events on a network
JP4273669B2 (ja) * 2001-02-28 2009-06-03 沖電気工業株式会社 ノード情報管理システム及びノード
DE10111864A1 (de) * 2001-03-13 2002-09-26 Tenovis Gmbh & Co Kg Anordnung mit zumindest einer Telekommunikationsanlage sowie Verfahren zum Sichern von Gebührendatensätzen
US7171434B2 (en) * 2001-09-07 2007-01-30 Network Appliance, Inc. Detecting unavailability of primary central processing element, each backup central processing element associated with a group of virtual logic units and quiescing I/O operations of the primary central processing element in a storage virtualization system
US7472231B1 (en) 2001-09-07 2008-12-30 Netapp, Inc. Storage area network data cache
US20030065861A1 (en) * 2001-09-28 2003-04-03 Clark Clyde S. Dual system masters
US6880111B2 (en) * 2001-10-31 2005-04-12 Intel Corporation Bounding data transmission latency based upon a data transmission event and arrangement
US6918060B2 (en) * 2001-10-31 2005-07-12 Intel Corporation Bounding data transmission latency based upon link loading and arrangement
US7437450B1 (en) 2001-11-30 2008-10-14 Cisco Technology Inc. End-to-end performance tool and method for monitoring electronic-commerce transactions
GB0206604D0 (en) * 2002-03-20 2002-05-01 Global Continuity Plc Improvements relating to overcoming data processing failures
US7426559B2 (en) 2002-05-09 2008-09-16 International Business Machines Corporation Method for sequential coordination of external database application events with asynchronous internal database events
US20030236826A1 (en) * 2002-06-24 2003-12-25 Nayeem Islam System and method for making mobile applications fault tolerant
US7099661B1 (en) * 2002-07-10 2006-08-29 The Directv Group, Inc. Risk-time protection backup system
JP3774826B2 (ja) * 2002-07-11 2006-05-17 日本電気株式会社 情報処理装置
US7149917B2 (en) * 2002-07-30 2006-12-12 Cisco Technology, Inc. Method and apparatus for outage measurement
US7720973B2 (en) * 2003-06-30 2010-05-18 Microsoft Corporation Message-based scalable data transport protocol
CN1292346C (zh) * 2003-09-12 2006-12-27 国际商业机器公司 用于在分布式计算体系结构中执行作业的***和方法
JP4182948B2 (ja) * 2004-12-21 2008-11-19 日本電気株式会社 フォールト・トレラント・コンピュータシステムと、そのための割り込み制御方法
EP1903441B1 (en) * 2005-07-14 2016-03-23 Fujitsu Ltd. Message analyzing device, message analyzing method and message analyzing program
JP4696759B2 (ja) * 2005-07-29 2011-06-08 Kddi株式会社 光終端システム
KR100725502B1 (ko) * 2005-09-09 2007-06-08 삼성전자주식회사 전자장치, 전자장치 시스템 및 전자장치의 제어방법
CN100465911C (zh) * 2006-04-13 2009-03-04 华为技术有限公司 一种备份方法
US7424642B2 (en) * 2006-04-24 2008-09-09 Gm Global Technology Operations, Inc. Method for synchronization of a controller
KR100820772B1 (ko) * 2006-04-27 2008-04-10 텔코웨어 주식회사 분산 네트워크 환경에서의 이중화 메모리 파일시스템 복구방법 및 복구 시스템
US7725764B2 (en) * 2006-08-04 2010-05-25 Tsx Inc. Failover system and method
US7865887B2 (en) * 2006-11-30 2011-01-04 Sap Ag Context based event handling and execution with prioritization and interrupt management
JP4644720B2 (ja) * 2008-03-10 2011-03-02 富士通株式会社 制御方法、情報処理装置及びストレージシステム
US9569319B2 (en) 2009-09-18 2017-02-14 Alcatel Lucent Methods for improved server redundancy in dynamic networks
US20130318535A1 (en) * 2010-08-11 2013-11-28 Nec Corporation Primary-backup based fault tolerant method for multiprocessor systems
EP4191431A1 (en) * 2013-03-12 2023-06-07 Toshiba Solutions Corporation Database system, program, and data processing method
WO2015025384A1 (ja) 2013-08-21 2015-02-26 株式会社東芝 データベースシステム、プログラムおよびデータ処理方法
WO2015029139A1 (ja) * 2013-08-27 2015-03-05 株式会社東芝 データベースシステム、プログラムおよびデータ処理方法
ES2714218T3 (es) 2014-07-01 2019-05-27 Sas Inst Inc Sistemas y métodos para comunicaciones tolerantes a fallos
US9712382B2 (en) 2014-10-27 2017-07-18 Quanta Computer Inc. Retrieving console messages after device failure
US9703789B2 (en) 2015-07-27 2017-07-11 Sas Institute Inc. Distributed data set storage and retrieval
US9990367B2 (en) 2015-07-27 2018-06-05 Sas Institute Inc. Distributed data set encryption and decryption
US10496292B2 (en) 2017-01-19 2019-12-03 International Business Machines Corporation Saving/restoring guarded storage controls in a virtualized environment
US10725685B2 (en) 2017-01-19 2020-07-28 International Business Machines Corporation Load logical and shift guarded instruction
US10452288B2 (en) 2017-01-19 2019-10-22 International Business Machines Corporation Identifying processor attributes based on detecting a guarded storage event
US10496311B2 (en) 2017-01-19 2019-12-03 International Business Machines Corporation Run-time instrumentation of guarded storage event processing
US10732858B2 (en) 2017-01-19 2020-08-04 International Business Machines Corporation Loading and storing controls regulating the operation of a guarded storage facility
US10579377B2 (en) 2017-01-19 2020-03-03 International Business Machines Corporation Guarded storage event handling during transactional execution
EP3543870B1 (en) 2018-03-22 2022-04-13 Tata Consultancy Services Limited Exactly-once transaction semantics for fault tolerant fpga based transaction systems

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4590554A (en) * 1982-11-23 1986-05-20 Parallel Computers Systems, Inc. Backup fault tolerant computer system
EP0306211A3 (en) * 1987-09-04 1990-09-26 Digital Equipment Corporation Synchronized twin computer system
CA1297593C (en) 1987-10-08 1992-03-17 Stephen C. Leuty Fault tolerant ancillary messaging and recovery system and method within adigital switch
EP0441087B1 (en) 1990-02-08 1995-08-16 International Business Machines Corporation Checkpointing mechanism for fault-tolerant systems
US5157663A (en) 1990-09-24 1992-10-20 Novell, Inc. Fault tolerant computer system
JP2773424B2 (ja) * 1990-11-20 1998-07-09 株式会社日立製作所 ネットワークシステムおよび接続コンピュータ切替え方法
WO1993009494A1 (en) 1991-10-28 1993-05-13 Digital Equipment Corporation Fault-tolerant computer processing using a shadow virtual processor
US5551047A (en) 1993-01-28 1996-08-27 The Regents Of The Univeristy Of California Method for distributed redundant execution of program modules
US5473771A (en) * 1993-09-01 1995-12-05 At&T Corp. Fault-tolerant processing system architecture
US5544304A (en) * 1994-03-25 1996-08-06 International Business Machines Corporation Fault tolerant command processing
US5619656A (en) 1994-05-05 1997-04-08 Openservice, Inc. System for uninterruptively displaying only relevant and non-redundant alert message of the highest severity for specific condition associated with group of computers being managed
US5528516A (en) 1994-05-25 1996-06-18 System Management Arts, Inc. Apparatus and method for event correlation and problem reporting
US5623532A (en) 1995-01-12 1997-04-22 Telefonaktiebolaget Lm Ericsson Hardware and data redundant architecture for nodes in a communications system
US5737514A (en) * 1995-11-29 1998-04-07 Texas Micro, Inc. Remote checkpoint memory system and protocol for fault-tolerant computer system
SE515348C2 (sv) 1995-12-08 2001-07-16 Ericsson Telefon Ab L M Processorredundans i ett distribuerat system
DE19625195A1 (de) * 1996-06-24 1998-01-02 Siemens Ag Synchronisationsverfahren
JPH10240557A (ja) * 1997-02-27 1998-09-11 Mitsubishi Electric Corp 待機冗長化システム
DE19836347C2 (de) 1998-08-11 2001-11-15 Ericsson Telefon Ab L M Fehlertolerantes Computersystem

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100397349C (zh) * 2001-11-30 2008-06-25 甲骨文国际公司 用于在网络***上提供资源高可用性的方法
CN1708755B (zh) * 2002-09-03 2010-09-08 诺基亚有限公司 用于同步为处理中断的同步过程而提供的数据的方法、设备和***
CN100350396C (zh) * 2002-10-14 2007-11-21 最大可用性有限公司 用于为***对象记录日志的方法和***
CN100339834C (zh) * 2003-04-10 2007-09-26 联想(新加坡)私人有限公司 数据处理***内从失败的恢复
CN100461123C (zh) * 2003-09-29 2009-02-11 国际商业机器公司 用于形成一致性组的方法和***
CN1652623B (zh) * 2004-02-07 2010-04-28 乐金电子(中国)研究开发中心有限公司 移动通信终端的出错记录管理方法
CN1326043C (zh) * 2004-05-05 2007-07-11 国际商业机器公司 在数据存储***之间提供时间点复制的***及方法
CN100372094C (zh) * 2004-10-29 2008-02-27 力晶半导体股份有限公司 具自动回复功能的晶片测试装置与晶片测试方法
CN101145946B (zh) * 2007-09-17 2010-09-01 中兴通讯股份有限公司 一种基于消息日志的容错集群***和方法
CN101593136B (zh) * 2008-05-30 2012-05-02 国际商业机器公司 使得计算机具有高可用性的方法和计算机***
CN101661414B (zh) * 2008-08-27 2012-07-04 株式会社日立制作所 计算机***及其备份方法
CN101431401B (zh) * 2008-09-08 2012-04-04 华为终端有限公司 一种同步故障处理方法、客户端、服务器及其***
CN101815009A (zh) * 2010-03-30 2010-08-25 南京恩瑞特实业有限公司 支持容错的热备同步方法
CN102385637A (zh) * 2011-12-22 2012-03-21 山东中创软件商用中间件股份有限公司 一种数据库信息的备份方法及***
CN103248499A (zh) * 2013-03-27 2013-08-14 天脉聚源(北京)传媒科技有限公司 一种信息交互的方法和***
CN103248499B (zh) * 2013-03-27 2014-09-17 天脉聚源(北京)传媒科技有限公司 一种信息交互的方法和***
CN103581177A (zh) * 2013-10-24 2014-02-12 华为技术有限公司 虚拟机管理方法及装置

Also Published As

Publication number Publication date
EP1110148A1 (en) 2001-06-27
CA2339783A1 (en) 2000-02-24
CN1137439C (zh) 2004-02-04
KR20010072379A (ko) 2001-07-31
CA2339783C (en) 2011-03-08
JP2002522845A (ja) 2002-07-23
BR9912879A (pt) 2001-05-08
WO2000010087A1 (en) 2000-02-24
AU5731699A (en) 2000-03-06
US6438707B1 (en) 2002-08-20
KR100575497B1 (ko) 2006-05-03
DE19836347A1 (de) 2000-02-17
EP1110148B1 (en) 2002-07-17
DE19836347C2 (de) 2001-11-15

Similar Documents

Publication Publication Date Title
CN1137439C (zh) 容错计算机***
US20170031623A1 (en) Method and apparatus for configuring redundancy data center in cloud computing architecture
US20080244552A1 (en) Upgrading services associated with high availability systems
CN101065731A (zh) 监督处理控制数据获取设备的冗余部署的主机的运行时间故障管理
CN101616028B (zh) 一种通信程序业务不中断升级方法及***
US8442958B2 (en) Server change management
US20050060608A1 (en) Maximizing processor utilization and minimizing network bandwidth requirements in throughput compute clusters
CN1992723A (zh) 自治地保持高可用性网络引导服务的装置、***和方法
EP2224341A1 (en) Node system, server switching method, server device, and data transfer method
CN105677380A (zh) 一种双主控隔离的逐板升级的方法及装置
US20230266956A1 (en) Method and apparatus for processing mirror images of ai platform
CN107040403A (zh) 基于dds技术提高分布式***可靠性的方法
CN1199458C (zh) 全流程备份视讯***
US7373542B2 (en) Automatic startup of a cluster system after occurrence of a recoverable error
JP2009129409A (ja) 障害回復方法、計算機、クラスタシステム、管理計算機及び障害回復プログラム
CN1510845A (zh) 一种交叉主备保护的热备份方法
CN103324554A (zh) 备用***设备、控制方法及其程序
CN1476178A (zh) 通信***中实现高可用性(ha)的装置和方法
CN101515834A (zh) 一种主控卡、基于多备份主控卡的切换***及其切换方法
JP2010003022A (ja) ファイル更新方法
CN113934711B (zh) 一种自动化部署gbase8s集群的方法
CN1706160A (zh) 冗余转发引擎的最优化切换的方法和***
CN1722627A (zh) 一种通讯设备中主备用单元倒换的实现方法和装置
CN1547329A (zh) 一种通信***中单板的n+1备份的方法
CN100413261C (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
C14 Grant of patent or utility model
GR01 Patent grant
CX01 Expiry of patent term

Granted publication date: 20040204

CX01 Expiry of patent term