(57)【特許請求の範囲】
【請求項１】
ソフトウェアが動作する情報処理装置と、前記情報処理装置に接続され、第１の記憶部を有するとともに前記情報処理装置の機能を拡張する第１の機能拡張装置と、前記第１の機能拡張装置に接続された第１の複数の入出力装置と、前記情報処理装置に接続され、第２の記憶部を有するとともに前記情報処理装置の機能を拡張する第２の機能拡張装置と、前記第２の機能拡張装置に接続された第２の複数の入出力装置を有する情報処理システムであって、
前記第１の機能拡張装置上で第１のファームウェアが動作し、前記第１のファームウェアは、前記第１の機能拡張装置に、前記第１の複数の入出力装置それぞれに対して第１の問合せを同時に発行させるとともに、前記第１の問合せに対して前記第１の複数の入出力装置それぞれから得られた第１の回答を前記第１の記憶部に保持させるためのものであり、
前記第２の機能拡張装置上で第２のファームウェアが動作し、前記第２のファームウェアは、前記第２の機能拡張装置に、前記第２の複数の入出力装置それぞれに対して第２の問合せを同時に発行させるとともに、前記第２の問合せに対して前記第２の複数の入出力装置それぞれから得られた第２の回答を前記第２の記憶部に保持させるためのものであり、
前記ソフトウェアが動作する情報処理装置からの問合せがなくとも、各機能拡張装置は起動後直ちに前記第１の問合せ及び前記第２の問合せを互いに独立して発行することを特徴とする情報処理システム。
【請求項２】
前記第１のファームウェアは、前記第１の機能拡張装置にさらに、
前記ソフトウェアが動作する情報処理装置からの問合せに対し、前記第１の記憶部に保持された前記第１の回答を前記情報処理装置に対して通知させるためのものであることを特徴とする請求項１に記載の情報処理システム。
【請求項３】
前記第１のファームウェアは、前記第１の機能拡張装置にさらに、
前記第１の問合せを前記第１の複数の入出力装置に対して同時に発行してから所定時間が経過した場合、前記第１の問合せに係る終了通知を前記第１の複数の入出力装置に対して発行させるためのものであることを特徴とする請求項１又は請求項２に記載の情報処理
システム。
【請求項４】
請求項１乃至３のいずれか一項に記載の情報処理システムが有する前記第１の機能拡張装置。
【請求項５】
ソフトウェアが動作する情報処理装置と、前記情報処理装置に接続され、第１の記憶部を有するとともに前記情報処理装置の機能を拡張する第１の機能拡張装置と、前記第１の機能拡張装置に接続された第１の複数の入出力装置と、前記情報処理装置に接続され、第２の記憶部を有するとともに前記情報処理装置の機能を拡張する第２の機能拡張装置と、前記第２の機能拡張装置に接続された第２の複数の入出力装置を有する情報処理システムの制御方法において、
第１のファームウェアが動作する前記第１の機能拡張装置が、
前記第１の複数の入出力装置それぞれに対して第１の問合せを同時に発行するステップと、
前記第１の問合せに対して前記第１の複数の入出力装置それぞれから得られた第１の回答を前記第１の記憶部に保持させるステップとを実行し、
第２のファームウェアが動作する前記第２の機能拡張装置が、
前記第２の複数の入出力装置それぞれに対して第２の問合せを同時に発行するステップと、
前記第２の問合せに対して前記第２の複数の入出力装置それぞれから得られた第２の回答を前記第２の記憶部に保持させるステップとを実行し、
前記ソフトウェアが動作する情報処理装置からの問合せがなくとも、各機能拡張装置は起動後直ちに前記第１の問合せ及び前記第２の問合せを互いに独立して発行することを特徴とする制御方法。
【請求項６】
前記第１のファームウェアが動作する前記第１の機能拡張装置はさらに、
前記ソフトウェアが動作する情報処理装置からの問合せに対し、前記第１の記憶部に保持された前記第１の回答を前記情報処理装置に対して通知するステップを実行することを特徴とする請求項５に記載の制御方法。
【請求項７】
前記第１のファームウェアが動作する前記第１の機能拡張装置はさらに、
前記第１の問合せを前記第１の複数の入出力装置に対して同時に発行してから所定時間が経過した場合、前記第１の問合せに係る終了通知を前記第１の複数の入出力装置に対して発行することを特徴とする請求項５又は請求項６に記載の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の入出力装置に接続された機能拡張装置を搭載した情報処理システム、そのような情報処理システムを構成する機能拡張装置、及び、そのような情報処理システムを制御するための制御方法に、関する。
【背景技術】
【０００２】
周知のように、コンピュータでは、その主電源が投入されると、ＢＩＯＳ［Basic Input/Output System］が、マザーボード上のデバイスに問題がないかを確認する処理を行う
とともに、コンピュータに接続されている入出力装置の装置情報を取得することによってこれらを認識する処理を行い、その後、オペレーティングシステムを起動するようになっている。
【０００３】
装置情報の取得は、イニシエータとして動作する機能拡張装置に対し、ＢＩＯＳが要求することによって、行われる。イニシエータは、その要求を受けると、自己に接続されている入出力装置に対して問い合わせを行うようになっている。また、その問い合わせをターゲットとして受けた入出力装置が、イニシエータに対して自己の装置情報を回答すると、イニシエータは、回答された装置情報をＢＩＯＳに引き渡すようになっている。
【０００４】
ところで、イニシエータによる問い合わせは、複数のターゲットに対し、１つずつ順に行われる。また、イニシエータは、１個のターゲットに対して問い合わせを行うと、そのターゲットから回答がなくとも、一定時間待機するようになっている。更に、イニシエータがコンピュータ内に複数搭載されている場合には、ＢＩＯＳは、１つのイニシエータが問い合わせ処理を終えてから、次のイニシエータに装置情報の取得を要求するようになっている。
【０００５】
このため、コンピュータに複数のイニシエータが搭載されるとともに膨大な数の入出力装置が各イニシエータに接続されていた場合には、オペレーティングシステムを起動させる前に、かなりの時間が掛かってしまうという問題があった。
【０００６】
【特許文献１】特開２００５−１３５１２４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
本発明は、前述したような従来技術の有する問題点に鑑みてなされたものであり、その課題は、コンピュータに膨大な数の入出力装置が接続されている場合であっても、コンピュータの主電源を投入してからオペレーティングシステムの起動が開始されるまでに、できるだけ時間が掛からないようにすることにある。
【課題を解決するための手段】
【０００８】
上記の課題を解決するための案出された情報処理システムは、ソフトウェアが動作する情報処理装置と、前記情報処理装置に接続され、第１の記憶部を有するとともに前記情報処理装置の機能を拡張する第１の機能拡張装置と、前記第１の機能拡張装置に接続された第１の複数の入出力装置と、前記第１の機能拡張装置上で動作し、前記第１の複数の入出力装置それぞれに対して第１の問合せを発行するとともに、前記第１の問合せに対して前記第１の複数の入出力装置それぞれから得られた第１の回答を前記第１の記憶部に保持させる第１のファームウェアと、前記情報処理装置に接続され、第２の記憶部を有するとともに前記情報処理装置の機能を拡張する第２の機能拡張装置と、前記第２の機能拡張装置に接続された第２の複数の入出力装置と、前記第２の機能拡張装置上で動作し、前記第２の複数の入出力装置それぞれに対して第２の問合せを前記第１の問合せとは独立して発行するとともに、前記第２の問合せに対して前記第２の複数の入出力装置それぞれから得られた第２の回答を前記第２の記憶部に保持させる第２のファームウェアを有することを、特徴としている。
【０００９】
このように、機能拡張装置が、自己に接続されている複数の入出力装置から問い合わせに対する回答を取得して記憶部に記憶するようになっていると、機能拡張装置は、入出力装置の装置情報をＢＩＯＳから要求された場合に、各入出力装置に問い合わせを行わなくても、ＢＩＯＳに対して直ちに装置情報を引き渡すことができる。
【００１０】
なお、以上に開示した情報処理システムに係る動作は、制御方法又は情報処理プログラムによっても実現し得る。すなわち、本発明は、前述した情報処理システムの各部と同等の機能を複数の手順としてコンピュータが実行する制御方法であってもよいし、それら各部と同等に機能する複数の手段としてコンピュータを動作させる情報処理プログラムであってもよい。
【発明の効果】
【００１１】
従って、開示した情報処理システムによれば、コンピュータに膨大な数の入出力装置が接続されている場合であっても、コンピュータの主電源を投入してからオペレーティングシステムの起動が開始されるまでに、できるだけ時間が掛からないようになる。
【発明を実施するための最良の形態】
【００１２】
以下、添付図面を参照しながら、開示した情報処理システムの実施形態であるコンピュータシステムについて、７例説明する。
【実施形態１】
【００１３】
＜＜構成＞＞
図１は、第１の実施形態のコンピュータシステムの構成図である。
【００１４】
図１に示すように、第１の実施形態のコンピュータシステムは、コンピュータ１０と、このコンピュータ１０に接続された複数のＳＣＳＩ［Small Computer System Interface
］デバイス１２とを、含んでいる。
【００１５】
このうち、コンピュータ１０は、ストレージユニット１０ａ、ブートメモリユニット１０ｂ、ＣＰＵ［Central Processing Unit］１０ｃ、メインメモリユニット１０ｄ、及び
、ＳＣＳＩアダプタユニット１１を、備えている。
【００１６】
ストレージユニット１０ａは、各種のソフトウエア、各種のプログラム、及び、各種のデータを記録するためのユニットである。ブートメモリユニット１０ｂは、主電源投入後（システム起動後）に実行されるＢＩＯＳ［Basic Input/Output System］ソフトウエア
１０ｅが記録されるユニットであり、ブートメモリユニット１０ｂとしては、例えば、フラッシュメモリがある。ＣＰＵ１０ｃは、ストレージユニット１０ａ及びブートメモリユニット１０ｂ内のプログラムに従って処理を行うユニットである。メインメモリユニット１０ｄは、ＣＰＵ１０ｃがプログラムやデータをキャッシュしたり作業領域を展開したりするためのユニットである。ＳＣＳＩアダプタユニット１１は、ＳＣＳＩデバイス１２を接続するためのインターフェースをコンピュータに拡張機能として追加するためのユニットであり、いわゆるホストバスアダプタである。
【００１７】
なお、図１に示すように、第１の実施形態のコンピュータシステムでは、コンピュータ
１０は、複数のＳＣＳＩアダプタユニット１１を、備えているとともに、複数のＳＣＳＩアダプタユニット１１のそれぞれに、複数のＳＣＳＩデバイス１２がＳＣＳＩバスケーブルを介して接続されている。従って、コンピュータ１０は、前述した情報処理装置に相当している。
【００１８】
コンピュータ１０は、ストレージユニット１０ａに、アプリケーション１０ｆと、ＯＳ［Operating System］ソフトウエア１０ｇとを、記憶している。
【００１９】
アプリケーション１０ｆは、ＯＳソフトウエア１０ｇから提供される汎用機能を利用しながら特定の機能を実現するためのソフトウエアである。ＯＳソフトウエア１０ｇは、各種アプリケーションへのＡＰＩ［Application Programming Interface］やＡＢＩ［Application Binary Interface］の提供、ストレージユニット１０ａやメインメモリユニット
１０ｄの記憶領域の管理、プロセスやタスクの管理、ファイル管理や各種設定ツールやエディタといったユーティリティのアプリケーションへの提供、及び、画面出力を多重化するための複数タスクへのウインドウの割り当てを、行うためのソフトウエアである。このＯＳソフトウエア１０ｇには、ファイルシステムソフトウエア１０ｈが含まれている。ファイルシステムソフトウエア１０ｈは、名前管理機能、領域管理機能、及び、ファイルアクセス管理機能を提供するためのソフトウエアである。名前管理機能は、ファイルの分類体系（名前空間）をディレクトリとして管理するための機能であり、領域管理機能は、ファイルとディスクブロックとの対応付けを管理するための機能であり、ファイルアクセス管理機能は、アプリケーション１０ｆからのファイルアクセス要求を契機として、名前管理機能と領域管理機能を利用してファイルアクセスを実行する機能である。
【００２０】
また、コンピュータ１０は、ストレージユニット１０ａに、ＳＣＳＩドライバ１０ｉを、記憶している。ＳＣＳＩドライバ１０ｉは、ＢＩＯＳソフトウエア１０ｅ又はＯＳソフトウエア１０ｇとＳＣＳＩデバイス１２との間のＳＣＳＩ通信を制御するためのプログラムである。
【００２１】
一方、ＳＣＳＩデバイス１２は、データを入出力するための機能と、ＳＣＳＩ規格に従った通信を行うための接続インターフェースとを備えたデバイスである。従って、前述した入出力装置に相当している。
【００２２】
図２は、ＳＣＳＩデバイス１２の構成の一例を示す図である。
【００２３】
図２に示すＳＣＳＩデバイス１２は、ディスク装置であり、Ｉ／Ｆ（インターフェース）ユニット１２ａ、ディスクユニット１２ｂ、及び、ディスクコントローラ１２ｃを、備えている。
【００２４】
Ｉ／Ｆユニット１２ａは、ＳＣＳＩ規格に従った通信を行うためのユニットである。ディスクユニット１２ｂは、各種のプログラムや各種のデータを記録するための複数のディスク媒体を備えたユニットである。ディスクコントローラ１２ｃは、ディスク媒体へのプログラムやデータの読み書きを制御するためのユニットである。
【００２５】
このディスクコントローラ１２ｃは、図示していないが、ＲＯＭ［Read Only Memory］、ＣＰＵ、及び、ＲＡＭ［Random Access Memory］を主に備えており、このうちのＲＯＭには、ＳＣＳＩ規格に従った通信を行うためのソフトウエアを記憶している。このソフトウエアには、ＳＣＳＩデバイス１２に関するデバイス情報として、inquiryデータ１２ｄ
が含まれているとともに、ＳＣＳＩコマンドの一つであるinquiryコマンドに対し、ター
ゲットとしてinquiryデータ１２ｄを回答するためのinquiryデータ通知プログラム１２ｅが、含まれている。なお、図３は、inquiryデータ１２ｄの構成図であるが、inquiryデー
タ１２ｄは、周知のものであるので、その説明は省略する。
【００２６】
図４は、ＳＣＳＩアダプタユニット１１の構成図である。
【００２７】
図４に示すように、ＳＣＳＩアダプタユニット１１は、Ｉ／Ｆ（インターフェース）ユニット１１ａ、１１ｂ、ＲＯＭユニット１１ｃ、ＣＰＵ１１ｄ、及び、ＲＡＭユニット１１ｅを、備えている。
【００２８】
１個目のＩ／Ｆユニット１１ａは、コンピュータ１０内のＣＰＵ１０ｃ等のユニットとデータの遣り取りを行うためのユニットである。２個目のＩ／Ｆユニット１１ｂは、ＳＣＳＩ規格に従った通信を行うためのユニットである。なお、ＳＣＳＩデバイス１２は、このＩ／Ｆユニット１１ｂに接続される。ＲＯＭユニット１１ｃは、プログラムやデータを記録しておくためのユニットである。ＣＰＵ１１ｄは、ＲＯＭユニット１１ｃ内のプログラムに従って処理を行うユニットである。ＲＡＭユニット１１ｅは、ＣＰＵ１１ｄがプログラムやデータをキャッシュしたり作業領域を展開したりするためのユニットである。
【００２９】
ＳＣＳＩアダプタユニット１１は、ＲＯＭユニット１１ｃに、ＳＣＳＩ規格に従った通信を行うためのソフトウエアを記憶している。このソフトウエアは、第１の実施形態では、イニシエータとして設定されている。また、このソフトウエアには、ターゲット情報管理テーブル１１ｆ、及び、inquiryデータ収集プログラム１１ｇが、追加されている。
【００３０】
ターゲット情報管理テーブル１１ｆは、このＳＣＳＩアダプタユニット１１が自己に接続されているＳＣＳＩデバイス１２をターゲットとする場合において、各ターゲットを一意に特定するための情報が記録されるテーブルである。
【００３１】
図５は、ターゲット情報管理テーブル１１ｆを模式的に示す図である。
【００３２】
図５に示すように、ターゲット情報管理テーブル１１ｆの各レコードは、「ターゲットＩＤ［Identification］」及び「ＬＵＮ［Logical Unit Number］」のフィールドを、有
している。「ターゲットＩＤ」フィールドは、そのＳＣＳＩデバイス１２を一意に特定するための識別情報が記録されるフィールドである。「ＬＵＮ」フィールドは、そのＳＣＳＩデバイス１２内のディスク媒体を一意に特定するための識別情報が記録されるフィールドである。なお、ターゲット情報管理テーブル１１ｆの各レコードは、以上の２個以外のフィールドを有していても良い。
【００３３】
図４に示すinquiryデータ収集プログラム１１ｇは、複数のＳＣＳＩデバイス１２からinquiryデータ１２ｄを収集するためのプログラムである。このinquiryデータ収集処理の
内容については、詳しくは、図６を用いて後述するが、このinquiryデータ収集処理によ
り、ＲＡＭユニット１１ｅには、inquiryデータ管理テーブル１１ｈが、生成される。inquiryデータ管理テーブル１１ｈは、ＳＣＳＩデバイス１２から収集したinquiryデータ１
２ｄを管理するためのテーブルである。従って、ＲＡＭユニット１１ｅは、前述した記憶部に相当している。
【００３４】
また、ＳＣＳＩアダプタユニット１１がＲＯＭユニット１１ｃに記憶しているソフトウエアには、応答プログラム１１ｉが含まれている。応答プログラム１１ｉは、ブートメモリユニット１０ｂ内のＢＩＯＳソフトウエア１０ｅ、又は、ＯＳソフトウエア１０ｇ内のファイルシステムソフトウエア１０ｈから要求があると、ＲＡＭユニット１１ｅ内に生成されているinquiryデータ管理テーブル１１ｈから、指定されたターゲットのinquiryデータ１２ｄを読み出し、要求元に回答するためのプログラムである。この応答プログラム１１ｉは、ＳＣＳＩアダプタユニット１１の電源が投入されると、ＣＰＵ１１ｄによって自
動的に起動されるようになっている。
【００３５】
なお、ＳＣＳＩアダプタユニット１１がＲＯＭユニット１１ｃに記憶するソフトウエアは、ＲＯＭユニット１１ｃに固定的に記録されたソフトウエアであるため、いわゆるファームウエアとなっている。
【００３６】
＜＜処理＞＞
ＳＣＳＩアダプタユニット１１では、その電源が投入されると、ＣＰＵ１１ｄによって、inquiryデータ収集プログラム１１ｇが自動的に起動されるようになっている。また、
このinquiryデータ収集プログラム１１ｇが起動されると、inquiryデータ収集処理がＣＰＵ１１ｄによって開始されるようになっている。
【００３７】
図６は、inquiryデータ収集処理の流れを示す図である。
【００３８】
inquiryデータ収集処理の開始後、最初のステップＳ１０１では、ＣＰＵ１１ｄは、新
規のワークテーブルを、ＲＡＭユニット１１ｅに生成する。なお、ここで生成されるワークテーブルは、inquiryデータ管理テーブル１１ｈと同じフィールド構成を、有している
。
【００３９】
次のステップＳ１０２では、ＣＰＵ１１ｄは、ＲＯＭユニット１１ｃから、ターゲット情報管理テーブル１１ｆを読み込む。その後、ＣＰＵ１１ｄは、第１の処理ループＬ１を実行する。
【００４０】
第１の処理ループＬ１では、ＣＰＵ１１ｄは、ステップＳ１０２で読み込んだターゲ
ット情報管理テーブル１１ｆの全てのレコードのそれぞれを１つずつ順に特定するとともに、特定したレコードについてステップＳ１０３乃至Ｓ１０６の処理を実行する。
【００４１】
ステップＳ１０３では、ＣＰＵ１１ｄは、処理対象レコードに含まれるターゲットＩＤ及びＬＵＮを含むinquiryコマンドを、送信する。なお、図７は、inquiryコマンドのフォーマット図であるが、inquiryコマンドは、周知のものであるので、その説明は省略する
。また、ＳＣＳＩデバイス１２は、このinquiryコマンドを受信すると、inquiryデータ通知プログラム１２ｅに従って、自己のinquiryデータ１２ｄを回答するが、inquiryデータ通知プログラム１２ｅによる処理は、周知のものであるため、その説明は省略する。
【００４２】
次のステップＳ１０４では、ＣＰＵ１１ｄは、ステップＳ１０３で送信したinquiryコ
マンドに対する回答を受信したか否かを、判別する。そして、ステップＳ１０３で送信したinquiryコマンドに対する回答を受信していなかった場合には、ＣＰＵ１１ｄは、ステ
ップＳ１０４からステップＳ１０５へ処理を分岐させる。
【００４３】
ステップＳ１０５では、ＣＰＵ１１ｄは、ステップＳ１０３でinquiryコマンドを送信
してから所定時間が経過したか否かを、判別する。そして、ステップＳ１０３でinquiry
コマンドを送信してから所定時間が経過していなかった場合には、ＣＰＵ１１ｄは、ステップＳ１０５から処理を分岐させ、ステップＳ１０４へ処理を戻す。
【００４４】
ステップＳ１０４及びＳ１０５を繰り返し実行している最中に、ステップＳ１０３でinquiryコマンドを送信してから所定時間が経過した場合には、ＣＰＵ１１ｄは、ステップ
Ｓ１０５から処理を進め、第１の処理ループＬ１におけるこの処理対象レコードの回を終了する。
【００４５】
また、ステップＳ１０４及びＳ１０５を繰り返し実行している最中に、所定時間が経過
する前に、ステップＳ１０３で送信したinquiryコマンドに対する回答を受信した場合、
ＣＰＵ１１ｄは、ステップＳ１０４からステップＳ１０６へ処理を進める。
【００４６】
ステップＳ１０６では、ＣＰＵ１１ｄは、ステップＳ１０４で受信したinquiryデータ
１２ｄを、ＲＡＭユニット１１ｅ内のワークテーブルに記録する処理を行う。その後、ＣＰＵ１１ｄは、第１の処理ループＬ１におけるこの処理対象レコードの回を終了する。
【００４７】
ＣＰＵ１１ｄは、ステップＳ１０２で読み込んだターゲット情報管理テーブル１１ｆの全てのレコードについてステップＳ１０３乃至Ｓ１０６の処理を実行し終えると、第１の処理ループＬ１から離脱し、ステップＳ１０７へ処理を進める。
【００４８】
ステップＳ１０７では、ＣＰＵ１１ｄは、ＲＡＭユニット１１ｅ内のワークテーブルを複製して、inquiryデータ管理テーブル１１ｈとしてＲＡＭユニット１１ｅに記録する。
記録後、ＣＰＵ１１ｄは、図６に係るinquiryデータ収集処理を終了する。
【００４９】
このinquiryデータ収集処理によれば、ＳＣＳＩアダプタユニット１１は、ブートメモ
リユニット１０ｂ内のＢＩＯＳソフトウエア１０ｅ、又は、ＯＳソフトウエア１０ｇ内のファイルシステムソフトウエア１０ｈから要求がなくとも、起動後直ちに、inquiry処理
を行うこととなり、また、自己に接続されているＳＣＳＩデバイス１２からinquiryデー
タ１２ｄを収集することとなる。
【００５０】
＜＜作用＞＞
図８は、第１の実施形態のコンピュータ１０とＳＣＳＩドライバ１０ｉとＳＣＳＩアダプタユニット１１とにおける起動時のシーケンスを示す図である。
【００５１】
第１の実施形態のコンピュータシステムでは、コンピュータ１０の主電源が投入されると、ブートメモリユニット１０ｂ内のＢＩＯＳソフトウエア１０ｅがＣＰＵ１０ｃによって起動されてＢＩＯＳソフトウエア１０ｅに含まれるＰＯＳＴ［Power-On Self Test］が開始されるとともに（ステップＳ２０１）、ＳＣＳＩアダプタユニット１１内のinquiry
データ収集プログラム１１ｇがＣＰＵ１１ｄによって起動されてinquiryデータ収集処理
が実行される（ステップＳ４０１）。このとき、inquiryデータ収集処理は、複数のＳＣ
ＳＩアダプタユニット１１において、並列に実行される。そして、図６を用いて先に説明したように、各ＳＣＳＩアダプタユニット１１のＲＡＭユニット１１ｅには、inquiryデ
ータ管理テーブル１１ｈが生成されることとなる。
【００５２】
コンピュータ１０では、ＰＯＳＴの実行によって、各ユニットに問題がないことが確認されると、続いて、ＢＩＯＳソフトウエア１０ｅに含まれるＯＢＰ［Open Boot Program
］が開始される（ステップＳ２０２）。ＯＢＰには、ＳＣＳＩアダプタユニット１１に接続されているＳＣＳＩデバイス１２を認識するため、各ＳＣＳＩデバイス１２に関するデバイス情報を取得するためのプログラムが、含まれている。そのプログラムに従ったＣＰＵ１０ｃは、何れか１個のＳＣＳＩデバイス１２に関するデバイス情報を、ＳＣＳＩドライバ１０ｉを介してＳＣＳＩアダプタユニット１１に要求する（ステップＳ２０３）。
【００５３】
すると、ＳＣＳＩドライバ１０ｉに従ったＣＰＵ１０ｃが、デバイス情報の要求を、inquiryコマンドに変換して、指定されたＳＣＳＩデバイス１２が接続されているＳＣＳＩ
アダプタユニット１１に、送信する（ステップＳ３０１）。ＳＣＳＩアダプタユニット１１は、inquiryコマンドを受信すると（ステップＳ４０２）、そのinquiryコマンドで指定されているターゲットＩＤ及びＬＵＮを検索条件として、ＲＡＭユニット１１ｅ内のinquiryデータ管理テーブル１１ｈを検索する（ステップＳ４０３）。その後、ＳＣＳＩアダ
プタユニット１１は、inquiryデータ１２ｄが検出できた場合には、そのinquiryデータ１
２ｄをＳＣＳＩドライバ１０ｉを介してＯＢＰに回答し、inquiryデータ１２ｄが検出で
きなかった場合には、その旨をＳＣＳＩドライバ１０ｉを介してＯＢＰに回答する（ステップＳ４０４）。なお、ステップＳ４０２乃至Ｓ４０４は、応答プログラム１１ｉによる処理である。
【００５４】
そして、ＳＣＳＩドライバ１０ｉに従ったＣＰＵ１０ｃが、ＳＣＳＩアダプタユニット１１からの回答を、ＯＢＰが読み込める形式に変換して、デバイス情報としてＯＢＰに引き渡し（ステップＳ３０２）、ＯＢＰに従ったＣＰＵ１０ｃが、そのデバイス情報を受信して、図示せぬカーネル内に記録する（ステップＳ２０４）。
【００５５】
ＯＢＰに従ったＣＰＵ１０ｃは、デバイス情報の要求（ステップＳ２０３）と受信（ステップＳ２０４）とからなる処理を、コンピュータ１０に接続されている全てのＳＣＳＩデバイス１２について繰り返し実行し、全てのＳＣＳＩデバイス１２について実行し終えると（ステップＳ２０５）、ＯＳソフトウエア１０ｇの起動を開始する。
【００５６】
＜＜効果＞＞
図９は、従来のコンピュータシステムにおける起動時のシーケンスを示す図である。
【００５７】
図９と図８とを比較して明かなように、従来のコンピュータシステムでは、ＰＯＳＴが開始されても、ＳＣＳＩアダプタユニット１１では、inquiryデータ収集処理（Ｓ４０１
）が行われない。
【００５８】
そして、ＰＯＳＴが完了して、ＯＢＰが開始されると（ステップＳ２０２）、ＣＰＵ１０ｃが、何れか１個のＳＣＳＩデバイス１２に関するデバイス情報を、ＳＣＳＩドライバ１０ｉを介してＳＣＳＩアダプタユニット１１に要求する（ステップＳ２１１）。この要求を受けて、ＳＣＳＩドライバ１０ｉに従ったＣＰＵ１０ｃは、inquiryコマンドに変換
し（ステップＳ３１１）、指定されたＳＣＳＩデバイス１２が接続されているＳＣＳＩアダプタユニット１１が、そのＳＣＳＩデバイス１２にinquiryコマンドを送信する（ステ
ップＳ４１１）。
【００５９】
ＳＣＳＩデバイス１２は、正常に動作している場合には、inquiryコマンドを受信して
、自己のinquiryデータ１２ｄをＯＢＰに向けて回答する（ステップＳ５１１、Ｓ５１２
、Ｓ４１２、Ｓ３１２、Ｓ２１２）。しかしながら、ＳＣＳＩデバイス１２が、正常に動作していない場合には、ＳＣＳＩアダプタユニット１１が、inquiryコマンドを送信して
も、ＳＣＳＩデバイス１２からは回答が返ってこない。このような場合、ＳＣＳＩアダプタユニット１１は、ＳＣＳＩデバイス１２から回答が返ってくるまで、所定時間待機し、時間切れになると（ステップＳ４１３）、ＯＢＰに向けてエラーを回答する（ステップＳ４１３）。
【００６０】
第１の実施形態と同様に、従来のコンピュータシステムにおいても、ＯＢＰに従ったＣＰＵ１０ｃは、デバイス情報の要求（ステップＳ２１１）と受信（ステップＳ２１２）とからなる処理を、コンピュータ１０に接続されている全てのＳＣＳＩデバイス１２について繰り返し実行するようになっている。
【００６１】
従って、従来のコンピュータシステムでは、ＯＢＰの実行時間に、ＳＣＳＩデバイス１２から回答が返ってこないために待機した時間が、正常に動作していないＳＣＳＩデバイス１２の個数の分だけ、累積して計上されてしまうこととなる。
【００６２】
しかしながら、第１の実施形態のコンピュータシステムによれば、ＰＯＳＴが実行されている間に、ＳＣＳＩアダプタユニット１１が、ＳＣＳＩデバイス１２からinquiryデー
タ１２ｄを収集しているため、正常に動作していないＳＣＳＩデバイス１２が存在することによって、待機時間が幾つか生じてしまっていても、その待機時間がＯＢＰの実行時間に計上されないこととなる。
【００６３】
而も、第１の実施形態によれば、inquiryデータ収集処理は、複数のＳＣＳＩアダプタ
ユニット１１において、並行に実行されるため、各ＳＣＳＩアダプタユニット１１のinquiryデータ収集処理において、待機時間が生じてしまっていても、その待機時間が、累積
されることがない。
【００６４】
以上のことから、第１の実施形態のコンピュータシステムによれば、コンピュータ１０の主電源を投入してからＯＳソフトウエア１０ｇの起動が開始されるまでの時間が、従来のコンピュータシステムよりも少なくなる。
【００６５】
また、以上では、ＯＢＰがデバイス情報の要求を取得する処理における第１の実施形態の効果について、説明したが、ＯＳソフトウエア１０ｇのファイルシステムソフトウエア１０ｈ（に従ったＣＰＵ１０ｃ）が、各ＳＣＳＩデバイス１２からデバイス情報を取得する場合においても、同様の効果が得られる。すなわち、ファイルシステムソフトウエア１０ｈ（従ったＣＰＵ１０ｃ）が、各ＳＣＳＩデバイス１２のデバイス情報をＳＣＳＩアダプタユニット１１に要求しても、ＳＣＳＩアダプタユニット１１からは、指定されたＳＣＳＩデバイス１２のinquiryデータ１２ｄの有無が、直ちに回答される。このため、ファ
イルシステムソフトウエア１０ｈ（に従ったＣＰＵ１０ｃ）は、正常に動作していないＳＣＳＩデバイス１２からの回答が返ってこないことによってＳＣＳＩアダプタユニット１１とともに所定時間待機しなくても済むようになる。
【実施形態２】
【００６６】
第２の実施形態は、コンピュータとＳＣＳＩデバイスとが、ＳＣＳＩバスではなく、ＦＣ［Fiber Channel］スイッチを介して接続されている点で、第１の実施形態と相違する
。
【００６７】
＜＜構成＞＞
図１０は、第２の実施形態のコンピュータシステムの構成図である。
【００６８】
図１０に示すように、第２の実施形態のコンピュータシステムは、コンピュータ２０と、このコンピュータ２０にＦＣスイッチ２２を介して接続された複数のＲＡＩＤ［Redundant Arrays of Independent Disks］装置２３とを、含んでいる。
【００６９】
このうち、コンピュータ２０は、ストレージユニット２０ａ、ブートメモリユニット２０ｂ、ＣＰＵ２０ｃ、メインメモリユニット２０ｄ、及び、ＦＣアダプタユニット２１を、備えている。ＦＣアダプタユニット２１を除く各ユニット２０ａ〜２０ｄは、第１の実施形態のコンピュータ１０における同じユニット１０ａ〜１０ｄと同等の機能を発揮するものである。一方、ＦＣアダプタユニット２１は、ＦＣデバイスであるＲＡＩＤ装置２３を接続するためのインターフェースをコンピュータに拡張機能として追加するためのユニットであり、いわゆるホストバスアダプタである。
【００７０】
コンピュータ２０は、第１の実施形態のコンピュータ１０と同様に、ブートメモリユニット２０ｂに、ＢＩＯＳソフトウエア２０ｅを記憶している。また、コンピュータ２０は、ストレージユニット２０ａに、アプリケーション２０ｆと、ＯＳソフトウエア２０ｇとを、記憶している。ＯＳソフトウエア２０ｇには、ファイルシステムソフトウエア２０ｈが含まれている。
【００７１】
第２の実施形態では、コンピュータ２０は、ストレージユニット２０ａに、ＳＣＳＩドライバ２０ｉと、ＨＢＡ［Host Bus Adapter］ドライバ２０ｊとを、記憶している。ＳＣＳＩドライバ２０ｉは、ＢＩＯＳソフトウエア２０ｅ又はＯＳソフトウエア２０ｇとＳＣＳＩデバイスとの間のＳＣＳＩ通信を制御するためのプログラムである。ＨＢＡドライバ２０ｊは、ＳＣＳＩドライバ２０ｉが送信するデータをＦＣ通信の通信形態に変換してＦＣアダプタユニット２１に引き渡したり、ＦＣアダプタユニット２１がＦＣ通信で受信したデータをＳＣＳＩドライバ２０ｉが解釈できるデータに変換したりするためのプログラムである。
【００７２】
ＦＣスイッチ２２は、パケットの取り次ぎを行うネットワーク機器である。
【００７３】
ＲＡＩＤ装置２３は、コンピュータ２０の外部記憶装置である。このＲＡＩＤ装置２３は、ＦＣ−ＲＡＩＤコントローラ２３ａ、ＳＣＳＩアダプタ２３ｂ、及び、複数のＳＣＳＩデバイス２３ｃを、含んでいる。ＦＣ−ＲＡＩＤコントローラ２３ａは、ＦＣ通信のためのインターフェースと、複数のＳＣＳＩデバイス２３ｃ内のディスク媒体を仮想的に１枚のディスク媒体として管理するための機能とを、備えている。ＳＣＳＩアダプタ２３ｂは、自己に接続されたＳＣＳＩデバイス２３ｃを制御するためのコントローラである。ＳＣＳＩデバイス２３ｃは、図２に示したものと同様に、Ｉ／Ｆユニット、ディスクユニット、及び、ディスクコントローラを、備えており、ディスクコントローラには、ＲＯＭ、ＣＰＵ、ＲＡＭが含まれ、ＲＯＭには、ＳＣＳＩ規格に従った通信を行うためのソフトウエアと、inquiryデータとが、記録されている。
【００７４】
図１１は、ＦＣアダプタユニット２１の構成図である。
【００７５】
図１１に示すように、ＦＣアダプタユニット２１は、Ｉ／Ｆユニット２１ａ、２１ｂ、ＲＯＭユニット２１ｃ、ＣＰＵ２１ｄ、及び、ＲＡＭユニット２１ｅを、備えている。
【００７６】
１個目のＩ／Ｆユニット２１ａは、コンピュータ２０内のＣＰＵ２０ｃ等のユニットとデータの遣り取りを行うためのユニットである。２個目のＩ／Ｆユニット２１ｂは、ＦＣ規格に従った通信を行うためのユニットである。なお、ＦＣデバイスであるＲＡＩＤ装置２３は、このＩ／Ｆユニット２１ｂに接続される。ＲＯＭユニット２１ｃは、プログラムやデータを記録しておくためのユニットである。ＣＰＵ２１ｄは、ＲＯＭユニット２１ｃ内のプログラムに従って処理を行うユニットである。ＲＡＭユニット２１ｅは、ＣＰＵ２１ｄがプログラムやデータをキャッシュしたり作業領域を展開したりするためのユニットである。
【００７７】
ＦＣアダプタユニット２１は、ＲＯＭユニット２１ｃに、ＦＣ規格に従った通信を行うためのソフトウエアと、ＳＣＳＩ規格に従った通信を行うためのソフトウエアと、前述したＨＢＡドライバと同等のソフトウエアとを、記憶している。また、ＳＣＳＩ規格に従った通信を行うためのソフトウエアは、第２の実施形態では、イニシエータとして設定されている。さらに、このソフトウエアには、ターゲット情報管理テーブル２１ｆ、inquiry
データ収集プログラム２１ｇ、応答プログラム２１ｉが、追加されている。ターゲット情報管理テーブル２１ｆは、第１の実施形態のそれと同等のものであり（図５）、inquiry
データ収集プログラム２１ｇ、及び、応答プログラム２１ｉも、第１の実施形態のそれらと同等のものである（図６、図８）。
【００７８】
なお、ＦＣアダプタユニット２１がＲＯＭユニット１１ｃに記憶するソフトウエアは、ＲＯＭユニット１１ｃに固定的に記録されたソフトウエアであるため、いわゆるファームウエアとなっている。
【００７９】
＜＜効果＞＞
第２の実施形態は、以上のように構成されているため、第１の実施形態のＳＣＳＩアダプタユニット１１と同様に、コンピュータ２０の起動後、ＢＩＯＳソフトウエア２０ｅ内のＰＯＳＴが実行されている間に、ＦＣアダプタユニット２１が、ＲＡＩＤ装置２３内のＳＣＳＩデバイス２３ｃからinquiryデータを収集する。このため、正常に動作していな
いＳＣＳＩデバイス２３ｃが存在することによって、待機時間が幾つか生じてしまっていても、その待機時間がＯＢＰの実行時間に計上されないこととなる。
【００８０】
また、第２の実施形態においても、inquiryデータ収集処理は、複数のＦＣアダプタユ
ニット２１において、並行に実行されるため、各ＦＣアダプタユニット２１のinquiryデ
ータ収集処理において、待機時間が生じてしまっていても、その待機時間が、累積されることがない。
【００８１】
以上のことから、第２の実施形態のコンピュータシステムによっても、コンピュータ２０の主電源を投入してからＯＳソフトウエア２０ｇの起動が開始されるまでの時間が、従来のコンピュータシステムよりも少なくなる。
【実施形態３】
【００８２】
第３の実施形態は、コンピュータとＲＡＩＤ装置とがＳＡＳ［Serial Attached SCSI］を介して接続されている点で、第１の実施形態と相違する。
【００８３】
＜＜構成＞＞
図１２は、第３の実施形態のコンピュータシステムの構成図である。
【００８４】
図１２に示すように、第３の実施形態のコンピュータシステムは、コンピュータ３０と、このコンピュータ３０に接続された複数のＲＡＩＤ［Redundant Arrays of Independent Disks］装置３２とを、含んでいる。
【００８５】
このうち、コンピュータ３０は、ストレージユニット３０ａ、ブートメモリユニット３０ｂ、ＣＰＵ３０ｃ、メインメモリユニット３０ｄ、及び、ＳＡＳアダプタユニット３１を、備えている。ＳＡＳアダプタユニット３１を除く各ユニット３０ａ〜３０ｄは、第１の実施形態のコンピュータ１０における同じユニット１０ａ〜１０ｄと同等の機能を発揮するものである。一方、ＳＡＳアダプタユニット３１は、ＳＡＳデバイスであるＲＡＩＤ装置３２を接続するためのインターフェースをコンピュータに拡張機能として追加するためのユニットであり、いわゆるホストバスアダプタである。
【００８６】
コンピュータ３０は、第１の実施形態のコンピュータ１０と同様に、ブートメモリユニット３０ｂに、ＢＩＯＳソフトウエア３０ｅを記憶している。また、コンピュータ３０は、ストレージユニット３０ａに、アプリケーション３０ｆと、ＯＳソフトウエア３０ｇとを、記憶している。ＯＳソフトウエア３０ｇには、ファイルシステムソフトウエア３０ｈが含まれている。
【００８７】
第３の実施形態では、コンピュータ３０は、ストレージユニット３０ａに、ＳＣＳＩドライバ３０ｉと、ＨＢＡドライバ３０ｊとを、記憶している。ＳＣＳＩドライバ３０ｉは、ＢＩＯＳソフトウエア３０ｅ又はＯＳソフトウエア３０ｇとＳＣＳＩデバイスとの間のＳＣＳＩ通信を制御するためのプログラムである。ＨＢＡドライバ３０ｊは、ＳＣＳＩドライバ３０ｉが送信するデータをＳＡＳ通信の通信形態に変換してＳＡＳアダプタユニット３１に引き渡したり、ＳＡＳアダプタユニット３１がＳＡＳ通信で受信したデータをＳＣＳＩドライバ３０ｉが解釈できるデータに変換したりするためのプログラムである。
【００８８】
ＲＡＩＤ装置３２は、コンピュータ３０の外部記憶装置である。このＲＡＩＤ装置３２は、ＳＡＳ−ＲＡＩＤコントローラ３２ａ、エキスパンダ３２ｂ、及び、複数のＳＡＳデバイス３２ｃを、含んでいる。ＳＡＳ−ＲＡＩＤコントローラ３２ａは、ＳＡＳ通信のためのインターフェースと、複数のＳＡＳデバイス３２ｃ内のディスク媒体を仮想的に１枚のディスク媒体として管理するための機能とを、備えている。エキスパンダ３２ｂは、接続トポロジを拡張するための中継デバイスである。ＳＡＳデバイス３２ｃは、図２に示したものと同様に、Ｉ／Ｆユニット、ディスクユニット、及び、ディスクコントローラを、備えており、ディスクコントローラには、ＲＯＭ、ＣＰＵ、ＲＡＭが含まれ、ＲＯＭには、ＳＡＳ規格に従った通信を行うためのソフトウエアと、inquiryデータとが、記録され
ている。なお、ＳＡＳ規格に従った通信を行うためのソフトウエアには、ＳＣＳＩコマンドを解釈して実行するためのソフトウエアが含まれている。
【００８９】
図１３は、ＳＡＳアダプタユニット３１の構成図である。
【００９０】
図１３に示すように、ＳＡＳアダプタユニット３１は、Ｉ／Ｆユニット３１ａ、３１ｂ、ＲＯＭユニット３１ｃ、ＣＰＵ３１ｄ、及び、ＲＡＭユニット３１ｅを、備えている。
【００９１】
１個目のＩ／Ｆユニット３１ａは、コンピュータ３０内のＣＰＵ３０ｃ等のユニットとデータの遣り取りを行うためのユニットである。２個目のＩ／Ｆユニット３１ｂは、ＳＡＳ規格に従った通信を行うためのユニットである。なお、ＳＡＳデバイスであるＲＡＩＤ装置３２は、このＩ／Ｆユニット３１ｂに接続される。ＲＯＭユニット３１ｃは、プログラムやデータを記録しておくためのユニットである。ＣＰＵ３１ｄは、ＲＯＭユニット３１ｃ内のプログラムに従って処理を行うユニットである。ＲＡＭユニット３１ｅは、ＣＰＵ３１ｄがプログラムやデータをキャッシュしたり作業領域を展開したりするためのユニットである。
【００９２】
ＳＡＳアダプタユニット３１は、ＲＯＭユニット３１ｃに、ＳＡＳ規格に従った通信を行うためのソフトウエアを、記憶している。このソフトウエアは、第３の実施形態では、イニシエータとして設定されている。さらに、このソフトウエアには、ターゲット情報管理テーブル３１ｆ、inquiryデータ収集プログラム３１ｇ、応答プログラム３１ｉが、含
まれている。ターゲット情報管理テーブル３１ｆは、第１の実施形態のそれと同等のものであり（図５）、inquiryデータ収集プログラム３１ｇ、及び、応答プログラム３１ｉも
、第１の実施形態のそれらと同等のものである（図６、図８）。
【００９３】
なお、ＳＡＳアダプタユニット３１がＲＯＭユニット３１ｃに記憶するソフトウエアは、ＲＯＭユニット３１ｃに固定的に記録されたソフトウエアであるため、いわゆるファームウエアとなっている。
【００９４】
＜＜効果＞＞
第３の実施形態は、以上のように構成されているため、第１の実施形態のＳＣＳＩアダプタユニット１１と同様に、コンピュータ３０の起動後、ＢＩＯＳソフトウエア３０ｅ内のＰＯＳＴが実行されている間に、ＳＡＳアダプタユニット３１が、ＲＡＩＤ装置３２内のＳＡＳデバイス３２ｃからinquiryデータを収集する。このため、正常に動作していな
いＳＡＳデバイス３２ｃが存在することによって、待機時間が幾つか生じてしまっていても、その待機時間がＯＢＰの実行時間に計上されないこととなる。
【００９５】
また、第２の実施形態においても、inquiryデータ収集処理は、複数のＳＡＳアダプタ
ユニット３１において、並行に実行されるため、各ＳＡＳアダプタユニット３１のinquiryデータ収集処理において、待機時間が生じてしまっていても、その待機時間が、累積さ
れることがない。
【００９６】
以上のことから、第３の実施形態のコンピュータシステムによっても、コンピュータ３０の主電源を投入してからＯＳソフトウエア３０ｇの起動が開始されるまでの時間が、従来のコンピュータシステムよりも少なくなる。
【実施形態４】
【００９７】
第１乃至第３の実施形態は、ターゲットデバイス（ＳＣＳＩデバイス１２、２３ｃ、ＳＡＳデバイス３２ｃ）には、何ら変更を加えずに、イニシエータであるホストバスアダプタ（ＳＣＳＩアダプタユニット１１、ＦＣアダプタユニット２１、ＳＡＳアダプタユニット３１）に、inquiryデータ収集機能と応答機能とが追加されたものとなっている。これ
に対し、第４の実施形態は、コンピュータと複数のＳＣＳＩデバイスとからなるコンピュータシステムにおいて、イニシエータ（ＳＣＳＩアダプタ）とターゲットデバイス（ＳＣＳＩデバイス）との間の通信に独自のシーケンスを追加したものとなっている。従って、第４の実施形態のコンピュータシステムは、図１に示すコンピュータシステムと同じシステム構成を、有している。
【００９８】
＜＜構成＞＞
図１４は、第４の実施形態におけるＳＣＳＩアダプタユニット１１の構成図である。
【００９９】
図１４と図４とから明かなように、第４の実施形態のＳＣＳＩアダプタユニット１１は、第１の実施形態のそれと同じハードウエア構成を、有している。また、第４の実施形態のＳＣＳＩアダプタユニット１１は、第１の実施形態と同様に、ＲＯＭユニット１１ｃに、ターゲット情報管理テーブル１１ｆ、inquiryデータ収集プログラム１１ｊ、応答プロ
グラム１１ｉを記憶している。但し、第４の実施形態のinquiryデータ収集プログラム１
１ｊによる処理内容は、後述するように、第１の実施形態のinquiryデータ収集プログラ
ム１１ｇによる処理内容（図６）とは、若干相違している。
【０１００】
図１５は、第４の実施形態におけるＳＣＳＩデバイス１２の構成図である。
【０１０１】
図１５と図２とから明かなように、第４の実施形態のＳＣＳＩデバイス１２は、第１の実施形態のそれと同じハードウエア構成を、有している。また、第４の実施形態のＳＣＳＩデバイス１２は、第１の実施形態と同様に、ディスクコントローラ１２ｃに、inquiry
データ１２ｄ、及び、inquiryデータ通知プログラム１２ｆを記憶している。但し、第４
の実施形態のinquiryデータ通知プログラム１２ｆによる処理内容は、後述するように、
第１の実施形態のinquiryデータ通知プログラム１２ｅによる処理内容とは、若干相違し
ている。
【０１０２】
＜＜処理＞＞
＜ＳＣＳＩアダプタ側＞
ＳＣＳＩアダプタユニット１１では、その電源が投入されると、ＣＰＵ１１ｄによって、inquiryデータ収集プログラム１１ｊが自動的に起動されるようになっている。また、
このinquiryデータ収集プログラム１１ｊが起動されると、inquiryデータ収集処理がＣＰＵ１１ｄによって開始されるようになっている。
【０１０３】
図１６は、inquiryデータ収集処理の流れを示す図である。
【０１０４】
inquiryデータ収集処理の開始後、最初のステップＳ６０１では、ＣＰＵ１１ｄは、新
規のワークテーブルを、ＲＡＭユニット１１ｅに生成する。なお、ここで生成されるワークテーブルは、inquiryデータ管理テーブル１１ｈと同じフィールド構成を、有している
。
【０１０５】
次のステップＳ６０２では、ＣＰＵ１１ｄは、ＲＯＭユニット１１ｃから、ターゲット情報管理テーブル１１ｆを読み込む。なお、ここまでの処理は、第１の実施形態と同じである。
【０１０６】
次のステップＳ６０３では、ＣＰＵ１１ｄは、ステップＳ６０２で読み込んだターゲット情報管理テーブル１１ｆの全てのレコードに係る全てのターゲットに対し、inquiryデ
ータ要求コマンドをブロードキャストする処理を行う。なお、このブロードキャスト処理に係るコマンドは、周知のＳＣＳＩコマンドとは別に、新たに用意されるコマンドである。従って、このコマンドを受けるＳＣＳＩデバイス１２にも、このコマンドを処理して回答するための機能が、追加されている。ＣＰＵ１１ｄは、inquiryデータ要求コマンドを
ブロードキャストすると、ステップＳ６０４へ処理を進める。
【０１０７】
ステップＳ６０４では、ＣＰＵ１１ｄは、何れかのＳＣＳＩデバイス１２からinquiry
データ１２ｄを受信したか否かを、判別する。そして、何れかのＳＣＳＩデバイス１２からinquiryデータ１２ｄを受信していなかった場合、ＣＰＵ１１ｄは、ステップＳ６０４
からステップＳ６０８へ処理を分岐させる。一方、何れかのＳＣＳＩデバイス１２からinquiryデータ１２ｄを受信した場合、ＣＰＵ１１ｄは、ステップＳ６０５へ処理を進める
。
【０１０８】
ステップＳ６０５では、ＣＰＵ１１ｄは、ステップＳ６０４で受信したinquiryデータ
１２ｄの送信元へ、正常受領の通知（ＡＣＫ［Acknowledgment］の送信）を行う。
【０１０９】
次のステップＳ６０６では、ＣＰＵ１１ｄは、ステップＳ６０４で受信したinquiryデ
ータ１２ｄを、ＲＡＭユニット１１ｅ内のワークテーブルに記録する処理を行う。
【０１１０】
次のステップＳ６０７では、ＣＰＵ１１ｄは、ステップＳ６０２で読み込んだターゲット情報管理テーブル１１ｆの全てのレコードに係る全てのターゲットについて、inquiry
データ１２ｄを記録する処理を完了したか否かを、判別する。そして、全てのターゲットについて、inquiryデータ１２ｄを記録する処理が完了していた場合、ＣＰＵ１１ｄは、
ステップＳ６０９へ処理を進める。一方、全てのターゲットについて、inquiryデータ１
２ｄを記録する処理を完了していなかった場合、ＣＰＵ１１ｄは、ステップＳ６０７からステップＳ６０８へ処理を分岐させる。
【０１１１】
ステップＳ６０８では、ＣＰＵ１１ｄは、ステップＳ６０３でinquiryデータ要求コマ
ンドをブロードキャストしてから、所定時間が経過したか否かを、判別する。そして、inquiryデータ要求コマンドをブロードキャストしてから、所定時間が経過していなかった
場合、ＣＰＵ１１ｄは、ステップＳ６０８から処理を分岐させ、ステップＳ６０４へ処理を戻す。一方、ステップＳ６０３でinquiryデータ要求コマンドをブロードキャストして
から、所定時間が経過した場合、ＣＰＵ１１ｄは、ステップＳ６０９へ処理を進める。
【０１１２】
ステップＳ６０９では、ＣＰＵ１１ｄは、ステップＳ６０２で読み込んだターゲット情報管理テーブル１１ｆの全てのレコードに係る全てのターゲットに対し、終了通知をブロードキャストする処理を行う。なお、このブロードキャスト処理に係る通知も、周知のＳＣＳＩ規格にはない新たな処理となっている。
【０１１３】
次のステップＳ６１０では、ＣＰＵ１１ｄは、ＲＡＭユニット１１ｅ内のワークテーブルを複製して、inquiryデータ管理テーブル１１ｈとしてＲＡＭユニット１１ｅに記録す
る。記録後、ＣＰＵ１１ｄは、図１６に係るinquiryデータ収集処理を終了する。
【０１１４】
＜ＳＣＳＩデバイス側＞
一方、ＳＣＳＩデバイス１２では、イニシエータであるＳＣＳＩアダプタユニット１１からinquiryデータ要求コマンドが送られてくると、それを契機として、inquiryデータ通知プログラム１２ｆが、ディスクコントローラ１２ｃによって起動され、inquiryデータ
通知処理が開始されるようになっている。
【０１１５】
図１７は、inquiryデータ通知処理の流れを示す図である。
【０１１６】
inquiryデータ通知処理の開始後、最初のステップＳ７０１では、ディスクコントロー
ラ１２ｃ（内のＣＰＵ）は、inquiryデータ要求コマンドの送信元へ、inquiryデータ１２ｄを送信する処理を行う。
【０１１７】
次のステップＳ７０２では、ディスクコントローラ１２ｃは、イニシエータであるＳＣＳＩアダプタユニット１１から正常受領通知があったか否かを、判別する。そして、イニシエータであるＳＣＳＩアダプタユニット１１から正常受領通知があった場合には、ディスクコントローラ１２ｃは、図１７に係るinquiryデータ通知処理を終了する。一方、イ
ニシエータであるＳＣＳＩアダプタユニット１１から正常受領通知がなかった場合には、ディスクコントローラ１２ｃは、ステップＳ７０２からステップＳ７０３へ処理を分岐させる。
【０１１８】
ステップＳ７０３では、ディスクコントローラ１２ｃは、イニシエータであるＳＣＳＩアダプタユニット１１から終了通知があったか否かを、判別する。そして、イニシエータであるＳＣＳＩアダプタユニット１１から終了通知があった場合には、ディスクコントローラ１２ｃは、ステップＳ７０３から処理を分岐させ、図１７に係るinquiryデータ通知
処理を終了する。一方、イニシエータであるＳＣＳＩアダプタユニット１１から終了通知がなかった場合には、ディスクコントローラ１２ｃは、ステップＳ７０４へ処理を進める。
【０１１９】
ステップＳ７０４では、ディスクコントローラ１２ｃは、図１７に係るinquiryデータ
通知処理を開始してから所定時間が経過したか否かを、判別する。そして、図１７に係るinquiryデータ通知処理を開始してから所定時間が経過していた場合には、ディスクコン
トローラ１２ｃは、ステップＳ７０４から処理を分岐させ、図１７に係るinquiryデータ
通知処理を終了する。一方、図１７に係るinquiryデータ通知処理を開始してから所定時
間が経過していなかった場合には、ディスクコントローラ１２ｃは、ステップＳ７０５へ処理を進める。
【０１２０】
ステップＳ７０５では、ディスクコントローラ１２ｃは、一定時間待機する処理を行う。その後、ディスクコントローラ１２ｃは、ステップＳ７０１へ処理を戻し、再度、inquiryデータ１２ｄを送信する処理を行う。
【０１２１】
＜＜効果＞＞
図１６に係るinquiryデータ収集処理と図１７に係るinquiryデータ通知処理とによれば、ＳＣＳＩアダプタユニット１１は、ブートメモリユニット１０ｂ内のＢＩＯＳソフトウエア１０ｅ、又は、ＯＳソフトウエア１０ｇ内のファイルシステムソフトウエア１０ｈから要求がなくとも、起動後直ちに、inquiryデータ１２ｄを収集することができるだけで
なく、自己に接続されている全てのＳＣＳＩデバイス１２から一斉に、inquiryデータ１
２ｄを収集することができる。
【実施形態５】
【０１２２】
第５の実施形態は、コンピュータとＳＣＳＩデバイスとが、ＳＣＳＩバスではなく、Ｆ
Ｃスイッチを介して接続されている点で、第４の実施形態と相違する。つまり、第５の実施形態は、第２の実施形態と同じハードウエア構成を有するコンピュータシステム（図１０）において、inquiryデータ収集に関し、ＦＣアダプタユニット２１とＲＡＩＤ装置２
３内のＳＣＳＩデバイス２３ｃとの間の通信に独自のシーケンスを追加したものとなっている。
【０１２３】
＜＜構成＞＞
図１８は、第５の実施形態におけるＦＣアダプタユニット２１の構成図である。
【０１２４】
図１８と図１１とから明かなように、第５の実施形態のＦＣアダプタユニット２１は、第２の実施形態のそれと同じハードウエア構成を、有している。また、第５の実施形態のＦＣアダプタユニット２１は、第２の実施形態と同様に、ＲＯＭユニット２１ｃに、ターゲット情報管理テーブル２１ｆ、inquiryデータ収集プログラム２１ｊ、応答プログラム
２１ｉを記憶している。但し、第５の実施形態のinquiryデータ収集プログラム２１ｊに
よる処理内容は、第４の実施形態のinquiryデータ収集プログラム１１ｇによる処理内容
（図１６）と同じである。
【０１２５】
なお、第５の実施形態におけるＳＣＳＩデバイス２３ｃは、図１５に示したＳＣＳＩデバイス１２と同じハードウエア構成及びソフトウエア構成を、有している。従って、ＳＣＳＩデバイス２３ｃでは、第４の実施形態のinquiryデータ通知プログラム１２ｆによる
処理内容（図１７）と同じ処理が、実行される。
【０１２６】
＜＜効果＞＞
第５の実施形態は、以上のように構成されているため、図１６と同様のinquiryデータ
収集処理、及び、図１７と同様のinquiryデータ通知処理により、ＦＣアダプタユニット
２１は、ブートメモリユニット２０ｂ内のＢＩＯＳソフトウエア２０ｅ、又は、ＯＳソフトウエア２０ｇ内のファイルシステムソフトウエア２０ｈから要求がなくとも、起動後直ちに、inquiryデータを収集することができるだけでなく、自己に接続されている全ての
ＳＣＳＩデバイス２３ｃから一斉に、inquiryデータを収集することができる。
【実施形態６】
【０１２７】
第６の実施形態は、コンピュータとＲＡＩＤ装置とがＳＡＳを介して接続されている点で、第４の実施形態と相違する。つまり、第６の実施形態は、第３の実施形態と同じハードウエア構成を有するコンピュータシステム（図１２）において、inquiryデータ収集に
関し、ＳＡＳアダプタユニット３１とＲＡＩＤ装置３２内のＳＡＳデバイス３２ｃとの間の通信に独自のシーケンスを追加したものとなっている。
【０１２８】
＜＜構成＞＞
図１９は、第６の実施形態におけるＳＡＳアダプタユニット３１の構成図である。
【０１２９】
図１９と図１３とから明かなように、第６の実施形態のＳＡＳアダプタユニット３１は、第３の実施形態のそれと同じハードウエア構成を、有している。また、第６の実施形態のＳＡＳアダプタユニット３１は、第３の実施形態と同様に、ＲＯＭユニット３１ｃに、ターゲット情報管理テーブル３１ｆ、inquiryデータ収集プログラム３１ｊ、応答プログ
ラム３１ｉを記憶している。但し、第６の実施形態のinquiryデータ収集プログラム３１
ｊによる処理内容は、第４の実施形態のinquiryデータ収集プログラム１１ｇによる処理
内容（図１６）と同じである。
【０１３０】
なお、第６の実施形態におけるＳＡＳデバイス３２ｃは、図２に示したものと同様に、Ｉ／Ｆユニット、ディスクユニット、及び、ディスクコントローラを、備えており、ディ
スクコントローラには、ＲＯＭ、ＣＰＵ、ＲＡＭが含まれ、ＲＯＭには、ＳＡＳ規格に従った通信を行うためのソフトウエアと、inquiryデータとが、記録されている。なお、Ｓ
ＡＳ規格に従った通信を行うためのソフトウエアには、ＳＣＳＩコマンドを解釈して実行するためのソフトウエアが、含まれているとともに、第４の実施形態のinquiryデータ通
知プログラム１２ｆによる処理内容（図１７）と同じ処理を実行するためのinquiryデー
タ通知プログラムが、含まれている。
【０１３１】
＜＜効果＞＞
第６の実施形態は、以上のように構成されているため、図１６と同様のinquiryデータ
収集処理、及び、図１７と同様のinquiryデータ通知処理により、ＳＡＳアダプタユニッ
ト３１は、ブートメモリユニット３０ｂ内のＢＩＯＳソフトウエア３０ｅ、又は、ＯＳソフトウエア３０ｇ内のファイルシステムソフトウエア３０ｈから要求がなくとも、起動後直ちに、inquiryデータを収集することができるだけでなく、自己に接続されている全て
のＳＡＳデバイス３２ｃから一斉に、inquiryデータを収集することができる。
【実施形態７】
【０１３２】
第７の実施形態は、第１の実施形態と同じようなコンピュータとＳＣＳＩデバイスとを備えるコンピュータシステムにおいて、イニシエータからのinquiryコマンドに対してinquiryデータを回答しなかったＳＣＳＩデバイスがあった場合に、そのＳＣＳＩデバイスの所在をシステム管理者に通知するというものである。
【０１３３】
＜＜構成＞＞
図２０は、第７の実施形態のコンピュータシステムの構成図である。
【０１３４】
図２０に示すように、第７の実施形態のコンピュータシステムは、コンピュータ４０と、エンクロージャ４２とを、含んでいる。
【０１３５】
このうち、コンピュータ４０は、第１の実施形態と同様に、ストレージユニット４０ａ、ブートメモリユニット４０ｂ、ＣＰＵ４０ｃ、メインメモリユニット４０ｄ、及び、ＳＣＳＩアダプタユニット４１を、備えている。また、このコンピュータ４０は、第１の実施形態と同様に、ストレージユニット４０ａに、アプリケーション４０ｆと、ＯＳソフトウエア４０ｇ（ファイルシステムソフトウエア４０ｈを含む）と、ＳＣＳＩドライバ４０ｉとを、記憶している。
【０１３６】
一方、エンクロージャ４２は、ＳＥＳ［SCSI Enclosure Services］４２ａ、ＳＣＳＩ
デバイス４２ｂ、及び、ＬＥＤ［Light Emitting Diode］インジケータ４２ｃとを、内蔵している。ＳＥＳ４２ａは、エンクロージャの環境のモニタリングやＬＥＤインジケータ４２ｃの制御を行うためのＳＣＳＩデバイスである。ＳＣＳＩデバイス４２ｂは、データを入出力するための機能と、ＳＣＳＩ規格に従った通信を行うための接続インターフェースとを備えたデバイスである。このＳＣＳＩデバイス４２ｂは、ＳＣＳＩ通信を行うためのソフトウエアを記憶しているため、inquiryコマンドが送られてきた場合には、inquiryデータを回答するようになっている。ＬＥＤインジケータ４２ｃは、エンクロージャ４２内においてＳＣＳＩデバイス４２ｂの状態を表示するためのインジケータであり、複数のＳＣＳＩデバイス４２ｂに対して１つずつ割り当てられている。なお、エンクロージャ４２内においては、ＳＥＳ４２ａと複数のＳＣＳＩデバイス４２ｂは、ＳＣＳＩバスケーブルを介して接続されている。また、ＳＥＳ４２ａは、ＳＣＳＩバスケーブルを介してコンピュータ４０内のＳＣＳＩアダプタユニット１１に接続されている。
【０１３７】
図２１は、ＳＣＳＩアダプタユニット４１の構成図である。
【０１３８】
図２１に示すように、ＳＣＳＩアダプタユニット４１は、第１の実施形態と同様に、Ｉ／Ｆユニット４１ａ、４１ｂ、ＲＯＭユニット４１ｃ、ＣＰＵ４１ｄ、及び、ＲＡＭユニット４１ｅを、備えている。また、ＳＣＳＩアダプタユニット４１は、ＲＯＭユニット１１ｃに、ＳＣＳＩ規格に従った通信を行うためのソフトウエアを記憶している。このソフトウエアは、第７の実施形態では、イニシエータとして設定されている。さらに、このソフトウエアには、ターゲット情報管理テーブル４１ｆ、inquiryデータ収集プログラム４
１ｇ、及び、応答プログラム４１ｉが、追加されている。なお、ターゲット情報管理テーブル４１ｆと、応答プログラム４１ｉは、第１の実施形態のターゲット情報管理テーブル１１ｆ（図５）と、応答プログラム１１ｉ（図８）と同等の機能を発揮するものである。一方、inquiryデータ収集プログラム４１ｇによる処理内容は、第１の実施形態のinquiryデータ収集プログラム１１ｇによる処理内容とは、若干相違している。但し、inquiryデ
ータ収集プログラムによってＲＡＭユニット４１ｅにinquiryデータ管理テーブル４１ｈ
が生成されることについては、第７の実施形態と第１の実施形態とで、変わりはない。
【０１３９】
＜＜処理＞＞
ＳＣＳＩアダプタユニット４１では、その電源が投入されると、ＣＰＵ４１ｄによって、inquiryデータ収集プログラム４１ｇが自動的に起動されるようになっている。また、
このinquiryデータ収集プログラム４１ｇが起動されると、inquiryデータ収集処理がＣＰＵ４１ｄによって開始されるようになっている。
【０１４０】
図２２は、inquiryデータ収集処理の流れを示す図である。
【０１４１】
inquiryデータ収集処理の開始後、最初のステップＳ８０１では、ＣＰＵ４１ｄは、新
規のワークテーブルを、ＲＡＭユニット４１ｅに生成する。なお、ここで生成されるワークテーブルは、inquiryデータ管理テーブル４１ｈと同じフィールド構成を、有している
。
【０１４２】
次のステップＳ８０２では、ＣＰＵ１１ｄは、ＲＯＭユニット４１ｃから、ターゲット情報管理テーブル４１ｆを読み込む。その後、ＣＰＵ４１ｄは、第２の処理ループＬ２を実行する。
【０１４３】
第２の処理ループＬ２では、ＣＰＵ４１ｄは、ステップＳ８０２で読み込んだターゲ
ット情報管理テーブル４１ｆの全てのレコードのそれぞれを１つずつ順に特定するとともに、特定したレコードについてステップＳ８０３乃至Ｓ８０８の処理を実行する。
【０１４４】
ステップＳ８０３では、ＣＰＵ４１ｄは、処理対象レコードに含まれるターゲットＩＤ及びＬＵＮを含むinquiryコマンド（図７参照）を、送信する。
【０１４５】
次のステップＳ８０４では、ＣＰＵ４１ｄは、ステップＳ８０３で送信したinquiryコ
マンドに対する回答を受信したか否かを、判別する。そして、ステップＳ８０３で送信したinquiryコマンドに対する回答を受信していなかった場合には、ＣＰＵ４１ｄは、ステ
ップＳ８０４からステップＳ８０５へ処理を分岐させる。
【０１４６】
ステップＳ８０５では、ＣＰＵ４１ｄは、ステップＳ８０３でinquiryコマンドを送信
してから所定時間が経過したか否かを、判別する。そして、ステップＳ８０３でinquiry
コマンドを送信してから所定時間が経過していなかった場合には、ＣＰＵ４１ｄは、ステップＳ８０５から処理を分岐させ、ステップＳ８０４へ処理を戻す。
【０１４７】
ステップＳ８０４及びＳ８０５を繰り返し実行している最中に、ステップＳ８０３でinquiryコマンドを送信してから所定時間が経過した場合には、ＣＰＵ４１ｄは、ステップ
Ｓ８０５から処理を進め、第２の処理ループＬ２におけるこの処理対象レコードの回を終了する。
【０１４８】
また、ステップＳ８０４及びＳ８０５を繰り返し実行している最中に、所定時間が経過する前に、ステップＳ８０３で送信したinquiryコマンドに対する回答を受信した場合、
ＣＰＵ４１ｄは、ステップＳ８０４からステップＳ８０６へ処理を進める。
【０１４９】
ステップＳ８０６では、ＣＰＵ４１ｄは、ステップＳ８０４で受信した回答がinquiry
データを含む正常な回答であるか否かを、判別する。そして、ステップＳ８０４で受信した回答がinquiryデータを含む正常な回答であった場合、ＣＰＵ４１ｄは、ステップＳ８
０７へ処理を進める。
【０１５０】
ステップＳ８０７では、ＣＰＵ４１ｄは、ステップＳ８０４で受信したinquiryデータ
を、ＲＡＭユニット４１ｅ内のワークテーブルに記録する処理を行う。その後、ＣＰＵ４１ｄは、第２の処理ループＬ２におけるこの処理対象レコードの回を終了する。
【０１５１】
一方、ステップＳ８０６において、ステップＳ８０４で受信した回答がinquiryデータ
を含む正常な回答ではなかった場合、ＣＰＵ４１ｄは、ステップＳ８０６からステップＳ８０８へ処理を分岐させる。
【０１５２】
ステップＳ８０８では、ＣＰＵ４１ｄは、ＳＥＳ４２ａに対し、処理対象レコードに含まれるターゲットＩＤにて特定されるＳＣＳＩデバイス４２ｂに対応付けられているＬＥＤインジケータ４２ｃの点灯を指示する。なお、図２３は、ＳＥＳコマンドのフォーマット図であるが、ＳＥＳコマンドは、周知のものであるので、その説明は省略する。図２３のＳＥＳコマンドにおける「rqst ident」フィールドの値を１にすると、ＬＥＤインジケータ４２ｃの点灯が指示され、当該フィールドの値を０にすると、ＬＥＤインジケータ４２ｃの消灯が指示される。ＣＰＵ４１ｄは、ＬＥＤインジケータ４２ｃの点灯を指示した後、第２の処理ループＬ２におけるこの処理対象レコードの回を終了する。
【０１５３】
ＣＰＵ４１ｄは、ステップＳ８０２で読み込んだターゲット情報管理テーブル４１ｆの全てのレコードについてステップＳ８０３乃至Ｓ８０８の処理を実行し終えると、第２の処理ループＬ２から離脱し、ステップＳ８０９へ処理を進める。
【０１５４】
ステップＳ８０９では、ＣＰＵ４１ｄは、ＲＡＭユニット４１ｅ内のワークテーブルを複製して、inquiryデータ管理テーブル４１ｈとしてＲＡＭユニット４１ｅに記録する。
記録後、ＣＰＵ４１ｄは、図２２に係るinquiryデータ収集処理を終了する。
【０１５５】
＜＜効果＞＞
第７の実施形態は、以上に説明したように構成されているため、ＳＣＳＩアダプタユニット４１は、このinquiryデータ収集処理により、ブートメモリユニット１０ｂ内のＢＩ
ＯＳソフトウエア１０ｅ、又は、ＯＳソフトウエア１０ｇ内のファイルシステムソフトウエア１０ｈから要求がなくとも、起動後直ちに、inquiry処理を行うこととなり、また、
自己に接続されているＳＣＳＩデバイス１２からinquiryデータ１２ｄを収集することと
なる。
【０１５６】
而も、第７の実施形態では、そのinquiryデータ収集処理において、inquiryデータを含む正常な回答を返してこなかったＳＣＳＩデバイス４２ｂについては、対応するＬＥＤインジケータ４２ｃが点灯されるようになっている。このため、システム管理者は、コンピュータの起動時に、故障しているＳＣＳＩデバイス４２ｂを直ちに認知することができる。
【実施形態８】
【０１５７】
第８の実施形態は、第４の実施形態のコンピュータシステムに、第７の実施形態におけるＬＥＤインジケータの点灯機能を組み合わせたものである。
【０１５８】
図２４は、第８の実施形態のinquiryデータ収集処理の流れを示す図である。
【０１５９】
図２４と図１６とを比較して明かなように、第８の実施形態では、inquiryデータ管理
テーブル１１ｈが生成された後（ステップＳ６１０）、inquiryデータを含む正常な回答
を返してこなかったＳＣＳＩデバイス１２について、対応するＬＥＤインジケータを点灯するようＳＥＳに指示がなされる（ステップＳ６１１）。
【０１６０】
従って、第８の実施形態によっても、システム管理者は、コンピュータの起動時に、故障しているＳＣＳＩデバイスを直ちに認知することができる。
【０１６１】
＜ユニットに関する説明＞
以上に説明した第１乃至第８の実施形態において、コンピュータ１０〜４０の各ユニット１０ａ〜１０ｄ、１１、２０ａ〜２０ｄ、２１、３０ａ〜３０ｄ、３１、４０ａ〜４０ｄ、４１、ホストバスアダプタ内の各ユニット１１ａ〜１１ｅ、２１ａ〜２１ｅ、３１ａ〜３１ｅ、４１ａ〜４１ｅ、ＳＣＳＩデバイス１２内の各ユニット１２ａ〜１２ｃは、何れも、ソフトウエア要素とハードウエア要素とから構成されていても良いし、ハードウエア要素のみで構成されていても良い。
【０１６２】
ソフトウエア要素としては、インターフェースプログラム、ドライバプログラム、テーブル、及び、データ、並びに、これらのうちの幾つかを組み合わせたものが、例示できる。これらは、後述のコンピュータ可読媒体に格納されたものであっても良いし、ＲＯＭ［Read Only Memory］及びＬＳＩ［Large Scale Integration］などの記憶装置に固定的に
組み込まれたファームウエアであっても良い。
【０１６３】
また、ハードウエア要素としては、ＦＰＧＡ［Field Programmable Gate Array］、Ａ
ＳＩＣ［Application Specific Integrated Circuit］、ゲートアレイ、論理ゲートの組
み合わせ、信号処理回路、アナログ回路、及び、その他の回路が、例示できる。このうち、論理ゲートには、ＡＮＤ、ＯＲ、ＮＯＴ、ＮＡＮＤ、ＮＯＲ、フリップフロップ、カウンタ回路などが、含まれていてもよい。また、信号処理回路には、信号値の加算、乗算、除算、反転、積和演算、微分、積分などを実行する回路要素が、含まれていてもよい。また、アナログ回路には、増幅、加算、乗算、微分、積分などを実行する回路要素が、含まれていてもよい。
【０１６４】
なお、前述したコンピュータ１０〜４０の各ユニット１０ａ〜１０ｄ、１１、２０ａ〜２０ｄ、２１、３０ａ〜３０ｄ、３１、４０ａ〜４０ｄ、４１、ホストバスアダプタ内の各ユニット１１ａ〜１１ｅ、２１ａ〜２１ｅ、３１ａ〜３１ｅ、４１ａ〜４１ｅ、ＳＣＳＩデバイス１２内の各ユニット１２ａ〜１２ｃをそれぞれ構成する要素は、以上に例示したものに限定されず、これらと等価な他の要素であっても良い。
【０１６５】
＜ソフトウエア及びプログラムに関する説明＞
以上に説明した第１乃至第８の実施形態において、コンピュータ１０〜４０内のソフトウエア１０ｅ〜１０ｉ、２０ｅ〜２０ｊ、３０ｅ〜３０ｊ、４０ｅ〜４０ｉ、ＳＣＳＩデバイス１２内の各プログラム１２ｅ、１２ｆ及びinquiryデータ１２ｄ、ホストバスアダ
プタ内の各プログラム１１ｇ、１１ｉ、１１ｊ、１１ｋ、２１ｇ、２１ｉ、２１ｊ、３１ｇ、３１ｉ、３１ｊ、４１ｇ、４１ｉ及び各テーブル１１ｆ、１１ｈ、２１ｆ、２１ｈ、
３１ｆ、３１ｈ、４１ｆ、４１ｈ、並びに、前述したソフトウエア要素は、何れも、ソフトウェア部品、手続き型言語による部品、オブジェクト指向ソフトウェア部品、クラス部品、タスクとして管理される部品、プロセスとして管理される部品、関数、属性、プロシジャ（手続き）、サブルーチン（ソフトウェアルーチン）、プログラムコードの断片又は部分、ドライバ、ファームウェア、マイクロコード、コード、コードセグメント、エクストラセグメント、スタックセグメント、プログラム領域、データ領域、データ、データベース、データ構造、フィールド、レコード、テーブル、マトリックステーブル、配列、変数、パラメータなどの要素を、含んでいても良い。
【０１６６】
また、コンピュータ１０〜４０内のソフトウエア１０ｅ〜１０ｉ、２０ｅ〜２０ｊ、３０ｅ〜３０ｊ、４０ｅ〜４０ｉ、ＳＣＳＩデバイス１２内の各プログラム１２ｅ、１２ｆ及びinquiryデータ１２ｄ、ホストバスアダプタ内の各プログラム１１ｇ、１１ｉ、１１
ｊ、１１ｋ、２１ｇ、２１ｉ、２１ｊ、３１ｇ、３１ｉ、３１ｊ、４１ｇ、４１ｉ及び各テーブル１１ｆ、１１ｈ、２１ｆ、２１ｈ、３１ｆ、３１ｈ、４１ｆ、４１ｈ、並びに、前述したソフトウエア要素は、何れも、Ｃ言語、Ｃ＋＋、Ｊａｖａ（米国サンマイクロシステムズ社商標）、ビジュアルベーシック（米国マイクロソフト社商標）、Ｐｅｒｌ、Ｒｕｂｙ、その他の多くのプログラミング言語により記述されたものであっても良い。
【０１６７】
また、コンピュータ１０〜４０内のソフトウエア１０ｅ〜１０ｉ、２０ｅ〜２０ｊ、３０ｅ〜３０ｊ、４０ｅ〜４０ｉ、ＳＣＳＩデバイス１２内の各プログラム１２ｅ、１２ｆ及びinquiryデータ１２ｄ、ホストバスアダプタ内の各プログラム１１ｇ、１１ｉ、１１
ｊ、１１ｋ、２１ｇ、２１ｉ、２１ｊ、３１ｇ、３１ｉ、３１ｊ、４１ｇ、４１ｉ及び各テーブル１１ｆ、１１ｈ、２１ｆ、２１ｈ、３１ｆ、３１ｈ、４１ｆ、４１ｈ、並びに、前述したソフトウエア要素に含まれる命令、コード及びデータは、有線ネットワークカード及び有線ネットワークを通じて、又は、無線カード及び無線ネットワークを通じて、コンピュータ、又は、機械若しくは装置に組み込まれたコンピュータに、送信又はローディングされても良い。
【０１６８】
前述した送信又はローディングにおいて、データ信号は、例えば搬送波に組み込まれることにより、有線ネットワーク又は無線ネットワーク上を移動する。但し、データ信号は、前述した搬送波に依らず、いわゆるベースバンド信号のまま転送されても良い。このような搬送波は、電気的、磁気的又は電磁的な形態、光、音響、又は、その他の形態で、送信される。
【０１６９】
ここで、有線ネットワーク又は無線ネットワークは、例えば、電話回線、ネットワーク回線、ケーブル（光ケーブル、金属ケーブルを含む）、無線リンク、携帯電話アクセス回線、ＰＨＳ［Personal Handyphone System］網、無線ＬＡＮ［Local Area Network］、Bluetooth（ブルートゥース特別利益団体の商標）、車両搭載型無線通信（ＤＳＲＣ［Dedicated Short Range Communication］を含む）、及び、これらのうちの何れかからなるネットワークである。そして、このデータ信号は、命令、コード及びデータを含む情報を、ネットワーク上のノード又は要素に、伝達する。
【０１７０】
なお、コンピュータ１０〜４０内のソフトウエア１０ｅ〜１０ｉ、２０ｅ〜２０ｊ、３０ｅ〜３０ｊ、４０ｅ〜４０ｉ、ＳＣＳＩデバイス１２内の各プログラム１２ｅ、１２ｆ及びinquiryデータ１２ｄ、ホストバスアダプタ内の各プログラム１１ｇ、１１ｉ、１１
ｊ、１１ｋ、２１ｇ、２１ｉ、２１ｊ、３１ｇ、３１ｉ、３１ｊ、４１ｇ、４１ｉ及び各テーブル１１ｆ、１１ｈ、２１ｆ、２１ｈ、３１ｆ、３１ｈ、４１ｆ、４１ｈ、並びに、前述したソフトウエア要素を構成する要素は、以上に例示したものに限定されず、これらと等価な他の要素であっても良い。
【０１７１】
＜コンピュータ可読媒体に関する説明＞
以上に説明した第１乃至第８の実施形態における何れかの機能は、コード化されてコンピュータ可読媒体の記憶領域に格納されていても良い。この場合、その機能を実現するためのプログラムが、このコンピュータ可読媒体を介して、コンピュータ、又は、機械若しくは装置に組み込まれたコンピュータに、提供され得る。コンピュータ、又は、機械若しくは装置に組み込まれたコンピュータは、コンピュータ可読媒体の記憶領域からプログラムを読み出してそのプログラムを実行することによって、その機能を実現することができる。
【０１７２】
ここで、コンピュータ可読媒体とは、電気的、磁気的、光学的、化学的、物理的又は機械的な作用によって、プログラム及びデータ等の情報を蓄積するとともに、コンピュータに読み取られ得る状態でその情報を保持する記録媒体をいう。
【０１７３】
電気的又は磁気的な作用としては、ヒューズによって構成されるＲＯＭ［Read Only Memory］上の素子へのデータの書き込みが、例示できる。磁気的又は物理的な作用としては、紙媒体上の潜像へのトナーの現像が、例示できる。なお、紙媒体に記録された情報は、例えば、光学的に読み取ることができる。光学的且つ化学的な作用としては、基盤上での薄膜形成又は凹凸形成が、例示できる。なお、凹凸の形態で記録された情報は、例えば、光学的に読み取ることができる。化学的な作用としては、基板上での酸化還元反応、又は、半導体基板上での酸化膜形成、窒化膜形成、若しくは、フォトレジスト現像が、例示できる。物理的又は機械的な作用としては、エンボスカードへの凹凸形成、又は、紙媒体へのパンチの穿孔が、例示できる。
【０１７４】
また、コンピュータ可読媒体の中には、コンピュータ、又は、機械若しくは装置に組み込まれたコンピュータに着脱自在に装着できるものがある。着脱自在なコンピュータ可読媒体としては、ＤＶＤ（ＤＶＤ−Ｒ、ＤＶＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭを含む）、＋Ｒ／＋ＷＲ、ＢＤ（ＢＤ−Ｒ、ＢＤ−ＲＥ、ＢＤ−ＲＯＭを含む）、ＣＤ［Compact Disk］（ＣＤ−Ｒ、ＣＤ−ＲＷ、ＣＤ−ＲＯＭを含む）、ＭＯ［Magneto Optical
］ディスク、その他の光ディスク媒体、フレキシブルディスク（フロッピーディスク（フロッピーは日立製作所社商標）を含む）、その他の磁気ディスク媒体、メモリーカード（コンパクトフラッシュ（米国サンディスク社商標）、スマートメディア（東芝社商標）、ＳＤカード（米国サンディスク社、松下電器産業社、東芝社商標）、メモリースティック（ソニー社商標）、ＭＭＣ（米国ジーメンス社、米国サンディスク社商標）など）、磁気テープ、及び、その他のテープ媒体、並びに、これらのうちの何れかを内蔵した記憶装置が、例示できる。記憶装置には、ＤＲＡＭ［Dynamic Random Access Memory］又はＳＲＡＭ［Static Random Access Memory］がさらに内蔵されたものもある。
【０１７５】
また、コンピュータ可読媒体の中には、コンピュータ、又は、機械若しくは装置に組み込まれたコンピュータに固定的に装着されたものがある。この種のコンピュータ可読媒体としては、ハードディスク、ＤＲＡＭ、ＳＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ［Electronically Erasable and Programmable Read Only Memory］、フラッシュメモリなどが、例示で
きる。
【０１７６】
前述した本実施形態に関し、更に、以下の付記を開示する。
【０１７７】
（付記１）
ソフトウェアが動作する情報処理装置と、
前記情報処理装置に接続され、第１の記憶部を有するとともに前記情報処理装置の機能を拡張する第１の機能拡張装置と、
前記第１の機能拡張装置に接続された第１の複数の入出力装置と、
前記第１の機能拡張装置上で動作し、前記第１の複数の入出力装置それぞれに対して第１の問合せを発行するとともに、前記第１の問合せに対して前記第１の複数の入出力装置それぞれから得られた第１の回答を前記第１の記憶部に保持させる第１のファームウェアと、
前記情報処理装置に接続され、第２の記憶部を有するとともに前記情報処理装置の機能
を拡張する第２の機能拡張装置と、
前記第２の機能拡張装置に接続された第２の複数の入出力装置と、
前記第２の機能拡張装置上で動作し、前記第２の複数の入出力装置それぞれに対して第２の問合せを前記第１の問合せとは独立して発行するとともに、前記第２の問合せに対して前記第２の複数の入出力装置それぞれから得られた第２の回答を前記第２の記憶部に保持させる第２のファームウェアを有することを特徴とする情報処理システム。
【０１７８】
（付記２）
前記第１のファームウェアは、
前記第１の複数の入出力装置それぞれに対する前記第１の問合せのうち、前記第１の複数の入出力装置に含まれるいずれか一の入出力装置に対する問合せを発行するとともに、前記一の入出力装置からの回答を得られた後に、前記第１の複数の入出力装置に含まれる他の入出力装置に対して問合せを発行することを特徴とする付記１記載の情報処理システム。
【０１７９】
（付記３）
前記第１のファームウェアは、
前記一の入出力装置からの回答を得られない場合、一定時間経過後に前記第１の複数の入出力装置に含まれる他の入出力装置に対して問合せを発行することを特徴とする付記２記載の情報処理システム。
【０１８０】
（付記４）
前記第１のファームウェアは、
前記第１の複数の入出力装置それぞれに対する前記第１の問合せを、前記第１の複数の入出力装置に対して同時に発行することを特徴とする付記１記載の情報処理システム。
【０１８１】
（付記５）
前記第１のファームウェアは、
前記ソフトウェアからの問合せに対し、前記第１のファームウェアが前記第１の記憶部に保持させる前記第１の回答を前記ソフトウェアに対して通知することを特徴とする付記１乃至４のいずれか一に記載の情報処理システム。
【０１８２】
（付記６）
情報処理装置と、前記情報処理装置に接続された第１の複数の入出力装置と、前記情報処置装置に前記第１の複数の入出力装置を接続することにより前記情報処理装置の機能を拡張し、前記第１の複数の入出力装置それぞれに対して第１の問合せを発行するとともに、前記第１の問合せに対して前記第１の複数の入出力装置それぞれから得られた第１の回答を自身が有する第１の記憶部に保持させる第１のファームウェアが動作する一の機能拡張装置と、前記情報処理装置に接続された第２の複数の入出力装置と、
を有する情報処理システムに含まれ、前記情報処理装置と前記第２の複数の入出力装置を接続することにより前記情報処理装置の機能を拡張する他の機能拡張装置において、
前記他の機能拡張装置は、
前記他の機能拡張装置上で動作し、前記第２の複数の入出力装置それぞれに対して第２の問合せを前記第１の問合せとは独立して発行するとともに、前記第２の問合せに対して前記第２の複数の入出力装置それぞれから得られた第２の回答を自身が有する第２の記憶部に保持させる第２のファームウェアを有することを特徴とする機能拡張装置。
【０１８３】
（付記７）
ソフトウェアが動作する情報処理装置と、前記情報処理装置に接続され、第１の記憶部を有するとともに前記情報処理装置の機能を拡張する第１の機能拡張装置と、前記第１の機能拡張装置に接続された第１の複数の入出力装置と、前記情報処理装置に接続され、第２の記憶部を有するとともに前記情報処理装置の機能を拡張する第２の機能拡張装置と、前記第２の機能拡張装置に接続された第２の複数の入出力装置を有する情報処理システムの制御方法において、
前記第１の機能拡張装置上で動作する第１のファームウェアが、前記第１の複数の入出力装置それぞれに対して第１の問合せを発行するステップと、
前記第１のファームウェアが、前記第１の問合せに対して前記第１の複数の入出力装置それぞれから得られた第１の回答を前記第１の記憶部に保持させるステップと、
前記第２の機能拡張装置上で動作する第２のファームウェアが、前記第２の複数の入出力装置それぞれに対して第２の問合せを前記第１の問合せとは独立して発行するステップと、
前記第２のファームウェアが、前記第２の問合せに対して前記第２の複数の入出力装置それぞれから得られた第２の回答を前記第２の記憶部に保持させるステップを有すること
を特徴とする制御方法。
【０１８４】
（付記８）
前記第１のファームウェアが前記第１の複数の入出力装置それぞれに対して第１の問合せを発行するステップは、
前記第１の複数の入出力装置それぞれに対する前記第１の問合せのうち、前記第１の複数の入出力装置に含まれるいずれか一の入出力装置に対する問合せを発行するとともに、前記一の入出力装置からの回答を得られた後に、前記第１の複数の入出力装置に含まれる他の入出力装置に対して問合せを発行するステップであることを特徴とする付記７記載の制御方法。
【０１８５】
（付記９）
前記第１のファームウェアが前記第１の複数の入出力装置それぞれに対して第１の問合せを発行するステップは、
前記一の入出力装置からの回答を得られない場合、一定時間経過後に前記第１の複数の入出力装置に含まれる他の入出力装置に対して問合せを発行するステップであることを特徴とする付記７記載の制御方法。
【０１８６】
（付記１０）
前記第１のファームウェアが前記第１の複数の入出力装置それぞれに対して第１の問合せを発行するステップは、
前記第１の複数の入出力装置それぞれに対する前記第１の問合せを、前記第１の複数の入出力装置に対して同時に発行するステップであることを特徴とする付記７記載の制御方法。
【０１８７】
（付記１１）
前記制御方法はさらに、
前記ソフトウェアからの問合せに対し、前記第１のファームウェアが前記第１の記憶部に保持させる前記第１の回答を前記ソフトウェアに対して通知するステップを有することを特徴とする付記８乃至１０のいずれか一に記載の制御方法。
【図面の簡単な説明】
【０１８８】
【図１】第１の実施形態のコンピュータシステムの構成図
【図２】ＳＣＳＩデバイスの構成の一例を示す図
【図３】inquiryデータの構成図
【図４】ＳＣＳＩアダプタユニットの構成図
【図５】ターゲット情報管理テーブルを模式的に示す図
【図６】inquiryデータ収集処理の流れを示す図
【図７】inquiryコマンドのフォーマット図
【図８】第１の実施形態の起動時のシーケンスを示す図
【図９】従来のコンピュータシステムにおける起動時のシーケンスを示す図
【図１０】第２の実施形態のコンピュータシステムの構成図
【図１１】ＦＣアダプタユニットの構成図
【図１２】第３の実施形態のコンピュータシステムの構成図
【図１３】ＳＡＳアダプタユニットの構成図
【図１４】第４の実施形態におけるＳＣＳＩアダプタユニットの構成図
【図１５】第４の実施形態におけるＳＣＳＩデバイスの構成図
【図１６】inquiryデータ収集処理の流れを示す図
【図１７】inquiryデータ通知処理の流れを示す図
【図１８】第５の実施形態におけるＦＣアダプタユニットの構成図
【図１９】第６の実施形態におけるＳＡＳアダプタユニットの構成図
【図２０】第７の実施形態のコンピュータシステムの構成図
【図２１】ＳＣＳＩアダプタユニットの構成図
【図２２】inquiryデータ収集処理の流れを示す図
【図２３】ＳＥＳコマンドのフォーマット図
【図２４】第８の実施形態のinquiryデータ収集処理の流れを示す図
【符号の説明】
【０１８９】
１０    コンピュータ
１０ｅ  ＢＩＯＳソフトウエア
１０ｇ  ＯＳソフトウエア
１０ｉ  ＳＣＳＩドライバ
１１    ＳＣＳＩアダプタユニット
１１ｆ  ターゲット情報管理テーブル
１１ｇ  inquiryデータ収集プログラム
１１ｈ  データ管理テーブル
１１ｉ  応答プログラム
１２    ＳＣＳＩデバイス
１２ｄ  inquiryデータ
１２ｅ  inquiryデータ通知プログラム
２０    コンピュータ
２０ｅ  ＢＩＯＳソフトウエア
２０ｇ  ＯＳソフトウエア
２０ｉ  ＳＣＳＩドライバ
２０ｊ  ＨＢＡドライバ
２１    ＦＣアダプタユニット
２１ｆ  ターゲット情報管理テーブル
２１ｇ  inquiryデータ収集プログラム
２１ｉ  応答プログラム
２３ｃ  ＳＣＳＩデバイス
３０    コンピュータ
３０ｅ  ＢＩＯＳソフトウエア
３０ｇ  ＯＳソフトウエア
３０ｉ  ＳＣＳＩドライバ
３０ｊ  ＨＢＡドライバ
３１    ＳＡＳアダプタユニット
３１ｆ  ターゲット情報管理テーブル
３１ｇ  inquiryデータ収集プログラム
３１ｉ  応答プログラム
３２ｃ  ＳＡＳデバイス
【図１】
0005320780.tif 000002
【図２】
0005320780.tif 000003
【図３】
0005320780.tif 000004
【図４】
0005320780.tif 000005
【図５】
0005320780.tif 000006
【図６】
0005320780.tif 000007
【図７】
0005320780.tif 000008
【図８】
0005320780.tif 000009
【図９】
0005320780.tif 000010
【図１０】
0005320780.tif 000011
【図１１】
0005320780.tif 000012
【図１２】
0005320780.tif 000013
【図１３】
0005320780.tif 000014
【図１４】
0005320780.tif 000015
【図１５】
0005320780.tif 000016
【図１６】
0005320780.tif 000017
【図１７】
0005320780.tif 000018
【図１８】
0005320780.tif 000019
【図１９】
0005320780.tif 000020
【図２０】
0005320780.tif 000021
【図２１】
0005320780.tif 000022
【図２２】
0005320780.tif 000023
【図２３】
0005320780.tif 000024
【図２４】
0005320780.tif 000025