JPH06504389A - フォルトトレラント・コンピュータ装置 - Google Patents

フォルトトレラント・コンピュータ装置

Info

Publication number
JPH06504389A
JPH06504389A JP3514515A JP51451591A JPH06504389A JP H06504389 A JPH06504389 A JP H06504389A JP 3514515 A JP3514515 A JP 3514515A JP 51451591 A JP51451591 A JP 51451591A JP H06504389 A JPH06504389 A JP H06504389A
Authority
JP
Japan
Prior art keywords
engine
state
message
computer device
event
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
JP3514515A
Other languages
English (en)
Other versions
JP3156083B2 (ja
Inventor
メイジャー,ルウー
パウエル,カイル
ネイバー,デイル
Original Assignee
ノーヴェル・インコーポレーテッド
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 ノーヴェル・インコーポレーテッド filed Critical ノーヴェル・インコーポレーテッド
Publication of JPH06504389A publication Critical patent/JPH06504389A/ja
Application granted granted Critical
Publication of JP3156083B2 publication Critical patent/JP3156083B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

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/1675Temporal synchronisation or re-synchronisation of redundant processing components
    • G06F11/1687Temporal synchronisation or re-synchronisation of redundant processing components at event level, e.g. by interrupt or result of polling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1479Generic software techniques for error detection or fault masking
    • G06F11/1482Generic software techniques for error detection or fault masking by means of middleware or OS functionality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • G06F11/2071Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring using a plurality of controllers
    • G06F11/2076Synchronous techniques
    • 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/1658Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit
    • 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/2048Error 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 where the redundant components share neither address space nor persistent storage

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)
  • Debugging And Monitoring (AREA)
  • Ceramic Products (AREA)
  • Manufacture Of Alloys Or Alloy Compounds (AREA)
  • Compositions Of Oxide Ceramics (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるため要約のデータは記録されません。

Description

【発明の詳細な説明】 本発明は、多数のプロセッサを利用するオペレーティングシステム・ソフトウェ アをペースとするフォルトトレラント・コンピュータ装置に関するものである。
2、背景技術 ]ンピュータ装置の応用においては、部品が故障した場合にも、コンピュータ装 置の連続運転を行うことが望ましいことがしばしばある。たとえば、パーソナル 書コンピュータ(PC’ s)または7−クステーシロンはデータ、アプリケ− シーン、ファイル、処理バフ−1通信、およびプリンタ、モデム、大容量記憶装 置等のようなその他の資源を共用できるようにするためζこコンピュータaネッ トワークをしばしば用いる。一般に、資源の共用はネットワーク・サーバの使用 により行われる。サーバというのは、集中化されている資源を管理し、データを 管理し、それらの資源を顧客のPC’ sまたはワークステーションで共用する ことに専用される処理装置のことである。サーバ、ネットワークおよびPC’  sまたはワークステーションは一緒に組合わされてコンピュータ装置を構成する 。ネットワークeサーバに障害が存在するならば、ネットワーク上のPC’ s およびワークステージロンは希望の集中化されている資源の障害とシステム障害 をもはやアクセスできない。
構成装置が障害を引き起こしている間もコンピュータ装置の運転を維持するため に、冗長システムまたはバックアップ・システムを必要とする。従来技術の1つ のパフクアップOシステムは完全なハードウェア冗長性を含む。コンピュータ装 置の運転中に2つの同一のプロセッサへ同じハードウェア信号レベルの同じ入力 が同時に供給される。典型的には、1つのプロセッサが主プロセツサとみなされ 、別のプロセッサが第2のプロセッサとみなされる。主プロセツサが障害を起こ すと、システムは第2のプロセッサへ切り換える。そのようなハードウェア冗長 システムがラベエル(Lowell) 、米国特許第3,444,528号に記 載されている。ラベエル(Lovell)においては、2つの同一のフンピユー タ装置が同じ人力を受け、同じ動作を行う。しかし、障害がなければただ1つの コンピュータが出力を供給する。その場合には第2のコンピュータは出力をWI 4御する。動作時には、主フンピユータに誤動作が起きるまではバックアップフ ンピユータの出力回路は動作不能にさせられる。その時に、バックアップコンビ エータは動作可能にさせられる。
同一のプロセッサまたは同一のハードウェアの使用にはいくつかの潜在的な欠点 がある。1つの欠点はプロセッサをある信号レベルに同期させる事が複雑で、コ ストがかかることである。
バックアップ・システムを用意する別の従来の方法は「チェックポイント」シス テムと呼ばれているものである。チェックポイント−システムはr*a状態オー トマトン」として知られている原理を利用する。この原理は、2つの装置が同じ 状態にあるとすると、それらの装置への同一の入力により各HMが同一の出力を 生じ、かつ各装置が同じ同一の状態へ進む結果となる事を主張している。
チェックポイント・システムにおいては、プロセッサの状態および関連するメモ リのような装置の全体の状態は、主プロセツサの各動作の後で別のバックアップ −プロセッサへ転送される。障害発生時には、バックアップeプロセッサは主プ ロセツサの最後の有効な状態にあることが理想的である。最後の動作はバックア ップ・プロセッサへ供給され、バックアップ中プロセッサを用いてその点から動 作は続行される。あるいは、主プロセツサの各動作の後で状態情報が大容量記憶 装置へ供給される。障害発生時には、障害発生時以前には別の動作のために使用 でき、または使用できなかったバックアップ・プロセッサへ、記憶されている情 報が供給される。
従来技術の1つのチェックポイント−システムが、グレイザー(Graser)  、米国特許第4.590.554号に記載されている。グレイザー(Grus er)においては、あるタスクを実行するために主プロセツサが設番すられる。
別のタスクを実行するために第2のプロセッサが設けられる。主プロセツサの状 態が第2のプロセッサへ周期的に転送される。主プロセツサに障害が起きると、 主プロセツサおよびバックアップ・プロセッサの最後の同期以後に主プロセツサ により実行された任意のオペレージ習ンがバックアップ・プロセッサにより実行 されて、それを主プロセツサと同じ状態にする。グレイザ−(Graser)の 装置、およびその他のチェックポイント・/ステムにはいくつかの欠点がある。
1つの欠点は主装置の状態を第2の装置へ転送するために要する時間の長さとメ モリの量である。チェックポイント・システムの別の欠点は、主装置に障害が生 じた時のサービスの割込みである。第2の装置は、メツセージ列中のメツセージ の実行により「速度を向上」させねばならない。
この問題を解決するための従来技術の1つの試みは、主装置の状態のうち、以前 の状態から変更されている部分だけを更新することである。しかし、これには複 雑なメモリ技術および複雑なデータ管理技術を必要とする。
本発明の目的は、バックアップ装置の同期のために特殊なノ1−ドクエアを必要 としないバックアップ装置を得ることである。
本発明の別の目的は、非同期事象にとって明らかであるバックアップ装置を得る ことである。
本発明の別の目的は、ネットワーク・サーバ拳オペレージ1ンのための改良した バックアップ装置を得ることである。
本発明の更に別の目的は、単一のハードウェア構成装置障害でもサービスを継続 することである。
発明の概要 本発明は、主処理装置に障害が存在するものとすると、全く同一の装置が中断な しに動作を引き継ぐ事ができるように、フオルトトレラント・ノイブクアップ装 置を提供する方法および装置である。主処理装置およびバックアップ処理装置は 、高速通信チャネルにより接続される別々のコンピュータである。本発明はlイ ックアップ装置を同期させるためのソフトウェア解決を提供するものである。本 発明はネットワーク・サーバとして実現されるが、本発明の背景の原理を、別の 処理環境においても同様に使用できる。サーバは特別に構成されたオペレーティ ングシステムを用いる。本発明はこのオペレーティングシステムを2つの「エン ジン」に分割する。入力/出力(Ilo)エンジンはシステムにおける全てのデ ータおよび非同期事象の取扱いと受け取りを行う。I10エンジンは物理的装置 および装置ドライバを制御し、かつ物理的装置および装置ドライバをインターフ ェイスする。オペレーティングシステム(O5)エンジンがI10エンジンから 受けたデータを処理するために用いられる。主サーバにおいては、それらのエン ジンは主I10エンジンおよび主OSエンジンと呼ばれる。
オペレーティングシステムの状態を変更する事ができる全ての事象または全ての データは、I10エンジンを介して送られ、メツセージ・フォーマットへ変換さ れる。メツセージは、OSエンジンによりアクセスされるメツセージ待ち行列へ 供給される。したがって、事象のタイミングとは無関係に、(すなわち、非同期 事象)、OSエンジンは全ての事象を入力データの連続する順次流れを介して順 次受ける。その結果、OSエンジンは装置の残りの一次元人力「ビュー」を介す る有限状態オートマトンである。このように、OSエンジンが非同期事象を処理 させられるとしても、事象の処理は単一の順序をつけられた入力順序で制御され る。
起動させられると、または第2のプロセッサが最初に提供されると、主プロセツ サは「飢えさせられる」、すなわち、OSエンジンが安定な状態に達するまで、 全ての命令またはその他の状態変更事象が停止させられる。その点において、状 態はバックアップ装置のOSエンジンへ転送される。その点から、同一のメツセ ージ(事象)が各OSエンジンへ供給される。両方の装置は同一の状態から始ま り、同じ入力を受けるから、装置の081227部分が同一の出力を発生し、同 一の状態へ進む。
バックアップ装置はオペレーティングシステムを第2のOSエンジンと第2の1 10エンジンへ分割もする。第2のOSエンジンは第1のOSエンジンと通信す る。主装置が諸具合を起こすと、コンピュータ装置の残りの部分がほとんど中断 なしに第2の装置へ切り換えられる。これが可能である理由は、各事象がバック アップ装置と主装置によりほぼ瞬時に実行されるからである。このように、構成 gillに障害が起きている間もシステム動作が中断される事はない。更に、最 初の同期が取られた時は状態の転送はめられない、これにより装置の構成が簡単 になり、メモリの管理に対する要求が減少し、中断のないサービスを行う。
図面の簡単な説明 @lは本発明の好適な実施例のブロック図である。
図2はatのI10エンジンの詳細図である。
図3は図1のOSエンジンの詳細図である。
図4Aは要求および事象の実行中のOSエンジン動作を示す流れ図である。
図4Bは事象の実行中の第2のI10エンジン動作を示す流れ図である。
図40は要求の実行中の主I10エンジンおよび第2のI10ニンジンの動作を 示す流れ図である。
図5は本発明の状態遷移を示す図である。
図6は主装置および第2の装置の同期を示す流れ図である。
図7は本発明の別の実施例のブロック図である。
発明の詳細な説明 ネットワーク・サーバとして用いられるフオルトトレラント・システムを説明す る。以下の説明においては、本発明を完全に理解できるようにするために、数多 くの特定の詳細について述べる。しかし、それらの特定の詳細なしに本発明を実 施できることが当業者には明らかであろう。他の場合には、本発明を不必要にあ いまいにしないようにするために、周知の構成は説明しなかった。
本発明のブロック図 本発明の好適な実施例のブロック図が図1に示されている。本発明は、破線21 の内部の要素により全体的に示されている主プロセツサおよびオペレーティング システムと、破822の内部に入っている要素により全体的に示されている第2 のプロセッサおよびオペレーティングシステムを提供するものである。主オペレ ーティングシステム21は、人力/出力(Ilo)エンジン12へ結合されてい るオペレーティングシステム(O5)ニンジン10を育する。I10エンジンお よびOSエンジンは「事象」待ち行列および「要求」待ち行列を介して通信する 。I10エンジンは事象を事象待ち行列へ書込み、OSエンジンは要求待ち行列 からその事象を読出す。OSエンジンは要求を要求待ち行列へ書込み、■10エ ンジンはその要求を読出す。
バックアップ22はそれ自身のOSエンジン16を含む。このOSエンジンは事 象待ち行列17および要求待ち行列42を介してI10エンジン18と通信する 。r10エンジン12は高速通信バス15Aおよび15Bを介してI10エンノ ンI8と通信する。15A#よび15Bは2WA類のメツセージ、Aと81を通 信するために用いられる1つのハードウェアeチャネルである。高速通信バスは 主サーバから第2のサーバへ事象を転送するために用いられる(15A)。それ はI10エンジンの間の別の通信のためにも用いられる(15B)。I10エン ジン12は線13を介して大容量記憶装置14をアクセスする事もできる。I1 0エンジン12は、バス64を介してI10エンジン12へ結合されているブロ ック44Aとして記号的に示されている、タイマ、キーボード、表示装置等のよ うな別の装置へも結合される。I10エンジン18は線1θを介して大容量記憶 装置20へ結合される。I10ニンジン12とI10エンジン18はネットワー ク23へおのおの接続される。I10エンジン18はバス65を介してブロック 44B(タイマ、キーボード表示装置等)へ結合される。
I10エンジン12は、それが一部を構成しているコンピュータ装置からデータ と非同期事象を受ける。たとえば、本発明がネットワーク・サーバとして用いら れるものとすると、ネットワークへ結合されている別の装置からI10エンジン 12はLANパケットを受ける。I10エンジンは、大容量記憶装置14、キー ボードまたはタイマのような、物理的装置および装置ドライバを制御し、かつそ れらとインターフェイスする。
OSエンジンは夏10エンジンから事象待ち行列11.17を介して受けたデー タを演算する。希望の動作が実行された後で、別のシステム装置へ出力するため に、データは要求待ち行列41.42を介してI10エンジンへ戻される。
主サーバ21はネットワーク23から入力!124を介してデータまたは事象を 受ける。I10エンジン12はそれらの事象またはデータを「メツセージ」フォ ーマットへ変換する。各メツセージは、オペレーティングシステムの状態を変化 できるデータまたは事象を表す。I10エンジンI2はそれらのメツセージをま ずバス15Aへ供給し、■10エンジン18がそのメツセージを受けたことを夏 10エンジン18が信号すると、そのメツセージはI10エンジン12.18に より事象メツセージ待ち行列11.17を介して両方のOSエンジンへ与えられ る。それらのメツセージはOSエンジン10,16により順次実行される。メツ セージを待ち行列化することにより、全ての非同期事象が事象メツセージの同期 列へ変換されるように、時間依存性がシステムから除去される。OSエンジンを 110エンジンから分離することにより、OSエンジンがシステムの一次元図( すなわち、事象メツセージ待ち行列)を育する有限状態オートマトンであるかの ように、OSエンジンは動作させられる。
主I10エンジン12を第2のOSエンジン18へ結合するバス15A、15B は双方向通信チャネルを利用する。物理的には、バス15Aと15Bは高速通信 を行わせ、待ち時間が短<、CPUオーバーヘッドが低い。バス拡張器およびロ ーカルエリアネブト7−り(LAN)カードを含めた、適当な任意の通信チャネ ルを本発明で使用できる。
希望によっては、I10エンジンとOSエンジンを単一のプロセッサで実現でき る。あるいは、OSエンジンに1つと、■10エンジンに1つの別々のプロセッ サを利用できる。付加プロセッサを用いて付加OSエンジンを本発明で利用する 事もできる。そうすると全てのOSエンジンの状態は反映させられる。
OSエンジンとI10エンジンのために1つのプロセッサまたは2つのプロセッ サが利用されるかとは無関係に、システムRAMメモリが2つのエンジンの間に 分割される。I10エンジンはOSエンジン・メモリをアクセスできるが、OS エンジンはI10エンジン・メモリをアクセスできない。その理由はメモリ・バ ッフ1・アドレスが主I10エンジンと第2のI10エンジンに対して興なるこ とがあり、主OSエンジンと第2のOSエンジンがI10エンジン・メモリ内の アドレスをアクセスすることを許されたとすると、それらのOSエンジンの状態 を興なるようにするからである。
主サーバとバックアップ・サーバが同一のプロセッサを持つ必要はない。プロセ ッサの性能は類似せねばならず(CPUの型、CPUの速度)、プロセッサは、 必ずしもビンおよびバスサイクル・レベルにおいてではなくて、メモリへ書込ま れた値および命令順序付はレベルにおいて、同様にして命令を実行せねばならな い。たとえば、アメリカ合衆国カリフォルニア州すンタ・クララC3anta  C1ara)所在のインチル・コーボレーシ1ン(Intel Corpora tion)により製造された80388マイクロプロセツサを主サーバに使用で き、インテル8048Bを第2のサーバに使用できる。第2のエンジンは、主O Sエンジンにより使用されているRAMの数と少なくとも同数のRAMを有する ことをめられる。また、主サーバと第2のサーバは同じ構成のディスク記憶装置 を同数持たねばならない。
ハードウェアとソフトウェアの少なくとも一方のアップグレードおよび変更を、 サービスの喪失なしにシステムに対して行うことができる。たとえば、ユーザー はより多くのRAMを主サーバと第2のサーバへ付加することを望むことである 。これを行うために、主サーバまたは第2のサーバをシステムから取り出す。
主サーバがラインから外されたとすると、第2のサーバはその発生を障害として 取扱い、主サーバとして動作を開始するから、システムの動作の崩壊すなわち中 断はない。それから、ラインから外されたサーバをアップグレードでき、オンラ インへ戻すことができる。それからそれらのサーバを再び同期させ、別のサーバ をラインから外してアップグレードする。第2のサーバのアップグレードの後で 、そのサーバはオンラインへ戻され、サーバは再び同期され、新たに付加された RAMを用いて両方共スタートする。このようにして、サービスの喪失なしにハ ードウェアおよびソフトウェアのアップグレードを行うことができる。本発明を ネットワーク・サーバに関連して説明したが、汎用コンピュータ装置へ等しく応 用される。
第2のオペレーティングシステムを初期化するために、それが安定状態に達する まで、主OSエンジン10からの全ての新しい事象が保留される。安定した時点 でOSエンジン10の状態(OSエンジン10のメモリ画像で具体化される)が メツセージバス15Bを介してバックアップ・オペレーティングシステムのOS エンジン16へ転送される。そうすると、OSエンジン10はOSエンジン16 と同一の状態を有する。この時には、[10エンジン12により発生されてOS エンジンIOへ供給された全てのメツセージが、バス15Aを介してI10エン ジン18へも供給され、OSエンジン16へ転送される。OSエンジンlOと1 6は同一の状態で開始し、同一の入力を受け、各OSエンジンは各事象またはメ ツセージの後で間−の状態へ進む。
本発明においては、同一のメツセージが主オペレーティングシステム・エンノン とバックアップ・オペレーティングシステム・エンジン内に同一の状態を生ずる から、従来技術のチェックポイント動作はめられない。時間に依存する配慮すべ き事柄は最小にされ、同期事象と非同期事象がメツセージ待ち行列へ供給される から、同時動作のためのそれぞれのOSエンジンの同期は不必要であり、メツセ ージ待ち行列は、非同期事象を同期事象へ変換するための方法として機能する。
主装置に障害が生ずると、第2のオペレーティングシステムのI10エンジン1 8がネットワーク23へ結合される。それから第2のI10エンジン18h(メ ツセージを発生するために用いられる。それらのメツセージは第2のOSエンジ ン16へ供給される。バックアップ・オペレーティングシステムは主オペレーテ ィングシステムと同じ状態にあるから、サーバを用いている顧客に対して、サー バの切り換え中に動作が行われなくなることはない。
I10エンノン10Sエンジンの分離 本発明においては、■10エンジンとOSエンジンはほぼ論理的に独立して〜す る。パブクアブブOSエンジンへ反映できない望ましくない状態変化を阻止する ために、以下に更に説明するように、I10エンジンとOSエンジンにより共用 されるデータが制御される。各エンジンはそれ自身の自立プロセス・スケジュー ラ−、コマンド・インタープリタ−、メモリ管理装置、およびO5の機能に重要 なO8の部分に関連するコードを有する。
OSエンジンとI10エンジンの間の分割は、ドライノ(支持層における〕1− ドウエア・ドライバ中レベルの上で行われる。ドライバ支持層ソフトウェアは■ 10エンジンとOSエンジンの両方において複製され、同じトップレベル・イン ターフェイスを維持する。I10エンジンとOSエンジンのためにドライノ(支 持層ソフトウェアは修正される。I10エンジンのドライバ支持層はドライノく ・レベル・インターフェイスを維持し、物理的/\−ドウエア・ドライノくへ通 信する。それはハードウェア・ドライバ・レベル事象をメツセージへ変換する。
それらのメツセージはOSエンジンの事象待ち行列へ供給される。
OSエンジンは、割り込みまたはI10ボートアドレスを割り当てるためのよう な、ハードウェア・ドライバ・インターフェイス支持ルーチンを持たなt)。ノ 為−ドウェア成分を含むオペレージロン(たとえば、書込みまたはディスクから の読出し)をOSエンジンが要求すると、OSエンジン内のドライ/<支持層゛ ソフトウェアが動作を要求へ変換し、それを実行のためにI10エンジン要求待 ち行列へ供給する。それから、その要求の結果が、110工ンジン畢ドライバ支 持層により発生された事象メツセージとしてOSエンジンへ戻される。
I10エンジン ここで図2を参照すると、I10エンジンはドライバ・レベルと、管理ソフトウ ェアのレベルと、メツセージ・レベルとの3つのレベルより成る。装置ドライ/ <26A〜28Eは、プリンタ、記憶装置(たとえば、ディスク・ドライブ)、 表示装置f、LANアダプタ、キーボード等のようなハードウェア要素をドライ ブする。管理ソフトウェア−レベルは装置ドライバのための制御器を含む。たと えば、ディスク・ブロック27はディスク装置ドライバ(たとえば、ディスク装 置ドライバ26A)を制御する。ディスク・ブロック27はディスクの読出しと 書込みとの開始を制御する。また、ディスクφブロック27はディスク・オペレ ーン−ンの状態を追跡する。主I10エンジン(すなわち、!10エンジン12 )のディスク・ブロック27はディスク・オペレージロンの状態をバックアップ ■10エンジンと通信する。主大容量記憶装置114と第2の大容置記憶装置2 0はほぼ同一の装置である。主I10エンジンがディスク14からの読出しを実 行したとすると、それは読出しが終了させられたことをI10エンジン18へ通 信する。主I10エンジンが読出しを最初に終了したとすると、データをメツセ ージとしてバス15Bを介して第2のI10エンジンI8へ送ることができる。
あるいは、I10エンジン18はデータをそれ自身のディスク・ドライブ20か ら続出す。
LANブロック28は、ローカル・エリア・ネットワークへのような外部通信を 制御する。しかし本発明はローカル−エリア・ネットワークに限定されるもので はなく、本発明は任意の種類の通信を利用できる。LANIIal器は情報パケ ットをネット7−りから受け、そのパケットをOSエンジンへ供給するかどうか を決定する。
表示ブロック29は、装置ドライバ26Cを介するCRTスクリーンのような表 示装置への通信を制御する。タイマ・ブロック30はシステム時間クロックをド ライブし、キーボード・ブロック31はキーボードとのインターフェイスおよび 通信を行う。
メツセージ・ブロック47は/ステム事象をメツセージへ変換し、OSエンジン の事象待ち行列へ供給し、OSエンジンからの要求を待ち行列から外す。メツセ ージはヘブダ・フィールドとデータ・フィールドで構成される。ヘブダ・フィー ルドはメツセージまたはオペレージ1ンの型を示す。データ・フィールドはオペ レーンぎンを実行すべきデータを含む。メツセージ台レベルは事象メツセージを 事象バス15Aを介してI10エンジンと通信する。
OSエンジン 図3を参照すると、OSエンジンは、■10エンジンから受けた事象メツセージ を待ち行列から順次外し、要求を待ち行列に入れてOSエンジン要求をI10エ ンジンの要求ブロック47へ供給する。OSエンジンは、K10エンジンの管理 ソフトウェアに対応する管理ソフトウェアも含む。たとえば、OSエンジンはデ ィスク管理ソフトウェア33と、LAN管理ソフトウェア34と、タイマー管理 ソフトウェアと、キーボード・ソフトウェア37とを含む。OSエンジンのトッ プレベル48は本発明を用いるコンピュータ装置のオペレーティングシステムで ある。
ディスク管理ソフトウェア33は冗長ディスク14.20へのデータの鏡映され たコピーを制御する。ディスク読出しオペレージ胃ンのようなディスク・オペレ ーシ−ンを実行するものとすると、両方のI10エンジン12,18が読出しオ ペレーン璽ンを実行するか、I10エンジン12が読出しを実行してデータを第 2のI10エンジン18へ転送するのかをディスク管理ソフトウェア33が決定 する。タイマ管理ソフトウェア36はタイマ事象を制御する。一般に、オペレー ティングシステムは周期的に中断されるタイマを育する。このタイマ中断は時間 に独立なオペレージロンのためにしばしば用いられる。本発明においては、タイ マ中断自体は人力待ち行列における事象である。タイマ中断をメツセージへ転換 することにより、タイマ事象は絶対的の代わりに相対的になる。タイマ事象は非 同期事象から同期事象へ変更される。LANブロック34と、表示ブロック35 と、キーボード・ブロック37とはそれぞれネットワーク事象、表示事象、キー ボード事象を制御する。
オペレージ瞠ン OSエンジンが事象メツセージを受けると、OSエンノンの状態にいくつかの変 更を行わせることができ、それらの変更を行わせるためにある有限の時間がかか る。本発明においては、メツセージがOSエンジンによりひとたび受けられると 、メツセージの関数として実行できる全てのオペレーシーンをOSエンジンは実 行する。それらのオペレーシーンが全て実行されると、OSエンジンはメツセー ジ待ち行列を検査して実行のために別のメツセージを利用できるかどうかを判定 する。利用できる別のメツセージがなければ、メツセージを利用できるようにな るまでOSエンジンは動作しな(なる。主OSエンジンと第2のOSエンジンが 同期されたままであるようにこのオペレージ1ン方法がめられる。!10エンジ ンが非同期であるから、新しいメツセージを主OSエンジンと第2のOSエンジ ンへ興なる時刻に与えることができる。したがって、OSエンジンの状態を変更 するために、新しい事象の存在または非存在に対して働きかける事または利用す る事はできない。
本発明の好適な実施例においては、O8環境は非先使用であると定義される。
先使用は本質的に非同期事象である。従来技術においては、タスクの実行をタイ マ中断により中断して、別のタスクで置き換えることができる。このシステムは 1度に1つのメツセージを実行するから、メツセージ待ち行列中のそのメツセー ジに達するまで、タイマ中断または非先使用の要求はoSエンジンに影響を及ぼ さない。タイマ事象を受ける事ができ、かつOSエンジンにより実行できる前に 、OSエンジンで実行しているタスクは制御を放棄せねばならない。
エンジン間通信 本発明においては、OSエンジンとI10エンジンの間の通信が制御される。
OSエンジンに対する単−人力源を保存することにより、時間に依存する事象と 、I10エンジンにより行われる変更とがOSエンジンの状態に影響することを 阻止するために本発明は構成される。
I10エンジンとOSエンジンの間の通信は下記のように特徴づけられる。
1、OSエンジンはそれ自身のOSエンジンのメモリをアクセスできるだけであ る。OSエンジンとI10エンジンの間の全ての通信はOSエンジンのメモリ内 で起こさねばならない。OSエンジンはI10エンジン自メモリと名づけられて いるメモリをアクセスできない。メモリのコヒーレンシイが保存される。本発明 においては主OSエンジンと第2のOSエンジンが鏡像関係にされるが、主■1 0エンジンと第2のI10エンジンはそうではない。したがって、各110エン ジンで構成されているメモリは興ならせることができる。OSエンジンが■10 メモリをアクセスしない限りは、安定な同期が維持される。
2、メモリのブロックをI10エンジンにより修正する事をOSエンジンが要求 すると、修正が行われたことをOSエンジンへ知らせる事象をI10エンジンが 送り返すまで、OSエンジンはそのメモリ・ブロックをアクセスできないことが ある。主OSエンジンと第2のOSエンジンは完全に同期して動作するわけでは ない。それらのOSエンジンの動作のいくらかのスキューおよび分岐が存在する ことがある(もりとも状態は常に集中する)、また、主I10エンジンおよび第 2のOSエンジンは糟々の時にOSエンジン・メモリを修正できる。それから、 i10エンジンにより変更されているプロセス中にあるメモリ場所の現在の値に 関連するOSエンジンにより判定が行われ、種々の修正時刻に起因するスキュー のデータをそのメモリ場所が含んでいるものとすると、2つのI10エンジンの 間の同期化は失われることになる。
実際の動作においては、I10エンジンからのデータのコピーをOSエンジンが めたとすると、それはデータを保持するために作業バッファを割り当て、その作 !バッフTのアドレスをI10エンジンへ供給する。I10エンジンはめられた データを作業バフファヘコビーし、データが置かれたことを裏付ける事象をOS エンジンに対して発生する。OSエンジンは作業バッフTからのデータをその最 終的な宛先ヘコビーし、作業バッフ1を解放する。
3、OSエンジンによりOSエンジン・メモリ場所の明らかな制御が行われてい なければ、■10エンジンはOSエンジン・メモリと名づけられているメモリを 変更できない。I10エンジンがOSエンジン・メそりの制御をOSエンジンへ 転送して戻すと、(II象を介して)■10エンジンはそのメモリをアクセスで きない。
4、OSエンジン書ソフトウェアは、ポール会ループ中にプロセッサの制御を放 棄することなしに、メモリ値における変化に対してrボール」できない。その理 由は、この実現においてOSエンジンを先使用ドライブまたは割り込みドライブ できないからである。全ての変更は事象を介して行われ、実行中のプロセスによ りプロセッサが放棄されるまで新しい事象は受けられない。
主サーバに障害が起きると、第2のサーバが主サーバになる。OSエンジンのア ドレスは変更しないが、「ネットワーク」から受けられたメツセージは、メツセ ージを第2のサーバへ向けるために再び経路指定される。
ディスク・ミラーリング 本発明の動作のために主記憶装置14と第2の記憶装置20は鏡映関係になけれ ばならない、新しい第2のエンジンがラインへつながれると、ディスク装置は第 2のエンジンにおけるドライブを主エンジンにおける対応するドライブへマツプ する。2つのエンジンにおけるドライブには、どのドライブがより現在であるか 、または2つのドライブが既に完全に同期させられている事かを示すために使用 できる「現在の同期化レベル」カランタでマークされる。その同期化レベルが変 化した(すなわち、別のサーバに障害が生じた)とすると、生き残ってtするサ ーバにより現在の同期化レベルが高くされる。生き残うているサーバは、ディス クへ書込まれたメモリeブロックのトラッキングを開始する。障害を起こしたエ ンジンがラインへ復帰すると、それが以前の媒体と同じ媒体であることを確認し た後で、サービスから外されている間に変更されたメモリ・ブロックだけを介し て転送することにより、修理したエンジンを再び同期させることができる。シス テムが最初に起動させられ、元の主エンジンがラインへつながれると、それはど のディスク・ブロックが同じ理由で変更させられたかを追跡する。
主I10エンジンと第2の[70エンジンの通信主システムの夏10エンジンは 、主OSエンジンと第2のOSエンジンへ供給される事象の順序を決定する。あ る事象に、主OSエンジンーメそりにおいて修正された任意のデータを加え合わ せたものが、主OSエンジンへそれの事象待ち行列内の事象が与えられる前に第 2のOSエンジンへ通信される。この通信はバス15Aを介して行われる。第2 のシステムのI10エンジンは第2のOSエンジン・メモリを修正して、事象を 第2のOSエンジンへ供給する。
事象を通信する事に加えて、主I10エンジンと第2のr10エンジンは別の情 報を通信する。種々のドライバ層支持ルーチンが、別のシステム内の片割れと通 信できるようにする機構が設けられる。この通信は双方向であり、バス15Bを 介して行われる。そのような通信は、ディスク・ハードウェアの障害のためにシ ステムの一方にデータが記憶されているだけである時に、ディスク110要求の 終了と、ディスクI10データの通信とを例として含む。
OSエンジンの間の通信のために用いられる2つの手順がある。ある事象をOS エンジンへ与えるためにI10エンジンによりrAddF5EventJが用い られ、I10エンノンに対する要求を通信するためにOSエンジンにより rM akelORequestJが呼び出される。^ddFsEventは主I10 エンジンにより呼び出すことができるだけである。行われている要求または事象 を識別するために、両方の呼び出しは要求の型または事象の型を用いる。また、 両方の呼び出しは、機能に特有のやりかたで定められたパラメータを送る。たと えば、それはOSエンジン・メモリ内のデータ構造へのポインタとすることがで きる。
主システムI10エンジンがOSエンジン内のデータ構造を修正すると、事象を OSエンジンへ与える事ができる前に第2のOSエンジンにおいて同じ修正を同 様に行う必要がある。OSエンジン内のデータ構造に対するポインタをAddF SEven tへ与える事ができ、それは事象とともに第2のサーバへ転送され て、OSエンジン・データ修正を第2のシステムへ転送する。
第2のシステムにおいては、要求の型ごとに1つずつのハンドラ手順が!10エ ンジンに存在する。それらのハンドラ手順は、事象が主サーバから受けられたと きに呼び出される。ハンドラ手順は元のパラメータと、修正する必要があるOS エンジン内の区域に対するポインタで呼び出される。
第2のI10エンジン事象ハンドラ手順は、事象を受けるか、放すかの選択を持 つ。事象がOSエンジンからの要求に応答し、かつ第2のシステムが要求をまだ 得ていなければ、放棄が用いられる。その事象が放棄されなかったとすると、潜 在的にメモリをOSエンジンにおいて想起に変更できる。通常は、第2のI10 エンジン内の事象ハンドラーが、それらがトラッキングして、事象を受ける事を 信号する顕著な要求を除去する。データがコピーされた後で、事象が第2のOS エンジンへ与えられる。インプリメンテーン1ンにより必要があれば、第2のシ ステムの事象ハンドラーはOSエンジン壷メモリに対する別の変更を行うことが できる。
ある事象をEOSエンジンへ与える前に、第2のシステムがその事象を受けるま で主I10エンジンが待つ事が重要である。さもないと、主OSエンジンは事象 を処理でき、元の事象が転送される前に第2のシステムへ応答を供給する(事象 を主システムにおける待ち行列で遅延させて、第2のシステムへ送られる事を待 つ)、第2のシステムへまだ転送されていない事象の関数である要求を主システ ムが発生したとすると、主システムが外部の障害を起こしたならば、顧客からみ たそれの状態は第2のシステムへ同期されない。
オペレージ1ンおよび遷移のサーバ状部I10エンジン・ソフトウェアは、どの サーバも活動状態でない、第2の状態でない主システム、第2の状態にある主シ ステム、および第2のシステム状態、の4つの状態で実行する。また、■10エ ンジンは、サーバ非活動から第2の状態でない主システムへ、第2の状態でない 主システムから第2の状態にある主システムへ、第2のシステムから主システム への状態遷移を行う。第2のシステムの同期化中に起きるい(つかの付加状態が ある。
本発明のシステムの状態が図5に示されている。気が付くように、I10エンジ ンは4つの状!Is 1.32.S3、S4の内の1つの状態で動作する。状f iS1、無サーバ・エンジン、は、■10エンジンが動作しているが、オペレー ジジンが動作していない時に生ずる。状態2、第2の状態でない主システムは、 I10エンジンとOSエンジンがロードされるが、システムが鏡映されていない 時に起きる。システムが鏡映されると、それは主OSエンジンになり、■10エ ンジンは主I10エンジンとして動作する。
状fi3は第2の状態にある主システムと呼ばれる。この状態におり1ては、I 10エンジンは鏡映されている主システムで動作する。状fi4、主の状態にあ る第2のシステムは、■10エンジンが鏡映されている第2のシステムで動作す る時に起きる。
I10エンジンが経験できる可能な状態遷移は5つある。それらは線Tl−T5 により示されている。第1の遷移T1は状1151から状!!lS2へである。
この遷移はOSエンシフが起動させられた後で起きる。
第2の遷移T2は状!152から状11S3へで、主システムが第2のシステム へ同期させられた時に主システム内で起きる。遷移T3は状aStから状態S4 へで、OSエンジンが主システムへ同期させられた時に第2のシステム内で起き る遷移T4は状態S4から状fiS2へで、主システムに障害がある時に起きる 。
遷移T5は状11s3から状uS2へで、第2のシステムに障害がある時に起き る第2のサーバ要求のトラッキングおよび実行第2のシステムT10エンジンは それ自体のOSエンジンから要求を受けるが、通常はそれらは実行しない。その 代わりに、それは要求を待ち行列に入れ、主I10システムが要求に応答するま で待ち、それから応答(主I10システムにより発生された事象)のコピーを得 て、要求のそれ自身のコピーを待ち行列に入れ、応答「事象」がそれ自身のOS エンジンへ与えられる事を許す。
い(つかの理由から、第2のT10エンジンはOSエンジンからの要求を待ち行 列に入れねばならない。まず初めに、OSエンジンはそれの要求のおのおの1つ からある種の応答「事象」を通常期待する。主システムに障害が生ずると、第2 のシステム(今は主システム)が要求を完了して、適切な応答事象を発生する。
別の理由は、第2のシステムがその応答事象を受けることを認めることができる 前にその第2のシステムが要求を受けるまで第2のシステムは待たなければなら ないからである(主システムが第2のシステムより大きく進んでいるならば起き る事ができるケースである)。さもないと第2のシステムは、受ける事をまだ準 備していないそれのOSエンジンへデータを転送するからで、第2のシステムが 要求を待ち行列に入れたとすると、それは応答事象を受け、そうでなければ、「 放し」て再び試みる事を主システムへ知らせる。
両方のサーバにより実行されることが必要となり、そうすると主システムにより 調整される実際の終了「事象」を有するOSエンジンにより与えられる要求があ る。これの1つの例がディスク書き込みである。第2のシステムはそれが要求に より行われる時に主システムへ知らせねばならない。すなわち、主システムは、 書込みを終了し、第2のシステムが終了「事象」を発生する前に第2のシステム から終了確認を受けるまで、待たねばならない。
事象および要求の実行を示す流れ図が図4A〜4cに示されている。まず、IS エンジンの動作が示されているrI!J4Aを参照する。
OSエンジンが要求を発生する時のそのOSエンジンの動作がステップ51と5 2に示されている。事象を受ける時のosエンジンの動作がステップ53と54 に示されている。ステップ51においては、I10動作を行う必要があることを OSエンジンの管理層が決定する。ステップ52においては、osエンジンは1 10エンジンに対する要求を発生し、待機モードに入って、T10エンジンから の応答事象を待つ。
ステップ53においては、osエンジンの事象待ち行列内のT10エンジンから ある事象が受けられる。その事象は、ディスク・ブロック、LANブロック、キ ーボード−ブロック等のような適切な管理層ブロックへ与えられる。ステップ5 4においては、管理層は最初のI10事象を元の要求に一致させることにより、 その事象を終了す1゜ 事象処理中のI/”Oエンジンの動作を示す流れ図が図4Bに示されている。ス テップ55〜58は主I10エンジンを示し、ステップ59〜63は第2のに1 0エンジンを示す、スナップ55においては、osエンジンのための事象が存在 することを主I10エンジンの管理層が決定する。ステップ5Bにおいては、こ の事象はメツセージ゛へ組み込まれて第2のT10エンジンへ送られる。それか ら、第2のT10エンジンがメツセージを主osエンジンへ供給する前に肯定応 答するまで、主l10−工ンジンは待つ0判定ブロック57においては、事象が 第2のOSエンジンによ”り受けられたかどうかについての判定が行われる。事 象がまだ受けられて(1ない・七すると、肯定応答が行われるまで主I10エン ジンは待つ。第2のT10エンジンが事象を受けたとすると、ステップ58にお いて、T10エンジンは事象を主OSエンジン事象待ち行列内に置(。
ステップ59において、第2のT10エンジンは主110エンジンがらの事象を 待つ。判定ブロック60においては、第2のT10エンジンが受けられた事象に 対してレディであるかどうかを判定する。第2のT10エンジンがレディでない とすると、ステップ61において、それは受けないメツセージを主110エンノ ンへ送り、ステップ59へ戻って別の事象を待つ。第2のT10エンジンが事象 を受ける用意ができており、判定ブロック60における条件が満たされたとすれ ば、ステップ62において、第2のT10エンジンはその事象の肯定応答を主I 10エンジンへ送る。それから、ステップ63において、第2のT10エンジン は事象を第2のOSエンジン事事象待行列に置く。
図4Cは、OSエンジンにより処理要求が発生された時の!10エンジンの処理 状態を示す。ステップ70〜74はそれらの動作中の主I10エンジンの状態を 示し、ステップ75〜81はそれらの動作中の第2のT10エンジンの状態を示 す。ステップ70においては、T10エンジンのメツセージレベルは要求待ち行 列において利用できる要求があることを決定する。ステップ71においては、要 求はT10エンジンにより実行される。この要求はディスク書込みオペレーノー ンとすることができ、LAN等へパケットを送る。判定ブロック72においては 、第2のT10エンジンによる要求の実行がめられているかどうかが判定される 。別の実行がめられていないとすると、主I10エンジンはステップ74へ進む 。第2の実行がめられるとすると、主I10エンジンは判定ブロック73へ進む 。第2のプロセッサが終了させられたとすると、主110エンジンはステップ7 4Aへ進む。第2のステップが終了させられないとすると、第2のステップが終 了させられるまで主I10エンジンは待つ。判定ブロック74Aにおいては、要 求が終了事象を発生するかどうかにっての判定が行われる。回答が肯定であれば 、主I10エンジンはステップ74Bへ進んで終了事象を発生する。
終了事象がめられないとすると、主I10エンジンはステップ74Cへ進んで行 われる。
ステップ75においては、OSエンジンから利用できる要求があることを第2の メツセージレベルが決定する。判定ブロック76においては、要求を実行するた めに第2のプロセッサがめられるかどうかについての判定が行われる。第2の1 10エンジンが要求を実行するものとすると、第2のT10エンジンはステップ 77へ進み、その要求を実行する。要求の実行の後で、第2のT10エンジンは 終了を主110エンジンへ知らせる。第2のT10エンジンが要求を実行しない ものとすると、第2のT10エンジンは判定ブロック78へ進み、要求が終了事 象を発生するかどうかを判定する。要求による終了事象が発生されないとすると 、第2のT10エンジンはステップ8oへ進み、それが実行される。要求がある 事象を発生するものとすると、ステップ81において第2のT10エンジンは主 I10エンジンから対応する事象を待つ。
サーバ同期化シーケンス 第2のシステムと主システムの同期化中は、osエンジンの全「状態」、および OSエンジンの状態に関連する主I10エンジンの状態を第2のシステムへ通信 せねばならない。主システムと第2のシステムの同期化を開始するために、主O Sエンジン・システムが析しい事象が「飢えJさせられる。すなわち、新しい事 象が主システムの事象待ち行列へ供給されない。主システムのメツセージ待ち行 列が空にされたあとで、主システムOSエンジンはループして、新しい事象を待 つ、、OSエンジンが新しい事象を待っている時は、それは再び安定状態にあり 、新しい事象に遭遇するまでそのままになっている。そうするとosエンジンの 全状部がOSエンジンのメモリ画像内に含まれる。それからそのメモリ画像は第 2のシステムへ単に転送される。最後に、両方のosエンジンへ新しい事象の同 じセットが与えられ、互いにミラーリングを開始する。
本発明の同期化シーケンスを示す流れ図が図6に示されている。ステップ85〜 89は主サーバの状態および遷移を表す。ステップ90〜83は第2のサーバの 状fiおよび遷移を表す。主サーバは最初は状1152にあり、ステップ85、 第2のサーバは最初へ状LItS1(T10エンジンのみ)にある、ステップ9 0゜110エンジンは同期化シーケンシングを調整する。同期化するためのコマ ンドがサーバへ与えられると、主110エンジンの管理ソフトウェアが同期化の 用意をする、ステップ86゜これにより、攬々のドライバ支持層がosエンジン と通信する事が許され、同期化を阻止するどのようなタスクも終了させる。主シ ステムはOSエンジンの「飢え」を開始させ、osエンジンから要求を取ること を同様に停止させる。
次に、T10エンジンにより実行されているどのような未解決の要求も終了させ られる(および適切な終了事象がOSエンジン・メモリ1iifflへ転送され るが、隠されて、この時にはOSエンジンへ与えられない)。ステップ87およ び91においては、I10エンジンは状態情報を交換する。!10エンジンが相 互の状態に気がつき、第2のI10エンジンがOSエンジンからの任意の未解決 な状態に気がつくようになるように、主I10エンジンがそれの状態情報を第2 のi10エンジンへ供給する。このステップは第2のI10エンジン・シーケン スのステップ91により表される。
ステップ88においては、主I10エンジンがOSエンジン・メモリ画像を第2 のサーバへ転送する。これは、第2の!10エンジンがOSエンジン・メモリ画 像を主サーバから受ける第2のサーバeシーケンスのステップ92に対応するス テップ89においては、同期化は終了し、主システムは状態S3(第2のを有す る主)にある。同様に、第2のサーバの対応するステップ93において、同期化 プロセスが終了し、第2のサーバは状fiS4にある。
同期化シーケンス中にサーバまたは通信に障害起きることがある。主システムに 障害が起きたり、サーバ間通信リンクに障害が起きたとすると、第2のシステム は同様に停止せねばならない。第2のシステムに障害が生ずるか、通信リンクに 障害が生じたとすると、主システムを回復してrPri膳aryNosecon daryJ S 2状態へ戻らねばならない。それらの状態は同期化シーケンス 中の異なる時刻に知らせられねばならない。変化が起きた後で、隠されていて待 ち行列に入れられた事象がOSエンジンへ戻され、■10エンジンがOSエンジ ンからの要求の処理を再び開始する。同期化中に障害が発生したとすると、I1 0エンジン管理ソフトウェアは、同期させるために行われたどのような変更も元 へ戻し、非鯛映された状態へ戻す必要がある。
主サーバ障害による遷移 第2のシステムに障害が存在すると、待ち行列に組み入れられて第2のシステム へ送られる全てのメツセージは捨てられる。そのメツセージがOSエンジン事象 であるならば、それらのメツセージはOSエンジンへ単に供給される。I10エ ンジンのドライバ支持層は、第2のシステムからの未決の通知を待ってbまたど のような要求も終了する。
多数のOSエンジンおよび余分なプロセッサ以上、単一のOSエンジンをおのお の育する主サーバおよび第2のサーバに関連して本発明を説明した。本発明の別 の実施例が図7に示されている。この実施例では主サーバと第2のサーバの少な (とも一方が1つまたは複数のOSエンジンを有することができる。図7を参照 すると、主サーバは3つのプロセッサで構成される。プロセッサ1は主サーバの I10エンジンを実現する。第1のOSエンジンと第2のOSエンジンがそれぞ れプロセッサ2と3により実現される。
同様に、第2のサーバはI10エンジンを実現する第1のプロセッサと、第1の OSエンジンと第2のOSエンジンを実現する第3のプロセッサとを有する。
動作時には、各OSエンジンが同じ事象で動作するように、多数の事象待ち行列 が各OSエンジンのために維持される。このようにして、1つのサーバに障害が 生じたときに別のサーバが動作を開始できるように、各OSエンジンの状態をほ ぼ同一に維持できる。
以上、フォルトトレラント・コンピュータ装置について説明した。
O5工ンシ′ン FIGURE 4A I10エンジン FIGURE 4B 主ツーーノく゛ 日GURE4C−I L10エシジン 特表千6−504389 (IQ) 日GURE 5 7’(7セアグ同朗イ也シ一ケンス FIGLIME ! FIGLiRE 7 手続補正書(方式) 平成6年1月13日

Claims (16)

    【特許請求の範囲】
  1. 1.フォルトトレラント・コンピュータ装置を動作させるために、第1のオペレ ーティングシステム(OS)エンジンと第1の入力/出力(I/O)エンジンを 備える第1の処理手段を供給する過程と、前記コンピュータ装置を動作させるた めに、第2のオペレーティングシステム(OS)エンジンと第2の入力/出力( I/O)エンジンを備える第2の処理手段を供給する過程と、 前記第1の処理手段の状態を決定し、その状態を前記第2の処理手段へ供給する 過程と、 前記第1のOSエンジンの前記状態を変化できるオペレーションを事象として定 める過程と、 各事象を前記第1のI/Oエンジンへ供給し、各前記事象をメッセージへ変換す る過程と、 前記メッセージを前記第1のOSエンジン内の第1のメッセージ待ち行列と前記 第2のOSエンジン内の第2のメッセージ待ち行列へ供給する過程と、前記第1 のOSエンジンの前記状態と前記第2のOSエンジンの前記状態がほぼ同一に維 持されるように前記第1のOSエンジン内の前記メッセージと前記第2のOSエ ンジンの内の前記メッセージを実行する過程と、を備えるフォルトトレラント・ コンピュータ装置を提供する方法。
  2. 2.請求項1記載の方法において、 前記第1の処理手段が動作しない時に各事象を前記第2のI/Oエンジンへ供給 する過程と、 各前記事象を前記第2のOSエンジン内のメッセージへ変換する過程と、前記第 2のOSエンジンにより実行するために、前記第2のOSエンジン内の前記第2 のメッセージ待ち行列へ前記メッセージを供給する過程と、を更に含む方法。
  3. 3.請求項1記載の方法において、前記第1の処理手段の状態を決定する前記過 程と、前記状態を前記第2の処理手段へ供給する前記過程とは、前記第1のOS エンジンが利用できる任意のメッセージを、前記第1のOSエンジンが安定な状 態を達成するまで、前記第1のOSエンジンにおいて実行する過程と、 前記第1のOSエンジンのメモリ画像を前記第1のI/Oエンジンを介して前記 第2の処理手段へ転送する過程と、 を備える方法。
  4. 4.請求項1記載の方法において、前記第1の処理手段が少なくとも1つのプロ セッサを備える方法。
  5. 5.請求項1記載の方法において、前記第2の処理手段が少なくとも1つのプロ セッサを備える方法。
  6. 6.請求項1記載の方法において、 入力/出力動作を行うための要求を前記OSエンジン内で発生する過程と、 前記第1のOSエンジンにより実行するために前記要求を前記第1のOSエンジ ン内の第1の待ち行列へ供給する過程と、を更に含む方法。
  7. 7.請求項1記載の方法において、前記事象は非同期である方法。
  8. 8.第1のオペレーティングシステム(OS)エンジンと第1の入力/出力(I /O)エンジンを備え、フォルトトレラント・コンピュータ装置を動作させるた めの第1の処理手段と、 第2のオペレーティングシステム(OS)エンジンと第2の入力/出力(I/O )エンジンを備え、前記コンピュータ装置を動作させるための第2の処理手段と 、 前記第1のOSエンジンと前記第2のOSエンジンはほぼ同一の状態をおのおの 有し、 前記第1のI/Oエンジンは第1のパスを介して前記第2のOSエンジンへ結合 され、 前記第1のOSエンジンは、前記第1のOSエンジンの前記状態を変更できるオ ペレーションをメッセージへ交換し、前記第1のOSエンジンは前記メッセージ を前記第1のOSエンジン内の第1のメッセージ待ち行列と、へ供給し、前記第 2のOSエンジン内の第2のメッセージ待ち行列へ供給し、 前記第1のOSエンジンの前記状態と前記第2のOSエンジンの前記状態がほぼ 同一のままであるように、前記第1のOSエンジンと前記第2のOSエンジンは 前記メッセージを実行する、フォルトトレラント・コンピュータ装置。
  9. 9.請求項8記載のコンピュータ装置において、前記第1の処理手段は少なくと も1つのプロセッサを備えるコンピュータ装置。
  10. 10.請求項8記載のコンピュータ装置において、前記第2の処理手段は少なく とも1つのプロセッサを備えるコンピュータ装置。
  11. 11.請求項8記載のコンピュータ装置において、前記第1の処理手段へ結合さ れ、前記第1のOSエンジンの前記状態に対応するメモリ画像を記憶する第1の 記憶手段を更に含むコンピュータ装置。
  12. 12.請求項8記載のコンピュータ装置において、前記第2の処理手段へ結合さ れ、前記第2のOSエンジンの前記状態に対応するメモリ画像を記憶する第2の 記憶手段を更に含むコンピュータ装置。
  13. 13.請求項8記載のコンピュータ装置において、前記第1のOSエンジンは前 記コンピュータ装置の命令の実行を制御するコンピュータ装置。
  14. 14.請求項8記載のコンピュータ装置において、前記I/Oエンジンは入力装 置および出力装置との通信を制御するコンピュータ装置。
  15. 15.請求項13記載のコンピュータ装置において、前記第1のOSエンジンは 前記コンピュータ装置の命令の実行できない時に、前記第2のOSエンジンは前 記命令の実行を制御するコンピュータ装置。
  16. 16.請求項8記載のコンピュータ装置において、前記メッセージは同期事象と 非同期事象を備えるコンピュータ装置。
JP51451591A 1990-09-24 1991-08-09 フォルトトレラント・コンピュータ装置 Expired - Lifetime JP3156083B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US07/586,807 US5157663A (en) 1990-09-24 1990-09-24 Fault tolerant computer system
US586,807 1990-09-24
PCT/US1991/005679 WO1992005487A1 (en) 1990-09-24 1991-08-09 Fault tolerant computer system

Publications (2)

Publication Number Publication Date
JPH06504389A true JPH06504389A (ja) 1994-05-19
JP3156083B2 JP3156083B2 (ja) 2001-04-16

Family

ID=24347179

Family Applications (1)

Application Number Title Priority Date Filing Date
JP51451591A Expired - Lifetime JP3156083B2 (ja) 1990-09-24 1991-08-09 フォルトトレラント・コンピュータ装置

Country Status (13)

Country Link
US (2) US5157663A (ja)
EP (1) EP0550457B1 (ja)
JP (1) JP3156083B2 (ja)
KR (1) KR0137406B1 (ja)
AT (1) ATE152261T1 (ja)
AU (1) AU660939B2 (ja)
BR (1) BR9106875A (ja)
CA (1) CA2091993C (ja)
DE (1) DE69125840T2 (ja)
FI (1) FI101432B (ja)
NO (1) NO302986B1 (ja)
RU (1) RU2108621C1 (ja)
WO (1) WO1992005487A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013033493A (ja) * 2006-08-04 2013-02-14 Tsx Inc フェイルオーバシステムおよび方法

Families Citing this family (341)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5544347A (en) 1990-09-24 1996-08-06 Emc Corporation Data storage system controlled remote data mirroring with respectively maintained data indices
JP2864741B2 (ja) * 1990-12-19 1999-03-08 株式会社日立製作所 データインテグリティを保証する通信システム
DE69231452T2 (de) * 1991-01-25 2001-05-03 Hitachi Ltd Fehlertolerantes Rechnersystem mit Verarbeitungseinheiten die je mindestens drei Rechnereinheiten haben
JP3189903B2 (ja) * 1991-06-03 2001-07-16 富士通株式会社 ケーパビリティの退避・復元機構を持つ装置
DE69227956T2 (de) * 1991-07-18 1999-06-10 Tandem Computers Inc Multiprozessorsystem mit gespiegeltem Speicher
US5278969A (en) * 1991-08-02 1994-01-11 At&T Bell Laboratories Queue-length monitoring arrangement for detecting consistency between duplicate memories
EP0537903A2 (en) * 1991-10-02 1993-04-21 International Business Machines Corporation Distributed control system
WO1993009494A1 (en) * 1991-10-28 1993-05-13 Digital Equipment Corporation Fault-tolerant computer processing using a shadow virtual processor
US5379417A (en) * 1991-11-25 1995-01-03 Tandem Computers Incorporated System and method for ensuring write data integrity in a redundant array data storage system
JPH05191388A (ja) * 1992-01-14 1993-07-30 Fujitsu Ltd 通信処理システム
EP0559222A2 (en) * 1992-03-06 1993-09-08 Microsoft Corporation Improved method for loading programs
JPH05260134A (ja) * 1992-03-12 1993-10-08 Fujitsu Ltd 伝送装置の監視システム
FR2688907B1 (fr) * 1992-03-20 1994-05-27 Kiota Int Procede d'enregistrement et de lecture d'une bande magnetique bicouche et systeme de mise en óoeuvre.
CA2106280C (en) * 1992-09-30 2000-01-18 Yennun Huang Apparatus and methods for fault-tolerant computing employing a daemon monitoring process and fault-tolerant library to provide varying degrees of fault tolerance
US5715386A (en) * 1992-09-30 1998-02-03 Lucent Technologies Inc. Apparatus and methods for software rejuvenation
GB2273180A (en) * 1992-12-02 1994-06-08 Ibm Database backup and recovery.
US5751932A (en) * 1992-12-17 1998-05-12 Tandem Computers Incorporated Fail-fast, fail-functional, fault-tolerant multiprocessor system
US5914953A (en) 1992-12-17 1999-06-22 Tandem Computers, Inc. Network message routing using routing table information and supplemental enable information for deadlock prevention
US5469573A (en) * 1993-02-26 1995-11-21 Sytron Corporation Disk operating system backup and recovery system
US5608872A (en) * 1993-03-19 1997-03-04 Ncr Corporation System for allowing all remote computers to perform annotation on an image and replicating the annotated image on the respective displays of other comuters
US5664195A (en) * 1993-04-07 1997-09-02 Sequoia Systems, Inc. Method and apparatus for dynamic installation of a driver on a computer system
JP3047275B2 (ja) * 1993-06-11 2000-05-29 株式会社日立製作所 バックアップ切り換え制御方法
AU7211194A (en) * 1993-06-23 1995-01-17 Vinca Corporation Method for improving disk mirroring error recovery in a computer system including an alternate communication path
US5812748A (en) * 1993-06-23 1998-09-22 Vinca Corporation Method for improving recovery performance from hardware and software errors in a fault-tolerant computer system
US5978565A (en) 1993-07-20 1999-11-02 Vinca Corporation Method for rapid recovery from a network file server failure including method for operating co-standby servers
AU7211594A (en) * 1993-07-20 1995-02-20 Vinca Corporation Method for rapid recovery from a network file server failure
US6289390B1 (en) 1993-08-18 2001-09-11 Microsoft Corporation System and method for performing remote requests with an on-line service network
US5473771A (en) * 1993-09-01 1995-12-05 At&T Corp. Fault-tolerant processing system architecture
US5566299A (en) * 1993-12-30 1996-10-15 Lockheed Martin Corporation Fault tolerant method and system for high availability document image and coded data processing
KR0128271B1 (ko) * 1994-02-22 1998-04-15 윌리암 티. 엘리스 재해회복을 위한 일관성 그룹 형성방법 및 레코드갱싱의 섀도잉 방법, 주시스템, 원격데이타 섀도잉 시스템과 비동기 원격데이타 복제 시스템
JP2790034B2 (ja) * 1994-03-28 1998-08-27 日本電気株式会社 非運用系メモリ更新方式
JP3140906B2 (ja) * 1994-04-12 2001-03-05 株式会社エヌ・ティ・ティ・データ システムファイルの更新及び復元方法
JPH10506483A (ja) * 1994-06-10 1998-06-23 テキサス・マイクロ・インコーポレーテッド フォールト・トレラントなコンピュータ・システムのためのメイン・メモリ・システム及びチェックポイント用プロトコル
US5566297A (en) * 1994-06-16 1996-10-15 International Business Machines Corporation Non-disruptive recovery from file server failure in a highly available file system for clustered computing environments
US5659682A (en) * 1994-06-16 1997-08-19 International Business Machines Corporation Scheme to determine completion of directory operations for server recovery
JPH0816421A (ja) * 1994-07-04 1996-01-19 Hitachi Ltd 一重化/二重化切り替え入出力ポートを有する電子装置とフォールトトレラントシステム
JPH0816446A (ja) * 1994-07-05 1996-01-19 Fujitsu Ltd クライアント/サーバ・システム
US5537533A (en) * 1994-08-11 1996-07-16 Miralink Corporation System and method for remote mirroring of digital data from a primary network server to a remote network server
US5764903A (en) * 1994-09-26 1998-06-09 Acer America Corporation High availability network disk mirroring system
US5996001A (en) * 1994-09-27 1999-11-30 Quarles; Philip High availability on-line transaction processing system
US5649152A (en) 1994-10-13 1997-07-15 Vinca Corporation Method and system for providing a static snapshot of data stored on a mass storage system
US5835953A (en) 1994-10-13 1998-11-10 Vinca Corporation Backup system that takes a snapshot of the locations in a mass storage device that has been identified for updating prior to updating
KR0133337B1 (ko) * 1994-12-21 1998-04-21 양승택 타켓 시스템 이중화 운용관리 장치 및 방법
US5757642A (en) * 1995-01-20 1998-05-26 Dell Usa L.P. Multi-function server input/output subsystem and method
CA2167634A1 (en) * 1995-01-23 1996-07-24 Michael E. Fisher Method and apparatus for maintaining network connections across a voluntary process switchover
US5790791A (en) * 1995-05-12 1998-08-04 The Boeing Company Apparatus for synchronizing flight management computers where only the computer chosen to be the master received pilot inputs and transfers the inputs to the spare
US5675723A (en) * 1995-05-19 1997-10-07 Compaq Computer Corporation Multi-server fault tolerance using in-band signalling
US5696895A (en) * 1995-05-19 1997-12-09 Compaq Computer Corporation Fault tolerant multiple network servers
US5822512A (en) * 1995-05-19 1998-10-13 Compaq Computer Corporartion Switching control in a fault tolerant system
TW292365B (en) 1995-05-31 1996-12-01 Hitachi Ltd Computer management system
US6901433B2 (en) * 1995-06-07 2005-05-31 Microsoft Corporation System for providing users with a filtered view of interactive network directory obtains from remote properties cache that provided by an on-line service
US5774668A (en) * 1995-06-07 1998-06-30 Microsoft Corporation System for on-line service in which gateway computer uses service map which includes loading condition of servers broadcasted by application servers for load balancing
US5621885A (en) * 1995-06-07 1997-04-15 Tandem Computers, Incorporated System and method for providing a fault tolerant computer program runtime support environment
US5956489A (en) * 1995-06-07 1999-09-21 Microsoft Corporation Transaction replication system and method for supporting replicated transaction-based services
JP3086779B2 (ja) * 1995-06-19 2000-09-11 株式会社東芝 メモリ状態復元装置
US5594863A (en) * 1995-06-26 1997-01-14 Novell, Inc. Method and apparatus for network file recovery
US5933599A (en) * 1995-07-17 1999-08-03 Microsoft Corporation Apparatus for presenting the content of an interactive on-line network
US6728959B1 (en) 1995-08-08 2004-04-27 Novell, Inc. Method and apparatus for strong affinity multiprocessor scheduling
US5941947A (en) * 1995-08-18 1999-08-24 Microsoft Corporation System and method for controlling access to data entities in a computer network
US5956509A (en) * 1995-08-18 1999-09-21 Microsoft Corporation System and method for performing remote requests with an on-line service network
US6029175A (en) * 1995-10-26 2000-02-22 Teknowledge Corporation Automatic retrieval of changed files by a network software agent
US5737514A (en) * 1995-11-29 1998-04-07 Texas Micro, Inc. Remote checkpoint memory system and protocol for fault-tolerant computer system
US5745672A (en) * 1995-11-29 1998-04-28 Texas Micro, Inc. Main memory system and checkpointing protocol for a fault-tolerant computer system using a read buffer
US5864657A (en) * 1995-11-29 1999-01-26 Texas Micro, Inc. Main memory system and checkpointing protocol for fault-tolerant computer system
US5751939A (en) * 1995-11-29 1998-05-12 Texas Micro, Inc. Main memory system and checkpointing protocol for fault-tolerant computer system using an exclusive-or memory
US5802265A (en) * 1995-12-01 1998-09-01 Stratus Computer, Inc. Transparent fault tolerant computer system
US5838921A (en) * 1995-12-08 1998-11-17 Silicon Graphics, Inc. Distributed connection management system with replication
GB2308040A (en) * 1995-12-09 1997-06-11 Northern Telecom Ltd Telecommunications system
GB9601585D0 (en) * 1996-01-26 1996-03-27 Hewlett Packard Co Fault-tolerant processing method
GB9601584D0 (en) * 1996-01-26 1996-03-27 Hewlett Packard Co Fault-tolerant processing method
US5777874A (en) * 1996-02-12 1998-07-07 Allen-Bradley Company, Inc. Programmable controller backup system
US5761518A (en) * 1996-02-29 1998-06-02 The Foxboro Company System for replacing control processor by operating processor in partially disabled mode for tracking control outputs and in write enabled mode for transferring control loops
US5905860A (en) * 1996-03-15 1999-05-18 Novell, Inc. Fault tolerant electronic licensing system
US5708776A (en) * 1996-05-09 1998-01-13 Elonex I.P. Holdings Automatic recovery for network appliances
US5796934A (en) * 1996-05-31 1998-08-18 Oracle Corporation Fault tolerant client server system
US6032271A (en) * 1996-06-05 2000-02-29 Compaq Computer Corporation Method and apparatus for identifying faulty devices in a computer system
US5852724A (en) * 1996-06-18 1998-12-22 Veritas Software Corp. System and method for "N" primary servers to fail over to "1" secondary server
US5774660A (en) * 1996-08-05 1998-06-30 Resonate, Inc. World-wide-web server with delayed resource-binding for resource-based load balancing on a distributed resource multi-node network
US6321270B1 (en) * 1996-09-27 2001-11-20 Nortel Networks Limited Method and apparatus for multicast routing in a network
TW379298B (en) * 1996-09-30 2000-01-11 Toshiba Corp Memory updating history saving device and memory updating history saving method
US6484208B1 (en) 1996-10-15 2002-11-19 Compaq Information Technologies Group, L.P. Local access of a remotely mirrored disk in a computer network
US5917997A (en) * 1996-12-06 1999-06-29 International Business Machines Corporation Host identity takeover using virtual internet protocol (IP) addressing
JP3507307B2 (ja) * 1996-12-27 2004-03-15 キヤノン株式会社 情報処理装置およびネットワークプリントシステムおよびその制御方法およびプログラムが格納された記憶媒体
US6151688A (en) 1997-02-21 2000-11-21 Novell, Inc. Resource management in a clustered computer system
JPH10240557A (ja) * 1997-02-27 1998-09-11 Mitsubishi Electric Corp 待機冗長化システム
US6654933B1 (en) 1999-09-21 2003-11-25 Kasenna, Inc. System and method for media stream indexing
US5941999A (en) * 1997-03-31 1999-08-24 Sun Microsystems Method and system for achieving high availability in networked computer systems
US6073209A (en) * 1997-03-31 2000-06-06 Ark Research Corporation Data storage controller providing multiple hosts with access to multiple storage subsystems
US7389312B2 (en) * 1997-04-28 2008-06-17 Emc Corporation Mirroring network data to establish virtual storage area network
US5892928A (en) * 1997-05-13 1999-04-06 Micron Electronics, Inc. Method for the hot add of a network adapter on a system including a dynamically loaded adapter driver
US6247898B1 (en) 1997-05-13 2001-06-19 Micron Electronics, Inc. Computer fan speed control system
US6243838B1 (en) 1997-05-13 2001-06-05 Micron Electronics, Inc. Method for automatically reporting a system failure in a server
US6243773B1 (en) 1997-05-13 2001-06-05 Micron Electronics, Inc. Configuration management system for hot adding and hot replacing devices
US6192434B1 (en) 1997-05-13 2001-02-20 Micron Electronics, Inc System for hot swapping a programmable adapter by using a programmable processor to selectively disabling and enabling power thereto upon receiving respective control signals
US6253334B1 (en) 1997-05-13 2001-06-26 Micron Electronics, Inc. Three bus server architecture with a legacy PCI bus and mirrored I/O PCI buses
US6170067B1 (en) 1997-05-13 2001-01-02 Micron Technology, Inc. System for automatically reporting a system failure in a server
US6330690B1 (en) 1997-05-13 2001-12-11 Micron Electronics, Inc. Method of resetting a server
US6202160B1 (en) 1997-05-13 2001-03-13 Micron Electronics, Inc. System for independent powering of a computer system
US6249834B1 (en) 1997-05-13 2001-06-19 Micron Technology, Inc. System for expanding PCI bus loading capacity
US6324608B1 (en) 1997-05-13 2001-11-27 Micron Electronics Method for hot swapping of network components
US6145098A (en) 1997-05-13 2000-11-07 Micron Electronics, Inc. System for displaying system status
US6163853A (en) 1997-05-13 2000-12-19 Micron Electronics, Inc. Method for communicating a software-generated pulse waveform between two servers in a network
US6122758A (en) * 1997-05-13 2000-09-19 Micron Electronics, Inc. System for mapping environmental resources to memory for program access
US6292905B1 (en) * 1997-05-13 2001-09-18 Micron Technology, Inc. Method for providing a fault tolerant network using distributed server processes to remap clustered network resources to other servers during server failure
US6134673A (en) * 1997-05-13 2000-10-17 Micron Electronics, Inc. Method for clustering software applications
US6122746A (en) * 1997-05-13 2000-09-19 Micron Electronics, Inc. System for powering up and powering down a server
US6269417B1 (en) 1997-05-13 2001-07-31 Micron Technology, Inc. Method for determining and displaying the physical slot number of an expansion bus device
US6148355A (en) * 1997-05-13 2000-11-14 Micron Electronics, Inc. Configuration management method for hot adding and hot replacing devices
US6282673B1 (en) 1997-05-13 2001-08-28 Micron Technology, Inc. Method of recording information system events
US5987554A (en) * 1997-05-13 1999-11-16 Micron Electronics, Inc. Method of controlling the transfer of information across an interface between two buses
US6195717B1 (en) 1997-05-13 2001-02-27 Micron Electronics, Inc. Method of expanding bus loading capacity
US6526333B1 (en) 1997-05-13 2003-02-25 Micron Technology, Inc. Computer fan speed control system method
US6134668A (en) * 1997-05-13 2000-10-17 Micron Electronics, Inc. Method of selective independent powering of portion of computer system through remote interface from remote interface power supply
US6163849A (en) * 1997-05-13 2000-12-19 Micron Electronics, Inc. Method of powering up or powering down a server to a maintenance state
US6219734B1 (en) 1997-05-13 2001-04-17 Micron Electronics, Inc. Method for the hot add of a mass storage adapter on a system including a statically loaded adapter driver
US6338150B1 (en) * 1997-05-13 2002-01-08 Micron Technology, Inc. Diagnostic and managing distributed processor system
US6173346B1 (en) 1997-05-13 2001-01-09 Micron Electronics, Inc. Method for hot swapping a programmable storage adapter using a programmable processor for selectively enabling or disabling power to adapter slot in response to respective request signals
US6170028B1 (en) 1997-05-13 2001-01-02 Micron Electronics, Inc. Method for hot swapping a programmable network adapter by using a programmable processor to selectively disabling and enabling power thereto upon receiving respective control signals
US6073255A (en) * 1997-05-13 2000-06-06 Micron Electronics, Inc. Method of reading system log
US6304929B1 (en) 1997-05-13 2001-10-16 Micron Electronics, Inc. Method for hot swapping a programmable adapter by using a programmable processor to selectively disabling and enabling power thereto upon receiving respective control signals
US6182180B1 (en) 1997-05-13 2001-01-30 Micron Electronics, Inc. Apparatus for interfacing buses
US6249885B1 (en) 1997-05-13 2001-06-19 Karl S. Johnson Method for managing environmental conditions of a distributed processor system
US6138250A (en) * 1997-05-13 2000-10-24 Micron Electronics, Inc. System for reading system log
US6202111B1 (en) 1997-05-13 2001-03-13 Micron Electronics, Inc. Method for the hot add of a network adapter on a system including a statically loaded adapter driver
US6247080B1 (en) 1997-05-13 2001-06-12 Micron Electronics, Inc. Method for the hot add of devices
US6499073B1 (en) 1997-05-13 2002-12-24 Micron Electronics, Inc. System using programmable processor for selectively enabling or disabling power to adapter in response to respective request signals
US6179486B1 (en) 1997-05-13 2001-01-30 Micron Electronics, Inc. Method for hot add of a mass storage adapter on a system including a dynamically loaded adapter driver
US6266721B1 (en) 1997-05-13 2001-07-24 Micron Electronics, Inc. System architecture for remote access and control of environmental management
US6247079B1 (en) * 1997-05-13 2001-06-12 Micron Electronics, Inc Apparatus for computer implemented hot-swap and hot-add
US6363497B1 (en) 1997-05-13 2002-03-26 Micron Technology, Inc. System for clustering software applications
US6249828B1 (en) 1997-05-13 2001-06-19 Micron Electronics, Inc. Method for the hot swap of a mass storage adapter on a system including a statically loaded adapter driver
US6418492B1 (en) 1997-05-13 2002-07-09 Micron Electronics Method for computer implemented hot-swap and hot-add
US6490610B1 (en) 1997-05-30 2002-12-03 Oracle Corporation Automatic failover for clients accessing a resource through a server
US6199110B1 (en) 1997-05-30 2001-03-06 Oracle Corporation Planned session termination for clients accessing a resource through a server
US5983371A (en) * 1997-07-11 1999-11-09 Marathon Technologies Corporation Active failure detection
JP3111935B2 (ja) * 1997-08-15 2000-11-27 日本電気株式会社 Lanエミュレーションサーバ二重化方式
US6212585B1 (en) 1997-10-01 2001-04-03 Micron Electronics, Inc. Method of automatically configuring a server after hot add of a device
US6088816A (en) * 1997-10-01 2000-07-11 Micron Electronics, Inc. Method of displaying system status
US6154835A (en) * 1997-10-01 2000-11-28 Micron Electronics, Inc. Method for automatically configuring and formatting a computer system and installing software
US6263387B1 (en) 1997-10-01 2001-07-17 Micron Electronics, Inc. System for automatically configuring a server after hot add of a device
GB2330034A (en) 1997-10-01 1999-04-07 Northern Telecom Ltd A narrowband to broadband interface for a communications system
US6138179A (en) * 1997-10-01 2000-10-24 Micron Electronics, Inc. System for automatically partitioning and formatting a primary hard disk for installing software in which selection of extended partition size is not related to size of hard disk
US6199173B1 (en) 1997-10-01 2001-03-06 Micron Electronics, Inc. Method for mapping environmental resources to memory for program access
US6009541A (en) * 1997-10-01 1999-12-28 Micron Electronics, Inc. Apparatus for performing an extensive diagnostic test in conjunction with a bios test routine
US6175490B1 (en) 1997-10-01 2001-01-16 Micron Electronics, Inc. Fault tolerant computer system
US6065053A (en) * 1997-10-01 2000-05-16 Micron Electronics, Inc. System for resetting a server
US6035420A (en) * 1997-10-01 2000-03-07 Micron Electronics, Inc. Method of performing an extensive diagnostic test in conjunction with a bios test routine
US6014667A (en) * 1997-10-01 2000-01-11 Novell, Inc. System and method for caching identification and location information in a computer network
US6173420B1 (en) * 1997-10-31 2001-01-09 Oracle Corporation Method and apparatus for fail safe configuration
US6799224B1 (en) * 1998-03-10 2004-09-28 Quad Research High speed fault tolerant mass storage network information server
DE19810814B4 (de) * 1998-03-12 2004-10-28 Telefonaktiebolaget Lm Ericsson (Publ) Rechnersystem und Zustandskopierverfahren zur skalierbaren Software-Aktualisierung
DE19810807A1 (de) * 1998-03-12 1999-09-23 Ericsson Telefon Ab L M Gerät und Verfahren zum Umsetzen von Meldungen
US6185695B1 (en) * 1998-04-09 2001-02-06 Sun Microsystems, Inc. Method and apparatus for transparent server failover for highly available objects
US6260155B1 (en) 1998-05-01 2001-07-10 Quad Research Network information server
US6061602A (en) * 1998-06-23 2000-05-09 Creative Lifestyles, Inc. Method and apparatus for developing application software for home automation system
US6195739B1 (en) 1998-06-29 2001-02-27 Cisco Technology, Inc. Method and apparatus for passing data among processor complex stages of a pipelined processing engine
US6101599A (en) * 1998-06-29 2000-08-08 Cisco Technology, Inc. System for context switching between processing elements in a pipeline of processing elements
US6513108B1 (en) 1998-06-29 2003-01-28 Cisco Technology, Inc. Programmable processing engine for efficiently processing transient data
US6119215A (en) * 1998-06-29 2000-09-12 Cisco Technology, Inc. Synchronization and control system for an arrayed processing engine
US6836838B1 (en) 1998-06-29 2004-12-28 Cisco Technology, Inc. Architecture for a processor complex of an arrayed pipelined processing engine
US6154849A (en) * 1998-06-30 2000-11-28 Sun Microsystems, Inc. Method and apparatus for resource dependency relaxation
US6223234B1 (en) 1998-07-17 2001-04-24 Micron Electronics, Inc. Apparatus for the hot swap and add of input/output platforms and devices
US6205503B1 (en) 1998-07-17 2001-03-20 Mallikarjunan Mahalingam Method for the hot swap and add of input/output platforms and devices
US9361243B2 (en) 1998-07-31 2016-06-07 Kom Networks Inc. Method and system for providing restricted access to a storage medium
US8234477B2 (en) 1998-07-31 2012-07-31 Kom Networks, Inc. Method and system for providing restricted access to a storage medium
DE19836347C2 (de) 1998-08-11 2001-11-15 Ericsson Telefon Ab L M Fehlertolerantes Computersystem
US7305451B2 (en) * 1998-08-24 2007-12-04 Microsoft Corporation System for providing users an integrated directory service containing content nodes located in different groups of application servers in computer network
US6266785B1 (en) 1998-09-01 2001-07-24 Ncr Corporation File system filter driver apparatus and method
US6247141B1 (en) 1998-09-24 2001-06-12 Telefonaktiebolaget Lm Ericsson (Publ) Protocol for providing replicated servers in a client-server system
US6728839B1 (en) 1998-10-28 2004-04-27 Cisco Technology, Inc. Attribute based memory pre-fetching technique
US6460146B1 (en) * 1998-12-04 2002-10-01 Cisco Technology, Inc. System and method for establishing processor redundancy
US6389459B1 (en) * 1998-12-09 2002-05-14 Ncr Corporation Virtualized storage devices for network disk mirroring applications
US6173386B1 (en) 1998-12-14 2001-01-09 Cisco Technology, Inc. Parallel processor with debug capability
US6385747B1 (en) 1998-12-14 2002-05-07 Cisco Technology, Inc. Testing of replicated components of electronic device
US6920562B1 (en) 1998-12-18 2005-07-19 Cisco Technology, Inc. Tightly coupled software protocol decode with hardware data encryption
US6853623B2 (en) 1999-03-05 2005-02-08 Cisco Technology, Inc. Remote monitoring of switch network
US6457138B1 (en) * 1999-04-19 2002-09-24 Cisco Technology, Inc. System and method for crash handling on redundant systems
US6298474B1 (en) 1999-04-30 2001-10-02 Intergral Vision, Inc. Method and system for interactively developing a graphical control-flow structure and associated application software for use in a machine vision system and computer-readable storage medium having a program for executing the method
US6681341B1 (en) 1999-11-03 2004-01-20 Cisco Technology, Inc. Processor isolation method for integrated multi-processor systems
US6529983B1 (en) 1999-11-03 2003-03-04 Cisco Technology, Inc. Group and virtual locking mechanism for inter processor synchronization
TW454120B (en) 1999-11-11 2001-09-11 Miralink Corp Flexible remote data mirroring
US7203732B2 (en) * 1999-11-11 2007-04-10 Miralink Corporation Flexible remote data mirroring
US6338126B1 (en) * 1999-12-06 2002-01-08 Legato Systems, Inc. Crash recovery without complete remirror
US6769027B1 (en) * 2000-01-31 2004-07-27 Avaya Technology Corp. System and method for using multi-headed queues for bookmarking in backup/recover scenarios
US6738826B1 (en) 2000-02-24 2004-05-18 Cisco Technology, Inc. Router software upgrade employing redundant processors
JP2001256067A (ja) * 2000-03-08 2001-09-21 Mitsubishi Electric Corp プロセッサ省電力制御方法、記憶媒体、およびプロセッサ省電力制御装置
US6892237B1 (en) 2000-03-28 2005-05-10 Cisco Technology, Inc. Method and apparatus for high-speed parsing of network messages
JP3651353B2 (ja) * 2000-04-04 2005-05-25 日本電気株式会社 デジタルコンテンツ再生システム及びデジタルコンテンツ配信システム
US6735717B1 (en) * 2000-04-13 2004-05-11 Gnp Computers, Inc. Distributed computing system clustering model providing soft real-time responsiveness and continuous availability
US6820213B1 (en) 2000-04-13 2004-11-16 Stratus Technologies Bermuda, Ltd. Fault-tolerant computer system with voter delay buffer
US6687851B1 (en) 2000-04-13 2004-02-03 Stratus Technologies Bermuda Ltd. Method and system for upgrading fault-tolerant systems
US6691225B1 (en) 2000-04-14 2004-02-10 Stratus Technologies Bermuda Ltd. Method and apparatus for deterministically booting a computer system having redundant components
US6802022B1 (en) 2000-04-14 2004-10-05 Stratus Technologies Bermuda Ltd. Maintenance of consistent, redundant mass storage images
US6901481B2 (en) 2000-04-14 2005-05-31 Stratus Technologies Bermuda Ltd. Method and apparatus for storing transactional information in persistent memory
US6505269B1 (en) 2000-05-16 2003-01-07 Cisco Technology, Inc. Dynamic addressing mapping to eliminate memory resource contention in a symmetric multiprocessor system
US6892221B2 (en) * 2000-05-19 2005-05-10 Centerbeam Data backup
US7225244B2 (en) * 2000-05-20 2007-05-29 Ciena Corporation Common command interface
US6983362B1 (en) 2000-05-20 2006-01-03 Ciena Corporation Configurable fault recovery policy for a computer system
US6742134B1 (en) 2000-05-20 2004-05-25 Equipe Communications Corporation Maintaining a local backup for data plane processes
US6715097B1 (en) 2000-05-20 2004-03-30 Equipe Communications Corporation Hierarchical fault management in computer systems
US6760859B1 (en) 2000-05-23 2004-07-06 International Business Machines Corporation Fault tolerant local area network connectivity
US7263476B1 (en) 2000-06-12 2007-08-28 Quad Research High speed information processing and mass storage system and method, particularly for information and application servers
US20020004849A1 (en) * 2000-06-22 2002-01-10 Elink Business Fault tolerant internet communications system
US6728897B1 (en) 2000-07-25 2004-04-27 Network Appliance, Inc. Negotiating takeover in high availability cluster
US7277956B2 (en) 2000-07-28 2007-10-02 Kasenna, Inc. System and method for improved utilization of bandwidth in a computer system serving multiple users
CA2457557A1 (en) * 2000-08-10 2002-02-21 Miralink Corporation Data/presence insurance tools and techniques
US6977927B1 (en) 2000-09-18 2005-12-20 Hewlett-Packard Development Company, L.P. Method and system of allocating storage resources in a storage area network
US6804819B1 (en) 2000-09-18 2004-10-12 Hewlett-Packard Development Company, L.P. Method, system, and computer program product for a data propagation platform and applications of same
US7386610B1 (en) 2000-09-18 2008-06-10 Hewlett-Packard Development Company, L.P. Internet protocol data mirroring
US6871271B2 (en) 2000-12-21 2005-03-22 Emc Corporation Incrementally restoring a mass storage device to a prior state
US6941490B2 (en) * 2000-12-21 2005-09-06 Emc Corporation Dual channel restoration of data between primary and backup servers
US7054927B2 (en) * 2001-01-29 2006-05-30 Adaptec, Inc. File system metadata describing server directory information
US6990667B2 (en) 2001-01-29 2006-01-24 Adaptec, Inc. Server-independent object positioning for load balancing drives and servers
US6862692B2 (en) 2001-01-29 2005-03-01 Adaptec, Inc. Dynamic redistribution of parity groups
US20020138559A1 (en) * 2001-01-29 2002-09-26 Ulrich Thomas R. Dynamically distributed file system
US6606690B2 (en) 2001-02-20 2003-08-12 Hewlett-Packard Development Company, L.P. System and method for accessing a storage area network as network attached storage
AU2002247257A1 (en) 2001-03-02 2002-09-19 Kasenna, Inc. Metadata enabled push-pull model for efficient low-latency video-content distribution over a network
US8244864B1 (en) 2001-03-20 2012-08-14 Microsoft Corporation Transparent migration of TCP based connections within a network load balancing system
US7065672B2 (en) 2001-03-28 2006-06-20 Stratus Technologies Bermuda Ltd. Apparatus and methods for fault-tolerant computing using a switching fabric
US7028228B1 (en) 2001-03-28 2006-04-11 The Shoregroup, Inc. Method and apparatus for identifying problems in computer networks
US7296194B1 (en) 2002-03-28 2007-11-13 Shoregroup Inc. Method and apparatus for maintaining the status of objects in computer networks using virtual state machines
US7197561B1 (en) * 2001-03-28 2007-03-27 Shoregroup, Inc. Method and apparatus for maintaining the status of objects in computer networks using virtual state machines
US6971043B2 (en) * 2001-04-11 2005-11-29 Stratus Technologies Bermuda Ltd Apparatus and method for accessing a mass storage device in a fault-tolerant server
US6928579B2 (en) * 2001-06-27 2005-08-09 Nokia Corporation Crash recovery system
US7072911B1 (en) * 2001-07-27 2006-07-04 Novell, Inc. System and method for incremental replication of changes in a state based distributed database
US6920579B1 (en) 2001-08-20 2005-07-19 Network Appliance, Inc. Operator initiated graceful takeover in a node cluster
US7137026B2 (en) 2001-10-04 2006-11-14 Nokia Corporation Crash recovery system
US7177267B2 (en) * 2001-11-09 2007-02-13 Adc Dsl Systems, Inc. Hardware monitoring and configuration management
US6954877B2 (en) * 2001-11-29 2005-10-11 Agami Systems, Inc. Fault tolerance using logical checkpointing in computing systems
US7296125B2 (en) * 2001-11-29 2007-11-13 Emc Corporation Preserving a snapshot of selected data of a mass storage system
US7730153B1 (en) 2001-12-04 2010-06-01 Netapp, Inc. Efficient use of NVRAM during takeover in a node cluster
US6802024B2 (en) 2001-12-13 2004-10-05 Intel Corporation Deterministic preemption points in operating system execution
KR100441712B1 (ko) * 2001-12-29 2004-07-27 엘지전자 주식회사 확장 가능형 다중 처리 시스템 및 그의 메모리 복제 방법
US7007142B2 (en) * 2002-02-19 2006-02-28 Intel Corporation Network data storage-related operations
US7039828B1 (en) 2002-02-28 2006-05-02 Network Appliance, Inc. System and method for clustered failover without network support
GB0206604D0 (en) * 2002-03-20 2002-05-01 Global Continuity Plc Improvements relating to overcoming data processing failures
US7571221B2 (en) * 2002-04-03 2009-08-04 Hewlett-Packard Development Company, L.P. Installation of network services in an embedded network server
US7058849B2 (en) * 2002-07-02 2006-06-06 Micron Technology, Inc. Use of non-volatile memory to perform rollback function
US7885896B2 (en) 2002-07-09 2011-02-08 Avaya Inc. Method for authorizing a substitute software license server
US8041642B2 (en) 2002-07-10 2011-10-18 Avaya Inc. Predictive software license balancing
US7240048B2 (en) * 2002-08-05 2007-07-03 Ben Pontius System and method of parallel pattern matching
US6782424B2 (en) * 2002-08-23 2004-08-24 Finite State Machine Labs, Inc. System, method and computer program product for monitoring and controlling network connections from a supervisory operating system
US7216363B2 (en) * 2002-08-30 2007-05-08 Avaya Technology Corp. Licensing duplicated systems
US7707116B2 (en) 2002-08-30 2010-04-27 Avaya Inc. Flexible license file feature controls
US7966520B2 (en) * 2002-08-30 2011-06-21 Avaya Inc. Software licensing for spare processors
US7698225B2 (en) 2002-08-30 2010-04-13 Avaya Inc. License modes in call processing
US7228567B2 (en) * 2002-08-30 2007-06-05 Avaya Technology Corp. License file serial number tracking
US7681245B2 (en) 2002-08-30 2010-03-16 Avaya Inc. Remote feature activator feature extraction
US7051053B2 (en) * 2002-09-30 2006-05-23 Dinesh Sinha Method of lazily replicating files and monitoring log in backup file system
US20040078339A1 (en) * 2002-10-22 2004-04-22 Goringe Christopher M. Priority based licensing
US7171452B1 (en) 2002-10-31 2007-01-30 Network Appliance, Inc. System and method for monitoring cluster partner boot status over a cluster interconnect
US7890997B2 (en) 2002-12-26 2011-02-15 Avaya Inc. Remote feature activation authentication file system
US7246255B1 (en) * 2003-01-17 2007-07-17 Unisys Corporation Method for shortening the resynchronization time following failure in a computer system utilizing separate servers for redundancy
US7155638B1 (en) * 2003-01-17 2006-12-26 Unisys Corporation Clustered computer system utilizing separate servers for redundancy in which the host computers are unaware of the usage of separate servers
US7149923B1 (en) * 2003-01-17 2006-12-12 Unisys Corporation Software control using the controller as a component to achieve resiliency in a computer system utilizing separate servers for redundancy
US7260557B2 (en) * 2003-02-27 2007-08-21 Avaya Technology Corp. Method and apparatus for license distribution
US7231489B1 (en) 2003-03-03 2007-06-12 Network Appliance, Inc. System and method for coordinating cluster state information
US7373657B2 (en) 2003-03-10 2008-05-13 Avaya Technology Corp. Method and apparatus for controlling data and software access
US20040181696A1 (en) * 2003-03-11 2004-09-16 Walker William T. Temporary password login
US20040184464A1 (en) * 2003-03-18 2004-09-23 Airspan Networks Inc. Data processing apparatus
JP2004295465A (ja) * 2003-03-27 2004-10-21 Hitachi Ltd 計算機システム
US7127442B2 (en) * 2003-04-01 2006-10-24 Avaya Technology Corp. Ironclad notification of license errors
US7739543B1 (en) 2003-04-23 2010-06-15 Netapp, Inc. System and method for transport-level failover for loosely coupled iSCSI target devices
US7260737B1 (en) 2003-04-23 2007-08-21 Network Appliance, Inc. System and method for transport-level failover of FCP devices in a cluster
US7194655B2 (en) * 2003-06-12 2007-03-20 International Business Machines Corporation Method and system for autonomously rebuilding a failed server and a computer system utilizing the same
US20050039074A1 (en) * 2003-07-09 2005-02-17 Tremblay Glenn A. Fault resilient/fault tolerant computing
US7593996B2 (en) * 2003-07-18 2009-09-22 Netapp, Inc. System and method for establishing a peer connection using reliable RDMA primitives
US7716323B2 (en) * 2003-07-18 2010-05-11 Netapp, Inc. System and method for reliable peer communication in a clustered storage system
US7467191B1 (en) 2003-09-26 2008-12-16 Network Appliance, Inc. System and method for failover using virtual ports in clustered systems
US7096331B1 (en) * 2003-09-29 2006-08-22 Emc Corporation System and method for managing data associated with copying and replication procedures in a data storage environment
US7447860B1 (en) * 2003-09-29 2008-11-04 Emc Corporation System and method for managing data associated with copying and recovery procedures in a data storage environment
US7222143B2 (en) * 2003-11-24 2007-05-22 Lenovo (Singapore) Pte Ltd. Safely restoring previously un-backed up data during system restore of a failing system
US7340639B1 (en) 2004-01-08 2008-03-04 Network Appliance, Inc. System and method for proxying data access commands in a clustered storage system
US7966294B1 (en) 2004-01-08 2011-06-21 Netapp, Inc. User interface system for a clustered storage system
US7353388B1 (en) 2004-02-09 2008-04-01 Avaya Technology Corp. Key server for securing IP telephony registration, control, and maintenance
US7272500B1 (en) 2004-03-25 2007-09-18 Avaya Technology Corp. Global positioning system hardware key for software licenses
US8621029B1 (en) 2004-04-28 2013-12-31 Netapp, Inc. System and method for providing remote direct memory access over a transport medium that does not natively support remote direct memory access operations
US7328144B1 (en) 2004-04-28 2008-02-05 Network Appliance, Inc. System and method for simulating a software protocol stack using an emulated protocol over an emulated network
US7496782B1 (en) 2004-06-01 2009-02-24 Network Appliance, Inc. System and method for splitting a cluster for disaster recovery
US7478263B1 (en) 2004-06-01 2009-01-13 Network Appliance, Inc. System and method for establishing bi-directional failover in a two node cluster
EP1782237A2 (en) * 2004-07-13 2007-05-09 Teneros, Inc. Autonomous service appliance
US7363366B2 (en) * 2004-07-13 2008-04-22 Teneros Inc. Network traffic routing
US20060015764A1 (en) * 2004-07-13 2006-01-19 Teneros, Inc. Transparent service provider
US7321906B2 (en) * 2004-07-23 2008-01-22 Omx Technology Ab Method of improving replica server performance and a replica server system
US7587400B2 (en) * 2004-08-12 2009-09-08 Oracle International Corporation Suspending a result set and continuing from a suspended result set for transparent session migration
US7613710B2 (en) * 2004-08-12 2009-11-03 Oracle International Corporation Suspending a result set and continuing from a suspended result set
US7743333B2 (en) * 2004-08-12 2010-06-22 Oracle International Corporation Suspending a result set and continuing from a suspended result set for scrollable cursors
US7415470B2 (en) * 2004-08-12 2008-08-19 Oracle International Corporation Capturing and re-creating the state of a queue when migrating a session
US7502824B2 (en) * 2004-08-12 2009-03-10 Oracle International Corporation Database shutdown with session migration
US7707405B1 (en) 2004-09-21 2010-04-27 Avaya Inc. Secure installation activation
US7747851B1 (en) 2004-09-30 2010-06-29 Avaya Inc. Certificate distribution via license files
US8229858B1 (en) 2004-09-30 2012-07-24 Avaya Inc. Generation of enterprise-wide licenses in a customer environment
US7965701B1 (en) 2004-09-30 2011-06-21 Avaya Inc. Method and system for secure communications with IP telephony appliance
US7434630B2 (en) * 2004-10-05 2008-10-14 Halliburton Energy Services, Inc. Surface instrumentation configuration for drilling rig operation
KR100651388B1 (ko) * 2004-11-25 2006-11-29 삼성전자주식회사 이동통신 단말기에서 착신알림 설정방법
JP4182948B2 (ja) * 2004-12-21 2008-11-19 日本電気株式会社 フォールト・トレラント・コンピュータシステムと、そのための割り込み制御方法
DE102004062116B3 (de) * 2004-12-23 2006-05-11 Ab Skf Lageranordnung für einen Computertomographen
US7496787B2 (en) * 2004-12-27 2009-02-24 Stratus Technologies Bermuda Ltd. Systems and methods for checkpointing
US9176772B2 (en) * 2005-02-11 2015-11-03 Oracle International Corporation Suspending and resuming of sessions
US8073899B2 (en) * 2005-04-29 2011-12-06 Netapp, Inc. System and method for proxying data access commands in a storage system cluster
US7743286B2 (en) * 2005-05-17 2010-06-22 International Business Machines Corporation Method, system and program product for analyzing demographical factors of a computer system to address error conditions
US20070028144A1 (en) * 2005-07-29 2007-02-01 Stratus Technologies Bermuda Ltd. Systems and methods for checkpointing
US20070038891A1 (en) * 2005-08-12 2007-02-15 Stratus Technologies Bermuda Ltd. Hardware checkpointing system
US7814023B1 (en) 2005-09-08 2010-10-12 Avaya Inc. Secure download manager
US7370235B1 (en) * 2005-09-29 2008-05-06 Emc Corporation System and method for managing and scheduling recovery after a failure in a data storage environment
US7401251B1 (en) * 2005-09-29 2008-07-15 Emc Corporation Architecture for managing failover and recovery after failover in a data storage environment
US7793329B2 (en) 2006-02-06 2010-09-07 Kasenna, Inc. Method and system for reducing switching delays between digital video feeds using multicast slotted transmission technique
JP4585463B2 (ja) * 2006-02-15 2010-11-24 富士通株式会社 仮想計算機システムを機能させるためのプログラム
CN100353330C (zh) * 2006-03-10 2007-12-05 四川大学 一种基于ip网络的磁盘镜像方法
JP4808524B2 (ja) * 2006-03-17 2011-11-02 株式会社日立製作所 データ処理方法、データ処理システム及びデータ処理プログラム
WO2007140475A2 (en) * 2006-05-31 2007-12-06 Teneros, Inc. Extracting shared state information from message traffic
AU2012202229B2 (en) * 2006-08-04 2014-07-10 Tsx Inc. Failover system and method
US7734947B1 (en) 2007-04-17 2010-06-08 Netapp, Inc. System and method for virtual interface failover within a cluster
US7958385B1 (en) 2007-04-30 2011-06-07 Netapp, Inc. System and method for verification and enforcement of virtual interface failover within a cluster
US8130084B2 (en) * 2007-04-30 2012-03-06 International Business Machines Corporation Fault tolerant closed system control using power line communication
US8346719B2 (en) 2007-05-17 2013-01-01 Novell, Inc. Multi-node replication systems, devices and methods
US8818936B1 (en) 2007-06-29 2014-08-26 Emc Corporation Methods, systems, and computer program products for processing read requests received during a protected restore operation
US8421614B2 (en) * 2007-09-19 2013-04-16 International Business Machines Corporation Reliable redundant data communication through alternating current power distribution system
US7870374B2 (en) * 2007-09-27 2011-01-11 International Business Machines Corporation Validating physical and logical system connectivity of components in a data processing system
US8489554B2 (en) 2007-10-05 2013-07-16 Ge Intelligent Platforms, Inc. Methods and systems for operating a sequence of events recorder
US9201745B2 (en) * 2008-01-23 2015-12-01 Omx Technology Ab Method of improving replica server performance and a replica server system
US8688798B1 (en) 2009-04-03 2014-04-01 Netapp, Inc. System and method for a shared write address protocol over a remote direct memory access connection
CN102216726A (zh) * 2009-04-24 2011-10-12 株式会社东京技术 渐开线齿轮齿廓测量方法
US9256598B1 (en) 2009-08-19 2016-02-09 Emc Corporation Systems, methods, and computer readable media for copy-on-demand optimization for large writes
WO2012011781A2 (ko) * 2010-07-22 2012-01-26 엘지전자 주식회사 이동성이 없는 유휴상태 단말용 하향링크 데이터를 송신 및 수신하기 위한 장치 및 그 방법
GB201016079D0 (en) * 2010-09-24 2010-11-10 St Microelectronics Res & Dev Apparatus & method
US8706834B2 (en) 2011-06-30 2014-04-22 Amazon Technologies, Inc. Methods and apparatus for remotely updating executing processes
EP2701065B1 (de) * 2012-08-24 2015-02-25 Siemens Aktiengesellschaft Verfahren zum Betreiben eines redundanten Automatisierungssystems
US9251002B2 (en) 2013-01-15 2016-02-02 Stratus Technologies Bermuda Ltd. System and method for writing checkpointing data
US10185631B2 (en) * 2013-07-04 2019-01-22 Data Deposit Box Inc. System and method of performing continuous backup of a data file on a computing device
US9965363B2 (en) 2013-12-14 2018-05-08 Netapp, Inc. Techniques for LIF placement in SAN storage cluster synchronous disaster recovery
WO2015102873A2 (en) 2013-12-30 2015-07-09 Stratus Technologies Bermuda Ltd. Dynamic checkpointing systems and methods
WO2015102874A2 (en) 2013-12-30 2015-07-09 Stratus Technologies Bermuda Ltd. Method of delaying checkpoints by inspecting network packets
WO2015102875A1 (en) 2013-12-30 2015-07-09 Stratus Technologies Bermuda Ltd. Checkpointing systems and methods of using data forwarding
WO2015157896A1 (zh) * 2014-04-14 2015-10-22 华为技术有限公司 一种云计算架构下的容灾方案配置方法及装置
EP3110106B1 (en) * 2014-04-14 2019-11-06 Huawei Technologies Co., Ltd. Disaster recovery data center configuration method and apparatus in cloud computing architecture
US9558143B2 (en) * 2014-05-09 2017-01-31 Micron Technology, Inc. Interconnect systems and methods using hybrid memory cube links to send packetized data over different endpoints of a data handling device
US9830237B2 (en) * 2015-09-25 2017-11-28 Netapp, Inc. Resynchronization with compliance data preservation
RU170236U1 (ru) * 2016-09-19 2017-04-18 Федеральное государственное бюджетное образовательное учреждение высшего образования "Томский государственный университет систем управления и радиоэлектроники" (ТУСУР) Резервированная многоканальная вычислительная система
EA201800181A1 (ru) * 2018-03-30 2019-10-31 Система управления сетью pos-терминалов
US11947465B2 (en) 2020-10-13 2024-04-02 International Business Machines Corporation Buffer overflow trapping

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4471429A (en) * 1979-12-14 1984-09-11 Honeywell Information Systems, Inc. Apparatus for cache clearing
US4530052A (en) * 1982-10-14 1985-07-16 Honeywell Information Systems Inc. Apparatus and method for a data processing unit sharing a plurality of operating systems
US4590554A (en) * 1982-11-23 1986-05-20 Parallel Computers Systems, Inc. Backup fault tolerant computer system
US4615001A (en) * 1984-03-29 1986-09-30 At&T Bell Laboratories Queuing arrangement for initiating execution of multistage transactions
US4658351A (en) * 1984-10-09 1987-04-14 Wang Laboratories, Inc. Task control means for a multi-tasking data processing system
US4979108A (en) * 1985-12-20 1990-12-18 Ag Communication Systems Corporation Task synchronization arrangement and method for remote duplex processors
SE454730B (sv) * 1986-09-19 1988-05-24 Asea Ab Forfarande och datorutrustning for stotfri omkoppling av funktionen fran aktiva enheter till beredskapsenheter i en centralenhet
US4959768A (en) * 1989-01-23 1990-09-25 Honeywell Inc. Apparatus for tracking predetermined data for updating a secondary data base
DE69021712T2 (de) * 1990-02-08 1996-04-18 Ibm Wiederanlaufkennzeichnungsmechanismus für fehlertolerierende Systeme.

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013033493A (ja) * 2006-08-04 2013-02-14 Tsx Inc フェイルオーバシステムおよび方法
JP2014002751A (ja) * 2006-08-04 2014-01-09 Tsx Inc フェイルオーバシステムおよび方法
US8909977B2 (en) 2006-08-04 2014-12-09 Tsx Inc. Failover system and method

Also Published As

Publication number Publication date
BR9106875A (pt) 1993-07-20
CA2091993A1 (en) 1992-03-25
DE69125840T2 (de) 1997-10-23
FI101432B1 (fi) 1998-06-15
DE69125840D1 (de) 1997-05-28
FI931276A (fi) 1993-05-21
AU8431091A (en) 1992-04-15
FI101432B (fi) 1998-06-15
KR0137406B1 (ko) 1998-07-01
CA2091993C (en) 1998-12-22
US5157663A (en) 1992-10-20
WO1992005487A1 (en) 1992-04-02
NO931062L (no) 1993-05-24
RU2108621C1 (ru) 1998-04-10
EP0550457A1 (en) 1993-07-14
NO302986B1 (no) 1998-05-11
NO931062D0 (no) 1993-03-23
JP3156083B2 (ja) 2001-04-16
EP0550457B1 (en) 1997-04-23
US5455932A (en) 1995-10-03
EP0550457A4 (en) 1995-10-25
FI931276A0 (fi) 1993-03-23
AU660939B2 (en) 1995-07-13
ATE152261T1 (de) 1997-05-15

Similar Documents

Publication Publication Date Title
JPH06504389A (ja) フォルトトレラント・コンピュータ装置
JP3694273B2 (ja) 多重パスi/o要求機構を有するデータ処理システム
US11755435B2 (en) Cluster availability management
JP2505928B2 (ja) フォ―ルト・トレラント・システムのためのチェックポイント機構
Borg et al. A message system supporting fault tolerance
US6640291B2 (en) Apparatus and method for online data migration with remote copy
US6950915B2 (en) Data storage subsystem
CA2921108C (en) System and method for failover
US20090300414A1 (en) Method and computer system for making a computer have high availability
US6785840B1 (en) Call processor system and methods
JPH05508506A (ja) 耐障害性回路網ファイルシステム
JPH10307732A (ja) メッセージ伝送方法
US20090089787A1 (en) Method and System for Migrating Critical Resources Within Computer Systems
JPH06110760A (ja) 二重化メモリの保守方法
US6728818B2 (en) Dual storage adapters utilizing clustered adapters supporting fast write caches
JP2002108640A (ja) デュープレックスシステム、シングルプロセッサシステム、及びサブボード
JP3393737B2 (ja) 情報処理システムのコマンド送受信方法
JP2772068B2 (ja) 引き継ぎ情報のデータ保証処理方法
JP2929864B2 (ja) 構成制御方法
JPH11345180A (ja) 分散処理システムとその処理方法
JP3463696B2 (ja) オンラインガーベッジコレクション処理方法
JPH11120017A (ja) 自動採番システム、二重系システム、クラスタシステム
JPH10289122A (ja) ホットスタンバイシステムにおける系間共用ディスクの高速切り替え方式
JP2005043940A (ja) 計算機システム

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090209

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090209

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100209

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100209

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110209

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120209

Year of fee payment: 11

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120209

Year of fee payment: 11