CN1192309C - 管理冗余的基于计算机的系统用于容错计算的方法和设备 - Google Patents
管理冗余的基于计算机的系统用于容错计算的方法和设备 Download PDFInfo
- Publication number
- CN1192309C CN1192309C CNB998092908A CN99809290A CN1192309C CN 1192309 C CN1192309 C CN 1192309C CN B998092908 A CNB998092908 A CN B998092908A CN 99809290 A CN99809290 A CN 99809290A CN 1192309 C CN1192309 C CN 1192309C
- Authority
- CN
- China
- Prior art keywords
- data
- node
- fault
- rms
- voting
- 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.)
- Expired - Fee Related
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/18—Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits
- G06F11/187—Voting techniques
- G06F11/188—Voting techniques where exact match is not required
-
- 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/18—Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits
- G06F11/181—Eliminating the failing redundant 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/18—Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits
- G06F11/182—Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits based on mutual exchange of the output between redundant processing components
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)
- Multi Processors (AREA)
Abstract
一个独立的冗余管理系统(RMS)(12)以实现极高的系统可靠性,安全性,容错能力和任务成功率,提供了一个管理基于冗余计算机的系统的有成本效益的解决方案。RMS包括一个交叉通道数据链接(CCDL)模块(24a)和一个容错执行(FTE)模块(13)。CCDL模块提供所有节点的数据通信,同时FTE模块执行系统功能,如同步,数据表决,故障和错误检测,隔离和恢复。系统容错能力通过数据表决由检测和屏蔽有错误数据来实现的,系统完整性由一个动态重新配置结构来保证的,该结构能从系统中排除有故障节点并再许可健康节点返回系统中。
Description
技术领域
本发明涉及计算环境,更特别地,涉及管理冗余的基于计算机的系统用于容错计算的方法。
背景技术
容错计算在一个系统存在故障和错误的情况下保证正确的计算结果。冗余使用是容错的主要方法。有许多不同的方式管理在硬件,软件,信息和时间上的冗余。由于各种各样的算法和实现手段,大多数现有系统使用冗余管理的使用权设计,这些设计一般与应用软件和应用硬件混杂在一起。应用与冗余管理的混杂产生一个更为复杂的系统,它显著降低了灵活性。
发明内容
因而本发明的目的是提供用于管理冗余的基于计算机的系统,它不与应用参杂在一起,并提供在分布计算环境中的附加的灵活性。
根据第一个方面,本发明提供一种管理以计算机为基础的有多个硬件计算节点的系统中的冗余的方法,该方法包括步骤:
为每个计算节点提供对应的一个冗余管理系统(RMS);
在每个RMS之间建立通信链接;
在每个RMS中实现容错执行软件模块,用于管理故障和多个系统功能;以及
检测在一个节点中生成的数据中的故障/错误,并防止在一个节点中生成的数据中的一个被检测的故障/错误的繁殖;所述的检测及防止步骤还包括步骤:
对每个节点生成的数据进行表决以决定由一个节点产生的数据是否不同于大多数;和
当由一个特殊节点生成的数据不同于表决出的大多数时,使用表决出的数据作为输出来屏蔽故;
响应数据表决的结果确认一个有故障节点;
由全局惩罚系统惩罚被确认的有故障节点;和
当这个有故障节点的惩罚超过用户指定的故障容忍范围时,从节点的一个操作集合中排除这个被确认的有故障节点。
根据本发明的一个实施例,通过在一个分布环境中使用多个硬件计算节点和在每个单独节点上安装冗余管理系统(RMS)构造这种冗余计算系统。
RMS是通过经过在每个计算系统中的处理单元应用的算法集,数据结构,运行过程和设计而实现的方法学。RMS在许多需要高度系统可靠性的领域,如航空,关键控制系统,电讯,计算机网络等等中有宽广的应用。
RMS从应用软件物理地或逻辑地被分开。这减少了比如关键控制系统之类的系统的整体设计的复杂性。因此,系统开发者能独立于RMS而设计应用软件,并依靠RMS提供冗余管理功能。RMS和应用的集成是通过可编程的连接RMS与应用处理器的总线接口协议来完成的。
RMS包括一个交叉通道数据链接(CCDL)和一个容错执行(FTE)软件模块。CCDL提供所有计算节点的数据通信,同时FTE软件模块执行诸如同步,表决,故障和错误检测,隔离和恢复的系统功能。通过表决来检测和屏蔽错误数据实现系统容错,动态重新配置机制,即能够排除整体系统中的有故障的计算节点并再次许可健康节点返回整体系统中,保证系统完整性。
RMS能用硬件,软件或二者的结合来实现,并在一个包括冗余计算资源来处理个别元件故障的分布系统结构内工作。根据系统可靠性和容错要求,分布系统可有二个至八个计算节点。一个计算节点通常由一个RMS和一个或多个应用处理器组成。计算节点利用交叉通道数据链接互相连接形成一个冗余系统,其中各个CCDL包含在相应的RMS的部分。在一个计算节点内运行的单个应用不充分了解正在其它计算节点内运行的应用。所以,冗余管理系统(RMS)提供整体的系统同步,保持数据一致性,并形成对出现在整体系统的不同地点的故障和错误的整体系统范围内的审查。
附图说明
参考下面详细描述同时结合附图,对本发明的更完整的理解和其中的许多服务优点将是显然的,同样也变得更好理解,其中相似的标号表示同样或相似部件,其中:
图1是依照本发明的实施例的说明性冗余管理系统的方框图;
图2是依照本发明的示范性实施例的基于三个节点RMS的容错系统的方框图;
图3是依照本发明的实施例的冗余管理系统的状态转换图;
图4是依照本发明的实施例的冗余管理系统,应用交互和表决过程的方框图;
图5是依照本发明的实施例的容错执行软件模块关系的示意图;
图6是图5中的容错机执行所进行的表决和惩罚分配过程的方框图;
图7是图4中的冗余管理系统关系的示意图;
图8是适用于本发明中的某些实施例的示例式交叉通道数据链接消息结构的图表;
图9是图1中的交叉通道数据链接顶层结构的方框图;
图10是适用于图9中的结构的交叉通道数据链接发送器的方框图;
图11是适用于图9中的结构的交叉通道数据链接接收器的方框图;
具体实施方式
依照本发明的实施例,每个冗余管理系统提供下列功能:1〕交叉通道数据通信;2〕基于帧的系统同步;3〕数据表决;4〕故障和错误检测,隔离和恢复;5〕很好的降级和自我复原。
交叉通道数据通信由CCDL提供。一个典型的CCDL模块包括一个发送器和至多8个并行接收器。CCDL从它的本地计算节点取得数据并向整体系统内的所有计算节点包括自己广播这样的数据。通信数据打包成某种消息格式,使用奇偶位来检测传送错误。为了保护计算节点之间的电绝缘,所有的CCDL接收器使用电光转换。因此,没有单个CCDL接收器失败能过度耗尽电流,导致整体系统范围的普遍模式失败。
以RMS为基础的容错系统是一个以帧为基础的同步系统。该系统内的每个RMS有它自己的时钟;通过同所有计算节点交换它的本地时间并根据表决的时钟并调整它的本地时钟来完成系统同步。使用分布的协定算法,建立一个没有任何类型的故障包括拜占庭(Byzantine)故障所引起的失效的全局时钟。
以RMS为基础的容错系统使用数据表决作为它的故障检测,隔离和恢复的主要机制。如果一个计算节点产生的数据不同于来自所有计算节点的被表决的大多数数据,被表决的数据将被使用作为输出来屏蔽故障。有故障的计算节点将被确认并被全局惩罚系统惩罚。数据表决包括应用数据和系统状态数据二者。以RMS为基础的容错系统支持不同种类的计算系统,其中由于各种各样的硬件和软件,无故障的节点并不保证生成完全一样的数据(包括数据图象)。如果数据偏离发生在表决过程中,用户指定的容忍度决定错误的行为。
通过从定义操作集合的同步的无故障的一组计算节点中排除一个失败计算节点,以RMS为基础的容错系统支持体面的系统降级。设计惩罚系统来惩罚由任何有故障的计算节点所犯的错误行为。当一个有故障的计算节点超出它的惩罚极限时,其它的无故障的计算节点重新配置他们自己为一个新的操作集合,它排除了刚刚确认的有故障的节点。这个被排除的节点不容许参与数据表决,它的数据只用作监视目的。以RMS为基础的容错系统也有能力通过动态重新配置再次许可健康的计算节点回到操作集合中。这种自我康复性能容许以RMS为基础的容错系统以长期任务时间保护系统资源。
图1示出了依照本发明的实施例的适用于单一计算模式的冗余管理系统(RMS)的低级方框图。RMS12包括一个交叉通道数据链接(CCDL)模块24a,以及一个容错机执行软件模块13。RMS12是驻留在一个车辆任务计算机(VMC)或其它同等物内的电路卡上,并经过VME底板总线或其它适当的数据总线连接至系统中的其它卡。RMS12经过CCDL24a驻留在其它卡上的其它冗余管理系统。每个RMS包括它自己的CCDL,用于在其它各自的冗余管理系统之间建立一个通信链接。经过CCDL的一个通信链接的建立在监视整体系统中的所有卡的表现中提供灵活性,并决定哪个卡,如果有的话,没有表现到合乎预定的或用户定义的极限。有的好处是,通过在每个卡上实现RMS,并将这些卡彼此连接,系统故障能被检测,隔离并恢复,它比已知技术中其它的容错系统更具效率。
图2描述了根据本发明的实施例一个示范性的三节点RMS基容错系统结构。在该结构中,RMS与3个车辆任务计算机(VMC)相互连接形成一个冗余的、容错的系统。每个车辆任务计算机包括一个置于其中的有几个单板计算机的VME底盘。RMS12安装在第一个测量任务计算机的第一个板中,在VMC1内的这一RMS12和其它应用板之间的通信通过VME底板总线14。每个VMC(VMC1,VMC2,VMC3)从诸如外部Mil-Std-1553数据总线取得输入。3个主要应用为每个VMC(VMC1,VMC2,VMC3)而被显示,该3个主要应用就是:车辆子系统管理员16,飞行管理员18和任务管理员20。这些应用计算它们的功能,然后保存关键数据于VME全局存储器(见图7)中用于表决。
各个车辆管理计算机VMC1,VMC2和VMC3的每个RMS12,22和32经过VME总线获得数据并通过交叉通道数据链结(CCDL)24向其它计算节点广播这本地数据。接收数据的3个拷贝后,每个RMS12,22,32将表决并将表决的数据回写至VME全局存储器以备应用使用。
系统容错
以RMS为基础的容错系统中的每个计算节点被定义为一个用于故障检测,隔离和恢复的故障牵制区。传统上,故障牵制区通常有一个被普通的硬件/软件元件限制的边界。故障牵制区的关键属性是它的防止故障和故障繁殖到另一个故障牵制区的能力。发生在同一故障牵制区的多个故障从整体系统层面来说被视为单一故障,因为其它故障牵制区能通过表决过程检测并校正这些故障。
一个能容忍的同时故障的数量取决于该系统中无故障计算节点的数量。对于非拜占庭故障,N=2f+1,其中N是无故障节点的数量,f是故障数量。如果要求一个系统为拜占庭式安全,N=3fB+1,其中fB是拜占庭故障的数量。
以RMS为基础的容错系统能容忍有不同时间长度的故障,如瞬间故障,间歇故障和永久故障。瞬间故障有很短的持续时间并随机出现和消失。间歇故障以某种频率间断性地出现和消失。如果不采取矫正行动,永久故障不确定地保持存在。在传统的容错系统设计中,故障元件的严格修剪(pruning)能缩短故障潜伏时间,并因此增强系统的完整性。而且,瞬间故障元件的立即排除可能降低系统资源太快,并因此危害任务成功。为了平衡这2种冲突要求,根据应用需要,以RMS为基础的容错系统容许用户编程他的惩罚系统。不同的数据和系统错误能赋予不同的惩罚。对某种故障的高惩罚加权将导致当这样的故障发生时的故障计算节点的迅速排除。对其它故障的低惩罚加权将容许一个有故障计算节点呆在系统中一个预定时间,以便它能通过表决修正故障。
根据本发明的以RMS为基础的容错系统系统,当惩罚超出用户定义的排除极限时,在3节点配置中的故障牵制排除有故障计算节点。不过,当一个计算节点的良好行为信用达到再许可进入的极限时,该节点被再许可进入操作集合中。在应用或计算节点数据中的冲突通过中值选择表决来解决。
2个节点的以RMS为基础的容错系统不能检测或排除有故障计算节点。因此,表决不能用于解决冲突。应用必须决定哪另个应用有故障并采取相应的行动。
RMS实现
如前所述,每个RMS包括容错执行(FTE)和交叉通道数据链结(CCDL)。在一个实施例中,FTE由图5所示的5个软件模块组成。这些软件模块包括:同步器80;表决器58;容错机84;任务通信器46以及内核52。这些软件模块的功能在下面加以描述。
系统同步
同步器80建立和保持整体系统内的计算节点同步。它要求在任何时间,每个独立的RMS必须在5个运行状态之一。图3示出了一个独立的RMS和它的5个运行状态的状态转移图。
POWER_OFF(PF)是当RMS是非运行的和因为任何理由相关计算机的电源是关闭时的运行状态。当RMS启动时,RMS无条件地转移到START_UP运行状态。
START_UP(SU)是在计算机已经开启之后,和当所有的系统参数正在初始化,RMS计时机制正在初始化以及诸如CCDL的节点间通信链接正在建立时的运行状态。当启动过程完成时,RMS无条件转移到COLD_START运行状态。
COLD_START(CS)是这样的运行状态,在该运行状态,RMS不能确认一个存在的操作集合并因此正在试图建立诸如一个操作集合。如上所述,该操作集合是参加在正常的系统运行和表决的一组计算节点。
WARM_START(WS)是这样的运行状态,在该运行状态,RMS确认包括至少两个计算节点和确实包括本地计算节点的操作集合。当操作集合有少过两个计算节点时,RMS从WARM_START运行状态转移至COLD_START运行状态。
STEADY_STATE(SS)是当以RMS为基础的容错系统的本地计算节点同步于操作集合内的其他计算节点时的运行状态。一个处于STEADY_STATE运行状态的计算节点能在或不在操作集合中。
在操作集合中并以STEADY_STATE运行状态运行的每个计算节点正在执行它的正常操作及表决。不在操作集合中的计算节点被排除表决之外,但它的数据受包括在操作集合内的计算节点监视,以决定它是否有资格再允许进入该操作集合。
在冷启动运行状态,使用交互式集中算法来同步单个计算节点时钟到集中的时钟组之中,该集中的时钟组成为操作集合的公用时钟。根据本发明,要求整体系统内的所有计算节点对在操作集合中的成员资格有一致的看法。操作集合内的所有计算节点在同一时刻也都需要切换到Steady_State(稳定)运行状态。
在Steady_State(稳定状态)状态,每个计算节点通过“系统状态”消息向所有其他的计算节点广播它的本地时间。为了保持系统同步,整体系统内的每个计算节点动态调整它的本地时钟为全局时钟。由于以RMS为基础的容错系统是一个帧同步系统,它有一个定义最大可容许同步时间偏差称为软错误窗口的预定时间窗口。每个无故障RMS应该在软错误窗口限定的时间间隔接收其它系统状态消息。由于以RMS为基础的容错系统用于分布环境,使用单个软错误窗口在判定参与的计算节点中的同步错误时可引起天生的不确定性。见P.Thambidurai,A.M.Kieckhafer和C.J.Walter在IEEE第19次容错计算国际研讨会发表的“在MAFT中的时钟同步”一文,整个内容在这里作为参考。
为了解决这样的潜在不确定性,使用另一个已知为硬错误窗口的时间窗口。例如,如果节点“A”在与节点“A”相关的硬错误窗口之外接收节点“B”的时钟,节点“A”报告节点“B”的同步错误。然而,如果节点“B”发现它自己的时钟(接收它自己的系统状态消息之后)在硬错误窗口中,节点“B”报告节点“A”有一个有关同步的错误的错误报告。互相责备的节点的不确定性需要通过其它节点对与节点“B”相关的时钟的看法来解决。如果节点“A”是正确的,其它节点应该观察到与节点“B”相关的时钟消息已经至少达到它们的软错误窗口之外。由于其它节点的错误报告存在,于是整体系统能够确认节点“B”为有故障节点。否则,节点“A”为有故障节点,因为它偏离错误报告中的大多数观点。
在热启动运行状态的阶段,由于故障和错误,一个节点可以被排除在操作集合之外。被排除的计算节点能经过重置并试图与热启动模式的操作集合再同步。一旦该计算节点检测到它与操作集合的全局时钟同步,它能切换到稳定状态运行状态。一旦计算节点运行于稳定状态运行状态,被排除的计算节点可被监视以备将来再许可进入操作集合。
在诸如车辆任务计算机(VMC)、计算节点中的时间同步利用以RMS为基础的容错系统生成的本地监视器的中断信号。举例来说,图2所示的车辆子系统管理器16使用帧边界和中间帧信号来安排任务。
贯穿诸如图2所示的三个车辆任务计算机(VMC1,VMC2,VMC3)的多个计算节点的时间同步保证资源一致。在一个实施例中,CCDL时间标记RMS系统接收的数据消息超过8M字节数据链。FTE从计算节点、诸如车辆任务计算机(VMC1,VMC2,VMC3)获取RMS系统数据并表决这些接收的消息的时间,调整本地计算节点时间为表决值。然后FTE生成在已同步的帧边界上的中断信号。
系统表决
在以RMS为基础的容错系统中,表决是用于故障检测,隔离和恢复的主要技术。FTE中的表决器软件模块对系统状态,错误报告和应用数据进行表决。这些系统状态的表决建立有关整体系统运行的一致观点,如操作集合中的成员资格和同步模式。对错误报告的表决对哪个计算节点有错误行为和对这些错误应该进行什么惩罚形成一致意见。对应用数据的表决提供正确数据输出以供应用使用。一个示范式数据表决序列在图4中示出。
数据表决序列是一个由次要(minor)帧边界驱动的循环操作。一个次要帧边界是在整体的以RMS为基础的容错系统中最频繁调用的任务的区间。如图4所示,4个节点的以RMS为基础的容错系统生成在次要帧中的应用数据40,并保存该数据于未加工数据共享的存储器,它已知为应用数据表。在次要帧边界44,在FTE内的任务通信器软件模块46使用数据ID序列表48内的指针来从应用数据表42中读取数据。数据ID序列表48为一个数据表决程序,它决定哪个数据将需要在每个次要帧中被表决,并且它也包含表决必须的其它相关信息。读取数据之后,任务通信器软件模块46将该数据打包成某种格式并发送该数据至CCDL24。CCDL向其它节点广播它的本地数据,同时也接收来自其它节点的数据。当数据转移完成,内核软件模块52从CCDL24获得数据并保存该数据于数据备份表56中,其中数据的4个备份现在准备用作表决。表决器软件模块58对4个备份的数据(即是,从其他冗余管理系统来的三个备份,以及从本地冗余管理系统来的一个备份)执行表决和反常检查。中间值选择算法用作整数型和实型数的表决,大多数表决算法用作二进制和离散型数据表决。数据类型和它的相关误差容忍度也由数据ID序列表48提供,数据ID序列表48被表决器软件模块48使用来挑选合适的表决算法。被表决的数据60保存在已表决数据表62中。在适当的时间,任务通信器软件模块46从已表决数据表62中读取数据并将它回写至应用数据表(或已表决数据共享存储器)66中作为表决输出。再者,数据ID序列表48提供输出数据的地址。如果该整体系统只有2个剩下的运行节点并且表决器软件模块检测到存在数据不一致,那么对于每个被表决的数据元件,可以由表决器软件模块58在数据冲突表64中设置数据冲突标。数据冲突表64位于一个共享存储器空间中,这样应用软件能访问该表,以决定被表决的数据是否有效。
表1
数据表决选项
数据类型 | 描述 | 表决算法 | 估计表决时间 |
带符号的整型 | 32位整数 | 中间值选择 | 6.0秒 |
浮点 | IEEE单精度浮点 | 中间值选择 | 5.3秒 |
不带符号的整型 | 被表决为一个字的32位字(可能在表决状态字时有用) | 中间值选择 | 6.0秒 |
32位表决器 | 32位已打包的布尔字,被表决为32位独立布尔值 | 大多数表决 | 12秒 |
表1是数据表决选项的一个示范性表,其中指定的数据类型是ANSI“C”语言的IEEE标准数据类型。
容错机
通过为每个节点定义“故障牵制区”的范围,本地故障牵制区只通过与其它故障牵制区(节点)的信息交换能表明它的错误。见J.Zhou的“设计捕获系统可靠性“,由复杂系统工程综合和评估组出版,NSWC,silver spring,MD,1992年7月,107-119页,这里引作参考。通过表决和其它错误检测机制,容错执行84(图5)将错误总结为15种类型,如表2所示。利用16位错误矢量来记日志和报告检测出的错误。该错误矢量被打包在一个错误信息中,并向其它节点广播,用于在每一个次要帧的一致化和恢复动作。
表2
错误矢量表
错误标识 | 错误描述 | 由谁检测 | 惩罚加权 |
E1 | (保留) | ||
E2 | 消息被接收,带有一个非有效的消息类型,节点标识或数据标识 | CCDL | 1或TBD |
E3 | 水平或垂直奇偶错误,不正确的消息长度或消息限制超出 | CCDL | 1或TBD |
E4 | 太多错误报告或系统状态消息被接收 | CCDL | 2或TBD |
E5 | 一个非SS消息在硬错误窗口内被接收 | KRL | 4或TBD |
E6 | 从一个节点接收到不只一个同样的数据 | KRL | 2或TBD |
E7 | 丢失SS消息,或PRESYNC/SYNC消息不是以正确次序达到 | SYN | 2或TBD |
E8 | 一个SS消息没有在硬错误窗口(HEW)内达到 | SYN | 4或TBD |
E9 | 一个SS消息没有在软错误窗口(SEW)内达到 | SYN | 2或TBD |
E10 | 接收到一个SS消息,带有不同于本地节点的一个小型和/或主要帧数目 | SYN | 4或TBD |
E11 | 节点的CSS和/或NSS不与被表决的CSS和/或NSS一致 | VTR | 4或TBD |
E12 | 从该次要帧中的节点没有接收到一个错误消息 | VTR | 2或TBD |
E13 | 丢失数据消息 | VTR | 2或TBD |
E14 | 由一个节点生成的数据值与被表决的值不一致 | VTR | 2或TBD |
E15 | 包括在来自一个节点的错误消息中的消息与被表决值不一致 | VTR | 3或TBD |
E16 | 一个主要帧中的一个节点累计的错误数量已超过当前限制 | FLT | 4或TBD |
图例:
CSS:当前系统状态表示在当前次要帧中的OPS中的节点
NSS:下一个系统状态表示在下一个次要帧中的OPS中的节点
OPS:操作集合,它定义为处于稳定状态模式中的无故障系统节点的集合
TBD:将被决定
CCDL:交叉通道数据链接
KRL:内核
SYN:同步器
VTR:表决器
FLT:容错机
参照图6,容错执行软件模块84评定为错误源的一个节点的惩罚104。在每一个次要帧,所有已检测(已报告)的错误用惩罚加权表102来施加惩罚,惩罚总和保存在“递增的惩罚计数”中。本地递增的惩罚计数被评定(步骤104)并经过CCDL向其它节点广播(步骤106)。容错执行软件模块对递增的惩罚计数表决(步骤108),表决结果保存在“基惩罚计数”(步骤110)中。递增的惩罚计数捕获特别的次要帧的错误,基惩罚计数捕获整个任务时间的累积错误。在计算/保存基惩罚计数(步骤110)之后,递增的惩罚计数被清空(步骤112),基惩罚计数经过CCDL向其它节点广播(步骤114)。为了确保系统重新配置的所有无故障节点之间的动作一致,每一个次要帧也表决基惩罚计数(步骤116)并且容错执行软件模块84使用已表决的基惩罚计数来决定是否需要一个惩罚赋予和表决。一旦对基惩罚计数的表决(步骤116)完成,容错执行软件模块84决定是否已经达到一个主要帧边界(步骤118)。如果是的话,该重新配置被决定(步骤120)。如果没有达到主要帧边界,处理返回至错误报告110,并从头继续。
系统重新配置包括有故障节点的排除和健康节点再许可进入。如果有故障节点的基惩罚计数超出一个预定极限,整体的以RMS为基础的容错执行系统开始系统重新配置。在重新配置过程中,系统重组操作集合,排除有故障节点。一旦一个节点失去在操作集合中的成员资格,它的时间和系统状态将不再在边界过程中使用。被排除的节点需要进行一个重置处理。如果重置处理成功,该节点能试图再与操作集合同步,如果同步成功的话,它能切换到稳定状态模式。一个被排除的节点能在稳定状态模式中运行,但仍然在操作集合之外。现在该节点从操作集合中的节点接收所有的系统消息和应用数据。
操作集合中的所有成员也接收来自被排除的节点的消息并监视它的行为。根据节点的行为,被排除的节点的基惩罚计数可以增加和减少。如果被排除的节点保持无故障运行,它的基惩罚计数将逐渐减少至一个预定的极限,并在下一个主要帧边界,系统进行另一次重新配置以重新许可该节点进入。
RMS和应用接口
当前以RMS为基础的容错系统实现使用VME总线和共享存储器作为冗余管理系统(RMS)和应用接口。然而,只有一种可能的实现方法,也能利用其它的通信协议来实现该接口。任务通信器软件模块46(图4)的主要功能是从指定的通信介质中取得数据并将数据打包成某种格式供RMS使用。当一个表决循环完成时,任务通信器软件模块46取得该已表决数据并将该数据返送回应用。
RMS内核
图5示出了依照本发明的实施例的容错执行的关系的示意图。如图所示,内核软件模块52提供对每个RMS的所有监督运行。内核软件模块52管理RMS的启动,调用适当的功能来初始化目标处理器以及所有初始数据的调用。在启动过程中,通过调用系统配置数据和适当的运行参数,内核软件模块52配置CCDL模块。通过监视其它RMS模块的状态和在正确时间采取适当动作,内核软件模块52管理本地RMS运行节点之间的转换(如冷启动,热启动,稳定状态)。内核软件模块52使用一个确定性的行程算法,使得一个自含的时间基地控制所有的“动作”。
在该时间基地循环的一个给定“记号”处,该记号的预定动作经常被执行。内核软件模块52基于时间记号调整容错执行功能。RMS动作,如错误检测,隔离和恢复,在RMS次要帧中的适当时间由内核软件模块52安排。如果RMS节点有故障,内核软件模块52有责任在适当时间重启该节点。在RMS子系统之间和在RMS和应用计算机之间的所有数据的转移由内核软件模块52管理和安排。内核软件模块52指导其它模块准备各种各样的RMS消息并将这些消息调入CCDL,供在内核软件模块52需要时传送。只要CCDL接收到消息,内核软件模块52析取那些消息并将它们分派到正确模块来处理。内核软件模块52循环运行,连续执行每个安排好的动作并监视RMS状态。
容错执行为4个或更多节点提供拜占庭式故障恢复。在来源一致的条件下,给3个节点提供拜占庭式安全。容错执行表决应用数据,删除/恢复容错执行的应用,并同步整体的系统范围应用模块和其他容错执行至小于100秒时间偏差。
在一个示范性实施例中,容错执行用大约4.08毫秒(利用率40%)来表决一百五十(150)个字并执行操作系统功能。容错执行存储器为0.4M个字节的闪存(利用率5%)和0.6M字节的静态随机存取存储器(SRAM)(利用率5%)。提供这些值作为示范用途。本领域的技术人员将理解改变这些值不偏离本发明的范围。
RMS运行环境
图7示出了运行环境中的以RMS为基础的容错系统和车辆任务计算机之间的以RMS为基础的容错系统关系或交换结构。在每个车辆任务计算机内转移的信息包括在RMS帧边界交付的RMS系统数据。此RMS系统数据包括信息,例如次要帧数目,表决过的当前/下一个系统状态表示谁正在运行在运行集之中和之外,系统冲突标用于2个节点配置。2个节点配置中使用数据冲突表来表示一个在同等数据元基础上的不可解决的数据冲突。已表决的输出是为从一个操作集合成员中表决而提交的每个数据元的表决值。以RMS为基础的容错系统将RMS系统数据,数据冲突表和表决过的输出转移至全局共享存储器,它是在与RMS正在运行其中的本地车辆任务计算机的通信中。
未经加工的输出是提交给以RMS为基础的容错系统的数据,用于在稳定状态模式中被所有节点表决。应用错误计数是该系统的一个可选功能,并被转移至RMS,用来使一个应用能在决定操作集合时影响由以RMS为基础的容错系统评估的错误惩罚。
帧边界信息包括一个发出RMS帧开始的信号的中断。这种信号帧同步飞行管理员(FM),车辆系统管理员(VSM)和任务管理员(MM)应用软件模块。中间帧信息是另一种中断,它从帧开始提供一个5毫秒的信号。应用数据准备就绪信息包括一个以RMS为基础的容错系统产生的中断,向应用发出信号,即已表决的数据正在等待并能被存取和处理。系统重置是一个在重置时应用能够使用的可选控制。
交叉通道数据链接(CCDL)
交叉通道数据链接(CCDL)模块提供在节点间的数据通讯。该数据捆绑成有在图8中示出的消息结构的消息。如图所示,该消息结构包括一个头部,和根据被发送和接收的消息类型的不同的消息类型。消息类型O是一个数据消息的结构;类型1是一个系统状态消息的结构;类型2是一个冷启动消息的结构;类型4是一个错误报告和惩罚计数消息的结构。
每个CCDL有一个发送器和至多8个接收器。CCDL顶层结构,发送器和接收器图表分别在图9-11中描述。图9示出了一个顶层CCDL结构,它有一个发送器70,4个接收器72a-72d,和2个使用DY4 MaaxPac中间层协议的接口74a和74b。一个接口74b有助于在基VME和CCDL存储器之间的数据交换,其它接口74a处理控制冲突和错误报告。当数据需要被传送时,CCDL接口74b从基卡中取得数据并将它保存到8位发送器存储器76中。当数据被接收,4个接收器72a-d处理并一个节点一个地分别保存接收到的数据于4个接收器存储器78a-d中。然后FTE在CCDL的控制下获取数据。因为CCDL是在节点之间建立物理连接的唯一元件,为了保证系统的故障牵制区,它必须加强电绝缘。当前的CCDL使用电光转换来将电信号转换为光信号。每个接收器72a-72d有对应的提供必要的绝缘功能的光隔离73a-73d。这使得每个节点有它自己的电源供应,并且它们都彼此电绝缘。
图10示出了一个已知本发明的实施例的发送器70结构的更详细的视图。当由容错执行发出一个“执行”命令,发送器控制逻辑80从它的8字节存储器76中读取数据,将该数据形成一个32位格式,并将一个水平字加到该数据的尾部。转换寄存器电路82将该数据转换成一个串行字节串,垂直奇偶位插入到该串中用于传送。
图11解释串行字节串是如何从一个发送模式接收并保存在相应的存储器中的。位中心逻辑90使用6个系统时钟(如,48MHZ)循环来可靠地记录在一个数据位中。当数据串的第一个位被接收,时间标记逻辑92记录该时间用于同步目的。转换器电路94剥离垂直奇偶位并转换串行数据为8位格式。如果垂直位显示传送错误,将报告一个错误。控制逻辑96还根据附着在该数据上的节点数信息从该数据中剥离水平奇偶位并将它保存到接收器存储器中(如78a)。
为了加强通信可靠性,水平和垂直奇偶位附着在数据消息上。消息格式由CCDL检验,只有有效消息被发送至内核软件模块作进一步处理。
应该理解,本发明不限定于这里公开的特殊实施例,它希望作为实现本发明的最好模式,但本发明不限于本说明书中描述的特定的实施例,而由附加的权力要求书所限制。
Claims (3)
1.一种管理以计算机为基础的有多个硬件计算节点的系统中的冗余的方法,包括步骤:
(a)为每个计算节点提供对应的一个冗余管理系统(RMS);
(b)在每个RMS之间建立通信链接;
(c)在每个RMS中实现容错执行(FTE)软件模块,用于管理故障和多个系统功能;以及
(d)检测在一个节点中生成的数据中的故障/错误,并防止在一个节点中生成的数据中的一个被检测的故障/错误的繁殖;所述的检测和防止步骤还包括步骤:
(i)对每个节点生成的数据进行表决以决定由一个节点产生的数据是否不同于大多数;
(ii)当由一个特殊节点生成的数据不同于表决出的大多数时,使用表决出的数据作为输出来屏蔽故障;
(iii)响应数据表决的结果确认一个有故障节点;
(iv)由全局惩罚系统惩罚被确认的有故障节点;和
(v)当这个有故障节点的惩罚超过用户指定的故障容忍范围时,从节点的一个操作集合中排除这个被确认的有故障节点。
2.如权利要求1的方法,进一步包含以下步骤:
(e)监视在被排除节点上的数据以决定这个被排除的节点是否有资格再许可进入一个运行集合;和
(f)当监视表明该节点的表现在预定限度的可接受范围时,再许可一个原先被确认的有故障节点进入节点的运行集合。
3.如权利要求2的方法,其中预定限度由系统操作员定义。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US8773398P | 1998-06-02 | 1998-06-02 | |
US60/087,733 | 1998-06-02 | ||
US09/140,174 | 1998-08-25 | ||
US09/140,174 US6178522B1 (en) | 1998-06-02 | 1998-08-25 | Method and apparatus for managing redundant computer-based systems for fault tolerant computing |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1311877A CN1311877A (zh) | 2001-09-05 |
CN1192309C true CN1192309C (zh) | 2005-03-09 |
Family
ID=26777328
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB998092908A Expired - Fee Related CN1192309C (zh) | 1998-06-02 | 1999-06-02 | 管理冗余的基于计算机的系统用于容错计算的方法和设备 |
Country Status (8)
Country | Link |
---|---|
US (1) | US6178522B1 (zh) |
EP (1) | EP1082661A4 (zh) |
JP (1) | JP2002517819A (zh) |
CN (1) | CN1192309C (zh) |
AU (1) | AU4673499A (zh) |
CA (1) | CA2334009A1 (zh) |
TW (1) | TW486637B (zh) |
WO (1) | WO1999063440A1 (zh) |
Families Citing this family (45)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19921179C2 (de) * | 1999-05-07 | 2002-04-25 | Astrium Gmbh | Logikeinheit nach byzantinem Algorithmus, Rechnereinheit mit solcher Logikeinheit, Verbund aus Logik- oder Rechnereinheiten und Verfahren zum Betreiben eines solchen Verbunds |
US6671821B1 (en) * | 1999-11-22 | 2003-12-30 | Massachusetts Institute Of Technology | Byzantine fault tolerance |
US8423674B2 (en) * | 2001-06-02 | 2013-04-16 | Ericsson Ab | Method and apparatus for process sync restart |
US6813527B2 (en) | 2002-11-20 | 2004-11-02 | Honeywell International Inc. | High integrity control system architecture using digital computing platforms with rapid recovery |
GB2395639A (en) * | 2002-11-21 | 2004-05-26 | Matsushita Electric Ind Co Ltd | System operable in either architecture reconfiguration mode or processing mode depending on the contents of a frame header |
US7136793B2 (en) * | 2003-01-14 | 2006-11-14 | Lockheed Martin Corporation | System and method for modeling a propagation and containment process |
JP2006529072A (ja) * | 2003-05-20 | 2006-12-28 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 二重チャネルネットワークの同期化に関する時間トリガ型通信システムおよび方法 |
CN1879068A (zh) * | 2003-11-17 | 2006-12-13 | 西门子公司 | 控制工艺设备的冗余自动化系统及运行该自动化系统的方法 |
US7350113B2 (en) * | 2004-05-11 | 2008-03-25 | International Business Machines Corporation | Control method, system, and program product employing an embedded mechanism for testing a system's fault-handling capability |
US7499865B2 (en) * | 2004-12-17 | 2009-03-03 | International Business Machines Corporation | Identification of discrepancies in actual and expected inventories in computing environment having multiple provisioning orchestration server pool boundaries |
US20060136490A1 (en) * | 2004-12-17 | 2006-06-22 | International Business Machines Corporation | Autonomic creation of shared workflow components in a provisioning management system using multi-level resource pools |
US7953703B2 (en) * | 2005-02-17 | 2011-05-31 | International Business Machines Corporation | Creation of highly available pseudo-clone standby servers for rapid failover provisioning |
US20070220367A1 (en) * | 2006-02-06 | 2007-09-20 | Honeywell International Inc. | Fault tolerant computing system |
US20070186126A1 (en) * | 2006-02-06 | 2007-08-09 | Honeywell International Inc. | Fault tolerance in a distributed processing network |
US8510596B1 (en) | 2006-02-09 | 2013-08-13 | Virsec Systems, Inc. | System and methods for run time detection and correction of memory corruption |
US20070260939A1 (en) * | 2006-04-21 | 2007-11-08 | Honeywell International Inc. | Error filtering in fault tolerant computing systems |
US8977252B1 (en) * | 2006-07-06 | 2015-03-10 | Gryphonet Ltd. | System and method for automatic detection and recovery of malfunction in mobile devices |
US7685464B2 (en) * | 2006-11-20 | 2010-03-23 | Honeywell International Inc. | Alternating fault tolerant reconfigurable computing architecture |
US7898937B2 (en) * | 2006-12-06 | 2011-03-01 | Cisco Technology, Inc. | Voting to establish a new network master device after a network failover |
US8455450B2 (en) * | 2006-12-21 | 2013-06-04 | Biokine Therapeutics Ltd. | Methods for obtaining a therapeutically effective amount of hematopoietic precursor cells and long term engraftment thereof |
US8036805B2 (en) * | 2007-07-13 | 2011-10-11 | Honeywell International Inc. | Distributed engine control system |
US20090106781A1 (en) * | 2007-10-23 | 2009-04-23 | Reed Benjamin C | Remote call handling methods and systems |
US8255732B2 (en) * | 2008-05-28 | 2012-08-28 | The United States Of America, As Represented By The Administrator Of The National Aeronautics And Space Administration | Self-stabilizing byzantine-fault-tolerant clock synchronization system and method |
US8656392B2 (en) * | 2009-06-10 | 2014-02-18 | The Boeing Company | Consensus based distributed task execution |
JP5560113B2 (ja) * | 2010-06-25 | 2014-07-23 | 株式会社日立製作所 | 計算機システム及び計算機の管理方法 |
CN102193835B (zh) * | 2011-03-25 | 2013-01-30 | 上海磁浮交通发展有限公司 | 基于3取2计算机系统的预执行方法 |
EP2691820B1 (en) * | 2011-03-30 | 2020-08-05 | Vestas Wind Systems A/S | Wind power plant with highly reliable real-time power control |
CN102411520B (zh) * | 2011-09-21 | 2013-09-25 | 电子科技大学 | 一种基于数据单元的地震数据的灾难恢复方法 |
CN102622323B (zh) * | 2012-03-27 | 2014-11-19 | 首都师范大学 | 动态可重构串行总线中基于开关矩阵的数据传输管理方法 |
WO2014173558A1 (en) | 2013-04-24 | 2014-10-30 | Fresenius Kabi Deutschland Gmbh | Method of operating a control device for controlling an infusion device |
US20160149779A1 (en) * | 2013-05-27 | 2016-05-26 | Rangaprasad Sampath | System state message in software defined networking |
US9448548B2 (en) * | 2013-06-14 | 2016-09-20 | Honeywell International Inc. | Synchronizing and displaying fault tolerant Ethernet (FTE) status |
WO2015033410A1 (ja) * | 2013-09-04 | 2015-03-12 | 株式会社東芝 | 情報処理システム、サーバ装置、情報処理方法及びプログラム |
AU2014318585B2 (en) | 2013-09-12 | 2018-01-04 | Virsec Systems, Inc. | Automated runtime detection of malware |
WO2015140942A1 (ja) | 2014-03-18 | 2015-09-24 | 株式会社東芝 | 情報処理システム、サーバ装置、情報処理方法およびプログラム |
AU2015279920B2 (en) * | 2014-06-24 | 2018-03-29 | Virsec Systems, Inc. | Automated root cause analysis of single or N-TIERED applications |
AU2015279923B9 (en) | 2014-06-24 | 2018-01-25 | Virsec Systems, Inc. | System and methods for automated detection of input and output validation and resource management vulnerability |
WO2016020986A1 (ja) * | 2014-08-05 | 2016-02-11 | 株式会社東芝 | 整列装置、データ処理装置、プログラム、整列方法および多重化システム |
CN104635745B (zh) * | 2015-03-02 | 2017-03-22 | 中国航空无线电电子研究所 | 一种飞行管理系统双机同步的方法 |
US10025344B2 (en) | 2015-04-21 | 2018-07-17 | The United States Of America As Represented By The Administrator Of Nasa | Self-stabilizing distributed symmetric-fault tolerant synchronization protocol |
US11409870B2 (en) | 2016-06-16 | 2022-08-09 | Virsec Systems, Inc. | Systems and methods for remediating memory corruption in a computer application |
CN107145407B (zh) * | 2017-05-16 | 2020-10-27 | 中林云信(上海)网络技术有限公司 | 一种对数据进行本地备份的方法 |
CN112506035A (zh) * | 2020-11-03 | 2021-03-16 | 中国航空工业集团公司西安航空计算技术研究所 | 一种作动器控制计算机的同步系统 |
CN113900979B (zh) * | 2021-09-08 | 2024-03-19 | 中国航空工业集团公司西安航空计算技术研究所 | 一种双功能区共单ccdl传输体系 |
CN114280919B (zh) * | 2022-03-08 | 2022-05-31 | 浙江中控技术股份有限公司 | 冗余控制装置 |
Family Cites Families (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4228496A (en) | 1976-09-07 | 1980-10-14 | Tandem Computers Incorporated | Multiprocessor system |
US4503535A (en) | 1982-06-30 | 1985-03-05 | Intel Corporation | Apparatus for recovery from failures in a multiprocessing system |
JPS5985153A (ja) | 1982-11-08 | 1984-05-17 | Hitachi Ltd | 冗長化制御装置 |
US4634110A (en) | 1983-07-28 | 1987-01-06 | Harris Corporation | Fault detection and redundancy management system |
US4575842A (en) | 1984-05-14 | 1986-03-11 | The United States Of America As Represented By The Secretary Of The Air Force | Survivable local area network |
US4847837A (en) | 1986-11-07 | 1989-07-11 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration | Local area network with fault-checking, priorities and redundant backup |
US4914657A (en) * | 1987-04-15 | 1990-04-03 | Allied-Signal Inc. | Operations controller for a fault tolerant multiple node processing system |
US4933838A (en) | 1987-06-03 | 1990-06-12 | The Boeing Company | Segmentable parallel bus for multiprocessor computer systems |
US4907232A (en) | 1988-04-28 | 1990-03-06 | The Charles Stark Draper Laboratory, Inc. | Fault-tolerant parallel processing system |
US5068499A (en) | 1989-04-14 | 1991-11-26 | Alps Electric Co., Ltd. | Control lever type input device |
US5261085A (en) | 1989-06-23 | 1993-11-09 | Digital Equipment Corporation | Fault-tolerant system and method for implementing a distributed state machine |
US5173689A (en) | 1990-06-25 | 1992-12-22 | Nec Corporation | Self-distributed logical channel node failure restoring system |
US5684807A (en) | 1991-04-02 | 1997-11-04 | Carnegie Mellon University | Adaptive distributed system and method for fault tolerance |
US5325518A (en) | 1991-04-02 | 1994-06-28 | Carnegie Mellon University | Adaptive distributed system and method for fault tolerance |
US5280607A (en) | 1991-06-28 | 1994-01-18 | International Business Machines Corporation | Method and apparatus for tolerating faults in mesh architectures |
US5349654A (en) | 1992-02-20 | 1994-09-20 | The Boeing Company | Fault tolerant data exchange unit |
US5271014A (en) | 1992-05-04 | 1993-12-14 | International Business Machines Corporation | Method and apparatus for a fault-tolerant mesh with spare nodes |
US5533188A (en) * | 1992-10-19 | 1996-07-02 | The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration | Fault-tolerant processing system |
US5513313A (en) | 1993-01-19 | 1996-04-30 | International Business Machines Corporation | Method for generating hierarchical fault-tolerant mesh architectures |
US5473771A (en) | 1993-09-01 | 1995-12-05 | At&T Corp. | Fault-tolerant processing system architecture |
US5450578A (en) | 1993-12-23 | 1995-09-12 | Unisys Corporation | Method and apparatus for automatically routing around faults within an interconnect system |
US5561759A (en) | 1993-12-27 | 1996-10-01 | Sybase, Inc. | Fault tolerant computer parallel data processing ring architecture and work rebalancing method under node failure conditions |
FR2721122B1 (fr) | 1994-06-14 | 1996-07-12 | Commissariat Energie Atomique | Unité de calcul à pluralité de calculateurs redondants. |
US5463615A (en) | 1994-07-07 | 1995-10-31 | At&T Corp. | Node failure restoration tool |
JP3447404B2 (ja) | 1994-12-08 | 2003-09-16 | 日本電気株式会社 | マルチプロセッサシステム |
US5736933A (en) | 1996-03-04 | 1998-04-07 | Motorola, Inc. | Method and apparatus for providing redundancy in a communication network |
US5790397A (en) | 1996-09-17 | 1998-08-04 | Marathon Technologies Corporation | Fault resilient/fault tolerant computing |
-
1998
- 1998-08-25 US US09/140,174 patent/US6178522B1/en not_active Expired - Lifetime
-
1999
- 1999-06-02 CA CA002334009A patent/CA2334009A1/en not_active Abandoned
- 1999-06-02 WO PCT/US1999/012000 patent/WO1999063440A1/en active Application Filing
- 1999-06-02 AU AU46734/99A patent/AU4673499A/en not_active Abandoned
- 1999-06-02 EP EP99930130A patent/EP1082661A4/en not_active Withdrawn
- 1999-06-02 JP JP2000552586A patent/JP2002517819A/ja not_active Withdrawn
- 1999-06-02 CN CNB998092908A patent/CN1192309C/zh not_active Expired - Fee Related
- 1999-10-01 TW TW088109143A patent/TW486637B/zh not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
WO1999063440A1 (en) | 1999-12-09 |
EP1082661A4 (en) | 2005-11-09 |
EP1082661A1 (en) | 2001-03-14 |
JP2002517819A (ja) | 2002-06-18 |
US6178522B1 (en) | 2001-01-23 |
AU4673499A (en) | 1999-12-20 |
TW486637B (en) | 2002-05-11 |
CN1311877A (zh) | 2001-09-05 |
CA2334009A1 (en) | 1999-12-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1192309C (zh) | 管理冗余的基于计算机的系统用于容错计算的方法和设备 | |
US4805107A (en) | Task scheduler for a fault tolerant multiple node processing system | |
CN104731670B (zh) | 一种面向卫星的轮换式星载计算机容错系统 | |
US7668923B2 (en) | Master-slave adapter | |
Katsuki et al. | Pluribus—An operational fault-tolerant multiprocessor | |
RU2455681C1 (ru) | Отказоустойчивая вычислительная система с аппаратно-программной реализацией функций отказоустойчивости и динамической реконфигурации | |
JP2004062535A (ja) | マルチプロセッサシステムの障害処理方法、マルチプロセッサシステム及びノード | |
CN102521066A (zh) | 星载计算机空间环境事件容错方法 | |
US8015432B1 (en) | Method and apparatus for providing computer failover to a virtualized environment | |
RU2439674C1 (ru) | Способ формирования отказоустойчивой вычислительной системы и отказоустойчивая вычислительная система | |
Alves et al. | RAS Design for the IBM eServer z900 | |
CN101119242B (zh) | 通讯系统集群方法、装置及应用其的集群服务系统 | |
LALA | Advanced information processing system | |
Bondavalli et al. | State restoration in a COTS-based N-modular architecture | |
Rowe et al. | Software methods for achieving fail-soft behavior in the distributed computing system | |
JP2004527829A (ja) | フォールト・トレラント計算機配列およびその作動方法 | |
WALTER | MAFT-An architecture for reliable fly-by-wire flight control | |
Proenza et al. | Using FTT and stars to simplify node replication in CAN-based systems | |
Yost | Cost effective fault tolerance for network routing | |
CN114416436A (zh) | 基于SoC芯片面向单粒子翻转效应的可靠性方法 | |
Riki et al. | Recovery in fault-tolerant distributed microcontrollers | |
Kim | Design of real-time fault-tolerant computing stations | |
Soi et al. | Computer-communication network reliability: Trends and issues | |
Siewiorek et al. | C. vmp: the analysis, architecture and implementation of a fault tolerant multiprocessor | |
Bennetts | Designing reliable computer systems—the fault-tolerant approach-2 |
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 | ||
C19 | Lapse of patent right due to non-payment of the annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |