学位論文要旨



No 211920
著者(漢字) 曽我,正和
著者(英字)
著者(カナ) ソガ,マサカズ
標題(和) リアルタイムコンピュータシステムにおけるフォールトトレラント構築技術に関する研究
標題(洋)
報告番号 211920
報告番号 乙11920
学位授与日 1994.09.22
学位種別 論文博士
学位種類 博士(工学)
学位記番号 第11920号
研究科 工学系研究科
専攻 電気工学専攻
論文審査委員 主査: 東京大学 教授 田中,英彦
 東京大学 教授 高木,幹雄
 東京大学 教授 正田,英介
 東京大学 教授 齋藤,忠夫
 東京大学 教授 濱田,喬
 東京大学 教授 坂内,正夫
内容要旨

 現在のコンピュータは、スーパーコンピュータから家電品の片隅に埋め込まれたマイクロプロセッサに至るまで、大小さまざまの姿で社会基盤や企業活動や個人の生活に深くかかわっている。これらのコンピュータが一旦故障したときには、社会や企業に広く深刻な影響を与える場合が増大している。これを防ぐ技術がフォールトトレラント構築技術であり、システム内のどこかに発生した部分的障害を、システム全体としては使命続行に影響ないように抑制したり回避したりするシステム技術である。本研究は、リアルタイムコンピュータを用いて、リアルタイム制御システムをフォールトトレラントに構築する場合を研究対象とし、その運転条件の分析を行ない、それらの解決策としてのシステム構築技術を示す。

 コンピュータ、とりわけその中枢であり中央処理装置(CPU)が異常動作をしたとき、システム全体に悪影響が及ぶ前に、異常を検知することがまず第一の問題である。古くからオンライントランザクションプロセシングシステムで常識的に使用されてきた2重系出力照合によるエラー検知は、検知はするもののいづれの系が正常か異常か判断がつかない。そのため、検知のあと、改めて各系において正常性を診断するプログラムを走らせる必要がある。その間、全体系はストップするので、リアルタイム制御システムには不向きであることを論ずる。更に、正常系が認知できたとしても、その後1重系で運転すると照合相手系がないのでエラー検知能力がなくなる。よって、第3のスペア系を立上げて相手系とする必要があるので、全体系のストップは更に長くなり、この点で更にリアルタイム系に不向きである。そこで本研究では、2重系を成立させるためには、各系が独立にエラー検知能力を持つ必要があることを論じ、リアルタイム制御系においては、その解決策としてソフトウェアによる自己チェックが有効であることを実例を交えて示す。なお、ソフトウェアによる自己チェックには幾つかの欠点もあるが、近年増大しつつあるソフトウェアバグに起因するエラーに対しても、網羅的な検知能力は低いが、或る閾値を越えたエラーは検知するという実用性を持っていることを示す。

 次に、近年の市販マイクロプロセッサの急激な発展と、リアルタイム制御システムのユーザからオープン性の要求が大なることを考え、3重多数決方式を基本とする新しい待機引継ぎ方式を提案する。この方式は、3重多数決CPUのうち1個が故障した時点で、残り2個で運転を継続しつつ、並行して引継動作をも開始する方式である。この方式の特徴は、OSが不測のタイミングで中断した作業を他へ引継がせる必要がないことである。すなわち、実行途中の作業は残り2個の運転で終了させ、新しい作業の投入を抑えるだけである。よって、OSの負担が軽く、オープン性のある市場標準OSを使える。ただし、この方式はバグに起因するエラーを検知する能力はなく、それは前述のソフトウェアによる自己チェックに頼らざるを得ない。

 最後に、分散処理システムにおいても将来はフォールトトレラントシステムを実現できることを予見し、そのために必要となる幾つかの技術のうちの一つを試作した。すなわち、分散処理システム上で冗長プロセスをユーザには意識させずに位置透過に生成し管理する環境(RODSと命名している)を試作し、その評価を行なう。

審査要旨

 本論文は、「リアルタイムコンピュータシステムにおけるフォールトトレラント構築技術に関する研究」と題し、6章と参考文献からなる。コンピュータは、様々なシステムにその制御中心として組み込まれ、実時間で動作させることも多く行なわれるが、その場合重要なのは、システム全体としての信頼性である。コンピュータの要素が障害を起こすことはあり得るが、その場合もシステム全体としては障害に至らず正常に動作することが要求される。本論文は、そのようなフォールトトレラント性を備えたシステムの構成法について論じたものである。

 第1章「序論」は、本研究の背景と目的について述べ、さらに本論文の研究の特徴をまとめたものである。すなわち、フォールトトレラントシステム発展の経緯を述べ、その重要な要素であるエラー検知技術と冗長構成技術について、従来の技術をまとめるとともに、本論文の研究の特徴について触れ、本研究はリアルタイム制御システムを対象とし、そのシステム技術を扱うことを述べている。

 第2章「フォールトトレラントシステム構築技術の概要」は、フォールトトレラントシステムを構築するに当たって、対象とするフォールトの種類とその分類、フォールト発生後の現象、障害の扱い、フォールトトレラントシステム構築の一般的手順について述べ、解決するべき課題についてまとめている。すなわち、エラー検知、エラー記録、リトライ、切り離し、引き継ぎ、などの技術が課題である。

 第3章「リアルタイムコンピュータシステムにおけるエラー検知、記録、リトライ方式」は、まず、フォールトをハードウエア故障、ハードウエアの潜在バグ、ソフトウエアの潜在バグ、オペレータ誤動作に分け、それぞれのエラー検知方式について考察して提案を行ない、次に、国鉄郡山YACシステムを例に、そこで筆者が設計したエラー検知技術を述べている。すなわち、通常の二重系照合チェック方式に加えて、ソフトウエアを用いて包括的にシステムの正当性をチェックする検知方式である。エラーの記録に関しては、筆者が開発した制御用計算機MELCOM350/30に対して施したCPUの瞬時凍結方式について述べ、それが、同じく筆者の開発した後継機350/30Fの予防保守に対して有効であったことを、具体的な保守記録を基に例証している。リトライ方式については、ソフトウエアによるプロセスIOのハードウエア動作チェックによりエラー検知した後、ソフトウエアによるリトライを行なう方式を提案しそれが有効であることを示している。

 第4章「フォールトユニット切り離しと冗長ユニットによる引き継ぎ」は、まず、フォールト部の切り離しを確実に行なうための条件、切り離す部分の単位、冗長ユニットの事前準備について述べ、次に、実際例の多い独立型ホットスタンバイシステムを構築する為に必要な用件を明らかにしている。また、YACシステムにおける独立型ホットスタンバイシステムで用いた技術を述べ、そのシステム稼働実績を分析し、それが理論的な値とリーズナブルな範囲で一致すること、オペレータの誤動作という例外的な障害が一つあるが、それも、オペレータの確率モデルを導入することによって、きちんと説明できることを示している。更に本章では、新しい冗長ユニットの構成方式として、マイクロプロセッサを要素プロセッサに用いる3重多数決システムを提案している。これは、市販マイクロプロセッサを並列に動作させ常時その出力信号を比較することによりエラー検知することとし、OSの外殻の応用プログラムインタフエースとしてはリアルタイムUNIXインタフェースを持つ、オープン指向のフォールトトレラントコンピュータの提案で、新しく予防引き継ぎ方式を導入することにより、現実的であるとともに優れた特性を備えた方式となっている。すなわち、エラー発生時には瞬時に障害プロセッサを特定でき、またその障害を起こしたプロセッサを含む3重系ユニットを切り離すタイミングは、そのユニットが実行していたプロセスの仕事の区切りが一段落した時でよく、時間余裕を持ってゆっくりプロセス引き継ぎができるという特徴を持つ。本章では、その方式の詳細を述べるとともに、この方式の信頼性を評価し、よく引き合いに出されるストラタスシステムと比較して、MTBFが200倍程長いことを示している。

 第5章「高信頼度分散システムへのアプローチ」は、分散システムが通常のシステムとなってきた現在、それにフォールトトレラントな性格を持たせることは重要な課題であり、その一般的手法について論じたものである。まず、従来の取り組みについてサーベイした後、分散オブジェクトによるフォールトトレラント性の付与方式を考え、その具体例としてリソース指向分散環境RODSを提案している。本章では、その実現方式について論じた後、分散したデータベースを共有する応用を記述して評価を行ない、システムの実現性と実用性を明らかにしている。

 第6章は、「結論」である。

 以上、これを要するに本論文は、リアルタイムコンピュータシステムにおいて、システム要素に障害が生じても正しく動作させるフォールトトレラント性を持たせる為の手法について考察し、それを実用システムに適用することによってその有効性を示すとともに、発展を続ける新しいコンピュータ環境に向いた方式を提案してその実用性と可能性を示したもので、電気工学上貢献する所少なくない。

 よって、本論文は、博士(工学)の学位請求論文として合格と認められる。

UTokyo Repositoryリンク http://hdl.handle.net/2261/50899