(57)【要約】【課題】  ロジカル・パーティショニングをテストするシステムを提供する。【解決手段】  好適な実例では、パーティショニング規則を破るように（たとえば有効なアドレス範囲の外にあるアドレスに対してアクセスを試みるように）Ｉ／Ｏアダプタを構成する。ソフトウェアを用いて、予期されるアドレスで予期されるエラーが発生するか否かをチェックする。予期されるエラーが発生しない場合は、パーティショニングＩ／Ｏサブシステムにおける故障を意味している。【選択図】          図３
2004326751.tif 000002
【特許請求の範囲】
【請求項１】
ロジカル・パーティション・システムにおいてダイレクト・メモリ・アクセス（ＤＭＡ）をテストする方法であって、
少なくとも１つのロジカル・パーティション規則に背くようにＩ／Ｏアダプタを構成するステップと、
予期されるアドレスで予期されるエラーが発生するか否かをチェックするステップと
を備えた
方法。
【請求項２】
予期されるアドレスで予期されるエラーが発生しない場合、ＤＭＡエラーを報告する、
請求項１に記載の方法。
【請求項３】
前記予期されるエラーが、前記Ｉ／Ｏアダプタ用の有効なアドレス範囲の外にあるアドレスに対するアクセスを試みることに起因するＤＭＡエラーである、
請求項１に記載の方法。
【請求項４】
コンピュータ・システムにおいて入力／出力（Ｉ／Ｏ）アダプタ用の有効なアドレス範囲を見つける方法であって、
（ａ）前記Ｉ／ＯアダプタのバスＩＤを特定するステップと、
（ｂ）前記Ｉ／Ｏアダプタの前記バスＩＤと前記コンピュータ・システムのデバイス・ツリーにおける第１のＰＣＩ−ホスト・ブリッジ用のバスＩＤとを比較するステップと、
（ｃ）（ｂ）の比較するステップによって前記第１のＰＣＩ−ホスト・ブリッジが前記Ｉ／Ｏアダプタの親でないことが判明した場合、前記Ｉ／Ｏアダプタの前記バスＩＤと前記第１のＰＣＩ−ホスト・ブリッジの子であるＰＣＩ−ＰＣＩブリッジのバスＩＤとを比較して前記Ｉ／Ｏアダプタの親を見つけるステップと、
（ｄ）（ｃ）の比較するステップによって前記第１のＰＣＩ−ホスト・ブリッジの子である前記ＰＣＩ−ＰＣＩブリッジが前記Ｉ／Ｏアダプタの親でないことが判明した場合、（ｂ）および（ｃ）のステップを繰り返して第２のＰＣＩ−ホスト・ブリッジを見つけるステップと、
（ｅ）前記Ｉ／Ｏアダプタの親が見つかったら、前記親のプロパティから前記Ｉ／Ｏアダプタ用の前記有効なアドレス範囲を特定するステップと
を備えた
方法。
【請求項５】
前記親の前記プロパティが「ｉｂｍ，ｄｍａ−ｗｉｎｄｏｗ」プロパティである、
請求項４に記載の方法。
【請求項６】
前記Ｉ／ＯアダプタがＰＣＩカード用のアダプタである、
請求項４に記載の方法。
【請求項７】
ロジカル・パーティション・システムのダイレクト・メモリ・アクセス（ＤＭＡ）規則をテストする方法であって、
入力／出力（Ｉ／Ｏ）アダプタ用の有効なアドレス範囲を決めるステップと、
ＤＭＡについて前記有効なアドレス範囲の外にある少なくとも１つのアドレスに対するアクセスを試み、第１のアドレスで開始するステップと、
ＤＭＡエラーが発生しない場合、前記第１のアドレスを記録し、エラーを報告するステップと、
ＤＭＡエラーが発生した場合、前記第１のアドレスとＤＭＡエラー・アドレスとを比較するステップと、
前記第１のアドレスと前記ＤＭＡエラー・アドレスとが等しくない場合、前記第１のアドレスを記録し、エラーを報告するステップと
を備えた
方法。
【請求項８】
前記Ｉ／ＯアダプタのＤＭＡエンティティを構成することにより、前記有効なアドレス範囲の外にあるアドレスを投入するように前記Ｉ／Ｏアダプタを構成する、
請求項７に記載の方法。
【請求項９】
前記Ｉ／ＯアダプタがＰＣＩカード用のアダプタである、
請求項７に記載の方法。
【請求項１０】
さらに、
ＤＭＡエラーが発生しない場合、前記第１のアドレスおよびＤＭＡ最終アドレスを記録し、エラーを報告するステップ
を備え、
前記ＤＭＡ最終アドレスがＤＭＡを用いてアクセスした最後のアドレスである、
請求項７に記載の方法。
【請求項１１】
ロジカル・パーティション・システムのダイレクト・メモリ・アクセス（ＤＭＡ）規則をテストする方法であって、
入力／出力（Ｉ／Ｏ）アダプタ用の有効なアドレス範囲を決めるステップと、
前記有効なアドレス範囲の外にある少なくとも１つのアドレスを投入するように前記Ｉ／ＯアダプタのＤＭＡエンティティを構成し、第１のアドレスで開始するステップと、
ＤＭＡが完了したら、あるいはエラーが発生したら、前記Ｉ／Ｏアダプタが投入した最後のアドレスと前記カードが投入した前記第１のアドレスとを比較するステップと、
前記最後のアドレスと前記第１のアドレスとが等しくない場合、エラーを報告するステップと
を備えた
方法。
【請求項１２】
さらに、
ＤＭＡエラーが発生しない場合、前記第１のアドレスおよび前記最後のアドレスを記録し、エラーを報告するステップ
を備えた、
請求項１１に記載の方法。
【請求項１３】
前記Ｉ／ＯアダプタがＰＣＩカード用のアダプタである、
請求項１１に記載の方法。
【請求項１４】
ロジカル・パーティション・システムのダイレクト・メモリ・アクセス（ＤＭＡ）規則をテストする方法であって、
入力／出力（Ｉ／Ｏ）アダプタ用の有効なアドレス範囲を決めるステップと、
ＤＭＡオペレーションが前記有効なアドレス範囲の境界をまたいで無効なアドレス範囲に入るように前記ＤＭＡオペレーションのサイズを設定するステップと、
前記ＤＭＡオペレーションの間にＤＭＡエラーが発生したときに依拠した第１のアドレスを検出するステップと、
前記ＤＭＡエラーが発生したときに依拠した前記第１のアドレスとアクセスを試みた対象である最後のアドレスとを比較するステップと
を備えた
方法。
【請求項１５】
さらに、
前記ＤＭＡエラーが発生したときに依拠した前記第１のアドレスとアクセスを試みた対象である前記最後のアドレスとが同じでない場合、エラーを報告するステップ
を備えた、
請求項１４に記載の方法。
【請求項１６】
ロジカル・パーティション・システムの規則をテストする方法であって、
二重アドレス・サイクル（ＤＡＣ）がオンになるように入力／出力（Ｉ／Ｏ）アダプタを構成するステップと、
有効なアドレスについてダイレクト・メモリ・アクセス（ＤＭＡ）オペレーションをトリガするステップと、
前記有効なアドレスとＤＭＡエラー・アドレスとを比較するステップと
を備えた
方法。
【請求項１７】
前記有効なアドレスと前記ＤＭＡエラー・アドレスとが同じでない場合、エラーを報告する、
請求項１６に記載の方法。
【請求項１８】
ＤＭＡエラーが発生しない場合、エラーを報告する、
請求項１６に記載の方法。
【請求項１９】
ロジカル・パーティション・システムにおいてダイレクト・メモリ・アクセス（ＤＭＡ）をテストするシステムであって、
少なくとも１つのロジカル・パーティション規則に背くように構成されたＩ／Ｏアダプタと、
予期されるアドレスで予期されるエラーが発生するか否かをチェックするアルゴリズムと
を備えた
システム。
【請求項２０】
予期されるアドレスで予期されるエラーが発生しない場合、ＤＭＡエラーを報告する、
請求項１９に記載のシステム。
【請求項２１】
前記予期されるエラーが、前記Ｉ／Ｏアダプタ用の有効なアドレス範囲の外にあるアドレスに対するアクセスを試みることに起因するＤＭＡエラーである、
請求項１９に記載のシステム。
【請求項２２】
ロジカル・パーティション・システムのダイレクト・メモリ・アクセス（ＤＭＡ）規則をテストするコンピュータ・プログラムであって、
入力／出力（Ｉ／Ｏ）アダプタ用の有効なアドレスを決める第１の命令群と、
ＤＭＡについて前記有効なアドレス範囲の外にある少なくとも１つのアドレスに対するアクセスを試み、第１のアドレスで開始する第２の命令群と、
ＤＭＡエラーが発生しない場合、前記第１のアドレスを記録し、エラーを報告する第３の命令群と、
ＤＭＡエラーが発生した場合、前記第１のアドレスとＤＭＡエラー・アドレスとを比較する第４の命令群と、
前記第１のアドレスと前記ＤＭＡエラー・アドレスとが等しくない場合、前記第１のアドレスを記録し、エラーを報告する第５の命令群と
を備えた
コンピュータ・プログラム。
【請求項２３】
前記Ｉ／ＯアダプタのＤＭＡエンティティを構成することにより、前記有効なアドレス範囲の外にあるアドレスを投入するように前記Ｉ／Ｏアダプタを構成する、
請求項２２に記載のコンピュータ・プログラム。
【請求項２４】
前記Ｉ／ＯアダプタがＰＣＩカード用のアダプタである、
請求項２２に記載のコンピュータ・プログラム。
【請求項２５】
さらに、
ＤＭＡエラーが発生しない場合、前記第１のアドレスおよびＤＭＡ最終アドレスを記録し、エラーを報告する命令群
を備え、
前記ＤＭＡ最終アドレスがＤＭＡを用いてアクセスした最後のアドレスである、
請求項２２に記載のコンピュータ・プログラム。
【請求項２６】
ロジカル・パーティション・システムにおいてダイレクト・メモリ・アクセス（ＤＭＡ）をテストするシステムであって、
入力／出力（Ｉ／Ｏ）アダプタ用の有効なアドレス範囲を決める手段と、
前記有効なアドレス範囲の外にある少なくとも１つのアドレスを投入するように前記Ｉ／ＯアダプタのＤＭＡエンティティを構成し、第１のアドレスで開始する手段と、
ＤＭＡが完了したら、あるいはエラーが発生したら、前記Ｉ／Ｏアダプタが投入した最後のアドレスと前記カードが投入した前記第１のアドレスとを比較する手段と、
前記最後のアドレスと前記第１のアドレスとが等しくない場合に、エラーを報告する手段と
を備えたシステム。
【請求項２７】
さらに、
ＤＭＡエラーが発生しない場合には、前記第１のアドレスおよび前記最後のアドレスを記録し、エラーを報告する手段
を備えた、
請求項２６に記載のシステム。
【請求項２８】
前記Ｉ／ＯアダプタがＰＣＩカード用のアダプタである、
請求項２６に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般にロジカル・パーティショニングに関し、特にパーティショニングＩ／Ｏサブシステムが適切なロジカル・パーティショニングＩ／Ｏ規則を踏襲しているか否かのテストに関する。
【背景技術】
【０００２】
ロジカル・パーティショニングとはコンピュータの全リソース（プロセッサ、主メモリ、および補助記憶装置）を取り上げ、それらを各々がオペレーティング・システムおよびアプリケーションのそれ自身用のインスタンスで実行されうる、より小さなユニットに分割するシステムのことである。ロジカル・パーティショニングは専用のハードウェア回路を必要とするが通常、システムの様々な機能（たとえばウェブ・サービス、データベース機能、クライアント／サーバ動作、あるいは複数のタイム・ゾーン（時圏）および／または言語を処理するシステム）を分割するのに使用する。（「Ａおよび／またはＢ」は「ＡおよびＢ、Ａ、またはＢ」を表わす。）また、ロジカル・パーティショニングは試験用環境を製造用環境から分離して維持するのにも使用することができる。さらに、パーティションは実際、個別の物理マシンとして機能するから、それらは互いに通信することができる。
【０００３】
一部のシステム（たとえばＩＢＭ（Ｒ）のシステム）では、ロジカル・パーティショニングをサポートするファイアウォールを使用している。パーティショニングを行ったシステムには、Ｉ／Ｏ（入出力）アダプタから行うすべてのＩ／Ｏ動作が従うべき規則がある。それらの規則には次に示すものがある。
（１）Ｉ／Ｏアダプタはそれらが割り当てられたパーティションに割り振られたすべてのシステム・メモリ領域に対してＤＭＡ（ダイレクト・メモリ・アクセス）を行える必要がある。
（２）Ｉ／Ｏアダプタはそれらが割り当てられたパーティションに属していないようなシステム・メモリ領域に対してＤＭＡを行えてはならない。
（３）各Ｉ／Ｏアダプタの親（ＰＣＩ−ＰＣＩブリッジ（ＰＰＢ）またはＰＣＩ−ホスト・ブリッジ（ＰＨＢ））は「ｉｂｍ，ｄｍａ−ｗｉｎｄｏｗ」プロパティを含んでいなければならない。
Ｉ／Ｏアダプタはその親の「ｉｂｍ，ｄｍａ−ｗｉｎｄｏｗ」プロパティで定義されているアドレス範囲にあるようなバス・アドレスしかバスに投入することができない。
（４）Ｉ／Ｏアダプタは二重アドレス・サイクル（Dual Address Cycle: ＤＡＣ）を使用することができない。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ＬＰＡＲ（ロジカル・パーティション）Ｉ／ＯサブシステムはＬＰＡＲ  Ｉ／Ｏ規則を踏襲している必要がある。これらの規則がソフトウェアまたはハードウェアの問題に起因して守られないという状況が往々にして発生する。１つのパーティションで誤った動作をすると、他のパーティションでクラッシュが発生する可能性がある。したがって、当技術分野では、パーティション間のファイアウォールをテストする手段が求められている。
【課題を解決するための手段】
【０００５】
本発明はパーティショニング規則が守られない状況を発生させるとともに、パーティション間に設けられたファイアウォールのテストを可能にするアルゴリズムを開示するものである。
【０００６】
第１の好適な実例では、ＰＣＩ（Peripheral Connect Interface）カードを用いて当該ＰＣＩカード用の有効なアドレス範囲の外にあるアドレスをバスに投入する。無効なアドレスを投入したのち、ソフトウェアは投入した最後のアドレスと投入した最初のアドレスとを比較する。２つのアドレスが一致しない場合、予期しないＩ／Ｏ動作を意味しているから、ＤＭＡエラーを報告する。
【０００７】
第２の好適な実例では、ＰＣＩカードは、ＤＭＡは有効なアドレスで開始するが、無効アドレス範囲に越境するようにＤＭＡを行うように試みる。ここでも、無効なアドレスを投入したのち、ソフトウェアは最後に投入したＰＣＩアドレスと最初に投入した無効なアドレスとを比較する。それらが一致しない場合、予期しないＩ／Ｏ動作を意味しているから、エラーを報告する。
【０００８】
第３の好適な実例では、ＤＡＣをサポートしているＰＣＩカードを用いてＬＰＡＲシステムにおいてＤＡＣを阻止するファイアウォール機構が機能しているか否かをチェックする。たとえば、ＤＭＡオペレーションの間にＤＡＣを発行するようにＰＣＩカードをプログラムする。ＤＡＣを有効にしてＤＭＡをトリガする場合、ＰＣＩカードは最初のＤＭＡトランザクションでマスタ・アボートを取得するはずである。ソフトウェアはＰＣＩカードが最初に投入したアドレスとＰＣＩカードがマスタ・アボートを取得したときに依拠したアドレスとを比較する。それらが同じでない場合、異常Ｉ／Ｏ動作を意味しているから、潜在的なエラーを報告する。
【発明を実施するための最良の形態】
【０００９】
次に図面を参照する。特に図１を参照する。図１は本発明の一実施形態により本発明を実現できるデータ処理システムの代表例を図形的に示す図である。図示したコンピュータ１００はシステム・ユニット１１０、画像表示端末１０２、キーボード１０４、記憶装置１０８、マウス１０６を備えている。記憶装置１０８にはフロッピー（登録商標）・ディスク駆動装置および他の種類の永続的かつ着脱可能な記憶媒体が含まれる。コンピュータ１００がパーソナル・コンピュータの場合には追加の入力装置、たとえばジョイスティック、タッチパッド、タッチスクリーン、トラックボール、マイクロフォンなども備えている。コンピュータ１００は何らかの適切なコンピュータ、たとえばＩＢＭ  ＲＳ／６０００コンピュータやインテリステーション（IntelliStation) コンピュータなどを用いて実現することができる。これらはインターナショナル・ビジネス・マシーンズ・コーポレーション（International Business Machines Corporation)（アメリカ合衆国ニューヨーク州アーモンク所在）の製品である。図示した例ではコンピュータを示したが、本発明の他の実施形態は他の種類のデータ処理システム、たとえばネットワーク・コンピュータで実現することができる。コンピュータ１００はグラフィカル・ユーザ・インタフェースも備えているのが望ましい。グラフィカル・ユーザ・インタフェースはコンピュータ１００内で動作するコンピュータ読み取り可能な媒体に記録されたシステム・ソフトウェアによって実現することができる。
【００１０】
次に図２を参照する。図２は本発明を実現しうるデータ処理システムを示すブロック図である。データ処理システム２００は本発明のプロセスを実装したコードすなわち命令群を配置したコンピュータ（たとえば図１のコンピュータ１００）の一例である。データ処理システム２００はＰＣＩ（peripheral component interconnect)ローカル・バス・アーキテクチャを採用している。図示した例ではＰＣＩバスを採用しているが、他のバス・アーキテクチャ（たとえばＡＧＰ（Accelerated Graphics Port)、ＩＳＡ（Industry Standard Architecture））を用いてもよい。プロセッサ２０２とメインメモリ２０４がＰＣＩブリッジ２０８を介してＰＣＩローカル・バス２０６に接続されている。ＰＣＩブリッジ２０８はプロセッサ２０２用の集積化したメモリ・コントローラとキャッシュ・メモリも備えている。ＰＣＩローカル・バス２０６に対する追加の接続は直接コンポーネント相互接続またはアドイン・ボードを通じて行うことができる。図示した例では、ＬＡＮ（local area network）アダプタ２１０、ＳＣＳＩ（small computer system interface)ホスト・バス・アダプタ２１２、および拡張バス・インタフェース２１４が直接コンポーネント接続によってＰＣＩローカル・バス２０６に接続されている。これに対して、音声アダプタ２１９、グラフィックス・アダプタ２１８、および音声／画像アダプタ２１９は拡張スロットに挿入されたアドイン・ボードによってＰＣＩローカル・バス２０６に接続されている。拡張バス・インタフェースはキーボード／マウス・アダプタ２２０、モデム２２２、および追加のメモリ２２４用の接続を提供している。ＳＣＳＩホスト・バス・アダプタ２１２はハード・ディスク駆動装置２２６、テープ駆動装置２２８、およびＣＤ−ＲＯＭ駆動装置２３０用の接続を提供している。典型的なＰＣＩローカル・バス実装は３個または４個のＰＣＩ拡張スロットまたはアドイン・コネクタをサポートすることができる。
【００１１】
プロセッサ２０２ではオペレーティング・システムが実行されており、図２のデータ処理システム２００内の様々な構成要素を調整するとともに制御している。オペレーティング・システムとしては市販のオペレーティング・システム、たとえばＷｉｎｄｏｗｓ（ＴＭ）２０００（マイクロソフト社（Microsoft Corporation)製）を用いることができる。オペレーティング・システムとともにオブジェクト指向プログラミング・システム（たとえばＪａｖａ（ＴＭ））を実行して、データ処理システム２００で実行するＪａｖａ（ＴＭ）プログラムまたはＪａｖａ（ＴＭ）アプリケーションからオペレーティング・システムへの呼び出しを提供することができる。「Ｊａｖａ」はサン・マイクロシステムズ社（Sun Microsystems, Inc.）の商標である。オペレーティング・システム、オブジェクト指向プログラミング・システム、およびアプリケーションまたはプログラム用の命令群は記憶装置（たとえばハード・ディスク駆動装置２２６）に格納しておき、メインメモリ２０４にロードしてプロセッサ２０２による実行の用に供する。
【００１２】
当業者が認識しうるように、図２のハードウェアは実装に応じて変化しうる。他の内部ハードウェアまたは周辺装置（たとえばフラッシュＲＯＭ（または等価の不揮発性メモリ））を図２に示したハードウェアに加えて、またはその代わりに使用することができる。また、本発明のプロセスはマルチプロセッサ型データ処理システムに適用することができる。
【００１３】
たとえば、データ処理システム２００はネットワーク・コンピュータとして任意に構成されている場合、図２に破線２３２で囲んで任意内蔵部品であることを示すＳＣＳＩホスト・バス・アダプタ２１２、ハード・ディスク駆動装置２２６、テープ駆動装置２２８、およびＣＤ−ＲＯＭ駆動装置２３０を備えていない。その場合、コンピュータ（正確にはクライアント・コンピュータ）はネットワーク通信インタフェース（たとえばＬＡＮアダプタ２１０やモデム２２２など）を備えていなければならない。別の例として、データ処理システム２００は、当該データ処理システム２００が何らかのネットワーク通信インタフェースを備えているかいないかと無関係に、何らかのネットワーク通信インタフェースに頼ることなくブート可能に構成されたスタンドアロン型システムであってもよい。さらに別の例として、データ処理システム２００はＰＤＡ（personal digital assistant）であってもよい。その場合、データ処理システム２００はＲＯＭおよび／またはフラッシュＲＯＭを用いて構成し、オペレーティング・システムおよび／またはユーザ作成データを格納する不揮発性メモリを実現する。
【００１４】
図２に示した例および上述した例はアーキテクチャ上の限界を示すことを意図していない。たとえば、データ処理システム２００はＰＤＡの形態をとるのに加え、ノートブック型コンピュータまたはハンドヘルド型コンピュータであってもよい。また、データ処理システム２００はキヨスクやウェブ・アプライアンスであってもよい。
【００１５】
本発明のプロセスはコンピュータ実装した命令群を用いてプロセッサ２０２によって実行する。上記命令群はメモリ（たとえばメインメモリ２０４、メモリ２２４）または少なくとも１つの周辺装置２２６〜２３０に格納されている。
【００１６】
ＬＰＡＲサブシステムがＬＰＡＲ  Ｉ／Ｏ規則を踏襲しているか否かのテストはＩ／Ｏアダプタを用いて行うのが望ましい。一実施形態では、これらの規則は２つの方法で適用する。
【００１７】
第１に、システム・メモリへのアクセスを制限する規則はＰＣＩ−ホスト・ブリッジの変換機構によって行う。この点は下で詳述する。第２に、Ｉ／Ｏアダプタが投入するバス・アドレスを制限する。これはＰＨＢチップまたはＰＰＢチップによって行う。本発明の好適な実施形態では、このハードウェアのプロパティをテストする。
【００１８】
Ｉ／Ｏアダプタは、Ｉ／Ｏアダプタ用の様々なＬＰＡＲ規則が必要ないように、ソフトウェアによってを構成することができる。好適な実施形態では、予期されるアドレスで予期されるエラーが発生しないかソフトウェアがチェックする。以下、様々な状況下でこれらのテストを行うアルゴリズムの例を３つ説明する。
【００１９】
好適な実施形態では、アダプタ用の有効なバス・アドレスの範囲を特定する。後刻、テストの間にエラーを検出することができるように、アダプタ用のこの有効なバス・アドレス範囲をソフトウェアに知らせる。たとえば、ＩＢＭ（Ｒ）のシステムでは、有効なバス・アドレス範囲はＩ／Ｏアダプタの親の「ｉｂｍ，ｄｍａ−ｗｉｎｄｏｗ」プロパティ中に存在する。親はＩ／ＯアダプタのＰＣＩ−ＰＣＩブリッジまたはＰＣＩ−ホスト・ブリッジである可能性がある。親の「ｉｂｍ，ｄｍａ−ｗｉｎｄｏｗ」プロパティを抽出するには、（ＡＩＸ（Ｒ）の下で実行しているテストケースでは）デバイス・ツリー・インタフェース、または、（テストケースをＴｎＫ（ＴＭ）の下で実行すべき場合には）ＲＯＳインタフェースを使用することができる。
【００２０】
ＡＩＸ（Ｒ）、Ｌｉｎｕｘ（ＴＭ）、ＴｎＫ（ＴＭ）のようなオペレーティング・システムはオペレーティング・システム固有のライブラリを用いてシステム情報を照会するインタフェースをユーザ・アプリケーションに提供している。これらの呼び出しはホスト−ＰＣＩブリッジのＰＣＩ−ＰＣＩブリッジである可能性があるデバイスの親の「ｉｂｍ，ｄｍａ−ｗｉｎｄｏｗ」プロパティを抽出するのに使用することができる。
【００２１】
これらのインタフェースはシステムに存在するすべてのデバイスを走査するのを容易にするＡＰＩ（Application Program Interface)を提供している。また、これらのインタフェースは特定のクラスのデバイスの探索、ＰＣＩデバイスの特定のプロパティの発見などを容易にするＡＰＩも提供している。
【００２２】
アダプタ用の有効なバス範囲を検出する好適なプロセス・フローの例を図３に示す。一般に、プロセスはデバイス・ツリー中のＰＨＢエントリをチェックして、それがＩ／Ｏアダプタの親であるか否かを調べる。もしそうなら、その「ｉｂｍ，ｄｍａ−ｗｉｎｄｏｗ」プロパティを抽出する。そうでないなら、ＰＨＢのすべてのＰＰＢ子に対して同じチェックを行う。あるＰＨＢのすべてのＰＰＢ子の中に親が見つからない場合、デバイス・ツリー中の次のＰＨＢエントリを取り上げる。そして、親を発見して有効なバス・アドレス範囲を取得するまですべてのステップを繰り返す。
【００２３】
プロセスはＩ／ＯアダプタのバスＩＤを特定することにより開始する（ステップ３０２）。次いで、デバイス・ツリー中の最初のＰＨＢのエントリを見つける（ステップ３０４）。次いで、Ｉ／ＯアダプタのバスＩＤをチェックして、それが当該ＰＨＢの主バス番号と等しいか否かを調べる（ステップ３０６）。ＹＥＳの場合、当該ＰＨＢの「ｉｂｍ，ｄｍａ−ｗｉｎｄｏｗ」プロパティに格納されているバス・アドレス範囲を見つけて戻る（ステップ３０８）。ＮＯの場合、当該ＰＨＢの下の最初のＰＰＢのエントリを見つける（ステップ３１０）。次いで、Ｉ／ＯアダプタのバスＩＤをチェックして、それがＰＰＢの主バス番号と等しいか否かを調べる（ステップ３１２）。ＹＥＳの場合、当該ＰＰＢの「ｉｂｍ，ｄｍａ−ｗｉｎｄｏｗ」プロパティに格納されているバス・アドレス範囲を見つけて戻る（ステップ３０８）。ＮＯの場合、当該ＰＨＢの下の次のＰＰＢのエントリを見つける（ステップ３１６）。当該ＰＨＢの下にＰＰＢがまだ存在すれば、プロセスはステップ３１２に戻り、次のＰＰＢについて継続する。当該ＰＨＢの下にＰＰＢがもはや存在しなければ、デバイス・ツリーから次のＰＨＢエントリを見つける（ステップ３１８）。そのようなＰＨＢが存在すれば、プロセスはステップ３０６に戻り、当該次のＰＨＢを用いて継続する。そのようなＰＨＢが存在しなければ、プロセスは戻る。
【００２４】
有効なバス・アドレス範囲が分かったら、そのＤＭＡトランザクションでＰＣＩカードを用いてバスに無効のバス・アドレス範囲を投入することができる。次いで、ソフトウェアは予期されるアドレスにおいて予期されるエラーが発生するか否かをチェックすることができる。
【００２５】
図４はＰＣＩカードがその最初のＤＭＡトランザクションで無効なアドレスを投入したときにおけるエラーのテストの一例を示す図である。この例では、ＲＯＳインタフェースまたはデバイス・ツリー・インタフェースを用いて、ＰＣＩカードがバス・マスタとして機能している間にＰＣＩバスに投入しうるＰＣＩアドレスの範囲を見つけている。ＰＣＩカードはＤＭＡ用に適切に初期化する必要がある。ＰＣＩカードのＤＭＡエンティティは当該ＰＣＩカードの有効なアドレス範囲に該当しないＰＣＩアドレスを当該ＰＣＩカードがバスに投入しうるようにセットアップする。ＰＣＩカードは最初のＤＭＡトランザクションで「ターゲット・アボート（target-abort）」を取得する。なぜなら、最初に投入されるアドレスは有効なアドレス範囲の外にあるはずだからである。ＤＭＡ完了またはＤＭＡの間に何らかのエラーが発生したあと、ソフトウェアはＰＣＩカードが最後に投入したバス・アドレスとＰＣＩカードが最初に投入したアドレスとを比較する。最後に投入したアドレスが最初に投入したアドレスと同じでない場合、これは予期せぬＩ／Ｏ動作とファイアウォール中の潜在的なホールとを意味している。このような動作はたとえば、Ｉ／Ｏカードの誤作動またはブリッジ・チップ中の何らかの誤作動のせいである。
【００２６】
プロセスはＩ／Ｏアダプタ用の有効なアドレス範囲を見つけることにより開始する（ステップ４０２）。このステップはたとえば、図３に示したプロセス・フローの例に従って行うことができる。次いで、アダプタを構成する（ステップ４０４）。次いで、ＤＭＡエンティティの開始アドレスを何らかのランダムな無効アドレスに設定する（ステップ４０６）。ＤＭＡをトリガしポールしてＤＭＡ完了またはＤＭＡエラーに備える（ステップ４０８）。ＤＭＡエラーがない場合、それは予期せぬＩ／Ｏ動作が発生していることを意味するから、開始アドレスを記録し、ＤＭＡ最終アドレスとＤＭＡエラーを報告する（ステップ４１０）。ＤＭＡエラーを検出したら、ＤＭＡ開始アドレスとＤＭＡエラー・アドレスとを比較する（ステップ４１２）。２つが等しくない場合、ＤＭＡ開始アドレスとＤＭＡエラー・アドレスを記録したのち、エラーを報告する（ステップ４１４）。ＤＭＡ開始アドレスとＤＭＡエラー・アドレスとが等しい場合、プロセスはステップ４０６に戻り、そこからテストを続ける。
【００２７】
ＰＣＩカードはＤＭＡオペレーションが、ＤＭＡトランザクションを行っている間に有効バス・アドレスを横切るようにＤＭＡオペレーションをトリガするビークル（vehicle)としても使用することができる。この場合には、ＤＭＡが有効なアドレスから開始し、有効バス・アドレスを横切って無効なアドレス範囲に入るようにＤＭＡを行おうとする。
【００２８】
要するに、テスト・ケースではＲＯＳインタフェースまたはデバイス・ツリー・インタフェースを用いて、ＰＣＩカードがＰＣＩバス・マスタとして機能している間にＰＣＩバスに投入しうるＰＣＩアドレス範囲を見つける。ＰＣＩカードはＤＭＡ用に適切に初期化されているのが望ましい。ＰＣＩカードのＤＭＡエンティティは、すべてのＤＭＡオペレーション用の開始バス・アドレスが有効であるが、有効アドレス範囲境界に近接しているようにセットアップする。各ＤＭＡオペレーションのサイズは各ＤＭＡオペレーションの間にそれが有効アドレス範囲境界をまたいで無効アドレス範囲に入るように設定する。ＰＣＩカードは無効なアドレスを投入するＰＣＩトランザクションにおいて「ターゲット・アボート」を取得する必要がある。ソフトウェアは有効なアドレス範囲の終点に基づいて、ＰＣＩカードが「ターゲット・アボート」を取得する必要のある最初のアドレスを知ることができる。ＤＭＡオペレーションが終了したら（すなわち無効なアドレスが投入されたら）、ソフトウェアはＰＣＩカードが投入した最後のＰＣＩアドレスを比較する。そのアドレスが予期したアドレスでない場合、それは当該Ｉ／Ｏによる異常動作を示している。したがって、１つのパーティションを別のパーティションから保護するように設計されたファイアウォールにホールが存在する可能性がある。このようなホールはたとえば、Ｉ／Ｏカードの誤作動またはブリッジ・チップの何らかの誤作動に起因している可能性がある。
【００２９】
実装例を図５に示す。上述したように、プロセスはＩ／Ｏアダプタ用の有効アドレス範囲を見つけることにより開始する（ステップ５０２）。説明を簡明にするために、この例ではアドレスの下限をＬＡとし、上限をＵＡとする。次いで、Ｉ／ＯアダプタをＤＭＡ用に構成する（ステップ５０４）。次いで、（この例では）０〜４０９６の間の乱数を選定する（ステップ５０６）。次いで、ＤＭＡの開始アドレスを（ＵＡ−Ｎ）に設定し、ＤＭＡサイズを４０９６バイトに設定する（ステップ５０８）。ＤＭＡをトリガしポールしてＤＭＡ完了またはＤＭＡエラーに備える（ステップ５１０）。エラーを検出しない場合、開始アドレスとＤＭＡ最終アドレスを記録し、エラーを報告する（ステップ５１２）。エラーがある場合、エラー・アドレスをチェックしてそれが（ＵＡ＋８）に等しいか否かを調べる（ステップ５１４）。ＮＯの場合、開始アドレスとＤＭＡ最終アドレスを記録し、エラーを報告する（ステップ５１６）。エラー・アドレスが（ＵＡ＋８）に等しい場合、プロセスはステップ５０６に戻り、再度続行する。
【００３０】
留意点を挙げると、この例では、６４ビットのＰＣＩバス実装の場合、Ｉ／Ｏアダプタにエラー状態を生成するはずの最初のアドレスは（ＵＡ＋８）になる。ロジカル・パーティショニングをサポートするＩＢＭマシンはほとんど、６４ビットのＰＣＩバスを備えており、Ｉ／Ｏアダプタの多くは６４ビットのアドレッシング・モードを使用しているから、（ＵＡ＋８）はＰＣＩカードでエラー状態を生成するはずの最初のアドレスである。
【００３１】
別の実施形態では、ＤＡＣをサポートしているＰＣＩカードを用いて、ＬＰＡＲシステムにおいてファイアウォール機構がＤＡＣを適切に阻止しているか否かをチェックしている。ＤＡＣはあるパーティションをエラーが発生しているパーティションから保護する、ファイアウォールの権限の一部としては許されていない。ＬＰＡＲシステムでは、ＤＭＡによるシステム・メモリへのアクセスの制限は（バス・アドレス−システム・メモリ・アドレス変換用に使用する）変換機構によって行っている。変換機構エンティティでは、当該パーティションにとってアクセス可能なようなシステム・メモリ・アドレスのみが許可される。（たとえばＩＢＭ型のシステムにおいては）Ｉ／ＯアダプタがＤＡＣを使用している場合、ＰＣＩ−ホスト・ブリッジが使用する変換機構は使用しない。ＬＰＡＲモードにおいてＩ／ＯアダプタがＤＭＡ用にＤＡＣを使用することをハードウェアが許可している場合、ＤＭＡは変換機構をバイパスする。その場合、ソフトウェアおよび／またはハードウェアの誤ったプログラミング／設定によって、他のパーティションのシステム・メモリがアクセスされる可能性がある。これはＬＰＡＲのＩ／Ｏ指針に対する違反である。したがって、ＬＰＡＲモードの下ではハードウェアはＤＡＣを許可しない。
【００３２】
そのような違反が起こるか否かをテストするために、ＤＭＡオペレーションの間にＤＡＣを発行するようにＰＣＩカードをプログラミングすることができる。有効になったＤＡＣを用いてＤＭＡをトリガすると、ＰＣＩカードは最初のＤＭＡトランザクションでマスタ・アボートを取得するはずである。ソフトウェアはＰＣＩカードが最初に投入したアドレスとＰＣＩカードがアボート・メッセージを取得した元をなすアドレスとを比較する必要がある。これらのアドレスが同じでない場合、それは異常なＩ／Ｏ動作、およびパーティション間に設けられたファイアウォールに潜在的なホールがあることを示している。
【００３３】
この状況の好適な実施形態の一例を図６に示す。まず、Ｉ／Ｏアダプタ用の有効なアドレス範囲を見つける（ステップ６０２）。次いで、ＰＣＩアダプタをＤＡＣをオンに構成する（ステップ６０４）。次いで、ＤＭＡエンティティの開始アドレスを何らかのランダムな有効アドレスに設定する（ステップ６０６）。次いで、ＤＭＡをトリガしポールしてＤＭＡ完了とＤＭＡエラーに備える。エラーを検出しない場合、開始アドレスとＤＭＡ最終アドレスを記録したのちエラーを報告する（ステップ６１０）。ＤＭＡエラーを検出した場合、ＤＭＡ開始アドレスとＤＭＡエラー・アドレスとを比較する（ステップ６１２）。それらが同じでない場合、ＤＭＡ開始アドレスとＤＭＡエラー・アドレスを記録したのちエラーを報告する（ステップ６１４）。ＤＭＡ開始アドレスがＤＭＡエラー・アドレスと同じである場合、プロセスはステップ６０６に戻って続行する。
【００３４】
以上、特定の例を参照して本発明の革新的な概念を説明したが、当業者にとって明らかなように、本発明はそれらの例に限定されない。
【００３５】
重要な留意点を挙げると、完全に機能するデータ処理システムの文脈で本発明を説明したが、当業者が認識しうるように、本発明のプロセスは命令から成るコンピュータ読み取り可能な媒体の形態で配布することができ、また、本発明はその配布に実際に使用する信号担持媒体の特定の種類にかかわらず等しく適用することができる。コンピュータ読み取り可能な媒体の例としては、記録型媒体（たとえばフロッピー・ディスク、ハード・ディスク駆動装置、ＲＡＭ、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ）および伝送型媒体（たとえばディジタル通信リンク、アナログ通信リンク、伝送形態（たとえば高周波伝送および光波伝送）を用いた有線または無線の通信リンク）が挙げられる。コンピュータ読み取り可能な媒体は特定のデータ処理システムで実際に使用する際にデコードするコード化フォーマットの形態をとることができる。
【００３６】
以上、説明と記述を目的として本発明の記述を提示したが、本発明はここに開示した形態で尽きていることはなく、また、ここに開示した形態に限定されることもない。当業者にとって、多くの変更例と変形例が明らかである。実施形態は本発明の原理と実際的な用途を最もよく説明するとともに、考えうる特定の用途に適した様々な変形例を備えた様々な実施形態について当業者が本発明を理解しうるように選定した。
【００３７】
まとめとして以下の事項を開示する。
（１）
ロジカル・パーティション・システムにおいてダイレクト・メモリ・アクセス（ＤＭＡ）をテストする方法であって、
少なくとも１つのロジカル・パーティション規則に背くようにＩ／Ｏアダプタを構成するステップと、
予期されるアドレスで予期されるエラーが発生するか否かをチェックするステップと
を備えた
方法。
（２）
予期されるアドレスで予期されるエラーが発生しない場合、ＤＭＡエラーを報告する、
上記（１）に記載の方法。
（３）
前記予期されるエラーが、前記Ｉ／Ｏアダプタ用の有効なアドレス範囲の外にあるアドレスに対するアクセスを試みることに起因するＤＭＡエラーである、
上記（１）に記載の方法。
（４）
コンピュータ・システムにおいて入力／出力（Ｉ／Ｏ）アダプタ用の有効なアドレス範囲を見つける方法であって、
（ａ）前記Ｉ／ＯアダプタのバスＩＤを特定するステップと、
（ｂ）前記Ｉ／Ｏアダプタの前記バスＩＤと前記コンピュータ・システムのデバイス・ツリーにおける第１のＰＣＩ−ホスト・ブリッジ用のバスＩＤとを比較するステップと、
（ｃ）（ｂ）の比較するステップによって前記第１のＰＣＩ−ホスト・ブリッジが前記Ｉ／Ｏアダプタの親でないことが判明した場合、前記Ｉ／Ｏアダプタの前記バスＩＤと前記第１のＰＣＩ−ホスト・ブリッジの子であるＰＣＩ−ＰＣＩブリッジのバスＩＤとを比較して前記Ｉ／Ｏアダプタの親を見つけるステップと、
（ｄ）（ｃ）の比較するステップによって前記第１のＰＣＩ−ホスト・ブリッジの子である前記ＰＣＩ−ＰＣＩブリッジが前記Ｉ／Ｏアダプタの親でないことが判明した場合、（ｂ）および（ｃ）のステップを繰り返して第２のＰＣＩ−ホスト・ブリッジを見つけるステップと、
（ｅ）前記Ｉ／Ｏアダプタの親が見つかったら、前記親のプロパティから前記Ｉ／Ｏアダプタ用の前記有効なアドレス範囲を特定するステップと
を備えた
方法。
（５）
前記親の前記プロパティが「ｉｂｍ，ｄｍａ−ｗｉｎｄｏｗ」プロパティである、
上記（４）に記載の方法。
（６）
前記Ｉ／ＯアダプタがＰＣＩカード用のアダプタである、
上記（４）に記載の方法。
（７）
ロジカル・パーティション・システムのダイレクト・メモリ・アクセス（ＤＭＡ）規則をテストする方法であって、
入力／出力（Ｉ／Ｏ）アダプタ用の有効なアドレス範囲を決めるステップと、
ＤＭＡについて前記有効なアドレス範囲の外にある少なくとも１つのアドレスに対するアクセスを試み、第１のアドレスで開始するステップと、
ＤＭＡエラーが発生しない場合、前記第１のアドレスを記録し、エラーを報告するステップと、
ＤＭＡエラーが発生した場合、前記第１のアドレスとＤＭＡエラー・アドレスとを比較するステップと、
前記第１のアドレスと前記ＤＭＡエラー・アドレスとが等しくない場合、前記第１のアドレスを記録し、エラーを報告するステップと
を備えた
方法。
（８）
前記Ｉ／ＯアダプタのＤＭＡエンティティを構成することにより、前記有効なアドレス範囲の外にあるアドレスを投入するように前記Ｉ／Ｏアダプタを構成する、
上記（７）に記載の方法。
（９）
前記Ｉ／ＯアダプタがＰＣＩカード用のアダプタである、
上記（７）に記載の方法。
（１０）  さらに、
ＤＭＡエラーが発生しない場合、前記第１のアドレスおよびＤＭＡ最終アドレスを記録し、エラーを報告するステップ
を備え、
前記ＤＭＡ最終アドレスがＤＭＡを用いてアクセスした最後のアドレスである、
上記（７）に記載の方法。
（１１）
ロジカル・パーティション・システムのダイレクト・メモリ・アクセス（ＤＭＡ）規則をテストする方法であって、
入力／出力（Ｉ／Ｏ）アダプタ用の有効なアドレス範囲を決めるステップと、
前記有効なアドレス範囲の外にある少なくとも１つのアドレスを投入するように前記Ｉ／ＯアダプタのＤＭＡエンティティを構成し、第１のアドレスで開始するステップと、
ＤＭＡが完了したら、あるいはエラーが発生したら、前記Ｉ／Ｏアダプタが投入した最後のアドレスと前記カードが投入した前記第１のアドレスとを比較するステップと、
前記最後のアドレスと前記第１のアドレスとが等しくない場合、エラーを報告するステップと
を備えた
方法。
（１２）  さらに、
ＤＭＡエラーが発生しない場合、前記第１のアドレスおよび前記最後のアドレスを記録し、エラーを報告するステップ
を備えた、
上記（１１）に記載の方法。
（１３）
前記Ｉ／ＯアダプタがＰＣＩカード用のアダプタである、
上記（１１）に記載の方法。
（１４）
ロジカル・パーティション・システムのダイレクト・メモリ・アクセス（ＤＭＡ）規則をテストする方法であって、
入力／出力（Ｉ／Ｏ）アダプタ用の有効なアドレス範囲を決めるステップと、
ＤＭＡオペレーションが前記有効なアドレス範囲の境界をまたいで無効なアドレス範囲に入るように前記ＤＭＡオペレーションのサイズを設定するステップと、
前記ＤＭＡオペレーションの間にＤＭＡエラーが発生したときに依拠した第１のアドレスを検出するステップと、
前記ＤＭＡエラーが発生したときに依拠した前記第１のアドレスとアクセスを試みた対象である最後のアドレスとを比較するステップと
を備えた
方法。
（１５）  さらに、
前記ＤＭＡエラーが発生したときに依拠した前記第１のアドレスとアクセスを試みた対象である前記最後のアドレスとが同じでない場合、エラーを報告するステップ
を備えた、
上記（１４）に記載の方法。
（１６）
ロジカル・パーティション・システムの規則をテストする方法であって、
二重アドレス・サイクル（ＤＡＣ）がオンになるように入力／出力（Ｉ／Ｏ）アダプタを構成するステップと、
有効なアドレスについてダイレクト・メモリ・アクセス（ＤＭＡ）オペレーションをトリガするステップと、
前記有効なアドレスとＤＭＡエラー・アドレスとを比較するステップと
を備えた
方法。
（１７）
前記有効なアドレスと前記ＤＭＡエラー・アドレスとが同じでない場合、エラーを報告する、
上記（１６）に記載の方法。
（１８）
ＤＭＡエラーが発生しない場合、エラーを報告する、
上記（１６）に記載の方法。
（１９）
ロジカル・パーティション・システムにおいてダイレクト・メモリ・アクセス（ＤＭＡ）をテストするシステムであって、
少なくとも１つのロジカル・パーティション規則に背くように構成されたＩ／Ｏアダプタと、
予期されるアドレスで予期されるエラーが発生するか否かをチェックするアルゴリズムと
を備えた
システム。
（２０）
予期されるアドレスで予期されるエラーが発生しない場合、ＤＭＡエラーを報告する、
上記（１９）に記載のシステム。
（２１）
前記予期されるエラーが、前記Ｉ／Ｏアダプタ用の有効なアドレス範囲の外にあるアドレスに対するアクセスを試みることに起因するＤＭＡエラーである、
上記（１９）に記載のシステム。
（２２）
ロジカル・パーティション・システムのダイレクト・メモリ・アクセス（ＤＭＡ）規則をテストするコンピュータ・プログラムであって、
入力／出力（Ｉ／Ｏ）アダプタ用の有効なアドレスを決める第１の命令群と、
ＤＭＡについて前記有効なアドレス範囲の外にある少なくとも１つのアドレスに対するアクセスを試み、第１のアドレスで開始する第２の命令群と、
ＤＭＡエラーが発生しない場合、前記第１のアドレスを記録し、エラーを報告する第３の命令群と、
ＤＭＡエラーが発生した場合、前記第１のアドレスとＤＭＡエラー・アドレスとを比較する第４の命令群と、
前記第１のアドレスと前記ＤＭＡエラー・アドレスとが等しくない場合、前記第１のアドレスを記録し、エラーを報告する第５の命令群と
を備えた
コンピュータ・プログラム。
（２３）
前記Ｉ／ＯアダプタのＤＭＡエンティティを構成することにより、前記有効なアドレス範囲の外にあるアドレスを投入するように前記Ｉ／Ｏアダプタを構成する、
上記（２２）に記載のコンピュータ・プログラム。
（２４）
前記Ｉ／ＯアダプタがＰＣＩカード用のアダプタである、
上記（２２）に記載のコンピュータ・プログラム。
（２５）  さらに、
ＤＭＡエラーが発生しない場合、前記第１のアドレスおよびＤＭＡ最終アドレスを記録し、エラーを報告する命令群
を備え、
前記ＤＭＡ最終アドレスがＤＭＡを用いてアクセスした最後のアドレスである、
上記（２２）に記載のコンピュータ・プログラム。
（２６）
ロジカル・パーティション・システムにおいてダイレクト・メモリ・アクセス（ＤＭＡ）をテストするシステムであって、
入力／出力（Ｉ／Ｏ）アダプタ用の有効なアドレス範囲を決める手段と、
前記有効なアドレス範囲の外にある少なくとも１つのアドレスを投入するように前記Ｉ／ＯアダプタのＤＭＡエンティティを構成し、第１のアドレスで開始する手段と、
ＤＭＡが完了したら、あるいはエラーが発生したら、前記Ｉ／Ｏアダプタが投入した最後のアドレスと前記カードが投入した前記第１のアドレスとを比較する手段と、
前記最後のアドレスと前記第１のアドレスとが等しくない場合に、エラーを報告する手段と
を備えたシステム。
（２７）  さらに、
ＤＭＡエラーが発生しない場合には、前記第１のアドレスおよび前記最後のアドレスを記録し、エラーを報告する手段
を備えた、
上記（２６）に記載のシステム。
（２８）
前記Ｉ／ＯアダプタがＰＣＩカード用のアダプタである、
上記（２６）に記載のシステム。
【図面の簡単な説明】
【００３８】
【図１】本発明の好適な実施形態の実装に適合するコンピュータ・システムを示す図である。
【図２】好適な実施形態の実装に適合するコンピュータ・システムの様々なサブシステムのブロック図である。
【図３】アダプタ用の有効バス範囲を検出する好適な実施形態に適合するプロセス・フローを示す図である。
【図４】好適な実施形態に適合する、ＰＣＩカードがその最初のＤＭＡトランザクションで無効なアドレスを投入する場合にエラーを検出する例を示す図である。
【図５】好適な実施形態に適合する、ＰＣＩカードが有効なアドレス範囲でトランザクションを開始するが無効な範囲に越境する場合にエラーをテストする例を示す図である。
【図６】好適な実施形態に適合する、ロジカル・パーティション・システムにおいてファイアウォール機構がＤＡＣを適切に阻止しているか否かをテストするプロセスの例を示す図である。
【符号の説明】
【００３９】
１００  コンピュータ
１０２  画像表示端末
１０４  キーボード
１０６  マウス
１０８  記憶装置
１１０  システム・ユニット
２００  データ処理システム
２０２  プロセッサ
２０４  メインメモリ
２０６  ＰＣＩローカル・バス
２０８  ＰＣＩブリッジ
２１０  ＬＡＮアダプタ
２１２  ＳＣＳＩホスト−バス・アダプタ
２１４  拡張バス・インタフェース
２１６  音声アダプタ
２１８  グラフィックス・アダプタ
２１９  音声／画像アダプタ
２２２  モデム
２２４  メモリ
２２６  ハード・ディスク駆動装置
２２８  テープ駆動装置
２３０  ＣＤ−ＲＯＭ駆動装置
２３２  破線
【図１】
2004326751.tif 000003
【図２】
2004326751.tif 000004
【図３】
2004326751.tif 000005
【図４】
2004326751.tif 000006
【図５】
2004326751.tif 000007
【図６】
2004326751.tif 000008