CN1312922A - 容错计算机系统 - Google Patents
容错计算机系统 Download PDFInfo
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error 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/2097—Error 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error 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/202—Error 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/2038—Error 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error 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/202—Error 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/2041—Error 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的计算机系统的容错操作方法,其特征是只在至少一个备份系统完成执行前面的事件以及没有检测出一个系统故障之后,主系统向一个外部设备通信。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19836347A DE19836347C2 (de) | 1998-08-11 | 1998-08-11 | Fehlertolerantes Computersystem |
DE19836347.8 | 1998-08-11 |
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)
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)
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 |
WO2012020698A1 (en) * | 2010-08-11 | 2012-02-16 | 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 |
JP6382819B2 (ja) | 2013-08-21 | 2018-08-29 | 株式会社東芝 | データベースシステム、ノード、管理装置、プログラムおよびデータ処理方法 |
WO2015029139A1 (ja) * | 2013-08-27 | 2015-03-05 | 株式会社東芝 | データベースシステム、プログラムおよびデータ処理方法 |
US9424149B2 (en) | 2014-07-01 | 2016-08-23 | Sas Institute Inc. | Systems and methods for fault tolerant communications |
US9712382B2 (en) | 2014-10-27 | 2017-07-18 | Quanta Computer Inc. | Retrieving console messages after device failure |
US9946719B2 (en) | 2015-07-27 | 2018-04-17 | Sas Institute Inc. | Distributed data set encryption and decryption |
US9703789B2 (en) | 2015-07-27 | 2017-07-11 | Sas Institute Inc. | Distributed data set storage and retrieval |
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 |
US10579377B2 (en) | 2017-01-19 | 2020-03-03 | International Business Machines Corporation | Guarded storage event handling during transactional execution |
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 |
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)
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 |
-
1998
- 1998-08-11 DE DE19836347A patent/DE19836347C2/de not_active Expired - Lifetime
-
1999
- 1999-08-09 CA CA2339783A patent/CA2339783C/en not_active Expired - Lifetime
- 1999-08-09 CN CNB998095893A patent/CN1137439C/zh not_active Expired - Lifetime
- 1999-08-09 EP EP99944347A patent/EP1110148B1/en not_active Expired - Lifetime
- 1999-08-09 AU AU57316/99A patent/AU5731699A/en not_active Abandoned
- 1999-08-09 KR KR1020017001732A patent/KR100575497B1/ko not_active IP Right Cessation
- 1999-08-09 JP JP2000565464A patent/JP2002522845A/ja active Pending
- 1999-08-09 WO PCT/EP1999/005739 patent/WO2000010087A1/en active IP Right Grant
- 1999-08-09 BR BR9912879-9A patent/BR9912879A/pt not_active Application Discontinuation
- 1999-08-10 US US09/371,409 patent/US6438707B1/en not_active Expired - Lifetime
Cited By (17)
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 |
---|---|
AU5731699A (en) | 2000-03-06 |
JP2002522845A (ja) | 2002-07-23 |
US6438707B1 (en) | 2002-08-20 |
BR9912879A (pt) | 2001-05-08 |
KR20010072379A (ko) | 2001-07-31 |
EP1110148A1 (en) | 2001-06-27 |
CA2339783C (en) | 2011-03-08 |
DE19836347A1 (de) | 2000-02-17 |
WO2000010087A1 (en) | 2000-02-24 |
CA2339783A1 (en) | 2000-02-24 |
EP1110148B1 (en) | 2002-07-17 |
DE19836347C2 (de) | 2001-11-15 |
CN1137439C (zh) | 2004-02-04 |
KR100575497B1 (ko) | 2006-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1137439C (zh) | 容错计算机系统 | |
US20170031623A1 (en) | Method and apparatus for configuring redundancy data center in cloud computing architecture | |
CN1521625A (zh) | 容错计算机系统,其再同步方法,及其再同步程序 | |
US20080244552A1 (en) | Upgrading services associated with high availability systems | |
CN101065731A (zh) | 监督处理控制数据获取设备的冗余部署的主机的运行时间故障管理 | |
CN101076736A (zh) | 在监督处理控制系统中配置冗余 | |
US20070299906A1 (en) | Server change management | |
US20050060608A1 (en) | Maximizing processor utilization and minimizing network bandwidth requirements in throughput compute clusters | |
CN1992723A (zh) | 自治地保持高可用性网络引导服务的装置、系统和方法 | |
CN101068140A (zh) | 一种实现主/备pci设备切换的装置和方法 | |
CN101616028A (zh) | 一种通信程序业务不中断升级方法及系统 | |
EP2224341A1 (en) | Node system, server switching method, server device, and data transfer method | |
CN105677380A (zh) | 一种双主控隔离的逐板升级的方法及装置 | |
CN107040403A (zh) | 基于dds技术提高分布式系统可靠性的方法 | |
CN1199458C (zh) | 全流程备份视讯系统 | |
US7373542B2 (en) | Automatic startup of a cluster system after occurrence of a recoverable error | |
US20060282831A1 (en) | Method and hardware node for customized upgrade control | |
JP2009129409A (ja) | 障害回復方法、計算機、クラスタシステム、管理計算機及び障害回復プログラム | |
CN1510845A (zh) | 一种交叉主备保护的热备份方法 | |
CN101515834B (zh) | 一种主控卡、基于多备份主控卡的切换系统及其切换方法 | |
CN1476178A (zh) | 通信系统中实现高可用性(ha)的装置和方法 | |
JP2010003022A (ja) | ファイル更新方法 | |
CN113934711B (zh) | 一种自动化部署gbase8s集群的方法 | |
CN1706160A (zh) | 冗余转发引擎的最优化切换的方法和系统 | |
CN1722627A (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 |