(57)【要約】      （修正有）【課題】複数のＩ／Ｏデバイスを接続し、その中にプールＩ／Ｏデバイスを含むような計算機システムにおいて、障害発生時に使用するプールＩ／Ｏデバイスに対して定期的に動作確認をする。【解決手段】プールＩ／Ｏデバイス動作確認部が、プールＩ／Ｏデバイスステータス情報格納部（計算機システム内又は外に設けられている）から、プールＩ／Ｏデバイスを識別するためのプールＩ／ＯデバイスIDと、プールＩ／Ｏデバイスの種類と、動作確認結果を示すステータス値と、最新の動作確認時刻を表す更新時刻とを含むプールＩ／Ｏデバイスステータス情報を取得する。そして、プールＩ／Ｏデバイスを起動して動作確認し、この動作確認後プールＩ／Ｏデバイスの動作を停止し、動作確認によって得られた動作確認結果を用いてプールＩ／Ｏデバイスステータス情報を更新する。【選択図】図１
2008217265.tif 000002
【特許請求の範囲】
【請求項１】
１つ以上のプロセッサを搭載する汎用モジュールと、前記汎用モジュールの入出力を外部デバイスに経由する実際に動作中の1つ以上の現用I/Oデバイスと、この現用I/Oデバイスの予備として設けられた、待機中の１つ以上のプールI/Oデバイスと、前記汎用モジュールと前記現用及びプールI/Oデバイスとを接続するI/Oパスをスイッチングするための１つ以上のI/Oパス切替部と、を備える計算機システムにおける、前記プールI/Oデバイスの動作を確認するプールI/Oデバイス動作確認方法であって、
プールI/Oデバイス動作確認部が、周期的に前記プールI/Oデバイスの動作を確認することを特徴とするプールI/Oデバイス動作確認方法。
【請求項２】
前記プールI/Oデバイス動作確認部が、
プールI/Oデバイスステータス情報格納部から、前記プールI/Oデバイスを識別するためのプールI/OデバイスIDと、前記プールI/Oデバイスの種類と、動作確認結果を示すステータス値と、最新の動作確認時刻を表す更新時刻とを含むプールI/Oデバイスステータス情報を取得し、
前記プールI/Oデバイスを起動して動作確認し、この動作確認後前記プールI/Oデバイスの動作を停止し、動作確認によって得られた動作確認結果を用いて前記プールI/Oデバイスステータス情報を更新することを特徴とする請求項１に記載のプールI/Oデバイス動作確認方法。
【請求項３】
前記プールI/Oデバイス動作確認部が、
I/Oパス切替部構成情報格納部から、前記プールI/Oデバイスに接続するためのパスを前記I/Oパス切替部の内部接続関係を含めて規定するI/Oパス切替部構成情報を取得し、
前記I/Oパス切替部構成情報に基づいて、前記I/Oパス切替部を制御し、動作確認対象のプールI/Oデバイスとの接続を実行し、前記プールI/Oデバイスの動作確認後に、接続状態を解除することを特徴とする請求項２に記載のプールI/Oデバイス動作確認方法。
【請求項４】
前記プールI/Oデバイス動作確認部が、
テストプログラム情報格納部から、前記プールI/Oデバイスステータス情報に含まれる前記プールI/Oデバイスの種類に応じて使用すべき動作確認プログラムを特定する情報であるテストプログラム情報を取得し、
前記取得したテストプログラム情報に対応したテストプログラムを実行して、前記プールI/Oデバイスの動作確認を実行することを特徴とする請求項３に記載のプールI/Oデバイス動作確認方法。
【請求項５】
前記プールI/Oデバイス動作確認部が、
ステータス情報管理パラメータ格納部から、前記プールI/Oデバイスステータス情報の管理処理で使用するパラメータであって、更新周期時間を含むステータス情報管理パラメータを取得し、
前記取得したステータス情報管理パラメータに基づいて、前記更新周期時間が経過したプールI/Oデバイスに対して動作確認処理を実行することを特徴とする請求項４に記載のプールI/Oデバイス動作確認方法。
【請求項６】
前記ステータス情報管理パラメータは、さらにスリープ時間をパラメータとして含み、
前記プールI/Oデバイス動作確認部は、前記更新周期時間が経過したプールI/Oデバイスが存在しない場合には、前記スリープ時間経過後にプールI/Oデバイス動作確認処理を再開することを特徴とする請求項５に記載のプールI/Oデバイス動作確認方法。
【請求項７】
前記プールI/Oデバイス動作確認部は、前記計算機システムに接続された外部端末からの入力指示によって、前記ステータス情報管理パラメータを変更することを特徴とする請求項５に記載のプールI/Oデバイス動作確認方法。
【請求項８】
１つ以上のプロセッサを搭載する汎用モジュールと、
前記汎用モジュールの入出力を外部デバイスに経由する実際に動作中の1つ以上の現用I/Oデバイスと、
この現用I/Oデバイスの予備として設けられた、待機中の１つ以上のプールI/Oデバイスと、
前記汎用モジュールと前記現用及びプールI/Oデバイスとを接続するI/Oパスをスイッチングするための１つ以上のI/Oパス切替部と、
周期的に前記プールI/Oデバイスの動作を確認するプールI/Oデバイス動作確認部と、
を備えることを特徴とする計算機システム。
【請求項９】
前記プールI/Oデバイス動作確認部が、
プールI/Oデバイスステータス情報格納部から、前記プールI/Oデバイスを識別するためのプールI/OデバイスIDと、前記プールI/Oデバイスの種類と、動作確認結果を示すステータス値と、最新の動作確認時刻を表す更新時刻とを含むプールI/Oデバイスステータス情報を取得し、
前記プールI/Oデバイスを起動して動作確認し、この動作確認後前記プールI/Oデバイスの動作を停止し、動作確認によって得られた動作確認結果を用いて前記プールI/Oデバイスステータス情報を更新することを特徴とする請求項８に記載の計算機システム。
【請求項１０】
前記プールI/Oデバイス動作確認部が、
I/Oパス切替部構成情報格納部から、前記プールI/Oデバイスに接続するためのパスを前記I/Oパス切替部の内部接続関係を含めて規定するI/Oパス切替部構成情報を取得し、
前記I/Oパス切替部構成情報に基づいて、前記I/Oパス切替部を制御し、動作確認対象のプールI/Oデバイスとの接続を実行し、前記プールI/Oデバイスの動作確認後に、接続状態を解除することを特徴とする請求項９に記載の計算機システム。
【請求項１１】
前記プールI/Oデバイス動作確認部が、
テストプログラム情報格納部から、前記プールI/Oデバイスステータス情報に含まれる前記プールI/Oデバイスの種類に応じて使用すべき動作確認プログラムを特定する情報であるテストプログラム情報を取得し、
前記取得したテストプログラム情報に対応したテストプログラムを実行して、前記プールI/Oデバイスの動作確認を実行することを特徴とする請求項１０に記載の計算機システム。
【請求項１２】
前記プールI/Oデバイス動作確認部が、
ステータス情報管理パラメータ格納部から、前記プールI/Oデバイスステータス情報の管理処理で使用するパラメータであって、更新周期時間を含むステータス情報管理パラメータを取得し、
前記取得したステータス情報管理パラメータに基づいて、前記更新周期時間が経過したプールI/Oデバイスに対して動作確認処理を実行することを特徴とする請求項１１に記載の計算機システム。
【請求項１３】
前記ステータス情報管理パラメータは、さらにスリープ時間をパラメータとして含み、
前記プールI/Oデバイス動作確認部は、前記更新周期時間が経過したプールI/Oデバイスが存在しない場合には、前記スリープ時間経過後にプールI/Oデバイス動作確認処理を再開することを特徴とする請求項１２に記載の計算機システム。
【請求項１４】
前記プールI/Oデバイス動作確認部は、外部端末からの入力指示によって、前記ステータス情報管理パラメータを変更することを特徴とする請求項１２に記載の計算機システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プールI/Oデバイス動作確認方法、及び計算機システムに関し、特に、例えば、I/Oデバイス接続切替を制御可能な計算機システムにおける障害管理に関するものである。
【背景技術】
【０００２】
基幹業務を処理するような計算機システムでは、365日24時間稼動し続けサービスを提供することが必要である。このような計算機システムでは、システムを構成するデバイスの障害発生のためシステムが停止した場合でも、できる限り短時間で障害箇所の交換と再設定を経て再稼動する必要がある。しかし、人手によるデバイスの交換と再設定を伴う復旧処理方式には長時間を要し、またヒューマンエラーによる更なる遅延発生の可能性がある。そのため、障害が予想されるデバイスに対して予備のデバイス、つまりプールデバイスを用意し、あらかじめ計算機システムに導入しておき、稼働中のデバイスの障害発生時に自動処理によって障害箇所をプールデバイスに切替える手法が主に採用されている。
【０００３】
計算機システムに接続されたプールデバイスは通常未稼働であり、既存の動作確認プログラムが適用できない。このような状況でプールデバイスが計算機システムから取り外されることなく長時間放置された場合、その正常動作は保障されないことになる。また、現用デバイスの障害時にプールデバイスに切替えたとしてもそのプールデバイスに障害が発生していた場合には、計算機システムの自動プールデバイス切替処理が失敗し、再稼動に長時間を要する。このような不都合を防ぐためには、システム再稼動時間短縮のため、稼働中のデバイスに影響を与えずプールデバイスを動作確認する必要がある。なお、システムの全体もしくは一部を停止させてシステムに接続されたデバイス全体を動作確認することも考えられるが、これは提供するサービスを停止することになるため避けるべきである。
【０００４】
例えば、特許文献１には、I/Oデバイスにおける障害を事前に検知する方法として、ホットプラグ対応I/Oデバイスを計算機システムに新規に追加接続した際に信頼性試験を施す手法が挙げられている。
【０００５】
また、特許文献２には、稼働中の計算機システムに接続されたプールデバイスを動作確認する方式として、既に計算機システムに接続されており起動していないCELL(プロセッサ+主記憶が実装されるボード)を対象に通常のBIOS起動の仕組みを使って定期的に動作確認する手法が挙げられている。
【０００６】
【特許文献１】特開２００４−３２６８０９号公報
【特許文献２】特開２００６−２６８５２１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかし、何れの文献に開示された方法によっても、計算機システムに接続されているプールI/Oデバイスに障害が発生した場合、その障害が放置されるという課題は解決されないままである。
【０００８】
つまり、特許文献１に示されたシステムでは、プールI/Oデバイスは新規追加時にのみ動作確認かなされるだけで、接続したままのプールI/Oデバイスに対して信頼性試験を行うことはない。このため、既に接続されたプールI/Oデバイスに障害が発生してもそれが発見できずに放置されてしまう。
【０００９】
また、特許文献２に示された手法では、自己起動が可能なプールCELL（プロセッサ＋メモリ）の定期的な動作確認のみが示されており、プロセッサとメモリを搭載しないため自己起動できないプールI/Oデバイスとは処理の対象が異なる。よって、特許文献２の手法をプールI/Oデバイスの動作確認の手法として採用することはできず、同様に、プールI/Oデバイスに障害が発生しても発見できず放置されてしまう。
【００１０】
本発明はこのような状況に鑑みてなされたものであり、複数のI/Oデバイスを接続し、その中にプールI/Oデバイスを含むような計算機システムにおいて、障害発生時に使用するプールI/Oデバイスに対して定期的に動作確認をする方法を提供するものである。
【課題を解決するための手段】
【００１１】
上記課題を解決するために、本発明では、周期的にプールI/Oデバイスの動作確認を実行するように計算機システムを制御している。
【００１２】
即ち、本発明によるプールI/Oデバイス動作確認方法は、１つ以上のプロセッサを搭載する汎用モジュールと、前記汎用モジュールの入出力を外部デバイスに経由する実際に動作中の1つ以上の現用I/Oデバイスと、この現用I/Oデバイスの予備として設けられた、待機中の１つ以上のプールI/Oデバイスと、汎用モジュールと現用及びプールI/Oデバイスとを接続するI/Oパスをスイッチングするための１つ以上のI/Oパス切替部と、を備える計算機システムにおいて実現されるものであり、計算システム内又は外に設けられたプールI/Oデバイス動作確認部が、周期的にプールI/Oデバイスの動作を確認することを特徴とする。
【００１３】
より具体的には、プールI/Oデバイス動作確認部が、プールI/Oデバイスステータス情報格納部（計算機システム内又は外に設けられている）から、プールI/Oデバイスを識別するためのプールI/OデバイスIDと、プールI/Oデバイスの種類と、動作確認結果を示すステータス値と、最新の動作確認時刻を表す更新時刻とを含むプールI/Oデバイスステータス情報を取得し、プールI/Oデバイスを起動して動作確認し、この動作確認後プールI/Oデバイスの動作を停止し、動作確認によって得られた動作確認結果を用いてプールI/Oデバイスステータス情報を更新する。
【００１４】
また、動作確認する際には、プールI/Oデバイス動作確認部が、I/Oパス切替部構成情報格納部から、プールI/Oデバイスに接続するためのパスをI/Oパス切替部の内部接続関係を含めて規定するI/Oパス切替部構成情報を取得し、このI/Oパス切替部構成情報に基づいて、I/Oパス切替部を制御し、動作確認対象のプールI/Oデバイスとの接続を実行し、プールI/Oデバイスの動作確認後に、接続状態を解除する。ただし、このようなI/Oパス切替部構成情報を動作確認の度に取得しなくても、プールI/Oデバイス動作確認部が使用されていないI/Oパス切替部のパスを検知してプールI/Oデバイスとの接続を実現し、動作確認後にその接続を解除するようにしても良い。
【００１５】
また、動作確認に際して、プールI/Oデバイス動作確認部が、テストプログラム情報格納部から、プールI/Oデバイスステータス情報に含まれるプールI/Oデバイスの種類に応じて使用すべき動作確認プログラムを特定する情報であるテストプログラム情報を取得し、取得したテストプログラム情報に対応したテストプログラムを実行して、プールI/Oデバイスの動作確認を実行する。
【００１６】
さらに、具体的には、プールI/Oデバイス動作確認部が、ステータス情報管理パラメータ格納部から、プールI/Oデバイスステータス情報の管理処理で使用するパラメータであって、更新周期時間を含むステータス情報管理パラメータを取得し、取得したステータス情報管理パラメータに基づいて、更新周期時間が経過したプールI/Oデバイスに対して動作確認処理を実行するようにしてもよい。なお、ステータス情報管理パラメータは、さらにスリープ時間をパラメータとして含み、プールI/Oデバイス動作確認部は、更新周期時間が経過したプールI/Oデバイスが存在しない場合には、スリープ時間経過後にプールI/Oデバイス動作確認処理を再開するようにしてもよい。また、プールI/Oデバイス動作確認部が、前記計算機システムに接続された外部端末からの入力指示によって、ステータス情報管理パラメータを変更できるようにしてもよい。
【００１７】
さらなる本発明の特徴は、以下本発明を実施するための最良の形態および添付図面によって明らかになるものである。
【発明の効果】
【００１８】
本発明によれば、複数のI/Oデバイスを接続し、その中にプールI/Oデバイスを含むような計算機システムにおいて、現用I/Oデバイスの障害発生時に使用するプールI/Oデバイスに対して定期的に動作確認をすることができる。よって、稼働中の現用I/Oデバイスに障害が発生しても、自動処理によって障害箇所を正常に動作可能なプールI/Oデバイスに確実に切替えることができる。
【発明を実施するための最良の形態】
【００１９】
以下、添付図面を参照して本発明の実施形態について説明する。ただし、本実施形態は本発明を実現するための一例に過ぎず、本発明を限定するものではないことに注意すべきである。また、各図において共通の構成については同一の参照番号が付されている。
【００２０】
＜計算機システムの構成＞
図１は、本発明の実施形態による計算機システムの全体概略構成を示す図である。図１において、計算機システム100（例えば、ブレードサーバ等が該当する）は、汎用モジュール110と、１つ以上のI/Oデバイス120aおよび120bと、１つ以上のI/Oパス切替部130と、１つ以上のプールI/Oデバイス動作確認モジュール140と、記憶デバイス150とを備えている。
【００２１】
ここで、汎用モジュール110は、１つ以上のプロセッサ111aと１つ以上のメモリ112aを搭載し、I/Oパス切替部130を経由してI/Oデバイス120aおよび120bと接続することができるようになっている。I/Oデバイス120 aおよび120bは、汎用モジュール110とネットワーク装置やストレージ装置などの外部デバイスを接続するための入出力機器（インターフェース）であり、全てのI/Oデバイス120 aおよび120bは、I/Oパス切替部130に接続される。
【００２２】
I/Oパス切替部130は、汎用モジュール110及びプールI/Oデバイス動作確認モジュール140と、I/Oデバイス120ａ及び120ｂとの相互接続を実現するものである。例えば、1つ以上の汎用モジュール110は、I/Oパス切替部130のモジュール接続ポート131aに接続される。また、プールI/Oデバイス動作確認モジュール140は、I/Oパス切替部130のモジュール接続ポート131bに接続される。さらに、1つ以上のI/Oデバイス120 aおよび120bは、それぞれI/Oデバイス接続ポート132aおよび132bに接続される。そして、I/Oパス切替部130は、モジュール接続ポート131aおよび131bとI/Oデバイス接続ポート132aおよび132bとの間のパスをスイッチングすることで、任意の汎用モジュール110およびプールI/Oデバイス動作確認モジュール140と任意のI/Oデバイス120aおよび120bとを相互接続することができるようになっている。
【００２３】
プールI/Oデバイス動作確認モジュール140は、1つ以上のプロセッサ111bと1つ以上のメモリ112bを搭載し、プールI/Oデバイス動作確認モジュール140には、I/Oパス切替部130、記憶デバイス150およびプールI/Oデバイス動作確認システム管理端末160が接続されている。そして、プールI/Oデバイス動作確認モジュール140は、I/Oパス切替部に制御信号を送信することができる。例えば、プールI/Oデバイスの確認動作を実行する場合、I/Oパス切替部130は、プールI/Oデバイス動作確認モジュール140からの命令（制御信号）に応答して、プールI/Oデバイス動作確認モジュール140とプールI/Oデバイス120ｂとの接続を実現する（動作の詳細については後述）。
【００２４】
なお、プールI/Oデバイス動作確認モジュール140を専用ハードウェアとして用意せず、汎用モジュール110と同型のものを用いても良い。
【００２５】
また、図1では、I/Oパス切替部130とプールI/Oデバイス動作確認モジュール140は一つのみ示しているが、単一障害箇所となるのを防ぐため、もしくは高バンド幅実現のため多重化（それぞれ複数設けるように）してもよい。
【００２６】
さらに、図1では、I/Oパス切替部130とプールI/Oデバイス動作確認モジュール140、もしくはI/Oパス切替部130とI/Oデバイス120aおよび120bとの間のパスが多重化されていても構わない（複数のパスを設けるようにしてもよい）。
例えば、I/Oパス切替部130とプールI/Oデバイス動作確認モジュール140との間のパスについては、プールI/Oデバイス動作確認モジュール140が複数のプールI/Oデバイス120bに同時に接続するために、複数のパスがあってもよい。
もしくは、I/Oパス切替部130とプールI/Oデバイス動作確認モジュール140との間の複数のパスを用途で分類し、I/Oパス切替部に制御信号を送信するためのパスと、I/Oデバイスに接続するためのパスの２種類に分けても構わない。
【００２７】
記憶デバイス150は、プールI/Oデバイスステータス情報151（図８参照）と、I/Oパス切替部構成情報153（図９、１０乃至１３参照）と、テストプログラム情報152（図９参照）と、ステータス情報管理パラメータ154（図１４参照）と、テストプログラム155とを格納する。
【００２８】
プールI/Oデバイス動作確認システム管理端末160はプールI/Oデバイス動作確認モジュール140に接続されている。また、プールI/Oデバイス動作確認モジュール140は、ディスク媒体171もしくは外部記憶デバイス172、外部ネットワーク173といった外部装置と接続することができる。
【００２９】
このような構成を有する計算機システム100において、プールI/Oデバイス動作確認部140が、現用I/Oデバイス120aが動作中であっても、プールI/Oデバイス120bの動作が正常であるか否かを周期的に確認している。
【００３０】
なお、図１では、計算機システム100がプールI/Oデバイス動作確認モジュール140や上記各種情報（151乃至155）を格納する記憶デバイス150をその内部に備える構成が示されている。しかし、本発明を実現するには、このような構成に限られず、用途によって、プールI/Oデバイス動作確認モジュール140及び／又は記憶デバイス150が、計算機システム100の外に設けられるようにしても良い。例えば、計算機システム100（ブレードサーバ等）が複数組設置され、それぞれに導入されたプールI/Oデバイスの動作確認を定期的に実行するプールI/Oデバイス確認部が上記複数の計算機システムとは独立して設けられるようにしてもよい。このようにすれば、プールI/Oデバイスの管理を１箇所で集中して実行することができるようになる。
【００３１】
＜計算機システム100の動作の簡単な説明＞
動作の詳細については、後述のフローチャートによって説明するが、ここでは、計算機システム100の動作を簡単に説明する。
【００３２】
図1に示すように、プールI/Oデバイス動作確認モジュール140は、メモリ112b上に、前述のプールI/Oデバイス動作確認のためのプログラムであるプールI/Oデバイス動作確認部141を格納し、プロセッサ111bで処理することにより、接続するプールI/Oデバイス120bを動作確認し、記憶デバイス150内に格納された各情報を参照および更新する。
【００３３】
前述の処理の実行主体はプロセッサ111bであるが、同じプロセッサ111bが実行する処理は複数あり、それらを区別して表現するため、プログラムであるプールI/Oデバイス動作確認部141をプロセッサ処理の実行主体として記述する。以下、プールI/Oデバイス動作確認部141が含む複数のプログラムについても、同様に実行主体として記述する。後述のフローチャートの実行主体についても同様である。
【００３４】
プールI/Oデバイス動作確認モジュール140は、記憶デバイス150や、ディスク媒体171、外部記憶デバイス172もしくは外部ネットワーク173等の外部装置から、プールI/Oデバイス動作確認部141（プログラム）の全体もしくは一部をロードして使用する。つまり、例えば、計算機システム100の起動時に、プログラムの全体若しくは一部を記憶デバイス150や外部装置等から読み出してきて、メモリ112ｂ内に格納して使用する。
【００３５】
また、サーバ仮想化技術を適用した場合には、図１６に示されるように、１つのプロセッサを複数の分割プロセッサ領域に、１つのメモリ112ｃを複数の分割メモリ領域1602に分割し、分割メモリ領域上に配置したプログラムを分割プロセッサ領域1601で処理することができる。この場合に、分割メモリ領域1602のうちの１つにプールI/Oデバイス動作確認部141を配置し、分割プロセッサ領域のうちの1つで処理することで、プールI/Oデバイス動作確認部141を実行することもできる。
【００３６】
次に、図１におけるプールI/Oデバイス動作確認部141の構成の詳細を、図２を参照して説明する。図２は、プールI/Oデバイス動作確認部141を構成する各部の関係を示している。
【００３７】
プールI/Oデバイス動作確認部141は、1つ以上のステータス情報管理部201と、１つ以上のI/Oパス切替制御部202と、１つ以上のテストプログラム実行部203と、タイマー204とを備えている。
【００３８】
ステータス情報管理部201は、プールI/Oデバイス動作確認時に、確認対象のプールI/Oデバイス120bを管理するプールI/Oデバイスステータス情報151を参照し、動作確認後にその情報を更新する。
【００３９】
I/Oパス切替制御部202は、ステータス情報管理部201から命令信号に基づいて、I/Oパス切替部130に対してI/Oパスを経由してI/Oパス切替制御信号を送り、I/Oパス切替部130を制御して、任意のI/Oデバイス120aおよび120bと汎用モジュール110もしくはプールI/Oデバイス動作確認モジュール140を接続および接続解除する。確認動作の度に、ステータス情報管理部201から命令がI/Oパス切替制御部202に送られ、確認対象のプールI/Oデバイスに対応した接続が確立され、動作の確認が（対応するテストプログラムに基づいて）なされ、その後確立された接続が解除される。
【００４０】
テストプログラム実行部203は、プールI/Oデバイス動作確認モジュール140に接続するプールI/Oデバイス120bに対してテストプログラム155をメモリにロードし実行し、動作確認結果を取得する。
【００４１】
タイマー204は、ステータス情報更新時等の時刻を取得するために使用される。プロセッサ固有のタイマー等を使用するようにしてもよい。
【００４２】
続いて、プールI/Oデバイス動作確認部141の動作の一例を、図２を参照して簡単に説明する。
【００４３】
プールI/Oデバイス動作確認部141は、ステータス情報管理部201を実行する。まず、ステータス情報管理部201は、計算機システム100の起動時に、プールI/Oデバイスステータス情報初期化処理を行い、接続されている全プールI/Oデバイスの情報をプールI/Oデバイスステータス情報151に格納する。初期化終了時のプールI/Oデバイスのステータスは全て、「未確認」となっている。
【００４４】
次に、ステータス情報管理部201は、プールI/Oデバイスステータス情報更新処理を行い、プールI/Oデバイスステータス情報151に格納された各プールI/Oデバイスの情報を定期的に更新する。更新後は、「未確認」から「正常」又は「異常」等にステータスが変更される。
【００４５】
なお、ステータス情報管理パラメータ154はデフォルトで所定値に決められるようにしても良いし、ステータス情報管理部201が管理者161が入力した入力パラメータ162を、プールI/Oデバイス動作確認システム管理端末160から受信して、適時ステータス情報管理パラメータ154に格納するようにしてもよい。
【００４６】
これらの処理の中で、ステータス情報管理部201は、特に、I/Oパス切替制御部202、テストプログラム実行部203およびタイマー204に対して、以下の処理要求を行う。つまり、
ステータス情報管理部201は、I/Oパス切替制御部202に対して接続要求および接続解除要求を送ることで、任意のプールI/Oデバイス120bとプールI/Oデバイス動作確認モジュール140とを接続および接続解除する。
【００４７】
また、ステータス情報管理部201は、テストプログラム実行部203に対して、接続しているプールI/Oデバイス120bを動作確認するテストプログラム実行要求を送り、テストプログラム実行部203は、ステータス情報管理部201に対して、前記プールI/Oデバイスの動作確認結果を返す。
【００４８】
さらに、ステータス情報管理部201は、タイマー204に対して時刻情報を要求し、タイマー204はステータス情報管理部201に対して現在時刻を返す。
【００４９】
＜ステータス情報管理部201の動作＞
図３及び４を参照して、ステータス情報管理部201の動作について説明する。まず、ステータス情報管理部201によるプールI/Oデバイスステータス情報初期化の手順の一例を図３により説明する。
【００５０】
ステータス情報管理部201は、プールI/Oデバイスステータス情報初期化処理要求を受け、プールI/Oデバイスステータス情報151にアクセスし、全てのプールI/Oデバイスのステータス値を「未確認」に変更する（ステップS301）。ステータス情報管理部201は、ループを開始する（ステップS302）。ステータス情報管理部201は、プールI/Oデバイスステータス情報151にアクセスし、プールI/Oデバイスステータス情報一覧を取得する（ステップS303）。さらに、ステータス値が「未確認」のプールI/Oデバイスが存在するかが判定される（ステップS304）。ステータス値が「未確認」のプールI/Oデバイスが存在する場合、動作確認対象として「未確認」のプールI/Oデバイス120bを一つ選択し（ステップS305）、このプールI/Oデバイス120bのステータス情報更新処理を行い（ステップS306）、ステップS303に戻る。ステータス情報管理部201は、ステータス値が「未確認」のプールI/Oデバイスが存在しない場合、プールI/Oデバイスステータス情報管理処理を開始し、初期化処理を終了する（ステップS307）。この初期化処理により、プールI/Oデバイス動作確認部141を構成する要素を全て起動し、全てのプールI/Oデバイスのステータス値をプールI/Oデバイスステータス情報151に格納することができる。その後、定期的にそれぞれのプールI/Oデバイスの動作確認を実行する（ステップS308）。
【００５１】
次に、図４を参照してステータス情報管理部201によるプールI/Oデバイスステータス情報管理処理の一例について説明する。ステータス情報管理部201は、前述の初期化処理の終了とともに、プールI/Oデバイスステータス情報管理処理を開始する（ステップS401）。まず、ステータス情報管理部201は、ステータス情報管理パラメータ152をメモリ112bへと読み込む（ステップS402）。続いて、プールI/Oデバイスステータス情報151からプールI/OデバイスIDとプールI/Oデバイスの種類と更新時刻の一覧を取得する（ステップS403）。ステータス情報管理部201は、タイマーから現在の時刻を取得し、現在の時刻と更新時刻を比較する（ステップS404）。そして、前回更新時刻から更新周期時間以上経過しており、かつステータス値が「正常」であるプールI/Oデバイスが存在するかを判定する（ステップS405）。ステータス値が「正常」であるプールI/Oデバイスが存在する場合、該プールI/Oデバイスのステータス情報更新処理を行い（ステップS407）、ステップS402の処理に戻る。また、ステータス値が「正常」であるプールI/Oデバイスが存在しないとき（前回異常と判断されたものについて更に動作確認をする必要がないから）、スリープ時間経過後（ステップS406）ステップS402の処理に戻る。
【００５２】
＜ステータス情報更新処理の詳細＞
図３及び４におけるステータス情報管理部201によるステータス情報更新処理（ステップS306及びS407）の詳細について、図５のフローチャートを参照して説明する。
【００５３】
図５は、ステータス情報管理部201によるステータス情報更新処理の動作例について説明するためのフローチャートである。図３及び図４のフローチャートに示した処理において、ステータス情報管理部201のステータス情報更新処理（ステップS306及びS407）が開始されるとき、ステータス情報管理部201は入力としてプールI/OデバイスIDを受け取っている。そして、ステータス情報管理部201は、プールI/OデバイスIDに対応するプールI/Oデバイスの種類をプールI/Oデバイスステータス情報151から取得する（ステップS501）。図５によれば、プールI/OデバイスIDからプールI/Oデバイスの種類を割り出しているが、あらかじめプールI/OデバイスIDとプールI/Oデバイスの種類を一緒に入力として受け取っても良い。
【００５４】
ステータス情報更新処理開始時にステータス情報管理部201は、プールI/OデバイスとプールI/Oデバイス動作確認部141の接続をI/Oパス切替制御部202に要求する（ステップS502）。I/Oパス切替制御部202がI/Oパス切替部130おける接続切替処理を指示して、プールI/Oデバイス動作確認モジュール140とプールI/Oデバイス120bとが接続された後（ステップS503）、ステータス情報管理部201はタイマー204から現在の時刻を取得する（ステップS504）。そして、ステータス情報管理部201は、プールI/Oデバイスステータス情報151にアクセスし、プールI/Oデバイスのステータス値を「確認中」に、また更新時刻を現在の時刻に変更する（ステップS505）。
【００５５】
続いて、ステータス情報管理部201は、テストプログラム実行部203に対して、プールI/Oデバイスの動作確認処理を要求する（ステップS506）。その要求に応じて、テストプログラム実行部203は、テストプログラムを実行し、動作確認結果をステータス情報管理部201に返却する（ステップS507）。ステータス情報管理部201は、タイマー204から現在の時刻を取得して（ステップS508）、プールI/Oデバイスステータス情報151に対して、プールI/Oデバイスのステータス値を動作確認結果に相当するものに変更し、さらに更新時刻を現在の時刻に変更する（ステップS509）。ここで、テストプラグラム実行部203の動作確認処理終了を待つ間に動作確認処理が始まる前の時刻から特定のタイムアウト時間だけ経過すると、動作確認結果の取得を待たずにプールI/Oデバイスを異常と判断し、プールI/Oデバイスステータス情報151のうちのステータス値を「異常」に変更し、ステップS509に進むような処理を行ってもよい。
【００５６】
次に、ステータス情報管理部201は、動作確認が終了したプールI/OデバイスとプールI/Oデバイス動作確認部141の接続を解除するようI/Oパス切替制御部202に要求する（ステップS510）。そして、I/Oパス（接続）切替処理が終了した後（ステップS511）、プールI/Oデバイスのステータス値が「正常」か「異常」かが判定される（ステップS512）。ステータス値が「正常」のときは、管理者が規定した「正常」時の処理を行い、更新処理が終了する（ステップS513）。ステータス値が「異常」のときは管理者が規定した「異常」時の処理を行い、更新処理が終了する（ステップS514）。例えば、「正常」時には、プールI/OデバイスIDをプールI/Oデバイス動作確認システム管理端末160を介して管理者161に正常であることをメッセージ告知し、「異常」時には異常である旨のメッセージ告知と共に、当該異常と判断されたプールI/Oデバイスへの接続を禁止する処理を行うようにする。
【００５７】
＜I/Oパス切替処理＞  
図５におけるI/Oパス切替制御部202によるI/Oパス切替処理（ステップS503及びS511）の例について図６を用いて説明する。
【００５８】
I/Oパス切替制御部202は、入力としてプールI/OデバイスIDを取得する。また、I/Oパス切替制御部202は、プールI/Oデバイスの接続するI/Oパス切替部IDとプールI/Oデバイスの接続するポートとプールI/Oデバイス動作確認モジュールの接続するポートを取得する（ステップS601）。そして、I/Oパス切替制御部202は、要求処理が接続か接続解除かを判定する（ステップS602）。なお、この判定は、I/Oパス切替制御部202が有しているテーブルに保持された接続処理か接続解除処理かを示す情報に基づいてなされても良い。
【００５９】
要求処理が接続である場合、I/Oパス切替制御部202は、I/Oデバイス接続ポートとプールI/Oデバイス動作確認デバイス接続ポート間を接続するようI/Oパス切替部130を制御する（ステップS603）。要求処理が接続解除である場合、I/Oパス切替制御部202は、I/Oデバイス接続ポートとモジュール接続ポート間の接続を解除するようI/Oパス切替部130を制御する（ステップS604）。その後、I/Oパス切替制御部202は、切替わった接続状況に合わせてI/Oパス切替部構成情報を更新する（ステップS605）。
【００６０】
＜テストプログラム実行処理＞
図７は、図５におけるテストプログラム実行部203によるテストプログラム実行処理（ステップS507）の一例について説明するためのフローチャートである。まず、動作確認対象のプールI/Oデバイスがホットプラグ機能により起動される（ステップS701）。次に、テストプログラム実行部203は、入力としてプールI/Oデバイスの種類をステータス情報管理部201から取得する。テストプログラム実行部203は、テストプログラム情報（図９参照）を参照し、プールI/Oデバイスの種類に対応したテストプログラムIDを取得する。そして、テストプログラム実行部203は、記憶デバイスに格納されたテストプログラムのIDに対応するテストプログラムを取得する（ステップS702）。テストプログラム実行部203は、ステップS701で起動されたプールI/Oデバイス120bに対してテストプログラムを実行し、プールI/Oデバイス120bを動作確認する（ステップS703）。動作確認終了後、テストプログラム実行部203はプールI/Oデバイスを停止し（ステップS704）、動作確認結果を返して（ステップS705）、動作確認処理を終了する。
【００６１】
なお、プールI/Oデバイス動作確認モジュール140が動作するOSがホットプラグ機能を有しない場合には、OS再起動等により当該動作確認対象プールI/Oデバイスを認識するためのステップを実行することも可能である。
【００６２】
＜プールI/Oデバイスステータス情報の例＞
図８は、プールI/Oデバイスステータス情報151の例を示す図である。図８において、プールI/Oデバイスステータス情報151は、例えば、プールI/OデバイスIDとプールI/Oデバイスの種類とプールI/Oデバイスのステータス値と更新時刻とから構成され、それぞれが対応関係を持っている。図８の例では、プールI/OデバイスIDが「ID=１」のプールI/Oデバイスについては、プールI/Oデバイスの種類がPCIバスで接続されたNIC（Network Information Card）であり、ステータス値は「正常」であることが分かる。このように、プールI/OデバイスIDからプールI/Oデバイスの種類、ステータス値および更新時刻を参照することができる。
【００６３】
＜テストプログラム情報の例＞
図９は、テストプログラム情報の例を示す図である。テストプログラム情報は、プールI/Oデバイスの種類に対するテストプログラムIDを持つ。よって、プールI/Oデバイスの種類が特定されれば、テストプログラムIDを取得し、それに基づいてテストプログラム155を参照して、当該プールI/Oデバイスの動作確認をするのに最適なテストプログラムを取得できる。
【００６４】
＜I/Oパス切替部構成情報の例＞
図１０乃至１３は、接続切替制御に必要となるI/Oパス切替部構成情報の例について説明するための図である。
【００６５】
図１０は、I/Oパス切替部130とプールI/Oデバイス動作確認モジュール140とI/Oデバイス120の接続構成例を示している。図１０では、プールI/Oデバイス動作確認モジュール140は２つのI/Oパス切替部130ａ及びｂに接続されており、それぞれが２つのプールI/Oデバイス120ｃ及び120ｄに対して任意に接続されている。
【００６６】
また、図１１乃至１３は、プールI/Oデバイス動作確認モジュール140とプールI/Oデバイス120ｃ及びｄとの接続関係をポートごとに記述するI/Oパス切替部構成情報として、プールI/Oデバイス-I/Oパス切替部間の接続構成情報と、I/Oパス切替部内の接続構成情報と、プールI/Oデバイス動作確認モジュール-I/Oパス切替部間の接続構成情報の３つを保持する例を示している。
【００６７】
まず、図１１において、プールI/Oデバイス-I/Oパス切替部間の接続構成情報1100は、プールI/OデバイスID 1101に対応するプールI/Oデバイスに接続されているI/Oパス切替部ID 1102と、プールI/Oデバイスが接続されているI/Oデバイス接続ポートID 1103の情報を有している。図１１に示すように、プールI/Oデバイス120c(プールI/OデバイスID = IO1)は、I/Oパス切替部130a(I/Oパス切替部ID = SW1)の中の、I/Oデバイス接続ポート132c(I/Oデバイス接続ポートID = p13)に接続されており、同時にI/Oパス切替部130b(I/Oパス切替部ID = SW2)のI/Oデバイス接続ポート132e(I/Oデバイス接続ポートID = p23)にも接続されていることが分かる。
【００６８】
次に、図１２において、I/Oパス切替部内接続構成情報1200は、I/Oパス切替部のモジュール接続ポート131c、131d、131eおよび131fとI/Oデバイス接続ポート132c、132d、132eおよび132fにおける接続ペアの一覧情報を有している。図１０の例では、図１２に示されるように、I/Oパス切替部130a(I/Oパス切替部ID = SW1)内では、モジュール接続ポート131c(モジュール接続ポートID = p11)がI/Oデバイス接続ポート132d(I/Oデバイス接続ポートID = p14)に、またモジュール接続ポート131d(モジュール接続ポートID = p12)がI/Oデバイス接続ポート132c(I/Oデバイス接続ポートID = p13)に接続されている。
【００６９】
さらに、図１３において、I/Oパス切替部-プールI/Oデバイス動作確認モジュール間の接続構成情報1300は、I/Oパス切替部ID1301とI/Oパス切替部接続ポートID1302とモジュール接続ポートID1303の情報を有している。I/Oパス切替部-プールI/Oデバイス動作確認モジュール間の接続構成情報1300は、プールI/Oデバイス動作確認モジュール140とI/Oパス切替部ID1301に対応するI/Oパス切替部130を接続するパスが、I/Oパス切替部接続ポートID1302とモジュール接続ポートID1303を接続していることを示すものである。図１３に示されるように、プールI/Oデバイス動作確認モジュール140は、I/Oパス切替部接続ポート142a(I/Oパス切替部接続ポートID = p31)を介してI/Oパス切替部(I/Oパス切替部ID = SW1)のモジュール接続ポート131d(モジュール接続ポートID = p12)に接続されており、I/Oパス切替部130a(I/Oパス切替部ID = SW1)に対しては、I/Oパス切替部接続ポート142a(I/Oパス切替部接続ポートID = p31)を介してI/Oパス切替制御信号を送信すればよいことが分かる。
【００７０】
＜ステータス情報管理パラメータの例＞
図１４は、ステータス情報管理パラメータの一例を示す図である。ステータス情報管理パラメータは、キー情報として、更新周期時間、スリープ時間、「正常」終了処理、「異常」終了処理を有し、値には、キーに対応するパラメータ値を有している。例えば、図１４においては、「異常」終了処理として、プールI/Oデバイス動作確認システム管理端末にプールI/OデバイスIDを通知することが指定されている。このステータス情報管理パラメータは、図４のステータス情報管理処理においてループのたびに読み込まれ、その内容はステータス情報管理処理に反映されることになる。
【００７１】
＜管理者によるパラメータ入力＞
図１５は、管理者によって入力されるパラメータ162の一例を示す図である。管理者による入力パラメータ162は、キーと値を合わせた複数組のパラメータで構成される。図１５の例においては、３件のパラメータが設けられ、それぞれのキーは、ステータス情報管理パラメータのキーに対応している。また、ステータス情報管理部201は、入力パラメータの値を、キーが対応しているステータス情報管理パラメータの値に入力する。例えば、図４のステップS402において、プールI/Oデバイス動作確認システムが図１５の入力パラメータを受け取り、図１４に示すステータス情報管理パラメータに対して適用すると、キーが対応しているパラメータに値が代入される。
【００７２】
＜実施形態のまとめ＞
本発明の実施形態によるプールI/Oデバイス動作確認手法は、大規模な計算機システムの構築と、その上で高い信頼性を必要とするＩＴ業務サービスの運用等に適用可能である。
【００７３】
このような本実施形態によれば、プールI/Oデバイス動作確認モジュールが、ステータス値803という形で、各プールI/Oデバイス120bの動作確認結果を個別に保持し、各プールI/Oデバイスに対して定期的に動作確認を行うことができる。そして、ステータス情報管理部201のステータス情報更新処理は、汎用モジュール110と接続する現用I/Oデバイスと接続パスに対して影響を及ぼさないので、汎用モジュール110でプロセスを稼動させながら、プールI/Oデバイスステータス情報151を更新することができる。つまり、ブレードサーバ等の計算機システムに導入されたプールI/Oデバイスの動作確認を、稼働中の汎用モジュールや現用I/Oデバイスに影響を与えることなく、定期的に行うことで、プールI/Oデバイスを異常のまま放置せず、障害復旧時間を削減することができる。
【００７４】
より詳細には、プールI/Oデバイス動作確認部が、プールI/Oデバイスステータス情報格納部（計算機システム内又は外に設けられている）から、プールI/Oデバイスを識別するためのプールI/OデバイスIDと、プールI/Oデバイスの種類と、動作確認結果を示すステータス値と、最新の動作確認時刻を表す更新時刻とを含むプールI/Oデバイスステータス情報を取得し、プールI/Oデバイスを起動して動作確認し、この動作確認後プールI/Oデバイスの動作を停止し、動作確認によって得られた動作確認結果を用いてプールI/Oデバイスステータス情報を更新する。このように、プールI/Oデバイス毎にステータス情報に基づいて動作確認をしているので、上述のように稼働中の現用I/Oデバイスに影響を与えることなく、確実に、かつ個別に（プールI/Oデバイス毎に別々の周期で）動作確認を実行できる。
【００７５】
また、動作確認する際には、プールI/Oデバイス動作確認部が、I/Oパス切替部構成情報格納部から、プールI/Oデバイスに接続するためのパスをI/Oパス切替部の内部接続関係を含めて規定するI/Oパス切替部構成情報を取得し、このI/Oパス切替部構成情報に基づいて、I/Oパス切替部を制御し、動作確認対象のプールI/Oデバイスとの接続を実行し、プールI/Oデバイスの動作確認後に、接続状態を解除する。従って、動作確認に使用するI/Oパスを効率よく各プールI/Oデバイスに対して割り振ることができ、確認動作処理も高速に行うことができる。なお、例えばプールI/Oデバイスの数が少ない場合等には、I/Oパス切替部構成情報を動作確認の度に取得しなくてもよい。このような場合には、プールI/Oデバイス動作確認部が使用されていないI/Oパス切替部のパスを検知してプールI/Oデバイスとの接続を実現し、動作確認後にその接続を解除するようにする。
【００７６】
また、動作確認に際して、プールI/Oデバイス動作確認部が、テストプログラム情報格納部から、プールI/Oデバイスステータス情報に含まれるプールI/Oデバイスの種類に応じて使用すべき動作確認プログラムを特定する情報であるテストプログラム情報を取得し、取得したテストプログラム情報に対応したテストプログラムを実行して、プールI/Oデバイスの動作確認を実行する。このようにすることにより、プールI/Oデバイスの種類によって最適なテストを実行することができる。
【００７７】
さらに、具体的には、プールI/Oデバイス動作確認部が、ステータス情報管理パラメータ格納部から、プールI/Oデバイスステータス情報の管理処理で使用するパラメータであって、更新周期時間を含むステータス情報管理パラメータを取得し、取得したステータス情報管理パラメータに基づいて、更新周期時間が経過したプールI/Oデバイスに対して動作確認処理を実行するようにしてもよい。このようにすることにより、プールI/Oデバイスによって異なるパラメータを設定することができ、特に、各プールI/Oデバイスによって動作確認周期を異ならせることができるので、プールI/Oデバイス毎に最適な動作確認処理を実行することができる。なお、ステータス情報管理パラメータは、さらにスリープ時間をパラメータとして含み、プールI/Oデバイス動作確認部は、更新周期時間が経過したプールI/Oデバイスが存在しない場合には、スリープ時間経過後にプールI/Oデバイス動作確認処理を再開するようにしてもよい。また、プールI/Oデバイス動作確認部が、前記計算機システムに接続された外部端末からの入力指示によって、ステータス情報管理パラメータを変更できるようにしてもよい。これにより、管理者が外部端末を用いてパラメータを適宜変更でき、管理者の望む動作確認処理を実現することができる。
【００７８】
なお、実施形態の機能を実現するソフトウェアのプログラムコードによっても本発明は実現できる。この場合、プログラムコードを記録した記憶媒体をシステム或は装置に提供し、そのシステム或は装置のコンピュータ（又はＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出す。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコード自体、及びそれを記憶した記憶媒体は本発明を構成することになる。このようなプログラムコードを供給するための記憶媒体としては、例えば、フロッピィ（登録商標）ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどが用いられる。
【００７９】
また、プログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）などが実際の処理の一部又は全部を行い、その処理によって前述した実施の形態の機能が実現されるようにしてもよい。さらに、記憶媒体から読み出されたプログラムコードが、コンピュータ上のメモリに書きこまれた後、そのプログラムコードの指示に基づき、コンピュータのＣＰＵなどが実際の処理の一部又は全部を行い、その処理によって前述した実施の形態の機能が実現されるようにしてもよい。
【００８０】
また、実施の形態の機能を実現するソフトウェアのプログラムコードがネットワークを介して配信されることにより、システム又は装置のハードディスクやメモリ等の記憶手段又はＣＤ-ＲＷ、ＣＤ-Ｒ等の記憶媒体に格納され、そのシステム又は装置のコンピュータ(又はＣＰＵやＭＰＵ)が当該記憶手段や当該記憶媒体に格納されたプログラムコードを読み出して実行することによっても、達成されるようにしてもよい。
【図面の簡単な説明】
【００８１】
【図１】本発明の実施形態による計算機システムを含む、プールI/Oデバイス動作確認システムの概略構成を示す図である。
【図２】プールI/Oデバイス動作確認部の機能構成を示す図である。
【図３】ステータス情報管理部によるプールI/Oデバイスステータス情報初期化処理を説明するためのフローチャートである。
【図４】ステータス情報管理部によるプールI/Oデバイスステータス情報管理処理を説明するためのフローチャートである。
【図５】ステータス情報管理部によるプールI/Oデバイスステータス情報更新処理を説明するためのフローチャートである。
【図６】I/Oパス切替制御部による接続切替処理を説明するためのフローチャートである。
【図７】テストプログラム実行部による動作確認処理を説明するためのフローチャートである。
【図８】プールI/Oデバイスステータス情報の一例を示す図である。
【図９】テストプログラム情報の一例を示す図である。
【図１０】I/Oパス切替部とプールI/Oデバイス動作確認モジュールとI/Oデバイスの接続構成例を示す図である。
【図１１】I/OデバイスとI/Oパス切替部との間の接続情報の一例を示す図である。
【図１２】I/Oパス切替部内接続情報の一例を示す図である。
【図１３】I/Oパス切替部とプールI/Oデバイス動作確認モジュールとの間の接続情報の一例を示す図である。
【図１４】ステータス情報管理パラメータの一例を示す図である。
【図１５】管理者による入力パラメータの一例を示す図である。
【図１６】プロセッサ及びメモリを仮想化して用いた場合の例を示す図である。
【符号の説明】
【００８２】
100    計算機システム
110    汎用モジュール
120    I/Oデバイス
130    I/Oパス切替部
140    プールI/Oデバイス動作確認モジュール
150    記憶デバイス
201    ステータス情報管理部
202    I/Oパス切替制御部
203    テストプログラム実行部
204    タイマー    
【図１】
2008217265.tif 000003
【図２】
2008217265.tif 000004
【図３】
2008217265.tif 000005
【図４】
2008217265.tif 000006
【図５】
2008217265.tif 000007
【図６】
2008217265.tif 000008
【図７】
2008217265.tif 000009
【図８】
2008217265.tif 000010
【図９】
2008217265.tif 000011
【図１０】
2008217265.tif 000012
【図１１】
2008217265.tif 000013
【図１２】
2008217265.tif 000014
【図１３】
2008217265.tif 000015
【図１４】
2008217265.tif 000016
【図１５】
2008217265.tif 000017
【図１６】
2008217265.tif 000018