"情報処理装置上で実行されることによって、模擬対象の装置のハードウェア構造を模擬するエミュレータであって、前記ハードウェア構造に含まれた構造部分を模擬する仮想的ハードウェア部分を有し、この仮想的ハードウェア部分が、前記仮想的ハードウェア部分に対応付けられた前記情報処理装置内の現実のハードウェア部分を駆動させる駆動部と、前記仮想的ハードウェア部分が模擬する構造部分が入力に対して示す応答結果を模擬するために前記駆動部による現実のハードウェア部分の駆動後に前記情報処理装置上で実行される応答部と、を備えたことを特徴とするエミュレータ。前記情報処理装置内に存在しているハードウェア部分を探索し、探索で得たハードウェア部分を、前記仮想的ハードウェア部分に対応付ける対応部を備えたことを特徴とする請求項1記載のエミュレータ。前記対応部は、前記仮想的ハードウェア部分に対応付けるべきハードウェア部分の優先順位に基づいて、前記探索で得たハードウェア部分を、該優先順位に従って前記仮想的ハードウェア部分に対応付けるものであることを特徴とする請求項2記載のエミュレータ。しかし、実際のハードウェアを用意する上記方法によれば、試作装置を準備する方法と同様な事情でコストアップなどの恐れが生じると考えられる。一方、エミュレータでソフト的に模擬されているハードウェアは、実際のハードウェアが行う全ての動作を再現することは当然無理である。そこで、一般的には、入力と、その入力に反応した出力との対応を定義したいわば関数としてハードウェア要素が用意される。しかしながら、そのように関数として用意されたハードウェア要素では、実際のハードウェアの動作時に生じる動作時間の経過を模擬することが難しい。特に、実際のハードウェアでは、動作時間は一定の遅延ではなくて、動作状況の違いによってばらつきなどを生じるため、そのようなばらつきなども含めて動作時間の模擬が望まれている。上記事情に鑑み、本件開示は、ハードウェアの動作時間も模擬することが出来るエミュレータを提供することを目的とする。上記目的を達成するエミュレータは、情報処理装置上で実行されることによって、該情報処理装置とは別の装置のハードウェア構造を模擬する。このエミュレータは、上記ハードウェア構造に含まれた構造部分を模擬する仮想的ハードウェア部分を有している。そして、この仮想的ハードウェア部分は、応答部と駆動部とを備えている。上記駆動部は、上記仮想的ハードウェア部分に対応付けられた上記情報処理装置内のハードウェア部分を駆動させるものである。上記応答部は、上記仮想的ハードウェア部分が模擬する構造部分が入力に対して示す応答結果を模擬するために上記駆動部による現実のハードウェア部分の駆動後に上記情報処理装置上で実行されるものである。本件開示によれば、エミュレータでハードウェアの動作時間も模擬することが出来る。上記説明したエミュレータに対する具体的な実施形態を、以下図面を参照して説明する。図1は、エミュレータの具体的な第1実施形態を示す図である。図1に示すエミュレータ10は、現実のハードウェア部分21を有する情報処理装置20上で実行されることによって、模擬対象の装置のハードウェア構造を仮想的に模擬する。情報処理装置20上でのエミュレータ10の実行とは、具体的には、情報処理装置20のメモリ上にエミュレータ10が展開されてCPU等で処理されることである。エミュレータ10には、模擬対象の装置のハードウェア構造に含まれた構造部分を模擬する仮想的ハードウェア部分11が備えられている。そして、仮想的ハードウェア部分11には応答部12と駆動部13が備えられている。応答部12は情報処理装置20上で実行される。そして、仮想的ハードウェア部分11が模擬する構造部分が入力に対する応答結果を模擬する。このような応答部12の模擬により、模擬対象の装置における内部動作や外部への応答動作などにおける動作結果が模擬されることとなる。ただし、応答部12で模擬されるのは結果であって経過は模擬されない。駆動部13は、少なくとも1つの仮想的ハードウェア部分11に備えられているが、全ての仮想的ハードウェア部分11に備えられているとは限らない。そして、駆動部13を備えた仮想的ハードウェア部分11には、情報処理装置20が有する現実のハードウェア部分21が対応付けられている。駆動部13は、仮想的ハードウェア部分11に対応付けられているハードウェア部分21を、この仮想的ハードウェア部分11における応答部12が実行される場合に応答部12の実行に先立って駆動させる。逆に言えば、応答部12は、駆動部13によるハードウェア部分21の駆動後に実行される。駆動部13によるこのような駆動の結果、模擬対象の装置における動作時間が模擬されることとなる。つまり、図1に示すエミュレータ10によれば、模擬対象の装置の動作がハードウェアの動作時間も含めて模擬されることとなるので、エミュレータ10の精度が高い。しかも、エミュレータ10がハードウェアの動作時間の模擬に用いる現実のハードウェア部分は、このエミュレータ10を実行する情報処理装置20のハードウェア部分21である。従って、ハードウェアの動作時間の模擬用に余計なハードウェアを用意する必要もない。次に、より具体的な第2実施形態について説明する。図2は、第2実施形態のエミュレータを実行する情報処理装置を表す構造図である。図2に示す情報処理装置100は、現実のハードウェア要素として、CPU110とノースブリッジ120とメモリ130とサウスブリッジ140とハードディスク装置150とUARTUniversalAsynchronousReceiverTransmitter160とを備えている。CPU110とノースブリッジ120とサウスブリッジ140は互いにオリジナルバス170を介して接続されている。一方、UART160はサウスブリッジ140にPCIバス180を介して接続されている。ノースブリッジ120にはメモリコントローラとしての機能が内蔵されているので、メモリ130はノースブリッジ120にバスを介さず直接に接続されている。また、サウスブリッジ140にはハードディスクコントローラHDCとしての機能が内蔵されているので、ハードディスク装置150はサウスブリッジ140にバスを介さず直接に接続されている。以下の説明ではサウスブリッジ140のことをHDC140と称する場合がある。エミュレータを実行するホストとして情報処理装置100が動作する場合には、メモリ130上にエミュレータが展開されてCPU110で実行される。このエミュレータは、メモリ130上に展開される前はハードディスク装置150に格納されている。UART160は、パラレルデータとシリアルデータの相互変換を行う装置である。図3は、エミュレータが模擬する模擬対象装置の一例に相当するストレージ装置を表す構造図である。ここに示すストレージ装置200は、NASnetworkattachedstorageと称される種類のストレージ装置である。このNASは、ネットワークに接続されてネットワークからファイルサーバとして利用される。ストレージ装置200は、模擬対象のハードウェア要素として、CPU210とメモリコントローラ220とメモリ230とハードディスクコントローラ240とハードディスク装置250とLANボード260とを備えている。CPU210とメモリコントローラ220とハードディスクコントローラ240とLANボード260はPCIバス270を介して相互に接続されている。一方、メモリ230はメモリコントローラ220にバスを介さず直接に接続されている。また、ハードディスク装置250はハードディスクコントローラ240にバスを介さず直接に接続されている。CPU210は、ストレージ装置200内の各部の動作を統括するものである。メモリ230はRAMやROMを含んでいる。このメモリ230に、CPU210で実行されるプログラムが展開される。メモリコントローラ220はメモリ230に対するデータの入出力を制御するものである。LANボード260は、ストレージ装置200をネットワークに接続するものである。ハードディスク装置250は、ネットワークから送られてきたデータを記憶する。ハードディスクコントローラ240は、ハードディスク装置250に対するデータの入出力を制御するものである。図4は、図3に示すストレージ装置を模擬するエミュレータを表す図である。図4に示すエミュレータ300が、第2実施形態のエミュレータである。このエミュレータ300は、本体部320と起動部310を備えている。本体部320は、図2に示す情報処理装置100のメモリ130上に展開されることで、図3に示すストレージ装置200のハードウェア構造を仮想的に模擬する。一方、起動部310は、本体部320をメモリ130上に展開して起動するものである。なお、以下の説明では、メモリ130上に展開された本体部320のことを仮想NAS320と称する場合がある。起動部310は、仮想ハード展開部311と実ハード確認部312と優先表313とを備えている。この起動部310の説明は後に回して、先に、メモリ130上に展開された本体部320について説明する。図5は、情報処理装置のメモリ上に展開された本体部仮想NASを示す図である。図5に示すように、仮想NAS320は、情報処理装置100のメモリ130上の一部に展開される。メモリ130上に展開された仮想NAS320は、図3に示すストレージ装置200のハードウェア構造と同様の仮想的な構造を有している。即ち、仮想NAS320は、仮想のハードウェア要素として、仮想CPU321と仮想メモリコントローラ322と仮想メモリ323を備えている。更に仮想NAS320は、仮想のハードウェア要素として、仮想ハードディスクコントローラ仮想HDC324と仮想ハードディスク装置325と仮想LANボード326も備えている。これらの仮想の各ハードウェア要素321~326は、図3に示すストレージ装置200が有する模擬対象の各ハードウェア要素210~260を模擬するものである。仮想NAS320には対応表327も備えられている。この対応表327は、仮想NAS320が備えている仮想の各ハードウェア要素321~326と、情報処理装置100が有する現実のハードウェア要素との対応を示したものである。この対応表327は、仮想NAS320がメモリ130上に展開されたときに構築されたものであるが、詳しい説明は、図4に示す起動部310の説明と共に後に回す。以下の説明では、説明の便宜のため、仮想のハードウェア要素、模擬対象のハードウェア要素、および現実のハードウェア要素それぞれを、仮想ハード、対象ハード、および実ハードと省略して称する場合がある。ここで、仮想のハードウェア要素の構造について、仮想HDC324と仮想LANボード326とを例に挙げて説明する。図6は、仮想HDCの構造を示す図である。また、図7は、仮想LANボードの構造を示す図である。仮想HDC324は、実ハード動作指示部410と仮想ハード動作実行部420とを備えている。また、仮想LANボード326も、実ハード動作指示部430と仮想ハード動作実行部440とを備えている。仮想ハードが模擬する対象ハードは、一般に、データや命令などといった入力を受けて応答を返すものである。仮想HDC324の仮想ハード動作実行部420は、模擬対象のHDC240における入力と応答結果との対応関係を表した一種の関数あるいはルーチンプログラムである。このような仮想ハード動作実行部420を情報処理装置100のCPU110が実行して応答結果を得ることで模擬対象のHDC240における応答が模擬される。同様に、仮想LANボード326の仮想ハード動作実行部440は、模擬対象のLANボード260における入力と応答結果との対応関係を表している。そして、この仮想ハード動作実行部440を情報処理装置100のCPU110が実行して応答結果を得ることで模擬対象のLANボード260における応答が模擬される。このように各仮想ハードが対象ハードの応答を模擬することにより、そのような仮想ハードで構成されたエミュレータは、模擬対象の装置の内部動作や外部への応答を模擬することが出来る。ところで、関数あるいはルーチンプログラムとしての仮想ハード動作実行部420,440による応答結果の取得には、模擬対象のHDC240やLANボード260がハードウェアとして動作する動作時間は掛からない。しかし、図5に示す仮想NAS320がエミュレータとして高精度であるためには、ハードウェアの動作時間も含めた模擬が実現されることが望ましい。特に、実際のハードウェアでは、装置の動作状況などによって動作時間に揺らぎが生じるので、そのような揺らぎが模擬されることが望ましい。そこで、仮想HDC324および仮想LANボード326では、実ハード動作指示部410,430によって、情報処理装置100が有している実ハードの動作が情報処理装置100に指示される。このときの仮想ハードと実ハードとの対応は、上述した対応表に従う。実ハード動作指示部410,430によるこのような指示により、仮想HDC324および仮想LANボード326では、ハードウェアの動作時間も含めた模擬が実現されることになる。そして、このように模擬された動作時間には、情報処理装置100における動作状況などに応じた揺らぎが生じることが期待できるので、エミュレータとして望ましい動作時間の模擬が実現する。なお、このような実ハード動作指示部は、全ての仮想ハードで必要な訳ではない。例えば、仮想CPU321や仮想メモリコントローラ322や仮想メモリ323については、対象ハードの動作時間は、上述した仮想ハード動作実行部が情報処理装置100のCPU110で実行される時間と同程度と考えてよい。従って、仮想ハード動作実行部が情報処理装置100のCPU110で実行されるだけで十分に高精度の模擬となる。従って、実ハード動作指示部は、実ハード動作指示部による動作時間の模擬が必要な種類の仮想ハードのみに備えられている。以下、図4に示すエミュレータ300の起動部310による仮想NASの起動について説明する。図8は、仮想NASの起動処理を表すフローチャートである。以下、このフローチャートが表す起動処理を説明するに当たり、図3も適宜に参照する。図4に示すエミュレータ300の起動部310による本体部仮想NAS320の起動処理が開始されると、まず、仮想ハード展開部311によって仮想NASの仮想ハードが情報処理装置100のメモリ130上に展開されるステップS101。このとき仮想ハード展開部311は、メモリ130上に展開される各仮想ハードを、上述した対応表327に登録する。図9は、対応表の一例を示す図である。図9に示すように、対応表327は、仮想ハードウェア450と現実のハードウェア460とが対応付けられて登録されたものである。図8のステップS101では、この対応表327中の仮想ハードウェア450側だけが登録されて現実のハードウェア460側は空欄となっている。図9の対応表327の例では、1段目にCPU、2段目にHDC、3段目にLANが登録されている。なお、ハードディスクコントローラはハードディスク装置を動作させる時に動作するものであるので、この対応表327ではこれらは区別されない。図8のステップS101でこのように仮想ハードが登録されると、次のステップS102では、そのように登録された仮想ハードのうちの1つを実ハード確認部312が選択する。そして、ステップS103で実ハード確認部312は、その選択した仮想ハードの優先表313をハードディスク装置150から取得する。この優先表313は、仮想ハードに対応付けるべき実ハードの優先順位を表している。この優先表313は、本体部仮想NAS320の仮想ハードに対応して起動部310に当初から組み込まれている。図10は、優先表の一例を示す図である。図10に示す優先表313は、LANボードに対応付けられた優先表313の例である。この優先表313には、ハードウェアの種類としてLANUARTUSBが順に記載されている。優先表313で上に記載されている種類のハードウェアほど優先順位が高いことを意味している。図10に示す優先表313の例では、上に記載されている種類のハードウェアほどLANボードに動作内容が似ている。但し、動作内容の似た順が優先順とは限らず、内容は異なっていても動作時間が近い順を優先順としてもよい。図10に示すような優先表313は、仮想ハードのうち上述した実ハード動作指示部による動作時間の模擬が必要な種類の仮想ハードのみに用意されている。このため、図8のステップS103で実ハード確認部312が優先表313を取得できなかった場合には、その後のステップS104およびステップS105は省略されてステップS106へと進む。一方、ステップS103で実ハード確認部312が優先表313を取得した場合には、ステップS104で実ハード確認部312が、この優先表313の順で実ハードの存在を情報処理装置100について確認する。この情報処理装置100は、上述したように、エミュレータを実行するホストとして動作する装置である。実ハードの存在確認の具体的な方法としては、情報処理装置100でBIOSなどが装置構成を確認するための仕組みとして情報処理装置100に元々備わっている機能が利用される。なお、この仕組みの詳細については、本件開示の本旨とは直接には関係しないのでこれ以上の説明は省略する。ステップS104で実ハードの存在が確認された場合には、実ハード確認部312は実ハードを、この優先表313に対応した仮想ハードに対応付けて対応表327に登録するステップS105。実ハードの存在が確認される情報処理装置は、エミュレータ本実施形態では仮想NASを実行するための装置であって、仮想NASが模擬する対象の装置本実施形態ではNASとは一般に別の種類の装置である。しかも、エミュレータの作成時には、このエミュレータを実行する情報処理装置のハードウェア構造は未知であることが多い。このため、以下のような対応部を備えた応用形態が好適である。この対応部は、情報処理装置内に存在しているハードウェア部分を探索する。そして、対応部は、探索で得たハードウェア部分を、エミュレータが有する仮想的ハードウェア部分に、例えば後述する優先順位やその他の対応ルールで対応付ける。このような応用形態によれば、エミュレータを実行する情報処理装置のハードウェア構造が未知であっても、仮想的ハードウェア部分に現実のハードウェア部分を対応付けることが出来る。図4に示す実ハード確認部312は、この対応部の一例に相当する。また、エミュレータを実行する情報処理装置のハードウェア構造には、仮想ハードの種類と同じ種類の実ハードが含まれているとは限らない。このため、以下のような応用形態が更に好適である。この更に好適な応用形態では、上記対応部は、上記仮想的ハードウェア部分に対応付けるべきハードウェア部分の優先順位が与えられていて、上記探索で得たハードウェア部分を、この優先順位に従って上記仮想的ハードウェア部分に対応付ける。このように優先順位に従って対応付けられることで、仮想的ハードウェア部分には、例え同種のものでなくても、動作時間の模擬に適した現実のハードウェア部分が対応付けられることになる。図10に示す優先表313は、この更に好適な応用形態に言う優先順位の一例を表したものに相当する。また、図4に示す実ハード確認部312は、この更に好適な応用形態における対応部の一例にも相当する。図9に示す対応表327には、登録された現実のハードウェア460の例が示されている。対応表327の仮想ハードウェア450側の1段目に登録されているCPUには上述した優先表が用意されていないため、現実のハードウェア460側の1段目は空欄となっている。対応表327の仮想ハードウェア450側の2段目に登録されているHDCHDDについては、図5に示す情報処理装置100に同種のハードウェアが実在しているため、現実のハードウェア460側の2段目にはHDCHDDが登録されている。対応表327の仮想ハードウェア450側の3段目に登録されているLANについては、図5に示す情報処理装置100には同種のハードウェアが存在しないが、図10に示す優先表313で2番目に記載されているUARTは存在している。このため、現実のハードウェア460側の3段目にはUARTが登録されている。図8のステップS102~ステップS105で、以上説明したように実ハードの確認と登録が行われると、次にステップS106に進み、仮想NASの全ての仮想ハードについて実ハードの確認と登録が終わったかが確認される。終わっていれば起動処理は終了され、終わっていなければ上述したステップS102に戻って次の仮想ハードが1つ選択されて実ハードの確認と登録が繰り返される。以上説明した起動処理の結果、図5に示すように情報処理装置即ちホスト100のメモリ130上に仮想NAS320が展開されて起動される。以下、このように展開された仮想NAS320の具体的な動作における処理手順について、仮想HDD325へのアクセスと、仮想LANボード326へのアクセスを例に挙げて説明する。図11は、仮想HDDへのアクセスにおける処理手順を表す図である。また、図12は、仮想HDDへのアクセス処理のうちリード処理の手順を表したフローチャートである。以下、図11を参照しながら図12のフローチャートが表すリード処理について説明する。なお、図12のフローチャートが表すリード処理は、ここでは特に、仮想HDDに記憶されているOSを起動するためのリード処理の例である。このリード処理は、情報処理装置100のCPU110がノースブリッジ120を介してメモリ130内の仮想NAS320が有する仮想CPU321にアクセスすることで開始される図11に矢印で示す処理手順1および処理手順2。このリード処理が開始されると、図12のステップS201で、仮想NAS320の仮想CPU321が仮想HDC324にリードコマンドを発行する図11の処理手順3。このリードコマンドは、仮想ハードディスク装置325からOSを読み取るためのコマンドである。即ち、このリードコマンドは、仮想ハードディスク装置325上のセクタ0からセクタnまでに記憶されているデータOSの読込みを仮想HDC324に指示する。なお、図11の処理手順3などといった仮想ハードの動作は、厳密に言えば情報処理装置100のCPU110やメモリ130による処理動作と言うことになるが、説明が煩雑となるだけであるので、以下、仮想ハードの動作として説明する。仮想NAS320の仮想HDC324は、上記リードコマンドが発行されたことを認識する図11の処理手順4。そして図12のステップS202で仮想HDC324は、ハードウェアの動作時間を模擬するために、情報処理装置100に対して、情報処理装置100内の実ハードへのアクセスを指示する。この実ハードへのアクセスは、上記リードコマンドが指示する読込みに相当するアクセスである。このとき、仮想HDC324は、対応表327を参照することで、自分に対応している実ハードがHDC140であることを確認する図11の処理手順4’。そして、その確認したHDC140に対するアクセスを情報処理装置即ちホスト100に指示して処理を委ねる。情報処理装置100側では、CPU110がハードディスクコントローラ140経由でハードディスク装置150に、セクタ0からセクタnまでに記憶されているデータの読込みを実行させる図11の処理手順5および処理手順6、図12のステップS203。その結果、セクタ0からセクタnまでのデータがハードディスク装置150からCPU110へと読み込まれる図11の処理手順7。但し、このように読み込まれたデータは使用されないデータであるため、仮想HDC324からの事前の指示に従ってCPU110によって破棄される。そして、CPU110は、読込み処理の完了を待って仮想HDC324に処理を返す。なお、一般のパーソナルコンピュータ上で複数のアプリケーションソフトの処理が同時に実行される場合があるのと同様に、この読込み処理も、ホスト上での他の処理と同時に実行される場合がある。このため、この読込み処理に要する処理時間には、ホストの動作状況に応じた揺らぎが生じることとなる。その後、図12のステップS204で仮想HDC324は、仮想ハードディスク装置325にアクセスしてセクタ0からセクタnまでのデータOSを読み込む。更に図12のステップS205で仮想HDC324は、仮想CPU321に対して処理完了を通知する図11の処理手順8。最後に仮想CPU321は情報処理装置100のCPU110に処理を返す。このような処理手順により、仮想NAS320では、ハードディスクに対するリード処理の動作が、アクセス時間を含めて模擬される。しかも、上述したように、情報処理装置100が有する現実のハードディスク装置150で生じるアクセス時間の揺らぎが反映されるので、模擬されたリード処理の動作はリアルで模擬の精度は高い。次に、仮想HDDへのアクセス処理のうちライト処理について以下説明する。図13は、仮想HDDへのアクセス処理のうちライト処理の手順を表したフローチャートである。以下、図11を参照しながら図13のフローチャートが表すライト処理について説明する。このライト処理も、情報処理装置100のCPU110がノースブリッジ120を介してメモリ130内の仮想NAS320が有する仮想CPU321にアクセスすることで開始される図11に矢印で示す処理手順1および処理手順2。このライト処理が開始されると、図13のステップS301で、仮想NAS320の仮想CPU321が仮想HDC324にライトコマンドを発行する図11の処理手順3。このライトコマンドは、仮想ハードディスク装置325にデータを書き込むためのコマンドである。即ち、このライトコマンドは、仮想ハードディスク装置325上のセクタnからセクタmまでに対するデータの書込みを仮想HDC324に指示する。仮想NAS320の仮想HDC324は、上記ライトコマンドが発行されたことを認識する図11の処理手順4。そして図12のステップS302で仮想HDC324は、ハードウェアの動作時間を模擬するために、情報処理装置100に対して、情報処理装置100内の実ハードへのアクセスを指示する。この実ハードへのアクセスは、上記ライトコマンドが指示する書込みに相当するアクセスである。このときも、仮想HDC324は、対応表327を参照することで、自分に対応している実ハードがHDC140であることを確認する図11の処理手順4’。そして、その確認したHDC140に対するアクセスを情報処理装置100に指示して処理を委ねる。情報処理装置即ちホスト100側では、CPU110がハードディスクコントローラ140経由でハードディスク装置150に、セクタnからセクタmまでの分のデータの書込みを実行させる図11の処理手順5と処理手順6、図13のステップS303。但し、仮想HDC324による事前の指示に基づいて、セクタnからセクタmまでのセクタ領域へは書込みは行わず、そのセクタ領域までのシークが行われる。そしてシークの後に、情報処理装置100が使用していないセクタ領域に対してセクタnからセクタmまでの分のデータが書き込まれる。このような使用していないセクタ領域としては、例えば/tmpなどが考えられる。また、セクタnからセクタmまでに比較して、使用していないセクタ領域が狭い場合には、その使用していないセクタ領域が繰り返し利用されて、セクタnからセクタmまでの分のデータが書き込まれる。なお、シークに要する動作時間の方が、データの書込みに要する動作時間よりもずっと長いので、データの書込みは自体は省略も可能である。データ書込みの完了がハードディスクコントローラ140経由でハードディスク装置150からCPU110に通知される図11の処理手順7とCPU110は仮想HDC324に処理を返す。その後、図13のステップS304で仮想HDC324は、仮想ハードディスク装置325にアクセスしてセクタnからセクタmまでにデータを書き込む。更に図13のステップS305で仮想HDC324は、仮想CPU321に対して処理完了を通知する図11の処理手順8。最後に仮想CPU321は情報処理装置100のCPU110に処理を返す。このような処理手順により、仮想NAS320では、ハードディスクに対するライト処理の動作が、アクセス時間を含めて模擬される。また、リード処理の動作の模擬と同様に、情報処理装置100が有する現実のハードディスク装置150で生じるアクセス時間の揺らぎが反映されるので、模擬されたライト処理の動作もリアルで模擬の精度は高い。次に、仮想LANボード326へのアクセスにおける処理手順について説明する。図14は、仮想LANボードへのアクセスにおける処理手順を表す図である。仮想LANボード326へのアクセスも、情報処理装置100のCPU110がノースブリッジ120を介してメモリ130内の仮想NAS320が有する仮想CPU321にアクセスすることで開始される図14に矢印で示す処理手順1および処理手順2。仮想NAS320の仮想CPU321は仮想LANボード326に、通信処理を指示するコマンドを発行する図14の処理手順3。仮想NAS320の仮想LANボード326は、上記通信処理のコマンドが発行されたことを認識する。そして仮想LANボード326は、ハードウェアの動作時間を模擬するために、情報処理装置100に対して、情報処理装置100内の実ハードへのアクセスを指示する。このとき、仮想LANボード326は、対応表327を参照することで、自分に対応している実ハードがUART160であることを確認する図14の処理手順3’。そして、その確認したUART160に対するアクセスを情報処理装置即ちホスト100に指示して処理を委ねる。このUART160に対するアクセスは、上記通信処理の指示に相当するアクセスである。処理を委ねられた情報処理装置100側では、CPU110がサウスブリッジ140経由でUART160にアクセスして上記通信処理の指示に対応したコマンドをUART160に対して発行する図14の処理手順4および処理手順5。そのようなコマンドの処理が完了するとUART160は完了の通知をCPU110に送る図14の処理手順6。そして、CPU110は、仮想LANボード326に処理を返す。その後、仮想LANボード326は、上記通信処理のコマンドに対する応答処理を実行する。そして、仮想LANボード326は、仮想CPU321に対して処理完了を通知する図14の処理手順7。最後に仮想CPU321は情報処理装置100のCPU110に処理を返す。このような処理手順により、仮想NAS320では、LANボードに対するアクセスの動作が、LANボードでの処理時間を含めて模擬される。しかも、上述したように、情報処理装置100が有する現実のUART160で生じる処理時間の揺らぎが反映されるので、模擬されたアクセスの動作はリアルで模擬の精度は高い。以上で第2実施形態の説明を終了する。上記説明した第2実施形態では仮想ハードディスク装置が1つ備えられていたが、仮想ハードディスク装置が複数一例として2つ備えられた変形例について以下説明する。但し、この変形例は、仮想ハードディスク装置が複数備えられている点を除いて第2実施形態と同様であるので、以下では相違点について説明して重複説明は省略する。図15は、仮想ハードディスク装置が複数備えられた変形例における仮想ハードディスク装置へのアクセスの処理手順を示す図である。図15に示すように、この変形例では、仮想NAS470が複数の仮想ハードディスク装置471,472を備えているとともに、ホストである情報処理装置101も複数のハードディスク装置151,152を備えている。このため、この変形例における対応表327では、各仮想ハードディスク装置471,472には現実の各ハードディスク装置151,152が別々に対応付けられている。仮想ハードディスク装置へのアクセスは、情報処理装置101のCPU110がノースブリッジ120を介してメモリ130内の仮想NAS320が有する仮想CPU321にアクセスすることで開始される図15に矢印で示す処理手順1および処理手順2。そして仮想NAS320の仮想CPU321が仮想HDC324にアクセスリードあるいはライトのコマンドを発行する図15の処理手順3。このコマンドは、複数の仮想ハードディスク装置471,472のうち第1の仮想ハードディスク装置471に対するアクセスを指示するものとする。仮想NAS320の仮想HDC324は、コマンドが発行されたことを認識する図15の処理手順4。仮想HDC324は、ハードウェアの動作時間を模擬するために、第1の仮想ハードディスク装置471に対応づけられた実ハードが第1のハードディスク装置151であることを対応表327で確認する図15の処理手順4’。そして、仮想HDC324は、情報処理装置101に対し、第1のハードディスク装置151へのアクセスを指示して処理を委ねる。情報処理装置即ちホスト101側では、CPU110がハードディスクコントローラ140に、第1のハードディスク装置151へのアクセスを指示したコマンドを発行する図15の処理手順5。コマンドの発行を受けたHDC140は、第1のハードディスク装置151へのアクセスを実行する。この変形例では、第1の仮想ハードディスク装置471および第1のハードディスク装置151へのアクセスが行われている間に、マルチタスクにて更に第2の仮想ハードディスク装置472および第2のハードディスク装置152へアクセスが可能である。マルチタスクによる第2の仮想ハードディスク装置472へアクセスも、情報処理装置101のCPU110がノースブリッジ120を介してメモリ130内の仮想NAS320が有する仮想CPU321にアクセスすることで開始される図15の処理手順7および処理手順8。そして、第1の仮想ハードディスク装置471へのアクセスの処理と同様に、アクセスのコマンド発行図15の処理手順9、コマンド発行の認識図15の処理手順10、対応表327での実ハードの確認図15の処理手順10’が行われる。続いて、情報処理装置101に対する第2のハードディスク装置152へアクセス指示、CPU110によるコマンド発行図15の処理手順11、第2のハードディスク装置152へのアクセス図15の処理手順12が行われる。ここで、第1のハードディスク装置151へのアクセスと第2のハードディスク装置152へのアクセスとのどちらが先に完了するかは、動作状況によって異なる。ここでは、第2のハードディスク装置152へのアクセスが先に完了する追い越しが生じたものとして説明を続ける。アクセスの完了がHDC140経由で第2のハードディスク装置152からCPU110に通知される図15の処理手順13とCPU110は仮想HDC324に、第2の仮想ハードディスク装置472へアクセスを実行させる。そしてアクセスが完了すると仮想HDC324は仮想CPU321に対して処理完了を通知する図15の処理手順14および処理手順15。さらに仮想CPU321は、情報処理装置100のCPU110に処理完了を通知する図15の処理手順16および処理手順17。一方、第2のハードディスク装置152に遅れて第1のハードディスク装置151からCPU110にアクセスの完了が通知される図15の処理手順18とCPU110は仮想HDC324に、第1の仮想ハードディスク装置471へアクセスを実行させる。そしてアクセスが完了すると仮想HDC324は仮想CPU321に対して処理完了を通知する図15の処理手順19および処理手順20。さらに仮想CPU321は、情報処理装置100のCPU110に処理完了を通知する図15の処理手順21および処理手順22。このように、仮想ハードが実ハードの駆動を指示することにより追い越し処理も模擬可能となる。"