JP4165499B2 - コンピュータシステム及びそれを用いたフォールトトレラントシステム並びにその動作制御方法 - Google Patents

コンピュータシステム及びそれを用いたフォールトトレラントシステム並びにその動作制御方法 Download PDF

Info

Publication number
JP4165499B2
JP4165499B2 JP2004359272A JP2004359272A JP4165499B2 JP 4165499 B2 JP4165499 B2 JP 4165499B2 JP 2004359272 A JP2004359272 A JP 2004359272A JP 2004359272 A JP2004359272 A JP 2004359272A JP 4165499 B2 JP4165499 B2 JP 4165499B2
Authority
JP
Japan
Prior art keywords
bridge
pseudo
bus
computer system
configuration
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
Application number
JP2004359272A
Other languages
English (en)
Other versions
JP2006171819A (ja
Inventor
文俊 水谷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2004359272A priority Critical patent/JP4165499B2/ja
Priority to AU2005239652A priority patent/AU2005239652A1/en
Priority to EP05026639A priority patent/EP1669881A3/en
Priority to CA002529345A priority patent/CA2529345A1/en
Priority to CNB2005100228540A priority patent/CN100428178C/zh
Priority to US11/299,913 priority patent/US7725761B2/en
Publication of JP2006171819A publication Critical patent/JP2006171819A/ja
Application granted granted Critical
Publication of JP4165499B2 publication Critical patent/JP4165499B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/004Error avoidance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • 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/1629Error detection by comparing the output of redundant processing systems
    • G06F11/1633Error detection by comparing the output of redundant processing systems using mutual exchange of the output between the redundant processing components

Landscapes

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

Description

本発明はコンピュータシステム及びそれを用いたフォールトトレラントシステム並びにその動作制御方法及びそのプログラムに関し、特にフォールトトレラントコンピュータシステムの改良に関するものである。
近年、広く流通されている汎用CPUの性能向上は著しく、このような汎用CPUを用いたワークステーションやサーバに、汎用オペレーティングシステム(OS)を搭載して高性能で安価なシステムが提供されるようになっている。その結果、従来であれば、非常に高価な大型コンピュータが用いられてきた用途においても、高性能で安価な汎用CPUを使用したシステムが使われるようになってきた。
一方、市場においては24時間システムを連続稼動させる必要のあるミッションクリティカルな用途も増加している。このような分野では、システムダウンをいかに抑えてシステムを構築するかが重要なポイントとなっている。
しかしながら、このような汎用CPUや汎用OSでは、高信頼性のための機能であるCPU自体の故障検出機能や、汎用OSにおけるハードウェア故障に際して、故障の通知手段や障害時の応答に対する傷害処理の定義がないために、ハードウェア故障はすなわちシステム停止となってしまう。このために、高信頼性システムの実現のためには、特別な周辺回路の追加や専用OSの開発が必要となっており、通常の汎用CPUシステムの開発速度に追従した高信頼性システムの開発が困難となっている。こういったことから、通常システムと高信頼性システムでの価格性能差は広まる傾向にある。
このため、汎用CPUを用いたシステムと共通性の高い高信頼性コンピュータシステム、すなわちフォールトトレラントコンピュータシステムの実現方法としては、例えば、特許文献1に示されるように、同一クロックで同期して同一処理を実行するCPU、CPUの故障を検出して障害CPUを切離す装置、およびIOの障害に応じてCPUの指示によって障害IOパスを切離すシステムが提案されている。しかしながら、広く用いられている汎用OSでは、ハードウエアの障害に対する通知方法や、障害処理の機能が提供されていないためシステム停止となってしまう問題があった。
従って、汎用OSを使用するためには、ハードウェアの故障とOSとは完全に分離した構成をとる必要がある。例えば、特許文献2を参照すると、計算エレメント(CE)とIO制御部(IOP)を、各々コンピュータシステム1台ずつで構成し、各々の要素を複数接続して冗長化を図っている。そして、各要素間で通信を行い、異常が検出されたCEやIOPを切離す。
例えば、IO制御部の場合、OSからはハードウェアが仮想化されており、障害の発生したIO制御部は停止状態となる可能性があるが、この障害が直接OSに影響することはなく、冗長化されている残りのIO制御部が異常を検知して、正常な応答をOSに返すことで、障害発生を隠蔽することが出来る。
特開平09−034809号公報 特表2001−523855号公報
しかしながら、このようなシステムでは、CPUおよびIOそれぞれに1台のコンピュータが必要となっており、さらに冗長構成とするためには冗長化に必要な台数のコンピュータを用いる必要がある。更に、各コンピュータで非同期的あるいは異なる動作をさせていることから、搭載するOSライセンスが余分に必要となり、システムが高価となってしまう問題があった。
ここで、汎用OS上で標準的なPnP(Plug & Play )ソフトウェアを用いることにより、バス上のIOデバイスやIOブリッジの接続構成を動的に変化させることが可能なシステムがあり、このようなPnPソフトウェアを用いたシステムにより冗長構成を採用して高信頼性のフォールトトレラントコンピュータシステムを構築することが考えられる。
しかしながら、IOブリッジのPnP処理においては、完全な動的構成変化には対応されていない。例えば、IOブリッジの接続時に当該IOブリッジ配下に接続されるデバイスの要求するメモリ空間の割当量や、デバイスの個数が確定されないことから、PnP制御ソフトウエアあるいはOSの制限(典型的には、固定値で規定される)により、接続されたIOブリッジに対して自由にメモリ空間の割り当てが出来ず、IOブリッジ配下のデバイスの個数や種類に制限がついてしまう問題がある。
例えば、IOブリッジのPnP接続を行う場合に、IOブリッジ配下にどれだけの資源が必要であるかは、OSからは判断することが出来ないために、一定のメモリ空間を割り当てが行われてしまい、以後は変更不能となっている。このため、接続されたIOブリッジ配下に、さらに別のIOブリッジやデバイスを接続する際には、最初のIOブリッジに割り当てられてしまった以上のメモリ空間を必要とするIOブリッジやデバイスを接続することは出来ない。
また、複数デバイスを接続する場合でも、必要となるメモリ空間がIOブリッジに割り当てられたメモリ空間を越えてしまう場合があるために、接続デバイス数によっては、メモリ資源の割り当てに失敗するデバイスが出てくる。このようなメモリ資源確保の制限は、PnP接続したIOブリッジ配下に、複数のIOブリッジを接続するような、多段IOブリッジ構成のシステムの場合に大きな問題となる。
従来は、以上のような制限のために、PnPソフトウェアを用いたシステムでフォールトトレラントコンピュータシステムを構築するには、OS標準のPnP制御ソフトウェアやOS自身の改変を行って、IOブリッジに対する資源割り当てを十分に確保できるようにする必要がある。
本発明の目的は、既存の汎用OS機能の改変なく冗長構成を構築可能とした高信頼性及び高可用性のコンピュータシステム及びそれを用いたフォールトトレラントシステム並びにその動作制御方法及びプログラムを提供することである。
本発明によるコンピュータシステムは、CPUと、メモリと、バスと、IOデバイスを前記バスに接続するためのIOブリッジとを含むコンピュータシステムであって、前記バスに他のシステムを接続した冗長構成時には前記バスから切離され、前記バスから前記他のシステムが物理的に切離されているシステム単体時には前記他のシステムにおけるIOブリッジをエミュレートすべく当該IOブリッジに設定されているシステムのコンフィグレーション情報を保持する疑似IOブリッジを含むことを特徴とする。
本発明によるフォールトトレラントシステムは、上記のコンピュータシステムを冗長接続構成としたことを特徴とする。
本発明によるフォールトトレラントシステムの動作制御方法は、互いにバスにより接続されて冗長構成とされた第一及び第二のコンピュータシステムを含み、前記システムの各々は、CPUと、メモリと、これらCPU及びメモリ、更には前記バスに接続されたホストコントローラと、IOデバイスを前記バスに接続するためのIOブリッジと、他のシステムにおけるIOブリッジをエミュレートする疑似IOブリッジとを有するフォールトトレラントシステムの動作制御方法であって、前記システム単体時において、前記ホストコントローラにより、前記疑似IOブリッジに他システムのIOブリッジに設定されているシステムの初期コンフィグレーション情報を保持せしめるステップと、前記冗長構成とされた時に、前記ホストコントローラにより、前記疑似IOブリッジを前記バスから切離し、前記疑似IOブリッジに保持された前記初期コンフィグレーション情報を他システムのIOブリッジに複写するステップとを含むことを特徴とする。
本発明によるプログラムは、互いにバスにより接続されて冗長構成とされた第一及び第二のコンピュータシステムを含み、前記システムの各々は、CPUと、メモリと、これらCPU及びメモリ、更には前記バスに接続されたホストコントローラと、IOデバイスを前記バスに接続するためのIOブリッジと、他のシステムにおけるIOブリッジをエミュレートする疑似IOブリッジとを有するフォールトトレラントシステムの動作制御方法を前記コンピュータシステムに実行させるためのプログラムであって、
前記システム単体時において、前記ホストコントローラにより、前記疑似IOブリッジに他システムのIOブリッジに設定されているシステムの初期コンフィグレーション情報を保持せしめる処理と、
前記冗長構成とされた時に、前記ホストコントローラにより、前記疑似IOブリッジを前記バスから切離し、前記疑似IOブリッジに保持された前記初期コンフィグレーション情報を他システムのIOブリッジに複写する処理と、
を含むことを特徴とする。
本発明による第1の効果は、PnPに対応できないIO空間をもつIOデバイスの二重化を実現できることである。その理由は、PnPに対応できないIOデバイスは本来システムに必ず存在しなければならないデバイスであるが、仮想的にこのようなデバイスを持たせることで、ハードウェア実体を物理的に切離しても、常に存在するデバイスとしてソフトウェアに見せること可能となるためである。その結果、PnP制御ソフトウェアを用いることなく、BIOS(Basic Input/Output System )の制御によって容易に冗長構成を構築することが可能となる。
本発明による第2の効果は、多段のIOブリッジ構成を持つシステムでのPnP制御において、汎用OSのPnP制御ソフトウェアを利用できることである。その理由は、PnP接続されるIOブリッジをシステム二重化前に仮想的に持つため、予め必要十分なメモリ資源をBIOSで確保できるためである。その結果、汎用OSのPnP制御ソフトウェアを用いて、容易に冗長構成を構築することが可能となる。
本発明による第3の効果は、ソフトウエアからは二重化ハードウェアを意識する必要がなく、汎用のOSを使用できることである。その理由は、各システムのCPUはロックステップ動作により同一動作を行っているために、ソフトウェアはCPUの二重化を意識する必要がなく、またソフトウェアから見えるシステムのブリッジ構成は、ハードウェアの二重化前後で、各システム共、常に同一の構成であるためである。その結果、汎用OSを用いて、容易に冗長構成を構築することが可能となる。
以下に図面を参照しつつ本発明の実施の形態につき説明する。図1は本発明のフォールトトレラントシステムを構成するための単体のコンピュータシステムの構成である。ホストコントローラ21には、CPU11とメモリ12とが接続され、バス100に接続される。このバス100の配下に接続されるIOブリッジ23は、ホットプラグ対応デバイス、またはホットプラグ対応デバイスを接続する別のIOブリッジ40,41を接続することができる。
バス(CPU11から単一のブリッジレベルを介して接続されるバス)100は、ホストコントローラ21やIOブリッジ23を内包した1つのブリッジLSI20内部に、仮想バスとして構成されている。更に、仮想バス100には、擬似IOブリッジ25が接続されている。この疑似IOブリッジ25はブリッジLSI20内部に構成される論理デバイスとなっており、IOブリッジの実体に対する設定情報を保持する機能を有している。この設定情報は、少なくともデバイス識別情報やメモリ空間割り当て情報等のコンフィグレーション情報である。この設定情報の初期値は、予めOSにより設定されるものとする。
後に図2及び図3を用いて詳述するが、二重化を行うために、別のシステム(図2ではシステムB)と接続されることにより、この擬似IOブリッジ25は対応するIOブリッジの実体(図2ではIOブリッジ23B)が接続されている時は、バス100から切離されて見えなくなる。この二重化の際には、バス100は別のシステム(B)と共有される。
また、レガシブリッジ22及び疑似レガシブリッジ24がバス100に接続されており、またレガシブリッジ22には、レガシバスリソース30が接続されている。サイドバンド通信ライン101は、ホストコントローラ21が、バス100を介することなく、疑似IOブリッジ25や疑似レガシブリッジ24に対するアクセスを可能とするものである。
従って二重化の際には、疑似IOブリッジ25に保持されている初期設定情報は、ホストコントローラ21により、サイドバンド通信ライン101を介してアクセスされて、別のシステムのIOブリッジの実体に複写されるものとする。
図2は図1のシステムを2組のシステムA,Bとして二重化構成にしたシステムである。図2において、システムAの構成要素には、図1の同等要素と同一なものは同一数字に“A”を付して示しており、システムBの構成要素には、図1の同等要素の数字に“B”を付して示している。
ブリッジLSI20A,2B0間の接続により、仮想バス100を介して、各システムのCPU11A,11Bは、IOブリッジ23A,23Bおよびその配下のIOブリッジ40A,40Bと、IOデバイス41A,A1Bとにアクセスできる。
ここで、各システムA,BのCPU11A,11B、メモリ12A,12B、ホストコントローラ21A,21Bは、同一クロックサイクルにおいて、両システム間で同一の処理動作を行うことで、1つのシステムのCPUとして動作するようになっている(点線のサークルで囲む部分:他の図4,5でも同様とする)。
二重化構成として当該システムが動作中においては、IOブリッジの実体に設定されている情報は変化するので、擬似IOブリッジ25Aは、接続されているシステムBのIOブリッジの実体23Bに対するアクセスをスヌーピング(Snooping)して、このIOブリッジの実体23Bに設定されるコンフィギュレーション情報を保持するよう動作しており、これにより、疑似IOブリッジ25Aには、常に最新のIOブリッジの実体23Bの設定情報が複写されることになる。
一方、擬似IOブリッジ25Bも、接続されているシステムAのIOブリッジの実体23Aに対するアクセスをスヌーピングしており、ブリッジの実体23Aに設定される最新のコンフィギュレーション情報を保持するようになっている。
各擬似IOブリッジ25A,25Bに保持されているコンフィギュレーション情報は、IOブリッジの実体が接続されてバス100から見えなくても、ホストコントローラ21A,21Bはサイドバンド通信101を通してアクセスできる、これにより各疑似IOブリッジの設定情報を、IOブリッジの実体にそれぞれ複写することは上述した。あるいは、IOブリッジへのリードアクセスに対しては、擬似IOブリッジがレスポンスを返し、ライトアクセスは擬似IOデバイスはスヌーピングをして、実体IOブリッジにもアクセスを透過させることで、擬似IOブリッジに保持されているコンフィギュレーション情報を実体IOブリッジに複写させる操作を、簡便化させることもできる。
図1のシステムを用いて図2の二重化構成とするための動作について、図3のフローチャートを参照して説明する。先ず、電源投入時には(ステップS1)、図1の構成、すなわちシステムAのみの構成である。この時点でのIOブリッジ24Aを含めたIOデバイス41Aへのメモリ資源割り当ては、OSにおける基本ソフトウェアであるBIOS(Basic Input/Output System )によって行われる(ステップS2)。
この時、擬似IOブリッジ25Aに対するメモリ空間割り当ては、図2の如く二重化した際に、IOブリッジ実体23Bの配下に接続されるデバイス、および将来、新規に追加接続されるであろうデバイスの要求するメモリ空間を含めて、十分な大きさを確保して設定されるものとする。この時割り当てられたメモリ空間はOS起動後にもそのまま利用される。
図1の状態で、電源を投入後、OS起動を行ったシステムをシステムAとし、この状態でシステムBが接続されると(ステップS3)、図2の冗長構成となる。システムAとBとの接続により、図示せぬ接続コントローラからの割り込み通知によるBIOSコールによって(ステップS4)、BIOSはシステムA,B間のバス100の接続を行う(ステップS5)。この接続コントローラは、例えば、PCI(Peripheral Component Interconnect )ホットプラグコントローラのようなIOインタフェースの活線挿抜の制御を行うマザーボード上の回路であり、公知の回路であるので、その説明は省略する。
この時、システムAの擬似IOブリッジ25Aはバス100から切離され、それに代わって、システムBのIOブリッジの実体23Bが接続されることになる(ステップS6)。そして、ホストコントローラはシステムAの擬似IOブリッジ25Aに設定されている設定値を、サイドバンド通信101より読み出して、システムBのIOブリッジの実体23Bに複写することで初期化する(ステップS7)。システムBの疑似IOブリッジとシステムAのIOブリッジの実体についても、同様である。
この処理の後、OSのPnP制御ソフトウェアが呼び出され(ステップS8)、IOブリッジの構成変化はソフトウェア上から見えないため、IOブリッジ配下に接続されるデバイスに対してのみ、サーチやメモリ資源の割り当てがPnP制御ソフトウェアによって行われる(ステップS9)。
また、PC/AT(Personal Computer/Advanced Technology )アーキテクチャ(PC/AT互換機技術)では、レガシブリッジ22A,22Bおよびレガシバスリソース30A,30Bは、システムで単一である必要があることから、ホストコントローラ21A,21Bの機能として、レガシブリッジ22A,22Bおよびレガシバスリソース30A,30Bへのアクセスが、いずれかのレガシブリッジ/レガシバスリソースに送られるように制御される。
レガシブリッジ/レガシバスリソースはシステムで単一であると共に、システムに必ず存在しなければならないデバイスであることから、擬似レガシブリッジ24A,24Bは、実際のレガシブリッジの実体22A,22B、レガシバスリソース30A,30Bが故障等で使用できなくなったり、保守交換等で取り外された際に、ホストコントローラ21A,21Bのアクセスを切り替えるまで、レガシブリッジ/レガシバスリソースの機能代行を果たすことが出来る。
このように、二重化システムにおいて、仮想バス100に接続される互いに対応するIOブリッジを、それぞれのシステムで疑似IOブリッジとして内蔵させて、システムが互いに物理的に切離されている場合には、疑似IOブリッジが、他のシステムの実際のIOブリッジをエミュレートするようにすることができ、よって、IOブリッジ自身での、いわゆるPnPイベントが発生しないかのように振舞うことが可能になる。
更に述べると、接続・切離しの発生する仮想バス上で、仮想バスの接続・切離しに影響される実際のIOブリッジに対応する擬似IOブリッジを提供することによって、標準のPnPソフトウェアでは自由なメモリ空間割り当てが不可能であるIOブリッジの動的な接続・切り離しがOSから隠蔽される。そして、電源投入時からIOブリッジに対して十分なメモリ資源を割り当てることができるため、OSやその標準PnP制御ソフトウェアを改変することなく、ブリッジ配下に接続するデバイスに対して、必要なメモリ資源を割り当てることが可能になる。
次に、本発明の他の実施の形態について説明する。図1において、疑似IOブリッジ25は、標準PnPソフトウエアがメモリ空間を確保するための最低限の機能だけの実装でもよい。一方、実際のデバイスの全機能、あるいは一部機能を実装し、実デバイス機能の一時的な代行をさせることもできる。
図1においては、ホストコントローラ21、IOブリッジ23、疑似レガシブリッジ24、疑似IOブリッジ25は1つのLSI20に内蔵されているが、各々のIOブリッジ、疑似IOブリッジをLSI20の外部に別のLSIとして接続してもよい。
図2においては、システムAの擬似IOブリッジ25Aに設定されている設定値を、サイドバンド通信ライン101により読み出して、システムBのIOブリッジの実体23Bに複写することにより、初期化を行っているが、システムAの擬似IOブリッジ25Aを一時的にシステムBのIOブリッジの実体23Bとは異なるデバイスや、異なるファンクションに移す機能を設けて、バス100経由で複写してもよい。
図4は本発明の更に他の実施の形態を示す図であり、図2と同等部分は同一符号により示している。図4において、システムAには、システムBのIOブリッジ23Bの代行をする擬似IOブリッジ25Aに加え、システムBのIOブリッジ23Bの次段に接続されるIOブリッジ40Bの代行をする擬似IOブリッジ32Aが接続されている。このように、IOブリッジが多段に接続されるような構成において、システムの構成が予め限定されている場合には、擬似IOブリッジを多段に接続されるようにすることも可能である。また、擬似IOブリッジの機能をIOブリッジ毎にディセーブルする機能を追加することにより、図2のような構成に見せることも可能である。
図5はシステムの冗長化を3重化構成で実現している。システムAの各々の擬似IOブリッジ25A,26Aは、それぞれシステムB,CのIOブリッジの実体23B,23Cに対応する。同じく、システムBの各々の擬似IOブリッジ25B,26Bは、それぞれシステムA,CのIOブリッジの実体23A,23Cに対応し、システムCの各々の擬似IOブリッジ25C,26Cは、それぞれシステムA,BのIOブリッジの実体23A,23Bに対応する。
このように、各システムで持つ擬似IOブリッジの数に応じて、システムの冗長度を高めることが可能となる。更に、各擬似IOブリッジのディセーブル機能を追加することで、システム冗長度に応じた構成にすることも可能となる。
以上述べたように、本発明によるフォールトトレラントコンピュータシステムでは、汎用CPUと汎用OSとの組み合わせによるシステム構成(ここでは、一般にPC/ATアーキテクチャ)を維持しながら、ロックステップ動作をするCPUハードウェアを二重化し、また、IO制御部をソフトウェア制御による冗長化(ソフトウエアRAID1など)を行って、高信頼性コンピュータシステムを構築するこてができる。
更に、保守交換などで、冗長CPUや冗長IOコントローラを切離す際に、システムの可用性を損なうことのないように、システム稼動中に動的に、論理的なバスあるいは物理的なバスを境界にして、汎用のPnP/Hot Plug制御ソフトウェアを用いて、ハードウェア資源を接続して冗長化、あるいは冗長化されているハードウエア資源の切離しを可能とし、既存の汎用OS機能の改変なく高信頼性・高可用性のフォールトトレラントコンピュータシステムを実現することができることになる。
なお、図3に示した動作フローはコンピュータ読み取り可能なプログラム(ソフトウェア)で実現されることは明白である。
本発明の実施の形態のシステム構成図である。 図1の構成を用いて構築されたフォールトトレラントコンピュータシステムの例である。 図2の動作を説明するフローチャートである。 図1の構成を用いて構築されたフォールトトレラントコンピュータシステムの他の例である。 図1の構成を用いて構築されたフォールトトレラントコンピュータシステムの更に他の例である。
符号の説明
11 CPU
12 メモリ
20 ブリッジLSI
21 ホストコントローラ
22 レガシブリッジ
23 IOブリッジ(実体)
24 疑似レガシブリッジ
25 疑似IOブリッジ
30 レガシバスリソース
40 IOブリッジ
41 IOデバイス

Claims (9)

  1. CPUと、メモリと、バスと、IOデバイスを前記バスに接続するためのIOブリッジとを含むコンピュータシステムであって、前記バスに他のシステムを接続した冗長構成時には前記バスから切離され、前記バスから前記他のシステムが物理的に切離されているシステム単体時には前記他のシステムにおけるIOブリッジをエミュレートすべく当該IOブリッジに設定されているシステムのコンフィグレーション情報を保持する疑似IOブリッジを含むことを特徴とするコンピュータシステム。
  2. 前記システム単体時における電源投入に応答して、前記疑似IOブリッジに対するメモリ空間の割当てをなす手段を、更に含むことを特徴とする請求項1記載のコンピュータシステム。
  3. 前記疑似IOブリッジは、前記他のシステムのIOブリッジの初期コンフィグレーション情報を保持することを特徴とする請求項1または2記載のコンピュータシステム。
  4. 前記冗長構成時に、前記疑似IOブリッジに保持されている前記初期コンフィグレーション情報を前記他のシステムのIOブリッジへ複写する手段を、更に含むことを特徴とする請求項3記載のコンピュータシステム。
  5. 前記疑似IOブリッジは、前記冗長構成時に、前記他のシステムのIOブリッジの最新のコンフィグレーション情報を保持するようにしたことを特徴とする請求項1〜4いずれか記載のコンピュータシステム。
  6. 請求項1〜5いずれか記載のコンピュータシステムを前記冗長構成としたことを特徴とするフォールトトレラントシステム。
  7. 互いにバスにより接続されて冗長構成とされた第一及び第二のコンピュータシステムを含み、前記システムの各々は、CPUと、メモリと、これらCPU及びメモリ、更には前記バスに接続されたホストコントローラと、IOデバイスを前記バスに接続するためのIOブリッジと、他のシステムにおけるIOブリッジをエミュレートする疑似IOブリッジとを有するフォールトトレラントシステムの動作制御方法であって、
    前記システム単体時において、前記ホストコントローラにより、前記疑似IOブリッジに他システムのIOブリッジに設定されているシステムの初期コンフィグレーション情報を保持せしめるステップと、
    前記冗長構成とされた時に、前記ホストコントローラにより、前記疑似IOブリッジを前記バスから切離し、前記疑似IOブリッジに保持された前記初期コンフィグレーション情報を他システムのIOブリッジに複写するステップと、
    を含むことを特徴とする動作制御方法。
  8. 前記冗長構成時に、前記疑似IOブリッジは、他のシステムのIOブリッジの最新のコンフィグレーション情報を保持するステップを、更に含むことを特徴とする請求項7記載の動作制御方法。
  9. 互いにバスにより接続されて冗長構成とされた第一及び第二のコンピュータシステムを含み、前記システムの各々は、CPUと、メモリと、これらCPU及びメモリ、更には前記バスに接続されたホストコントローラと、IOデバイスを前記バスに接続するためのIOブリッジと、他のシステムにおけるIOブリッジをエミュレートする疑似IOブリッジとを有するフォールトトレラントシステムの動作を前記コンピュータシステムに実行させるためのプログラムであって、
    前記システム単体時において、前記ホストコントローラにより、前記疑似IOブリッジに他システムのIOブリッジに設定されているシステムの初期コンフィグレーション情報を保持せしめる処理と、
    前記冗長構成とされた時に、前記ホストコントローラにより、前記疑似IOブリッジを前記バスから切離し、前記疑似IOブリッジに保持された前記初期コンフィグレーション情報を他システムのIOブリッジに複写する処理と、
    を含むことを特徴とするコンピュータ読み取り可能なプログラム。
JP2004359272A 2004-12-13 2004-12-13 コンピュータシステム及びそれを用いたフォールトトレラントシステム並びにその動作制御方法 Expired - Fee Related JP4165499B2 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2004359272A JP4165499B2 (ja) 2004-12-13 2004-12-13 コンピュータシステム及びそれを用いたフォールトトレラントシステム並びにその動作制御方法
AU2005239652A AU2005239652A1 (en) 2004-12-13 2005-11-29 Computer system, fault tolerant system using the same and operation control method and program thereof
EP05026639A EP1669881A3 (en) 2004-12-13 2005-12-06 Computer system, fault tolerant system using the same and operation control method and program thereof
CA002529345A CA2529345A1 (en) 2004-12-13 2005-12-08 Computer system. fault tolerant system using the same and operation control method and program thereof
CNB2005100228540A CN100428178C (zh) 2004-12-13 2005-12-12 计算机系统、故障容许系统及控制方法和程序
US11/299,913 US7725761B2 (en) 2004-12-13 2005-12-13 Computer system, fault tolerant system using the same and operation control method and program thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004359272A JP4165499B2 (ja) 2004-12-13 2004-12-13 コンピュータシステム及びそれを用いたフォールトトレラントシステム並びにその動作制御方法

Publications (2)

Publication Number Publication Date
JP2006171819A JP2006171819A (ja) 2006-06-29
JP4165499B2 true JP4165499B2 (ja) 2008-10-15

Family

ID=35816768

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004359272A Expired - Fee Related JP4165499B2 (ja) 2004-12-13 2004-12-13 コンピュータシステム及びそれを用いたフォールトトレラントシステム並びにその動作制御方法

Country Status (6)

Country Link
US (1) US7725761B2 (ja)
EP (1) EP1669881A3 (ja)
JP (1) JP4165499B2 (ja)
CN (1) CN100428178C (ja)
AU (1) AU2005239652A1 (ja)
CA (1) CA2529345A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8479210B2 (en) 2009-10-20 2013-07-02 International Business Machines Corporation Evenly distributing workload and providing a predictable failover scenario in a data replication system
JP5760847B2 (ja) * 2011-08-22 2015-08-12 日本電気株式会社 情報処理装置、情報処理システム、情報処理装置の異常兆候検出方法、及び異常兆候検出プログラム
US10613502B2 (en) 2014-07-30 2020-04-07 Siemens Aktiengesellschaft Assigning a control authorization to a computer
CN107505883B (zh) * 2017-07-31 2020-05-19 北京航天自动控制研究所 一种基于微控制器的高可靠双冗余集成控制模块

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5522050A (en) * 1993-05-28 1996-05-28 International Business Machines Corporation Bus-to-bus bridge for a multiple bus information handling system that optimizes data transfers between a system bus and a peripheral bus
DE19580606C2 (de) * 1994-06-08 2003-06-18 Intel Corp Plattenlaufwerksverbinderschnittstelle zur Verwendung an einem PCI-Bus
JP3595033B2 (ja) 1995-07-18 2004-12-02 株式会社日立製作所 高信頼化コンピュータシステム
JPH0981505A (ja) 1995-09-08 1997-03-28 Toshiba Corp コンピュータシステム
JP3386640B2 (ja) 1995-09-29 2003-03-17 株式会社東芝 コンピュータシステムおよびこのシステムで使用される拡張ユニット
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
US5790397A (en) * 1996-09-17 1998-08-04 Marathon Technologies Corporation Fault resilient/fault tolerant computing
JPH10187304A (ja) 1996-12-25 1998-07-14 Toshiba Corp コンピュータシステムおよびそのシステムにおける周辺デバイスの挿抜制御方法
DE69804489T2 (de) 1997-11-14 2002-11-14 Marathon Technologies Corp., Boxboro Verfahren zur erhaltung von synchronisierter ausführung bei fehler-betriebssicheren/ fehlertoleranten rechnersystemen
US6112311A (en) * 1998-02-20 2000-08-29 International Business Machines Corporation Bridge failover system
US5991900A (en) * 1998-06-15 1999-11-23 Sun Microsystems, Inc. Bus controller
US6718415B1 (en) * 1999-05-14 2004-04-06 Acqis Technology, Inc. Computer system and method including console housing multiple computer modules having independent processing units, mass storage devices, and graphics controllers
US6691257B1 (en) * 2000-04-13 2004-02-10 Stratus Technologies Bermuda Ltd. Fault-tolerant maintenance bus protocol and method for using the same
US6633996B1 (en) * 2000-04-13 2003-10-14 Stratus Technologies Bermuda Ltd. Fault-tolerant maintenance bus architecture
US6708283B1 (en) * 2000-04-13 2004-03-16 Stratus Technologies, Bermuda Ltd. System and method for operating a system with redundant peripheral bus controllers
US6529989B1 (en) * 2000-05-03 2003-03-04 Adaptec, Inc. Intelligent expansion ROM sharing bus subsystem
GB2399917B (en) * 2002-03-19 2005-01-19 Sun Microsystems Inc Computer system
GB2390442B (en) * 2002-03-19 2004-08-25 Sun Microsystems Inc Fault tolerant computer system
JP4368587B2 (ja) * 2003-01-14 2009-11-18 富士通株式会社 バスブリッジ回路、バス接続システム、及びバスブリッジ回路のデータエラー通知方法
US7024510B2 (en) * 2003-03-17 2006-04-04 Hewlett-Packard Development Company, L.P. Supporting a host-to-input/output (I/O) bridge
JP4048988B2 (ja) 2003-03-19 2008-02-20 日本電気株式会社 フォルトトレラントシステム及びそれに用いる同期化方法
JP4492035B2 (ja) 2003-04-21 2010-06-30 日本電気株式会社 データ処理装置
US7664796B2 (en) * 2004-10-13 2010-02-16 Microsoft Corporation Electronic labeling for offline management of storage devices

Also Published As

Publication number Publication date
US20060129735A1 (en) 2006-06-15
CN100428178C (zh) 2008-10-22
US7725761B2 (en) 2010-05-25
JP2006171819A (ja) 2006-06-29
CN1790283A (zh) 2006-06-21
EP1669881A3 (en) 2007-09-05
CA2529345A1 (en) 2006-06-13
EP1669881A2 (en) 2006-06-14
AU2005239652A1 (en) 2006-06-29

Similar Documents

Publication Publication Date Title
CN106776159B (zh) 具有故障转移的快速外围元件互连网络系统与操作方法
JP7474766B2 (ja) 高信頼性フォールトトレラントコンピュータアーキテクチャ
JP6098778B2 (ja) 冗長化システム、冗長化方法、冗長化システムの可用性向上方法、及びプログラム
US10114688B2 (en) System and method for peripheral bus device failure management
JP2004252591A (ja) 計算機システム、i/oデバイス及びi/oデバイスの仮想共有方法
US9372702B2 (en) Non-disruptive code update of a single processor in a multi-processor computing system
TWI774089B (zh) PCIe之自動分支的方法及系統
JP2009053946A (ja) 二重化コントーラ構成ブロックデバイス制御装置
JP4182948B2 (ja) フォールト・トレラント・コンピュータシステムと、そのための割り込み制御方法
US20210311889A1 (en) Memory device and associated flash memory controller
US7725761B2 (en) Computer system, fault tolerant system using the same and operation control method and program thereof
US7103639B2 (en) Method and apparatus for processing unit synchronization for scalable parallel processing
TWI840849B (zh) 計算系統、電腦實施方法及電腦程式產品
JP5511546B2 (ja) フォールトトレラントの計算機システム、複数の物理サーバとストレージ装置とに接続されるスイッチ装置、及び、サーバ同期制御方法
JP5733384B2 (ja) 情報処理装置
JP3365282B2 (ja) クラスタ接続マルチcpuシステムのcpuデグレード方式
JP5970846B2 (ja) 計算機システム及び計算機システムの制御方法
JP2011076528A (ja) Raidカードの冗長化方法及びraidカードの冗長化装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080415

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080616

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080708

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080721

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20110808

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110808

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120808

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130808

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees