(57)【要約】【課題】デバイスが接続された物理ポートについてエラーが発生した場合に、そのエラーがデバイス自体の故障によるものか、または物理ポートの故障によるものかを判断できるポート異常検出装置を提供すること。【解決手段】或る物理ポートに或るデバイスが接続されたとき、その物理ポートを通してとそのデバイスが正常に動作したかエラーを発生したか検出する。その検出結果を集めて、複数の物理ポート５１の各々と複数のデバイス５２の各々との組み合わせについて、それぞれ正常に動作したかエラーを発生したかを表す管理テーブル５３を作成する。その管理テーブル５３の内容に基づいて、エラーを発生した物理ポートとデバイスとの組み合わせについて、そのエラーがデバイスの故障によるものか、または物理ポートの故障によるものかを判断する。【選択図】図５
2013191026.tif 000002
【特許請求の範囲】
【請求項１】
それぞれデバイスが接続される複数の物理ポートの異常を検出するポート異常検出装置であって、
或る物理ポートに或るデバイスが接続されたとき、上記物理ポートを通して上記デバイスが正常に動作したかエラーを発生したか検出する接続エラー検出部と、
上記接続エラー検出部の検出結果を集めて、上記複数の物理ポートの各々と複数のデバイスの各々との組み合わせについて、それぞれ正常に動作したかエラーを発生したかを表す管理テーブルを作成する管理テーブル作成部と、
上記管理テーブルの内容に基づいて、上記エラーを発生した物理ポートとデバイスとの組み合わせについて、そのエラーが上記デバイスの故障によるものか、または上記物理ポートの故障によるものかを判断するエラータイプ判断部とを備えたことを特徴とするポート異常検出装置。
【請求項２】
請求項１に記載のポート異常検出装置において、
上記エラータイプ判断部は、エラーを発生した特定の物理ポートと特定のデバイスとの組み合わせがあったとき、上記管理テーブルを参照して、上記特定の物理ポートを通して上記複数のデバイスのうち上記特定のデバイス以外の他のデバイスが正常に動作したことがあるか否かに基づいて、上記エラーが上記特定の物理ポートの故障によるものか否かを判断するとともに、上記特定のデバイスが上記複数の物理ポートのうち上記特定の物理ポート以外の他の物理ポートを通して正常に動作したことがあるか否かに基づいて、上記エラーが上記特定のデバイスの故障によるものか否かを判断することを特徴とするポート異常検出装置。
【請求項３】
請求項１または２に記載のポート異常検出装置において、
上記管理テーブル作成部は、上記管理テーブルに、上記複数の物理ポートの各々と複数のデバイスの各々との組み合わせについて、それぞれの組み合わせがなされた接続回数と、正常動作またはエラー発生の回数とを記録することを特徴とするポート異常検出装置。
【請求項４】
請求項１から３までのいずれか一つに記載のポート異常検出装置において、
上記接続エラー検出部は、上記エラーの発生を検出したとき、そのエラーを表すエラーコードを出力し、
上記管理テーブル作成部は、上記接続エラー検出部の出力に基づいて、上記管理テーブルに、上記複数の物理ポートの各々について生じたエラーコードを記録すると共に、上記複数のデバイスの各々について生じたエラーコードを記録することを特徴とするポート異常検出装置。
【請求項５】
請求項１から４までのいずれか一つに記載のポート異常検出装置を備えたことを特徴とするコンピュータ。
【請求項６】
請求項５に記載のコンピュータにおいて、
上記接続エラー検出部、上記管理テーブル作成部および上記エラータイプ判断部として働くＢＩＯＳを搭載したマザーボードと、
上記管理テーブルを記憶する管理テーブル記憶部とを備え、
上記複数のデバイスは、このコンピュータのためのオペレーティングシステムを格納したストレージデバイスを含み、
上記複数の物理ポートは、上記ストレージデバイスを接続するために上記マザーボードに搭載されたポートを含むことを特徴とするコンピュータ。
【請求項７】
請求項６に記載のコンピュータにおいて、
上記複数のデバイスは、それぞれこのコンピュータのためのオペレーティングシステムを格納した複数のストレージデバイスを含み、
上記ＢＩＯＳは、上記エラータイプ判断部の判断結果に基づいて、上記複数のストレージデバイスにそれぞれ格納されたオペレーティングシステムのうち起動可能なオペレーティングシステムを選択して起動させるか、または起動できない旨を表示するＯＳ選択処理部を含むことを特徴とするコンピュータ。
【請求項８】
請求項５から７までのいずれか一つに記載の複数のコンピュータがネットワークを介して通信可能に接続されたネットワークシステムであって、
上記複数のコンピュータのうち１つのコンピュータはホストコンピュータであり、
上記ホストコンピュータは、このホストコンピュータについての上記管理テーブルを記憶する管理テーブル記憶部に加えて、上記複数のコンピュータのうちこのホストコンピュータ以外のコンピュータについての上記管理テーブルを記憶する追加の管理テーブル記憶部を備えたことを特徴とするネットワークシステム。
【請求項９】
それぞれデバイスが接続される複数の物理ポートの異常を検出するポート異常検出方法をコンピュータに実行させるためのプログラムであって、
上記ポート異常検出方法は、
或る物理ポートに或るデバイスが接続されたとき、上記物理ポートを通して上記デバイスが正常に動作したかエラーを発生したか検出する接続エラー検出ステップと、
上記接続エラー検出ステップの検出結果を集めて、上記複数の物理ポートの各々と複数のデバイスの各々との組み合わせについて、それぞれ正常に動作したかエラーを発生したかを表す管理テーブルを作成する管理テーブル作成ステップと、
上記管理テーブルの内容に基づいて、上記エラーを発生した物理ポートとデバイスとの組み合わせについて、そのエラーが上記デバイスの故障によるものか、または上記物理ポートの故障によるものかを判断するエラータイプ判断ステップとを含むことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明はポート異常検出装置に関し、より詳しくは、デバイスが接続されるポートの異常を検出するポート異常検出装置に関する。
【０００２】
また、この発明は、そのようなポート異常検出装置を備えたコンピュータおよびネットワークシステムに関する。
【０００３】
また、この発明は、デバイスが接続されるポートの異常を検出するポート異常検出方法をコンピュータに実行させるためのプログラムに関する。
【背景技術】
【０００４】
従来、コンピュータの分野では、例えば特許文献１（特開２００９−１８７４８３号公報）に開示されているように、それぞれデバイス（ストレージデバイス）が接続された複数のポートを備え、それらのポートがそれぞれ有効状態になっているか、無効状態になっているかを示すマップを作成して保持するシステムが知られている（同公報の図６参照）。また、同公報には、それらのポートに発生したエラーコードとエラーカウンタ値を、レジスタに保持することも示されている（同公報の図５参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−１８７４８３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記従来のシステムでは、上記マップは、或るポートとそれに接続されたデバイスとを併せて、有効状態になっているか、または無効状態（若しくはエラー状態）になっているかを示している。このため、例えば、或るポートについてエラー状態であることが示されていても、そのエラーがデバイス自体の故障によるものか、またはポート（物理ポート）の接続異常によるものかを、判断することができないという問題がある。このため、ユーザは、正常なデバイスを故障していると誤解したり、接続異常（故障）を生じたポートを使用し続けるなどして、適切にエラーを回避できないことがある。
【０００７】
そこで、この発明の課題は、デバイスが接続された物理ポートについてエラーが発生した場合に、そのエラーがデバイス自体の故障によるものか、または物理ポートの故障によるものかを判断できるポート異常検出装置を提供することにある。
【０００８】
また、この発明の課題は、そのようなポート異常検出装置を備えたコンピュータおよびネットワークシステムを提供することにある。
【０００９】
また、この発明の課題は、デバイスが接続されるポートの異常を検出するポート異常検出方法をコンピュータに実行させるためのプログラムを提供することにある。
【課題を解決するための手段】
【００１０】
上記課題を解決するため、この発明のポート異常検出装置は、
それぞれデバイスが接続される複数の物理ポートの異常を検出するポート異常検出装置であって、
或る物理ポートに或るデバイスが接続されたとき、上記物理ポートを通して上記デバイスが正常に動作したかエラーを発生したか検出する接続エラー検出部と、
上記接続エラー検出部の検出結果を集めて、上記複数の物理ポートの各々と複数のデバイスの各々との組み合わせについて、それぞれ正常に動作したかエラーを発生したかを表す管理テーブルを作成する管理テーブル作成部と、
上記管理テーブルの内容に基づいて、上記エラーを発生した物理ポートとデバイスとの組み合わせについて、そのエラーが上記デバイスの故障によるものか、または上記物理ポートの故障によるものかを判断するエラータイプ判断部とを備えたことを特徴とする。
【００１１】
本明細書で、「物理ポート」とは、デバイスが現実に配線で接続される接続口を意味する。
【００１２】
この発明のポート異常検出装置では、接続エラー検出部は、或る物理ポートに或るデバイスが接続されたとき、上記物理ポートを通して上記デバイスが正常に動作したかエラーを発生したか検出する。管理テーブル作成部は、上記接続エラー検出部の検出結果を集めて、上記複数の物理ポートの各々と複数のデバイスの各々との組み合わせについて、それぞれ正常に動作したかエラーを発生したかを表す管理テーブルを作成する。エラータイプ判断部は、上記管理テーブルの内容に基づいて、上記エラーを発生した物理ポートとデバイスとの組み合わせについて、そのエラーが上記デバイスの故障によるものか、または上記物理ポートの故障によるものかを判断する。したがって、このポート異常検出装置によれば、デバイスが接続された物理ポートについてエラーが発生した場合に、そのエラーがデバイス自体の故障によるものか、または物理ポートの故障によるものかを判断できる。
【００１３】
例えばそのエラーがデバイス自体の故障であり、そのデバイスが接続された物理ポートは正常であれば、ユーザは、その物理ポートに接続された故障したデバイスを正常なデバイスと交換することによって、迅速かつ適切にエラーを回避できる。または、そのエラーが物理ポートの故障によるものであり、その物理ポートに接続されたデバイス自体は正常であれば、ユーザは、その正常なデバイスを別の正常な物理ポートに接続し直すことによって、迅速かつ適切にエラーを回避できる。
【００１４】
一実施形態のポート異常検出装置では、上記エラータイプ判断部は、エラーを発生した特定の物理ポートと特定のデバイスとの組み合わせがあったとき、上記管理テーブルを参照して、上記特定の物理ポートを通して上記複数のデバイスのうち上記特定のデバイス以外の他のデバイスが正常に動作したことがあるか否かに基づいて、上記エラーが上記特定の物理ポートの故障によるものか否かを判断するとともに、上記特定のデバイスが上記複数の物理ポートのうち上記特定の物理ポート以外の他の物理ポートを通して正常に動作したことがあるか否かに基づいて、上記エラーが上記特定のデバイスの故障によるものか否かを判断することを特徴とする。
【００１５】
この一実施形態のポート異常検出装置では、上記エラータイプ判断部は、エラーを発生した特定の物理ポートと特定のデバイスとの組み合わせがあったとき、上記管理テーブルを参照する。そして、上記エラータイプ判断部は、上記特定の物理ポートを通して上記複数のデバイスのうち上記特定のデバイス以外の他のデバイスが正常に動作したことがあるか否かに基づいて、上記エラーが上記特定の物理ポートの故障によるものか否かを判断する。また、上記エラータイプ判断部は、上記特定のデバイスが上記複数の物理ポートのうち上記特定の物理ポート以外の他の物理ポートを通して正常に動作したことがあるか否かに基づいて、上記エラーが上記特定のデバイスの故障によるものか否かを判断する。したがって、上記エラーがデバイス自体の故障によるものか、または物理ポートの故障によるものかを精度良く判断できる。
【００１６】
一実施形態のポート異常検出装置では、上記管理テーブル作成部は、上記管理テーブルに、上記複数の物理ポートの各々と複数のデバイスの各々との組み合わせについて、それぞれの組み合わせがなされた接続回数と、正常動作またはエラー発生の回数とを記録することを特徴とする。
【００１７】
この一実施形態のポート異常検出装置では、上記管理テーブル作成部は、上記管理テーブルに、上記複数の物理ポートの各々と複数のデバイスの各々との組み合わせについて、それぞれの組み合わせがなされた接続回数と、正常動作またはエラー発生の回数とを記録する。したがって、例えばユーザが上記管理テーブルを参照することによって、エラーを発生した物理ポートとデバイスとの組み合わせについて、接続回数と、正常動作またはエラー発生の回数とを比較することによって、そのエラーが上記デバイスの故障によるものか、または上記物理ポートの故障によるものかを精度良く判断できる。
【００１８】
一実施形態のポート異常検出装置では、
上記接続エラー検出部は、上記エラーの発生を検出したとき、そのエラーを表すエラーコードを出力し、
上記管理テーブル作成部は、上記接続エラー検出部の出力に基づいて、上記管理テーブルに、上記複数の物理ポートの各々について生じたエラーコードを記録すると共に、上記複数のデバイスの各々について生じたエラーコードを記録することを特徴とする。
【００１９】
この一実施形態のポート異常検出装置では、上記接続エラー検出部は、上記エラーの発生を検出したとき、そのエラーを表すエラーコードを出力する。上記管理テーブル作成部は、上記接続エラー検出部の出力に基づいて、上記管理テーブルに、上記複数の物理ポートの各々について生じたエラーコードを記録すると共に、上記複数のデバイスの各々について生じたエラーコードを記録する。したがって、例えばユーザが上記管理テーブルを参照することによって、上記複数の物理ポートの各々について生じたエラーコードと、上記複数のデバイスの各々について生じたエラーコードとに基づいて、各物理ポートが故障しているか、各デバイスが故障しているかを精度良く判断できる。
【００２０】
この発明のコンピュータは、上記ポート異常検出装置を備えたことを特徴とするコンピュータである。
【００２１】
この発明のコンピュータでは、デバイスが接続された物理ポートについてエラーが発生した場合に、そのエラーがデバイス自体の故障によるものか、または物理ポートの故障によるものかを判断できる。
【００２２】
例えばそのエラーがデバイス自体の故障であり、そのデバイスが接続された物理ポートは正常であれば、ユーザは、その物理ポートに接続された故障したデバイスを正常なデバイスと交換することによって、迅速かつ適切にエラーを回避できる。または、そのエラーが物理ポートの故障によるものであり、その物理ポートに接続されたデバイス自体は正常であれば、ユーザは、その正常なデバイスを別の正常な物理ポートに接続し直すことによって、迅速かつ適切にエラーを回避できる。
【００２３】
一実施形態のコンピュータでは、
上記接続エラー検出部、上記管理テーブル作成部および上記エラータイプ判断部として働くＢＩＯＳを搭載したマザーボードと、
上記管理テーブルを記憶する管理テーブル記憶部とを備え、
上記複数のデバイスは、このコンピュータのためのオペレーティングシステムを格納したストレージデバイスを含み、
上記複数の物理ポートは、上記ストレージデバイスを接続するために上記マザーボードに搭載されたポートを含むことを特徴とする。
【００２４】
ここで、「ＢＩＯＳ」とは、ベーシック インプット/アウトプット システム（Basic Input/Output System）を意味する。
【００２５】
この一実施形態のコンピュータでは、ＢＩＯＳが上記接続エラー検出部および上記管理テーブル作成部の動作を実行する。そして、管理テーブル記憶部が、上記ＢＩＯＳによって作成された管理テーブルを記憶する。さらに、ＢＩＯＳが上記エラータイプ判断部の動作を実行する。すなわち、上記管理テーブルの内容に基づいて、上記エラーを発生した物理ポートとストレージデバイスとの組み合わせについて、そのエラーが上記ストレージデバイスの故障によるものか、または上記物理ポートの故障によるものかを判断する。したがって、このコンピュータでは、オペレーティングシステムを格納したストレージデバイスが接続された物理ポートについてエラーが発生した場合に、そのエラーがストレージデバイス自体の故障によるものか、または物理ポートの故障によるものかを判断できる。
【００２６】
例えばそのエラーがストレージデバイス自体の故障であり、そのストレージデバイスが接続された物理ポートは正常であれば、ユーザは、その物理ポートに接続された故障したストレージデバイスを正常なストレージデバイスと交換することによって、迅速かつ適切にエラーを回避でき、コンピュータのオペレーティングシステムを起動させることができる。または、そのエラーが物理ポートの故障によるものであり、その物理ポートに接続されたストレージデバイス自体は正常であれば、ユーザは、その正常なストレージデバイスを別の正常な物理ポートに接続し直すことによって、迅速かつ適切にエラーを回避でき、コンピュータのオペレーティングシステムを起動させることができる。
【００２７】
一実施形態のコンピュータでは、
上記複数のデバイスは、それぞれこのコンピュータのためのオペレーティングシステムを格納した複数のストレージデバイスを含み、
上記ＢＩＯＳは、上記エラータイプ判断部の判断結果に基づいて、上記複数のストレージデバイスにそれぞれ格納されたオペレーティングシステムのうち起動可能なオペレーティングシステムを選択して起動させるか、または起動できない旨を表示するＯＳ選択処理部を含むことを特徴とする。
【００２８】
ここで、「ＯＳ」は、オペレーティングシステム（Operating System）を意味する。
【００２９】
この一実施形態のコンピュータでは、上記複数のデバイスは、それぞれこのコンピュータのためのオペレーティングシステムを格納した複数のストレージデバイスを含む。上記ＢＩＯＳに含まれたＯＳ選択処理部は、上記エラータイプ判断部の判断結果に基づいて、上記複数のストレージデバイスにそれぞれ格納されたオペレーティングシステムのうち起動可能なオペレーティングシステムを選択して起動させるか、または起動できない旨を表示する。例えば、上記エラータイプ判断部の判断結果で、正常な物理ポートに接続された正常なストレージデバイス（オペレーティングシステムを格納したもの）が存在すれば、上記ＯＳ選択処理部は、その正常なストレージデバイスを選択して、その正常なストレージデバイスに格納されたオペレーティングシステムを起動させる。したがって、正常な物理ポートに接続された正常なストレージデバイスが存在すれば、ユーザは、上記コンピュータを起動させるために、手を煩わせる必要がない。一方、上記エラータイプ判断部の判断結果で、正常な物理ポートに接続された正常なストレージデバイス（オペレーティングシステムを格納したもの）が存在しなければ、上記ＯＳ選択処理部は、起動できない旨を表示する。したがって、ユーザは、例えば上記管理テーブルを参照することによって、正常な物理ポートに新たなストレージデバイス（オペレーティングシステムを格納したもの）を接続して、上記コンピュータの起動を試みることができる。
【００３０】
この発明のネットワークシステムは、
複数の上記コンピュータがネットワークを介して通信可能に接続されたネットワークシステムであって、
上記複数のコンピュータのうち１つのコンピュータはホストコンピュータであり、
上記ホストコンピュータは、このホストコンピュータについての上記管理テーブルを記憶する管理テーブル記憶部に加えて、上記複数のコンピュータのうちこのホストコンピュータ以外のコンピュータについての上記管理テーブルを記憶する追加の管理テーブル記憶部を備えたことを特徴とする。
【００３１】
この発明のネットワークシステムでは、上記複数のコンピュータのうち１つのコンピュータはホストコンピュータであり、このホストコンピュータについての上記管理テーブルを記憶する管理テーブル記憶部に加えて、上記複数のコンピュータのうちこのホストコンピュータ以外のコンピュータ（適宜「他のコンピュータ」と呼ぶ。）についての上記管理テーブルを記憶する追加の管理テーブル記憶部を備える。つまり、ホストコンピュータは、自らの管理テーブルに加えて、他のコンピュータの管理テーブルを記憶している。したがって、上記ホストコンピュータは、ネットワークシステム内の他のコンピュータにおけるデバイスまたは物理ポートの故障の状況を把握できる。したがって、複数のコンピュータの集中管理が可能になる。
【００３２】
この発明のプログラムは、それぞれデバイスが接続される複数の物理ポートの異常を検出するポート異常検出方法をコンピュータに実行させるためのプログラムであって、
上記ポート異常検出方法は、
或る物理ポートに或るデバイスが接続されたとき、上記物理ポートを通して上記デバイスが正常に動作したかエラーを発生したか検出する接続エラー検出ステップと、
上記接続エラー検出ステップの検出結果を集めて、上記複数の物理ポートの各々と複数のデバイスの各々との組み合わせについて、それぞれ正常に動作したかエラーを発生したかを表す管理テーブルを作成する管理テーブル作成ステップと、
上記管理テーブルの内容に基づいて、上記エラーを発生した物理ポートとデバイスとの組み合わせについて、そのエラーが上記デバイスの故障によるものか、または上記物理ポートの故障によるものかを判断するエラータイプ判断ステップとを含むことを特徴とする。
【００３３】
この発明のプログラムは、ポート異常検出方法としてコンピュータによって実行される。上記ポート異常検出方法における接続エラー検出ステップでは、或る物理ポートに或るデバイスが接続されたとき、上記物理ポートを通して上記デバイスが正常に動作したかエラーを発生したか検出する。管理テーブル作成ステップでは、上記接続エラー検出部の検出結果を集めて、上記複数の物理ポートの各々と複数のデバイスの各々との組み合わせについて、それぞれ正常に動作したかエラーを発生したかを表す管理テーブルを作成する。エラータイプ判断ステップでは、上記管理テーブルの内容に基づいて、上記エラーを発生した物理ポートとデバイスとの組み合わせについて、そのエラーが上記デバイスの故障によるものか、または上記物理ポートの故障によるものかを判断する。したがって、このプログラムが表すポート異常検出方法をコンピュータに実行させれば、デバイスが接続された物理ポートについてエラーが発生した場合に、そのエラーがデバイス自体の故障によるものか、または物理ポートの故障によるものかを判断できる。
【００３４】
例えばそのエラーがデバイス自体の故障であり、そのデバイスが接続された物理ポートは正常であれば、ユーザは、その物理ポートに接続された故障したデバイスを正常なデバイスと交換することによって、迅速かつ適切にエラーを回避できる。または、そのエラーが物理ポートの故障によるものであり、その物理ポートに接続されたデバイス自体は正常であれば、ユーザは、その正常なデバイスを別の正常な物理ポートに接続し直すことによって、迅速かつ適切にエラーを回避できる。
【発明の効果】
【００３５】
以上より明らかなように、この発明のポート異常検出装置およびコンピュータによれば、デバイスが接続された物理ポートについてエラーが発生した場合に、そのエラーがデバイス自体の故障によるものか、または物理ポートの故障によるものかを判断できる。
【００３６】
また、この発明のネットワークシステムでは、ホストコンピュータが自らの管理テーブルに加えて他のコンピュータの管理テーブルを記憶しているので、複数のコンピュータの集中管理が可能になる。
【００３７】
また、この発明のプログラムをポート異常検出方法としてコンピュータに実行させることにより、デバイスが接続された物理ポートについてエラーが発生した場合に、そのエラーがデバイス自体の故障によるものか、または物理ポートの故障によるものかを判断できる。
【図面の簡単な説明】
【００３８】
【図１】この発明のポート異常検出装置を備えた一実施形態のコンピュータのブロック構成を示す図である。
【図２】図１に示したような複数のコンピュータがネットワークを介して通信可能に接続されたネットワークシステムの構成を示す図である。
【図３】図１のコンピュータ（図２中のクライアントマシンに相当する。）に搭載された情報保存ＲＯＭ（Read Only Memory；読み出し専用メモリ）の記憶内容を示す図である。
【図４】図２中のホストマシンに搭載された情報保存ＲＯＭの記憶内容を示す図である。
【図５】情報保存ＲＯＭに記憶された機器ポート管理テーブルの内容を示す図である。
【図６】図１のコンピュータの動作フローの一部を示す図である。
【図７】図１のコンピュータの動作フローの一部を示す図である。
【図８】図１のコンピュータの動作フローの一部を示す図である。
【図９】図１のコンピュータの動作フローの一部を示す図である。
【図１０】図１のコンピュータの動作フローの一部を示す図である。
【図１１】図２中のホストマシンの動作フローの一部を示す図である。
【図１２】図２中のホストマシンの動作フローの一部を示す図である。
【発明を実施するための形態】
【００３９】
以下、この発明を、図示の実施の形態により詳細に説明する。
【００４０】
図１は、この発明のポート異常検出装置を備えた一実施形態のコンピュータ（全体を符号ＰＣ１で示す。）のブロック構成を示している。
【００４１】
このコンピュータＰＣ１は、マザーボード９０と、このマザーボード９０に搭載された、ＣＰＵ（Central Processing Unit；中央演算処理装置）１１と、ＵＳＢ（Universal Serial Bus；ユニバーサル・シリアル・バス）コントローラ１２と、ＳＡＴＡ（Serial Advanced Technology Attachment）コントローラ１３と、チップセット１４と、ＲＡＭ（Random Access Memory；ランダム・アクセス・メモリ）１５と、ＢＩＯＳ−ＲＯＭ１６と、情報保存ＲＯＭ１７と、ＬＡＮインタフェース（Ｉ／Ｆ）１８とを備えている。
【００４２】
ＣＰＵ１１は、後述するストレージデバイスに格納されたプログラム（ＯＳを含む。）によって、様々な数値計算や情報処理、機器制御などを行う。
【００４３】
ＵＳＢコントローラ１２には、物理ポートとしての複数のＵＳＢポートＵＳＢ１，ＵＳＢ２，ＵＳＢ３，ＵＳＢ４が接続されている。このＵＳＢコントローラ１２は、ＢＩＯＳ（またはＯＳ）やチップセット１４の制御によって、ＵＳＢポートＵＳＢ１，ＵＳＢ２，…，ＵＳＢ４を選択する。この例では、ＵＳＢポートＵＳＢ１，ＵＳＢ２，ＵＳＢ３，ＵＳＢ４には、それぞれＯＳを格納したストレージデバイスとしてのＵＳＢメモリＥＥＥ，ＦＦＦ，ＧＧＧ，ＨＨＨが接続されている。
【００４４】
ＳＡＴＡコントローラ１３には、物理ポートとしての複数のＳＡＴＡポートＳＡＴＡ１，ＳＡＴＡ２，ＳＡＴＡ３，ＳＡＴＡ４，ＳＡＴＡ５，ＳＡＴＡ６が接続されている。このＳＡＴＡコントローラ１３は、ＢＩＯＳ（またはＯＳ）やチップセット１４の制御によって、ＳＡＴＡポートＳＡＴＡ１，ＳＡＴＡ２，…，ＳＡＴＡ６を選択する。この例では、ＳＡＴＡポートＳＡＴＡ１，ＳＡＴＡ２には、それぞれＯＳを格納したストレージデバイスとしてのハードディスクドライブ（ＨＤＤ）ＸＸＸ，ＹＹＹが接続されている。ＳＡＴＡポートＳＡＴＡ３，ＳＡＴＡ４には、それぞれＯＳを格納したストレージデバイスとしてのソリッドステートドライブ（ＳＳＤ）ＺＺＺ，ＡＡＡが接続されている。ＳＡＴＡポートＳＡＴＡ５には、ＯＳを格納したストレージデバイスとしてのＤＶＤ（Digital Versatile Disc）ドライブＣＣＣが接続されている。また、ＳＡＴＡポートＳＡＴＡ６には、ＯＳを格納したストレージデバイスとしてのフロッピー（登録商標）ディスクドライブ（ＦＤＤ）ＤＤＤが接続されている。
【００４５】
チップセット１４は、ＣＰＵ１１のための周辺回路を構成する。このチップセット１４は、ＵＳＢコントローラ１２、ＳＡＴＡコントローラ１３、ＲＡＭ１５、情報保存ＲＯＭ１７、ＬＡＮインタフェース１８との間で、データの受け渡しを管理する。
【００４６】
ＲＡＭ１５は、データを一時的に記憶し、ＣＰＵ１１のための作業領域として用いられる。
【００４７】
ＢＩＯＳ−ＲＯＭ１６は、フラッシュＲＯＭからなり、このコンピュータの基本的な動作を実行するプログラム（以下「ＢＩＯＳプログラム」と呼ぶ。）を格納している。
【００４８】
情報保存ＲＯＭ１７は、フラッシュＲＯＭからなり、図３に示すように、ＣＰＵ１１やチップセット１４のための動作設定データ１７ａと、優先起動デバイス情報１７ｂと、管理テーブルとしての機器ポート管理テーブル１７ｃとを格納している。動作設定データ１７ａは、ＢＩＯＳプログラムの起動時に、ＣＰＵ１１やチップセット１４を設定するために参照される。優先起動デバイス情報１７ｂは、ＵＳＢポートＵＳＢ１，ＵＳＢ２，…，ＵＳＢ４やＳＡＴＡポートＳＡＴＡ１，ＳＡＴＡ２，…，ＳＡＴＡ６に接続された複数のデバイスのうちどのデバイスを優先的に起動させるか（より正確には、どの物理ポートを優先的に起動させるか）を表す情報（これを「起動優先度」と呼ぶ。）を格納している。機器ポート管理テーブル１７ｃについては、後述する。
【００４９】
図１中に示すＬＡＮインタフェース１８は、ネットワーク９００を介して、外部の機器（他のコンピュータなど）と通信を行う。
【００５０】
また、マザーボード９０には、ＬＣＤ（液晶表示素子）などの画像を表示する表示部１９と、ユーザが入出力を行うための図示しないキーボード、マウスが接続されている。
【００５１】
図５は、機器ポート管理テーブル１７ｃの内容を例示している。機器ポート管理テーブル１７ｃは、複数の物理ポートを特定する表頭部５１と、複数のデバイスを特定する表側部５２と、表体部５３とを有している。
【００５２】
表頭部５１には、この例では、ＳＡＴＡポートＳＡＴＡ１，ＳＡＴＡ２，…，ＳＡＴＡ６と、ＵＳＢポートＵＳＢ１，ＵＳＢ２，ＵＳＢ３，ＵＳＢ４とが挙げられている。
【００５３】
表側部５２には、この例では、ストレージデバイスとして、ハードディスクドライブ（ＨＤＤ）ＸＸＸ，ＹＹＹと、ソリッドステートドライブ（ＳＳＤ）ＺＺＺ，ＡＡＡと、ＤＶＤドライブＣＣＣと、フロッピー（登録商標）ディスクドライブ（ＦＤＤ）ＤＤＤとが挙げられている。なお、この表側部５２には、デバイスの名称を簡略化して表記しているが、ユーザによる参照の便宜のために、例えば「Ａ社製２５０ＧＢ（ギガバイト）ＨＤＤ  Ｓｅｒｉａｌ  Ｎｏ．ＸＸＸ」、「Ｂ社製８０ＧＢ  ＨＤＤ  Ｓｅｒｉａｌ  Ｎｏ．ＹＹＹ」、…のように、メーカー名、記憶容量などを併せて表記しても良い。
【００５４】
表体部５３は、表頭部５１で特定された複数の物理ポートの各々と表側部５２で特定された複数のデバイスの各々との組み合わせについて、それぞれ正常に動作（この例では起動）したかエラーを発生したかを表している。この例では、それらの組み合わせ毎に、その組み合わせで起動を試みた回数と、その組み合わせで正常に起動した回数とが、（正常に起動した回数）／（起動を試みた回数）という形式で、分数で表されている。
【００５５】
また、表体部５３の下方には、各物理ポートに関して発生したエラーのコード（例えばＳＡＴＡポートＳＡＴＡ２に関して、「0xAA」、「0xBB」、「0xCC」、…）を履歴順に表すポートエラーコード欄５５が設けられている。このエラーコードの履歴順は、ポートエラーコード欄５５の左側方（表側部５２の下方）に設けられた欄５４によって、「エラーコード履歴１」、「エラーコード履歴２」、「エラーコード履歴３」、…のように特定されている。
【００５６】
また、表体部５３の右側方には、各デバイスに関して発生したエラーのコード（例えばハードディスクドライブ（ＨＤＤ）ＹＹＹに関して、「0x12」、「0x34」、「0x56」、…）を履歴順に表すデバイスエラーコード欄５６が設けられている。このエラーコードの履歴順は、デバイスエラーコード欄５６の上方（表頭部５１の右側方）に設けられた欄５６によって、「ＥＲＲ１」、「ＥＲＲ２」、「ＥＲＲ３」、…のように特定されている。
【００５７】
この機器ポート管理テーブル１７ｃは、この例ではＢＩＯＳプログラムによって、概ね次のようにして作成される（詳しくは、後に動作フローを用いて説明する。）。すなわち、コンピュータＰＣ１が起動される度に、ＢＩＯＳプログラムが接続エラー検出部として働いて、或る物理ポートを通して或るデバイスが正常に動作したかエラーを発生したか検出する。そして、コンピュータＰＣ１が起動される度にその検出結果を集めて、複数の物理ポートＳＡＴＡ１，ＳＡＴＡ２，…，ＳＡＴＡ６の各々と複数のＳＡＴＡデバイスＸＸＸ，ＹＹＹ，ＺＺＺ，ＡＡＡ，ＣＣＣ，ＤＤＤの各々との組み合わせ、また、複数の物理ポートＵＳＢ１，ＵＳＢ２，ＵＳＢ３，ＵＳＢ４の各々と複数のＵＳＢデバイスＥＥＥ，ＦＦＦ，ＧＧＧ，ＨＨＨの各々との組み合わせについて、それぞれ正常に動作したかエラーを発生したかを記録する（なお、接続口の形状の相違のために、ＳＡＴＡポートとＵＳＢデバイスとの組み合わせや、ＵＳＢポートとＳＡＴＡデバイスとの組み合わせは、有り得ない。）。エラーを検出したとき、ＢＩＯＳプログラムは、上述のエラーコードを出力する。
【００５８】
また、コンピュータＰＣ１が起動される度に、ＢＩＯＳプログラムが管理テーブル作成部として働いて、それらの物理ポートとデバイスとの組み合わせ毎に、その組み合わせで起動を試みた回数と、その組み合わせで正常に起動した回数とを、検出結果として集めて、機器ポート管理テーブル１７ｃ（より正確には、表体部５３）を作成する。また、ＢＩＯＳプログラムは、ポートエラーコード欄５５、デバイスエラーコード欄５６にそれぞれエラーコードを記録する。
【００５９】
また、この例ではＢＩＯＳプログラムがエラータイプ判断部として働いて、機器ポート管理テーブル１７ｃの内容に基づいて、エラーを発生した物理ポートとデバイスとの組み合わせについて、そのエラーがデバイスの故障によるものか、または物理ポートの故障によるものかを判断する。したがって、デバイスが接続された物理ポートについてエラーが発生した場合に、そのエラーがデバイス自体の故障によるものか、または物理ポートの故障によるものかを判断できる。
【００６０】
例えば、機器ポート管理テーブル１７ｃによれば、物理ポートＳＡＴＡ１とデバイスＹＹＹとの組み合わせで起動を試みた回数は１０回あり、その組み合わせで正常に起動した回数は０回になっている（０／１０と表記されている。）。つまり、１０回ともエラーが発生している。ここで、物理ポートＳＡＴＡ１の列を縦方向に見ると、物理ポートＳＡＴＡ１と他のデバイスＸＸＸ，ＺＺＺ，ＡＡＡ，ＣＣＣ，ＤＤＤとの組み合わせについては、５／５，７／７，４／４，２／２，２／２という表記であり、起動を試みた全回とも正常に起動している。また、デバイスＹＹＹの行を横方向に見ると、デバイスＹＹＹと他の物理ポートＳＡＴＡ２，ＳＡＴＡ３，ＳＡＴＡ４，ＳＡＴＡ５，ＳＡＴＡ６との組み合わせについては、０／４，０／２，０／１，０／０，０／０という表記であり、起動を試みた全回ともエラーが発生している。したがって、ＢＩＯＳプログラムは、物理ポートＳＡＴＡ１は正常であり、デバイスＹＹＹが故障していると判断できる。ＢＩＯＳプログラムは、表示部１９にその旨のメッセージを表示して、ユーザに報知する。
【００６１】
この結果、ユーザは、例えばその物理ポートＳＡＴＡ１に接続された故障したデバイスＹＹＹを正常なデバイスと交換することによって、迅速かつ適切にエラーを回避できる。
【００６２】
また、機器ポート管理テーブル１７ｃによれば、物理ポートＵＳＢ３とデバイスＥＥＥとの組み合わせで起動を試みた回数は１０回あり、その組み合わせで正常に起動した回数は０回になっている（０／１０と表記されている。）。つまり、１０回ともエラーが発生している。ここで、デバイスＥＥＥの行を横方向に見ると、デバイスＥＥＥと他の物理ポートＵＳＢ１，ＵＳＢ２，ＵＳＢ４との組み合わせについては、１０／１０，１０／１０，６／６という表記であり、起動を試みた全回とも正常に起動している。また、物理ポートＵＳＢ３の列を縦方向に見ると、物理ポートＵＳＢ３と他のデバイスＦＦＦ，ＧＧＧ，ＨＨＨとの組み合わせについては、０／１５，０／２，０／２という表記であり、起動を試みた全回ともエラーが発生している。したがって、ＢＩＯＳプログラムは、デバイスＥＥＥは正常であり、物理ポートＵＳＢ３が故障していると判断できる。ＢＩＯＳプログラムは、表示部１９にその旨のメッセージを表示して、ユーザに報知する。
【００６３】
この結果、ユーザは、例えばその正常なデバイスＥＥＥを別の正常な物理ポートＵＳＢ３に接続し直すことによって、迅速かつ適切にエラーを回避できる。
【００６４】
このように、ＢＩＯＳプログラムは、エラーを発生した特定の物理ポートと特定のデバイスとの組み合わせがあったとき、機器ポート管理テーブル１７ｃを参照する。そして、ＢＩＯＳプログラムは、上記特定の物理ポートを通して上記特定のデバイス以外の他のデバイスが正常に動作したことがあるか否かに基づいて、上記エラーが上記特定の物理ポートの故障によるものか否かを判断するとともに、上記特定のデバイスが上記特定の物理ポート以外の他の物理ポートを通して正常に動作したことがあるか否かに基づいて、上記エラーが上記特定のデバイスの故障によるものか否かを判断する。したがって、上記エラーがデバイス自体の故障によるものか、または物理ポートの故障によるものかを精度良く判断できる。その結果、ユーザは、迅速かつ適切にエラーを回避できる。
【００６５】
また、ユーザは、機器ポート管理テーブル１７ｃのポートエラーコード欄５５、デバイスエラーコード欄５６を参照することによって、複数の物理ポートＳＡＴＡ１，ＳＡＴＡ２，…，ＳＡＴＡ６，ＵＳＢ１，ＵＳＢ２，ＵＳＢ３，ＵＳＢ４の各々について生じたエラーコードと、複数のデバイスＸＸＸ，ＹＹＹ，ＺＺＺ，ＡＡＡ，ＣＣＣ，ＤＤＤ，ＥＥＥ，ＦＦＦ，ＧＧＧ，ＨＨＨの各々について生じたエラーコードとに基づいて、各物理ポートが故障しているか、各デバイスが故障しているかを精度良く判断できる。
【００６６】
図６、図７、図８、図９および図１０は、ＢＩＯＳプログラムによる機器ポート管理テーブル１７ｃに関する動作のフローを示している。
【００６７】
（１）  コンピュータＰＣ１の電源がＯＮ（オン）されると、図６のステップＳ１に示すように、ＣＰＵ１１とチップセット１４が起動し、ＢＩＯＳ−ＲＯＭ１６からＢＩＯＳプログラムを読み込む。これにより、ステップＳ２に示すように、ＢＩＯＳプログラムが起動する。以下のステップは、ＢＩＯＳプログラムが実行する。簡単のため、以下では、動作の主体（ＢＩＯＳプログラム）を適宜省略して説明する。また、物理ポートは、適宜単にポートと呼ぶ。
【００６８】
続いて、ステップＳ３に示すように、ＢＩＯＳプログラムは、このコンピュータＰＣ１自身の情報保存ＲＯＭ１７内の機器ポート管理テーブル１７ｃを取得し、ＲＡＭ１５上の特定エリアに配置する。
【００６９】
続いて、ステップＳ４に示すように、情報保存ＲＯＭ１７内に記憶されている、どのポートを優先的に起動させるかを表す起動優先度を取得する。これに応じて、ステップＳ５に示すように、機器ポート管理テーブル１７ｃにおいて最優先で起動すべく指定されているポート（列）を参照する。
【００７０】
（２）  続いて、図７のステップＳ６に示すように、機器ポート管理テーブル１７ｃにおいて、その参照しているポートの列で、起動ＯＫ回数が全てのデバイスで０か否かを判断する。ここで、起動ＯＫ回数が全てのデバイスで０でなければ（すなわち、いずれかのデバイスで起動ＯＫ回数が１回以上あれば）（ステップＳ６でＮＯ）、その参照しているポートが正常であると判断できる。または、起動ＯＫ回数が全てのデバイスで０であっても（ステップＳ６でＹＥＳ）、起動を試みた回数が全てのデバイスで０であれば（ステップＳ１１でＹＥＳ）、その参照しているポートが正常である可能性がある。そこで、ステップＳ７に示すように、その参照しているポートに接続されたデバイスを識別する情報（これを「デバイス情報」と呼ぶ。）の取得を試みる。
【００７１】
ここで、デバイス情報を取得できなければ（ステップＳ８でＮＯ）、ステップＳ１７に示すように、「ポートもしくはデバイスが故障している可能性があるため、次の優先度のポートを検索する」というメッセージを表示部１９に表示する。そして、後述する図８のステップＳ１８へ進む。
【００７２】
一方、図７のステップＳ８で、デバイス情報を取得できれば（ステップＳ８でＹＥＳ）、ステップＳ９に示すように、そのデバイスが機器ポート管理テーブル１７ｃの表側部５２に挙げられているデバイスであるか否かを判断する。
【００７３】
ここで、そのデバイスが機器ポート管理テーブル１７ｃの表側部５２に挙げられているデバイスでなければ（ステップＳ９でＮＯ）、ステップＳ１０に示すように、そのデバイスを新規デバイスであると判断して、機器ポート管理テーブル１７ｃの表側部５２の新しい行に、そのデバイスの名称を追加する。そして、後述する図９のステップＳ１２へ進む。
【００７４】
一方、図７のステップＳ９で、そのデバイスが機器ポート管理テーブル１７ｃの表側部５２に挙げられているデバイスであれば（ステップＳ９でＹＥＳ）、そのまま後述する図９のステップＳ１２へ進む。
【００７５】
（３）  図７のステップＳ６で、機器ポート管理テーブル１７ｃにおいて、上記参照しているポートの列で、起動ＯＫ回数が全てのデバイスで０であり（ステップＳ６でＹＥＳ）、かつ起動を試みた回数が全てのデバイスで０でなければ（すなわち、いずれかのデバイスで起動を試みた回数が１回以上あれば）（ステップＳ１１でＮＯ）、そのポートが故障していると判断できる。そこで、図８のステップＳ１６に進んで、「ポートが故障している可能性があるため、次の優先度のポートを検索する」というメッセージを表示部１９に表示する。
【００７６】
（４）  続いて、図８のステップＳ１８に示すように、機器ポート管理テーブル１７ｃにおいて次の優先度で起動すべく指定されているポート（列）を参照する。
【００７７】
続いて、ステップＳ１９で、全てのポートについて正常であるか否かを確認したかを判断する。未確認のポートがあれば（ステップＳ１９でＮＯ）、図７のステップＳ６へ戻って別のポートに対して処理を繰り返す。一方、全てのポートについて確認済みであれば（ステップＳ１９でＹＥＳ）、ステップＳ２０に示すように、「全ポートを検索したが、全ポートが故障している可能性があり、起動できない」というメッセージを表示部１９に表示する（ＯＳ起動エラー終了）。
【００７８】
（５）  図９のステップＳ１２では、機器ポート管理テーブル１７ｃにおいて、そのデバイスの行を参照する。そのデバイスについて起動ＯＫ回数が全てのポートで０であり（ステップＳ１３でＹＥＳ）、かつ、そのデバイスについて起動を試みた回数が全てのポートで０でなければ（すなわち、いずれかのポートで起動を試みた回数が１回以上あれば）（ステップＳ１４でＮＯ）、そのデバイスが故障していると判断できる。そこで、ステップＳ１５に進んで、「デバイスが故障している可能性があり、起動できない」というメッセージを表示部１９に表示する（ＯＳ起動エラー終了）。
【００７９】
上述のステップＳ１６，Ｓ２０，Ｓ１５は、ＢＩＯＳプログラムのエラータイプ判断部としての動作である。
【００８０】
一方、そのデバイスについて起動ＯＫ回数が全てのポートで０ではなく（すなわち、いずれかのポートで起動ＯＫ回数が１回以上あれば）（ステップＳ１３でＮＯ）、または、そのデバイスについて起動を試みた回数が全てのポートで０であれば（ステップＳ１４でＹＥＳ）、そのデバイスが正常であるか故障しているか、現時点の機器ポート管理テーブル１７ｃによっては、まだ判断ができない。そこで、次に述べる図１０のステップＳ２１へ進む。
【００８１】
（６）  図１０のステップＳ２１では、このコンピュータＰＣ１自身の情報保存ＲＯＭ１７内の機器ポート管理テーブル１７ｃの現在参照しているポートの列にある、そのデバイスの起動を試みた回数を１だけ追加（＋１）する。すなわち、機器ポート管理テーブル１７ｃの表体部５３において、そのポートとそのデバイスとの組み合わせに相当する桝目で、例えば、書き換え前の表記が０／０であれば、それを０／１に書き換える。
【００８２】
続いて、ステップＳ２２に示すように、そのデバイスに格納されているＯＳの起動を試みる。そして、ＯＳの起動が正常に完了すれば（ステップＳ２３でＹＥＳ）、そのデバイスが正常であると判断できる。そこで、ステップＳ２４に示すように、このコンピュータＰＣ１自身の情報保存ＲＯＭ１７内の機器ポート管理テーブル１７ｃの現在参照しているポートの列にある、そのデバイスの起動ＯＫ回数を１だけ追加（＋１）する。すなわち、機器ポート管理テーブル１７ｃの表体部５３において、そのポートとそのデバイスとの組み合わせに相当する桝目で、例えば、書き換え前の表記が０／１であれば、それを１／１に書き換える。これにより、ＯＳを使用できる状態になる。
【００８３】
なお、図８のステップＳ１６で次の優先度のポートを検索し、その後、図１０のステップＳ２２でそのポートに接続されたデバイスの起動を試みる処理は、ＢＩＯＳプログラムのＯＳ選択処理部としての動作である。このＢＩＯＳプログラムのＯＳ選択処理部としての動作により、正常なポートに接続された正常なストレージデバイスが存在すれば、ユーザは、このコンピュータＰＣ１を起動させるために、手を煩わせる必要がない。
【００８４】
一方、ステップＳ２２で、ＢＩＯＳプログラムは、ＯＳが正常に起動しなければ（ステップＳ２３でＮＯ）、そのデバイスが故障しており、ＯＳを使用できないと判断して処理を終了する。
【００８５】
上述のステップＳ２３は、ＢＩＯＳプログラムの接続エラー検出部としての動作である。また、ステップＳ２１，Ｓ２４は、ＢＩＯＳプログラムの管理テーブル作成部としての動作である。
【００８６】
このコンピュータＰＣ１は、電源がＯＮされる度に、図６、図７、図８、図９および図１０の動作を実行する。これにより、ＢＩＯＳプログラムは、機器ポート管理テーブル１７ｃに、ポートとデバイスとの組み合わせ毎に、その組み合わせで起動を試みた回数と、その組み合わせで正常に起動した回数（起動ＯＫ回数）とを、検出結果として集める。これにより、エラーを発生したポートとデバイスとの組み合わせについて、そのエラーがデバイスの故障によるものか、またはポートの故障によるものかの判断の精度を高めることができる。
【００８７】
上述の実施形態では、機器ポート管理テーブル１７ｃの表体部５３には、物理ポートとデバイスとの組み合わせ毎に、その組み合わせで起動を試みた回数と、その組み合わせで正常に起動した回数とを、（正常に起動した回数）／（起動を試みた回数）という形式で表したが、これに限られるものではない。物理ポートとデバイスとの組み合わせ毎に、正常に起動したか否かを、○若しくは×のように、またはＯＫ若しくはＮＧのように、単に記号で表しても良い。または、正常に起動したか否かを、１または０というように、２値で表しても良い。
【００８８】
また、上述の実施形態では、ＢＩＯＳプログラムによって、機器ポート管理テーブル１７ｃに関する動作を実行したが、これに限られるものではない。ＯＳやアプリケーションソフトウェア（ＯＳ上で実行するためのプログラム）によって、機器ポート管理テーブル１７ｃに関する動作を実行しても良い。
【００８９】
図２は、この発明の一実施形態のネットワークシステム（全体を符号１００で示す。）の構成を示している。
【００９０】
このネットワークシステム１００は、上述のコンピュータ（以下「クライアントマシン」と呼ぶ。）ＰＣ１と、このクライアントマシンＰＣ１と全く同様に構成されたコンピュータであるクライアントマシンＰＣ２，ＰＣ３，ＰＣ４，ＰＣ５と、ホストコンピュータとしてのホストマシンＰＣ０とを、ネットワーク９００を介して互いに通信可能に備えている。なお、ネットワーク９００は、有線と無線のいずれでも良い。
【００９１】
クライアントマシンＰＣ１の機器ポート管理テーブル１７ｃは、図２中でクライアントマシンＰＣ１の下方にテーブル＃１として表されている。クライアントマシンＰＣ２，ＰＣ３，ＰＣ４，ＰＣ５は、それぞれテーブル＃１（つまり、機器ポート管理テーブル１７ｃ）と同じテーブル＃２，＃３，＃４，＃５を備えている。
【００９２】
ホストマシンＰＣ０は、図４に示すように、クライアントマシンＰＣ１の情報保存ＲＯＭ１７に代えて、フラッシュＲＯＭからなる情報保存ＲＯＭ１７′を備えている。この情報保存ＲＯＭ１７′は、情報保存ＲＯＭ１７におけるのと同様に、ＣＰＵ１１やチップセット１４のための動作設定データ１７ａと、優先起動デバイス情報１７ｂと、自マシン（ホストマシンＰＣ０）の管理テーブルとしての機器ポート管理テーブル１７ｃとを格納している。さらに、この情報保存ＲＯＭ１７′は、追加の管理テーブル記憶部を含み、他マシン（クライアントマシンＰＣ１，ＰＣ２，…，ＰＣ５）の機器ポート管理テーブル１７ｄを格納している。自マシン（ホストマシンＰＣ０）の機器ポート管理テーブル１７ｃは、図２中でホストマシンＰＣ０の上方にテーブル＃０として表され、テーブル＃０に一部重ねてテーブル＃１，＃２，＃３，＃４，＃５が表されている。
【００９３】
クライアントマシンＰＣ２，…，ＰＣ５およびホストマシンＰＣ０のＢＩＯＳプログラムは、それぞれ、クライアントマシンＰＣ１のＢＩＯＳプログラムと全く同様に、図６、図７、図８、図９および図１０に示した機器ポート管理テーブル１７ｃに関する動作を実行する。したがって、クライアントマシンＰＣ２，…，ＰＣ５およびホストマシンＰＣ０のＢＩＯＳプログラムは、クライアントマシンＰＣ１におけるのと全く同様に、デバイスが接続された物理ポートについてエラーが発生した場合に、そのエラーがデバイス自体の故障によるものか、または物理ポートの故障によるものかを判断できる。
【００９４】
また、ホストマシンＰＣ０は、この例ではＯＳ上で動作するアプリケーションソフトウェアとしてクライアントチェックツールを有している。このクライアントチェックツールは、ホストマシンＰＣ０が有する起動可能なストレージデバイスに格納されている。
【００９５】
図１１および図１２は、このクライアントチェックツールによる動作のフローを示している。図１１および図１２中の各ステップは、クライアントチェックツールが実行する。簡単のため、以下では、動作の主体（クライアントチェックツール）を適宜省略して説明する。
【００９６】
まず図１１のステップＳ１０１に示すように、或るクライアントマシンの情報保存ＲＯＭ１７内の機器ポート管理テーブル１７ｃのデータを、ネットワーク９００を介して取得する。
【００９７】
次に、ステップＳ１０２に示すように、そのクライアントマシンの機器ポート管理テーブル１７ｃの列（ポート）を確認する。ここで、その列について、起動ＯＫ回数が全てのデバイスについて０であり（ステップＳ１０３でＹＥＳ）、かつ起動を試みた回数が全てのデバイスについて０であれば（ステップＳ１０４でＹＥＳ）、現時点ではそのポートが故障しているか否かを判断できない。そこで、後述する図１２のステップＳ１０５へ進む。
【００９８】
一方、その列について、起動ＯＫ回数がいずれかのデバイスについて０ではなく（すなわち、いずれかのデバイスで起動ＯＫ回数が１回以上あれば）（ステップＳ１０３でＮＯ）、または起動を試みた回数がいずれかのデバイスについて０でなければ（すなわち、いずれかのデバイスで起動を試みた回数が１回以上あれば）（ステップＳ１０４でＮＯ）、ステップＳ１０９に示すように、起動を試みた回数が起動ＯＫ回数と等しいか否かを判断する。ここで、その列（ポート）に組み合わされた或るデバイスについて、起動を試みた回数が起動ＯＫ回数と異なっていれば（ステップＳ１０９でＮＯ）、そのポートに問題がある可能性を、警告としてホストマシンＰＣ０の表示部（図１中の表示部１９と同じ。以下同様。）に表示する。一方、その列（ポート）に組み合わされた全てのデバイスについて、起動を試みた回数が起動ＯＫ回数と等しければ、そのポートが正常であると判断できる。
【００９９】
次に、図１２のステップＳ１０５に示すように、上記クライアントマシンの機器ポート管理テーブル１７ｃの行（デバイス）を確認する。ここで、その行について、起動ＯＫ回数が全てのポートについて０であり（ステップＳ１０６でＹＥＳ）、かつ起動を試みた回数が全てのデバイスについて０であれば（ステップＳ１０７でＹＥＳ）、ステップＳ１０８に示すように、この例では「問題なし」を表示部に表示する。
【０１００】
一方、その行について、起動ＯＫ回数がいずれかのポートについて０ではなく（すなわち、いずれかのポートで起動ＯＫ回数が１回以上あれば）（ステップＳ１０６でＮＯ）、または起動を試みた回数がいずれかのポートについて０でなければ（すなわち、いずれかのポートで起動を試みた回数が１回以上あれば）（ステップＳ１０７でＮＯ）、ステップＳ１１１に示すように、起動を試みた回数が起動ＯＫ回数と等しいか否かを判断する。ここで、その行（デバイス）に組み合わされた或るポートについて、起動を試みた回数が起動ＯＫ回数と異なっていれば（ステップＳ１１１でＮＯ）、そのデバイスに問題がある可能性を、警告として表示部に表示する。一方、その行（デバイス）に組み合わされた全てのポートについて、起動を試みた回数が起動ＯＫ回数と等しければ、そのポートが正常であると判断できる。そこで、ステップＳ１０８に示すように、「問題なし」を表示部に表示する。
【０１０１】
クライアントチェックツールは、図１０のステップＳ１０２から図１２のステップＳ１１２までの処理を、上記クライアントマシンの機器ポート管理テーブル１７ｃの各列および各行について実行する。
【０１０２】
さらに、クライアントチェックツールは、各クライアントマシンＰＣ１，ＰＣ２，…，ＰＣ５について、図１０のステップＳ１０１から図１２のステップＳ１１２までの処理を実行する。
【０１０３】
これにより、ホストマシンＰＣ０は、ネットワークシステム１００内の他のコンピュータ、つまりクライアントマシンＰＣ１，ＰＣ２，…，ＰＣ５におけるデバイスまたは物理ポートの故障の状況を把握できる。したがって、ホストマシンＰＣ０によって、このホストマシンＰＣ０とクライアントマシンＰＣ１，ＰＣ２，…，ＰＣ５とを含む複数のコンピュータの集中管理が可能になる。
【０１０４】
上述の実施形態では、この発明のポート異常検出装置をコンピュータに適用したが、これに限られるものではない。この発明のポート異常検出装置は、複数のポートとそれに接続されるデバイスとを含む電子機器やシステムに広く適用され得る。例えば、この発明のポート異常検出装置は、複数のポートを有するスイッチングハブまたは有線ルータとそれに接続されるデバイスとを含むシステムに適用され得る。
【符号の説明】
【０１０５】
１７，１７′  情報保存ＲＯＭ
１７ｃ，１７ｄ  機器ポート管理テーブル
ＵＳＢ１，ＵＳＢ２，ＵＳＢ３，ＵＳＢ４  ＵＳＢポート
ＳＡＴＡ１，ＳＡＴＡ２，…，ＳＡＴＡ６  ＳＡＴＡポート
【図１】
2013191026.tif 000003
【図２】
2013191026.tif 000004
【図３】
2013191026.tif 000005
【図４】
2013191026.tif 000006
【図５】
2013191026.tif 000007
【図６】
2013191026.tif 000008
【図７】
2013191026.tif 000009
【図８】
2013191026.tif 000010
【図９】
2013191026.tif 000011
【図１０】
2013191026.tif 000012
【図１１】
2013191026.tif 000013
【図１２】
2013191026.tif 000014