(57)【要約】【課題】  評価に関係しない部分への影響を抑えつつ、評価対象装置の見た目上の動作速度を速くする。【解決手段】  評価対象装置へのＩ／Ｏを発行するプロセスと、プロセスから評価対象装置へのＩ／Ｏの発行を検出するのに応じて速度調整を開始するＩ／Ｏ管理手段と、プロセスの動作速度を遅延させる動作速度遅延手段とを備え、速度調整において、動作速度遅延手段がプロセスの動作速度を遅くすることにより、評価対象装置の見た目上の速度を向上させる。【選択図】      図１
2014174592.tif 000002
【特許請求の範囲】
【請求項１】
評価対象装置が接続され、
前記評価対象装置へのＩ／Ｏを発行するプロセスと、
前記プロセスから前記評価対象装置へのＩ／Ｏの発行を検出するのに応じて速度調整を開始するＩ／Ｏ管理手段と、
プロセスの動作速度を遅延させる動作速度遅延手段とを備え、
前記速度調整において、前記動作速度遅延手段が前記プロセスの動作速度を遅くすることにより、前記評価対象装置の見た目上の速度を向上させる情報処理装置。
【請求項２】
評価対象外装置がさらに接続され、
前記情報処理装置は、Ｉ／Ｏ完了通知を遅延させるＩ／Ｏ遅延手段をさらに含み、
前記プロセスが前記評価対象外装置へのＩ／Ｏを発行し、
前記速度調整において、前記Ｉ／Ｏ遅延手段が前記評価対象外装置からのＩ／Ｏ完了通知を遅延させる請求項１に記載の情報処理装置。
【請求項３】
前記Ｉ／Ｏ管理手段が、前記評価対象装置からのＩ／Ｏ完了通知を検出するのに応じて、前記速度調整を終了し、
前記Ｉ／Ｏ遅延手段が、前記速度調整の開始から終了までの期間と、前記評価対象外装置へのＩ／Ｏの発行から完了までの期間に基づいて、前記評価対象外装置からのＩ／Ｏ完了通知を遅延させる請求項１または２に記載の情報処理装置。
【請求項４】
前記プロセスが使用する計時手段を管理するタイマ管理手段をさらに備え、
前記速度調整において、前記タイマ管理手段が前記計時手段の減算処理を遅延させる請求項１乃至３のいずれかに記載の情報処理装置。
【請求項５】
請求項２乃至４のいずれかに記載の情報処理装置と、
前記評価対象装置と、
前記評価対象外装置とを備える装置評価システム。
【請求項６】
プロセスが評価対象外装置へのＩ／Ｏを発行し、
前記プロセスから前記評価対象装置へのＩ／Ｏの発行を検出し、
速度調整を開始し、
前記速度調整において、前記プロセスの動作速度を遅くすることにより、前記評価対象装置の見た目上の速度を向上させる装置評価方法。
【請求項７】
コンピュータに、
プロセスから評価対象装置へのＩ／Ｏの発行を検出する処理と、
速度調整を開始する処理と、
前記速度調整において、前記プロセスの動作速度を遅くすることにより、前記評価対象装置の見た目上の速度を向上させる処理とを実行させるコンピュータプログラム。
【請求項８】
コンピュータに、前記速度調整において、評価対象外装置からのＩ／Ｏ完了通知を遅延させる処理を実行させる請求項７に記載のコンピュータプログラム。
【請求項９】
コンピュータに、
前記評価対象装置からのＩ／Ｏ完了通知を検出する処理と、
前記速度調整を終了する処理と、
前記速度調整の開始から終了までの期間と、前記評価対象外装置へのＩ／Ｏの発行から完了までの期間に基づいて、前記評価対象外装置からのＩ／Ｏ完了通知を遅延させる処理とを実行させる請求項７または８に記載のコンピュータプログラム。
【請求項１０】
コンピュータに、前記速度調整において、前記プロセスが使用する計時手段の減算処理を遅延させる処理を実行させる請求項７乃至９のいずれかに記載のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、装置評価における技術に関し、特にソフトウェアと装置のタイミングの評価における技術に関する。
【背景技術】
【０００２】
コンピュータに接続される周辺装置において、従来に比べて高速なＩ／Ｏ処理（入出力(Input / Output)処理。以降、単に「Ｉ／Ｏ」と称する。）を可能とする新装置が開発されることがある。このような新装置を使用するアプリケーションソフトウェアにおいては、従来装置では発生しない、タイミングに起因する問題が発生することがある。
【０００３】
例えば、磁気テープ媒体などにデータを記録するテープ装置を、ハードディスクドライブなどのディスク装置を用いて仮想化する「仮想テープ装置」が開発された場合のことを考える。このような仮想テープ装置は、従来のテープ装置に比べて大幅にＩ／Ｏが高速化されているため、アプリケーションソフトウェアの実行において、従来では発生しなかった、動作や処理のタイミング（以降、単に「タイミング」と称する。）に起因する不具合（例えば不正動作や異常終了など）が発生することがある。
【０００４】
このような新装置の開発においては、不具合を検出および解消するために、新装置を使用してアプリケーションソフトウェアの評価が行われることが望ましい。しかしながら、新装置が完成した後にアプリケーションソフトウェアの評価を行う場合、新装置の完成まで不具合の発覚が遅れるという問題がある。このため、従来使用している装置を使用して、Ｉ／Ｏが高速化された新装置の評価を擬似的な評価を行うための技術が求められている。
【０００５】
特許文献１記載のエミュレート装置は、エミュレートする命令にウェイトを挿入することにより、エミュレートにかかる時間を調整する。
【０００６】
特許文献２記載のプログラムのテスト装置は、Ｉ／Ｏ機器の処理終了を擬似的に遅延させることにより、Ｉ／Ｏ処理終了のタイミングを任意に組合せたテストを可能とする。
【０００７】
特許文献３記載のプラント模擬装置は、タイマのカウント単位を時間軸の縮尺に対応して増減することにより、時間軸の縮小や拡大が可能なプラント模擬を実現する。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００７−００４７１９号公報
【特許文献２】特開２００９−１０４４９０号公報
【特許文献３】特開昭５８−０９５３７６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
Ｉ／Ｏが高速化された新装置の評価を擬似的に評価する方法として、アプリケーションソフトウェアの実行速度を遅くすることにより、アプリケーションソフトウェアに対する、装置の見た目上の動作速度を相対的に速くするという方法がある。アプリケーションソフトウェアの実行速度を遅くする方法は、例えば、上述の特許文献１が開示している。
【００１０】
しかしながら、コンピュータのアプリケーションソフトウェアの実行速度を遅くした場合、評価に関係しない機能や期間においてもコンピュータの処理が遅延するため、影響が大きいという問題がある。
【００１１】
上述の特許文献１〜３記載の技術も、これらの問題点を全て解決するものではない。
【００１２】
本発明は、上述した課題を解決するための技術を提供することを主たる目的とする。
【課題を解決するための手段】
【００１３】
上記目的を達成する本発明に係る情報処理装置は、
評価対象装置が接続され、
評価対象装置へのＩ／Ｏを発行するプロセスと、
プロセスから評価対象装置へのＩ／Ｏの発行を検出するのに応じて速度調整を開始するＩ／Ｏ管理手段と、
プロセスの動作速度を遅延させる動作速度遅延手段とを備え、
速度調整において、動作速度遅延手段がプロセスの動作速度を遅くすることにより、評価対象装置の見た目上の速度を向上させる。
【００１４】
上記目的を達成する本発明に係る装置評価システムは、
上述の情報処理装置と、
評価対象装置と、
評価対象外装置とを備える。
【００１５】
上記目的を達成する本発明に係る装置評価方法は、
プロセスが評価対象外装置へのＩ／Ｏを発行し、
プロセスから評価対象装置へのＩ／Ｏの発行を検出し、
速度調整を開始し、
速度調整において、プロセスの動作速度を遅くすることにより、評価対象装置の見た目上の速度を向上させる。
【００１６】
上記目的を達成する本発明に係るコンピュータプログラムは、
コンピュータに、
プロセスから評価対象装置へのＩ／Ｏの発行を検出する処理と、
速度調整を開始する処理と、
速度調整において、プロセスの動作速度を遅くすることにより、評価対象装置の見た目上の速度を向上させる処理とを実行させる。
【発明の効果】
【００１７】
本発明によれば、評価に関係しない部分への影響を抑えつつ、評価対象装置の見た目上の動作速度を速くすることができる。
【図面の簡単な説明】
【００１８】
【図１】本発明の第１の実施形態に係る装置評価システムの構成を表すブロック構成図である。
【図２】第１の実施形態における、動作倍率定義表１３０の内容を示す図である。
【図３】第１の実施形態における、遅延対象外プロセス一覧表１４０の内容を示す図である。
【図４】第１の実施形態における、システムコール管理表１５４の内容を示す図である。
【図５】第１の実施形態における、システムコール管理部１５５の動作を表わすフローチャートである。
【図６】第１の実施形態における、速度調整開始から終了までの期間と、システムコールの開始から終了までの期間と、遅延対象時間の関係を説明する図である。
【図７】第１の実施形態における、タイマ管理表１５９の内容を示す図である。
【図８】第１の実施形態における、動作速度遅延部１５７がシステムコール管理部１５５から速度調整の開始の通知を受けた場合の動作を表わすフローチャートである。
【図９】第１の実施形態における、動作速度遅延部１５７がシステムコール管理部１５５から速度調整の終了の通知を受けた場合の動作を表わすフローチャートである。
【図１０】第１の実施形態における、動作速度遅延部１５７がシステムコール管理部１５５から速度調整における動作倍率の変更の通知を受けた場合の動作を表わすフローチャートである。
【図１１】第１の実施形態における、タイマ管理部１５８の動作を表わすフローチャートである。
【図１２】本発明の第２の実施形態に係る装置評価システムの構成を表すブロック構成図である。
【図１３】本発明の第３の実施形態に係る装置評価システムの構成を表すブロック構成図である。
【図１４】本発明の第４の実施形態に係る装置評価システムの構成を表すブロック構成図である。
【図１５】本発明の第５の実施形態に係る装置評価システムの構成を表すブロック構成図である。
【図１６】コンピュータを構成する要素の例を表すブロック構成図である。
【発明を実施するための形態】
【００１９】
次に、本発明の実施の形態について図面を参照して詳細に説明する。
【００２０】
［第１の実施形態］
図１は、本発明の第１の実施形態に係る装置評価システムの構成を表すブロック構成図である。本発明の第１の実施形態に係る装置評価システムＳ１は、情報処理装置１００と、ディスク装置２００と、テープ装置３００とを備える。
【００２１】
情報処理装置１００は、サーバやワークステーション、パーソナルコンピュータなどのコンピュータ装置である。
【００２２】
ディスク装置２００およびテープ装置３００は、情報処理装置１００に接続される周辺装置である。
【００２３】
ディスク装置２００は、ハードディスクドライブ装置である。
【００２４】
テープ装置３００は、磁気テープ媒体に対するデータの書き込みおよび読み取りを行う装置である。
【００２５】
以降の説明においては、見た目上の動作速度を速くする対象の周辺装置を「評価対象装置」と称する。本発明の実施形態においては、テープ装置３００を評価対象装置とし、ディスク装置２００を評価対象外の装置とする。なお、本発明においては、評価対象装置は装置の種類には依存しない。すなわち、評価対象装置および評価対象外の装置のいずれにおいても、装置の種類はテープ装置あるいはディスク装置に限らず、何であってもよい。
【００２６】
第１の実施形態における装置評価装置Ｓにおいては、情報処理装置１００で動作する、評価対象装置を使用する全てのアプリケーションソフトウェアの動作速度を遅くすることにより、相対的に、アプリケーションソフトウェアから見た評価対象装置の見た目上の動作速度を高速化する。このことにより、評価対象装置を、Ｉ／Ｏが高速化された新装置と見なして擬似的な評価を行うことが可能になる。アプリケーションソフトウェアは、通常、オペレーティングシステムのようにシステム空間で動作する「システムプロセス」ではなく、ユーザ空間で動作する「ユーザプロセス」である。コンピュータで動作するアプリケーションソフトウェアの動作速度を遅くするということは、言い換えると、コンピュータで動作する全てのユーザプロセスの動作速度を遅くすると言うことである。
【００２７】
情報処理装置１００は、ディスク装置使用プロセス１１０と、テープ装置使用プロセス１２０と、動作倍率定義表１３０と、遅延対象外プロセス一覧表１４０と、オペレーティングシステム１５０と、ハードウェア時計１６０とを備える。
【００２８】
ディスク装置使用プロセス１１０およびテープ装置使用プロセス１２０は、プロセスと呼ばれることもある。
【００２９】
ディスク装置使用プロセス１１０は、ディスク装置２００への非同期Ｉ／Ｏを発行するユーザプロセスである。
【００３０】
テープ装置使用プロセス１２０は、テープ装置３００への非同期Ｉ／Ｏを発行するユーザプロセスである。
【００３１】
ディスク装置使用プロセス１１０およびテープ装置使用プロセス１２０は、オペレーティングシステムのシステムコールを呼び出すことにより、周辺装置へのＩ／Ｏ発行要求を行う。ディスク装置使用プロセス１１０およびテープ装置使用プロセス１２０は、プロセス間通信や共有メモリ，ＳＯＣＫＥＴ通信，セマフォなどによってお互いに連携して動作する。
【００３２】
図２は、動作倍率定義表１３０の内容を示す図である。動作倍率定義表１３０は、評価対象装置（ここではテープ装置３００）がより高速なＩ／Ｏ速度を有する新装置に置換される際に、新装置ではどの種類のＩ／Ｏが何倍高速化されるかを、新装置の仕様に従って事前に定義する表である。動作倍率定義表１３０は、評価対象装置を表わす対象装置と、装置に対するＩ／Ｏの種別と、これら評価対象装置およびＩ／Ｏ種別に対応する動作倍率とを含む。なお、図２の「テープ装置」とは、テープ装置３００を表わしている。
【００３３】
図３は、遅延対象外プロセス一覧表１４０の内容を示す図である。遅延対象外プロセス一覧表１４０は、例外的に動作速度を遅くさせないユーザプロセスがある場合に、このようなプロセス（遅延対象外プロセス）の一覧を事前に定義する表である。遅延対象外プロセスの例としては、ネットワーク経由で外部システムと連携して処理を行うプロセスなどが挙げられる。すなわち、動作速度を遅くすることによる不具合（例えば、外部システム側の処理のタイムアウト）を回避する必要があるプロセスなどである。図３を参照すると、遅延対象外プロセス一覧表１４０は、プロセスを識別するための情報として、プロセスＩＤ(IDentifier)を使用している。
【００３４】
オペレーティングシステム１５０は、情報処理装置１００で動作するオペレーティングシステムである。
【００３５】
ハードウェア時計１６０は、情報処理装置１００のハードウェアに実装された時計である。ハードウェア時計１６０は、ソフトウェアのタイマ管理において使用されるために、一定時間間隔ごとにソフトウェア側に通知を行う。
【００３６】
オペレーティングシステム１５０は、ディスク装置用デバイスドライバ１５１と、テープ装置用デバイスドライバ１５２と、システムコール処理部１５３と、システムコール管理表１５４と、システムコール管理部１５５と、システムコール遅延部１５６と、動作速度遅延部１５７と、タイマ管理部１５８と、タイマ管理表１５９とを含む。
【００３７】
システムコール管理部１５５は、Ｉ／Ｏ管理部と呼ばれることもある。システムコール遅延部１５６は、Ｉ／Ｏ遅延部と呼ばれることもある。
【００３８】
システムコール処理部１５３は、ユーザプロセスから呼び出されたシステムコールを処理したり、応答結果を返却したりする機能を有する。システムコール処理部１５３は、オペレーティングシステム１５０の既存の機能であってもよい。
【００３９】
ディスク装置用デバイスドライバ１５１は、ユーザプロセスから呼び出されたＩ／Ｏシステムコールを受けてシステムコール処理部１５３がディスク装置２００へＩ／Ｏを行う際に使用される。
【００４０】
テープ装置用デバイスドライバ１５２は、ユーザプロセスから呼び出されたＩ／Ｏシステムコールを受けてシステムコール処理部１５３がテープ装置３００へＩ／Ｏを行う際に使用される。
【００４１】
システムコール管理部１５５は、ユーザプロセスとシステムコール処理部１５３との間で、Ｉ／Ｏ発行要求などのシステムコールの呼び出しや、Ｉ／Ｏ完了通知などのシステムコールの応答を検出する。この検出に応じて、システムコール管理部１５５は、速度調整の開始あるいは終了の通知を行う。
【００４２】
また、システムコール管理部１５５は、動作速度遅延部１５７に、速度調整の開始あるいは終了を通知する。また、システムコール管理部１５５は、動作速度遅延部１５７に、速度調整における動作倍率の変更を通知する。
【００４３】
また、システムコール管理部１５５は、システムコール遅延部１５６に、遅延対象時間と、動作倍率と、プロセスＩＤを通知する。
【００４４】
システムコール管理表１５４は、システムコール管理部１５５によって検出されたシステムコールに関する情報を記録する表である。図４は、システムコール管理表１５４の内容を示す図である。システムコール管理部１５５は、システムコール管理表１５４に、各システムコールを呼び出したプロセスＩＤと、システムコールの種別と、システムコールの開始時刻（呼び出し時の時刻）および終了時刻（応答時の時刻）とを記録する。図４を参照すると、ディスク装置からのｒｅａｄ（読み込み）と、ディスク装置へのｗｒｉｔｅ（書き込み）と、テープ装置からのｒｅａｄのＩ／Ｏを要求するシステムコールのエントリが記録されている。
【００４５】
システムコール管理表１５４に登録されている、完了済みのエントリ（終了時刻が登録されているエントリ）は、削除されてもよい。例えば、定期的に、システムコール管理表１５４に登録されている完了済みのエントリを削除する処理が実行されてもよい。
【００４６】
なお、オペレーティングシステム１５０によっては、システムコール管理表１５４と同等の情報を統計情報として保持している場合がある。このような場合、この保持されている情報がシステムコール管理表１５４の代わりに用いられてもよい。
【００４７】
動作速度遅延部１５７は、情報処理装置１００で実行されるプロセスの動作速度を遅くする。動作速度遅延部１５７は、システムコール管理部１５５から速度調整の開始あるいは終了の通知を受けることに応じて、各ユーザプロセスの速度調整を開始あるいは終了する。また、動作速度遅延部１５７は、システムコール管理部１５５から動作倍率の変更の通知を受けることに応じて、各ユーザプロセスの速度調整における動作倍率を変更する。また、動作速度遅延部１５７は、各ユーザプロセスの速度調整の開始あるいは終了に合わせて、タイマ管理部１５８に対して速度調整の開始あるいは終了を通知する。さらに、動作速度遅延部１５７は、速度調整の開始時および動作倍率の変更時においては、動作倍率の通知もタイマ管理部１５８に対して行う。ユーザプロセスの速度調整においては、動作速度遅延部１５７は、ＣＰＵ(Central Processing Unit)が有するステップ実行機能を使用することにより、各ユーザプロセスの命令を実行するごとに例外を発生させる。このことにより、動作速度遅延部１５７は、ユーザプロセスの動作速度の遅延を行う。また、例外処理においては、ＮＯＰ(No OPeration)命令を用いて任意の数の余分なステップを実行することにより、プロセスの実行速度を任意の倍率に調整する。ただし、動作速度遅延部１５７は、遅延対象外プロセス一覧表１４０に定義されているユーザプロセスに対しては速度調整を行わない。
【００４８】
動作速度遅延部１５７がユーザプロセスの動作速度を遅くすることにより、ユーザプロセスに対する、評価対象装置の見た目上の動作速度が相対的に速くなる。
【００４９】
システムコール遅延部１５６は、システムコール管理部１５５から遅延対象時間と、動作倍率と、プロセスＩＤの通知を受けると、通知を待ち合わせる時間を算出する。そして、システムコール遅延部１５６は、この算出した時間の間待ち合わせた後、通知されたプロセスＩＤが示すプロセスに対し、システムコール管理部１５５が検出したシステムコール（Ｉ／Ｏ完了通知）を通知する。上述の通知を待ち合わせる時間は、例えば、通知された遅延対象時間と動作倍率を掛け合わせることによって算出されてもよい。
【００５０】
速度調整中において、システムコール遅延部１５６が評価対象外装置からのＩ／Ｏ完了通知を遅延させることにより、ユーザプロセスの動作速度が遅くなったために評価対象外装置の見た目上の動作速度が速くなることが防止される。上述の通知を待ち合わせる時間は、評価対象外装置のユーザプロセスに対する相対的な動作速度が速度調整を行わない場合と同じになるように算出される。
【００５１】
タイマ管理部１５８は、各プロセスが設定，使用するタイマを管理する。なお、タイマとは、残り時間が設定され、時間の経過につれて残り時間が減算されることにより、所定の時間経過を計測する機能を指す。タイマは、計時部と呼ばれることもある。具体的には、タイマ管理部１５８は、ハードウェア時計１６０からの割り込み処理によって定期的に呼び出されることにより、各プロセスが設定したタイマの残り時間を減算する。そして、速度調整中においては、速度調整の対象であるユーザプロセスのタイマの残り時間を減算する場合、ハードウェア時計１６０から時間を読み取る処理を動作倍率に基づいて定期的にスキップする。このスキップ処理により、タイマ管理部１５８は、速度調整の対象であるユーザプロセスのタイマの残り時間を減少させる速度を遅くする。すなわち、速度調整中においては、タイマ管理部１５８は、タイマの減算処理を遅延させる。ただし、タイマ管理部１５８は、遅延対象外プロセス一覧表１４０に定義されているユーザプロセスが設定したタイマについてはスキップ処理（タイマの減算処理の遅延）を行わない。
【００５２】
速度調整中において、タイマ管理部１５８が、ユーザプロセスのタイマの減算処理を速度調整の動作倍率に基づいて遅延させることにより、遅くなっているユーザプロセスの動作速度とタイマの減算処理の不整合（意図しないタイムアウトなど）が防止される。
【００５３】
タイマ管理表１５９は、タイマ管理表１５８が各プロセスのタイマを管理するために使用する表である。予め、タイマを設定する際には、各プロセスは、プロセスＩＤと、残り時間と、速度調整対象かどうかをタイマ管理表１５９に登録する。図７は、タイマ管理表１５９の内容を示す図である。タイマ管理表１５９は、設定されている各タイマについて、それぞれ、設定元のプロセスＩＤと、タイマの残り時間と、当該プロセスが速度調整の対象かどうか、を記録する。
【００５４】
図５は、システムコール管理部１５５の動作を表わすフローチャートである。以下、図５を参照して、システムコール管理部１５５がシステムコールの呼び出しあるいは応答を検出した場合の動作について説明する。
【００５５】
最初に、システムコール管理部１５５がシステムコールの呼び出しあるいは応答を検出する（ステップＳ５０１）。まず、システムコールの呼び出しであった場合（ステップＳ５０２において「呼び出し」）について説明する。
【００５６】
Ｉ／Ｏ要求などのシステムコールの呼び出しであった場合、システムコール管理部１５５は、システムコールを呼び出したプロセスが速度調整対象外かどうかを判定する（ステップＳ５０３）。具体的には、システムコール管理部１５５は、システムコールを呼び出したプロセスが遅延対象外プロセス一覧表に記載されているかどうか、すなわち遅延対象外プロセスであるかどうかを判定する。
【００５７】
システムコールを呼び出したプロセスが速度調整対象外であった場合（ステップＳ５０３において「ＹＥＳ」）、システムコール管理部１５５は、検出したシステムコールをシステムコール処理部１５３に通知し（ステップＳ５０９）、処理を終了する。
【００５８】
システムコールを呼び出したプロセスが速度調整対象外ではなかった場合、すなわち速度調整の対象であった場合（ステップＳ５０３において「ＮＯ」）、システムコール管理部１５５は、システムコール管理表１５４に新たなエントリを作成し、開始時刻（システムコール呼び出し時の時刻）を登録する（ステップＳ５０４）。また、システムコール管理部１５５は、システムコールを呼び出したプロセスＩＤと、システムコールの種別とを、開始時刻と併せて登録する。
【００５９】
次に、システムコール管理部１５５は、動作倍率定義表１３０を参照することにより、評価対象装置と、Ｉ／Ｏ種別毎の動作倍率の情報を取得する（ステップＳ５０５）。そして、システムコール管理部１５５は、速度調整が行われている最中であるかどうかを判定する（ステップＳ５０６）。この判定は、システムコール管理表１５４を参照し、評価対象装置に対して発行されたＩ／Ｏであり、かつ完了していないＩ／Ｏ（終了時刻が登録されていないエントリ）の有無を確認することによって行われてもよい。あるいは、この判定は、動作速度遅延部１５７に速度調整中であるかどうかを問い合わせることにより行ってもよい。
【００６０】
速度調整が行われている最中である場合（ステップＳ５０６において「ＹＥＳ」）、システムコール管理部１５５は、検出したシステムコールをシステムコール処理部１５３に通知し（ステップＳ５０９）、処理を終了する。
【００６１】
速度調整が行われている最中ではない場合（ステップＳ５０６において「ＮＯ」）、システムコール管理部１５５は、検出したシステムコールが評価対象装置に対するＩ／Ｏの発行であるかどうかを判定する（ステップＳ５０７）。この判定は、検出したシステムコールがＩ／Ｏの対象としている周辺装置が、動作倍率定義表１３０に評価対象装置として記載されているか否かを確認することによって行われてもよい。
【００６２】
検出したシステムコールが評価対象装置に対するＩ／Ｏの発行ではなかった場合（ステップＳ５０７において「ＮＯ」）、システムコール管理部１５５は、検出したシステムコールをシステムコール処理部１５３に通知し（ステップＳ５０９）、処理を終了する。
【００６３】
検出したシステムコールが評価対象装置に対するＩ／Ｏの発行であった場合（ステップＳ５０７において「ＹＥＳ」）、システムコール管理部１５５は、動作速度遅延部１５７に、速度調整の開始と、検出したシステムコールに対応する（システムコールがＩ／Ｏの対象とする装置とＩ／Ｏ種別に対応する）動作倍率を通知する（ステップＳ５０８）。それから、システムコール管理部１５５は、検出したシステムコールをシステムコール処理部１５３に通知し（ステップＳ５０９）、処理を終了する。
【００６４】
次に、システムコールの応答であった場合（ステップＳ５０２において「応答」）について説明する。
【００６５】
Ｉ／Ｏ完了通知などのシステムコールの応答であった場合、システムコール管理部１５５は、システムコール管理表１５４に未完了のエントリがあるかどうかを判定する（ステップＳ５１０）。なお、未完了のエントリとは、Ｉ／Ｏが完了していない、すなわち、システムコールの応答が検出されておらず、終了時刻が登録されていないエントリを指す。
【００６６】
システムコール管理表１５４に未完了のエントリが無い場合（ステップＳ５１０において「ＮＯ」）、システムコール管理部１５５は、検出したシステムコールを呼び出し元のユーザプロセスに通知し（ステップＳ５２１）、処理を終了する。
【００６７】
システムコール管理表１５４に未完了のエントリがある場合（ステップＳ５１０において「ＹＥＳ」）、システムコール管理部１５５は、検出したシステムコールに対応するシステムコール管理表１５４のエントリに終了時刻（システムコール応答時の時刻）を登録する（ステップＳ５１１）。
【００６８】
次に、システムコール管理部１５５は、速度調整が行われている最中であるかどうかを判定する（ステップＳ５１２）。
【００６９】
速度調整が行われている最中である場合（ステップＳ５１２において「ＹＥＳ」）、システムコール管理部１５５は、動作倍率定義表１３０を参照することにより、評価対象装置と、Ｉ／Ｏ種別毎の動作倍率の情報を取得する（ステップＳ５１３）。そして、システムコール管理部１５５は、検出したシステムコールが評価対象装置からのＩ／Ｏの完了通知であるかどうかを判定する（ステップＳ５１４）。この判定は、検出したシステムコールがＩ／Ｏの対象としている周辺装置が、動作倍率定義表１３０に評価対象装置として記載されているか否かを確認することによって行われてもよい。
【００７０】
検出したシステムコールが評価対象装置からのＩ／Ｏの完了通知である場合（ステップＳ５１４において「ＹＥＳ」）、システムコール管理部１５５は、評価対象装置への全Ｉ／Ｏが完了したかどうかを判定する（ステップＳ５１５）。この判定は、システムコール管理表１５４に、評価対象装置のエントリで終了時刻が登録されていないものが存在するか否かを確認することによって行われてもよい。
【００７１】
評価対象装置への全Ｉ／Ｏが完了した場合（ステップＳ５１５において「ＹＥＳ」）、システムコール管理部１５５は、動作速度遅延部１５７に速度調整の終了を通知する（ステップＳ５１６）。それから、システムコール管理部１５５は、検出したシステムコールを呼び出し元のユーザプロセスに通知し（ステップＳ５２１）、処理を終了する。
【００７２】
評価対象装置への全Ｉ／Ｏが完了していない場合（ステップＳ５１５において「ＮＯ」）、システムコール管理部１５５は、動作速度遅延部１５７に動作倍率の変更と、変更後の動作倍率を通知する（ステップＳ５１７）。具体的には、システムコール管理部１５５は、評価対象装置に対する、今回完了を受け付けたＩ／Ｏの次に処理されるＩ／Ｏを抽出し、このＩ／Ｏに対応する動作倍率を動作倍率の変更指示と共に動作速度遅延部１５７に通知する。今回完了を受け付けたＩ／Ｏの次に処理されるＩ／Ｏは、システムコール管理表１５４に登録されているエントリのうち、次の条件１〜３の全てを満たすエントリが示すＩ／Ｏが選ばれてもよい。条件１：評価対象装置へのＩ／Ｏを要求するシステムコールのエントリである。条件２：終了時刻が登録されていない。条件３：左記の条件１および２を満たし、かつ、最も開始時刻が早い。システムコール管理部１５５は、このようにして選ばれたエントリのシステムコールに対応する（システムコールがＩ／Ｏの対象とする装置とＩ／Ｏ種別に対応する）動作倍率への変更を動作速度遅延部１５７に通知する。それから、システムコール管理部１５５は、検出したシステムコールを呼び出し元のユーザプロセスに通知し（ステップＳ５２１）、処理を終了する。
【００７３】
速度調整が行われている最中ではない場合（ステップＳ５１２において「ＮＯ」）、あるいは、検出したシステムコールが評価対象装置からのＩ／Ｏの完了通知ではない場合（ステップＳ５１４において「ＮＯ」）、システムコール管理部１５５は、システムコール管理表に基づいて遅延対象時間を算出する（ステップＳ５１８）。遅延対象時間は、評価対象外の装置の見た目上の動作速度が速くならないように、システムコールに対する評価対象外の装置の応答を調整（遅延）する際に使用される。
【００７４】
図６は、速度調整開始から終了までの期間と、システムコールの開始から終了（Ｉ／Ｏの発行から完了）までの期間と、遅延対象時間の関係を説明する図である。この図は、横方向が時間軸を表わしており、「速度調整中」と付記された矢印が速度調整の開始から終了までを表わす。そして、「速度調整中」と付記された矢印の左端に接する縦方向の点線が速度調整の開始を表わし、右端に接する縦方向の点線が速度調整の終了を表わす。また、「システムコール」と付記された矢印がシステムコールの開始(呼び出し)から終了（応答）までを表わす。システムコール管理部１５５は、システムコールの開始から終了までの間で、速度調整が行われていた部分の期間を、そのシステムコールの遅延対象時間として算出する。
【００７５】
検出したシステムコールに遅延対象時間が存在しない場合（ステップＳ５１９において「ＮＯ」）、システムコール管理部１５５は、検出したシステムコールを呼び出し元のユーザプロセスに通知し（ステップＳ５２１）、処理を終了する。
【００７６】
検出したシステムコールに遅延対象時間が存在する場合（ステップＳ５１９において「ＹＥＳ」）、システムコール管理部１５５は、遅延対象時間と、遅延対象時間における速度調整の動作倍率と、システムコールを呼び出したプロセスＩＤを、システムコール遅延部１５６に通知し（ステップＳ５２０）、処理を終了する。
【００７７】
図８〜１０は、動作速度遅延部１５７の動作を表わすフローチャートである。以下、図８〜１０を参照して、動作速度遅延部１５７がシステムコール管理部１５５から通知を受けた場合の動作について説明する。
【００７８】
図８は、動作速度遅延部１５７がシステムコール管理部１５５から速度調整の開始の通知を受けた場合の動作を表わすフローチャートである。システムコール管理部１５５から速度調整の開始の通知を受けると、動作速度遅延部１５７は、遅延対象外プロセス一覧表を参照することにより、遅延対象外プロセスの一覧を取得する（ステップＳ８０１）。次に、動作速度遅延部１５７は、ユーザプロセスを１件抽出する（ステップＳ８０２）。
【００７９】
抽出したプロセスが遅延対象外プロセスではない場合（ステップＳ８０３において「ＮＯ」）、動作速度遅延部１５７は、この抽出したプロセスに対してステップ実行機能を有効化する（ステップＳ８０４）。具体的には、動作速度遅延部１５７は、ＣＰＵが有するステップ実行機能を使用して、このプロセスの命令を実行する毎に例外が発生するように設定する。そして、例外処理において、ＮＯＰ命令を用いて余分なステップを実行することにより、このプロセスの実行速度を、システムコール管理部１５５から速度調整の開始の通知と共に通知された動作倍率に基づいた速度に調整する。
【００８０】
一方で、抽出したプロセスが遅延対象外プロセスである場合（ステップＳ８０３において「ＹＥＳ」）、ステップＳ８０４の処理は行われない。
【００８１】
全ユーザプロセスに対する処理が完了していない場合（ステップＳ８０５において「ＮＯ」）、処理はステップＳ８０２に戻り、まだ処理されていないユーザプロセスに対してステップＳ８０２〜Ｓ８０５の処理が行われる。一方で、全ユーザプロセスに対する処理が完了した場合（ステップＳ８０５において「ＹＥＳ」）、処理はステップＳ８０６に進む。
【００８２】
動作速度遅延部１５７は、タイマ管理部１５８に、速度調整の開始と、速度調整における動作倍率を通知し（ステップＳ８０６）、処理を終了する。
【００８３】
図９は、動作速度遅延部１５７がシステムコール管理部１５５から速度調整の終了の通知を受けた場合の動作を表わすフローチャートである。システムコール管理部１５５から速度調整の終了の通知を受けると、動作速度遅延部１５７は、遅延対象外プロセス一覧表を参照することにより、遅延対象外プロセスの一覧を取得する（ステップＳ９０１）。次に、動作速度遅延部１５７は、ユーザプロセスを１件抽出する（ステップＳ９０２）。
【００８４】
抽出したプロセスが遅延対象外プロセスではない場合（ステップＳ９０３において「ＮＯ」）、動作速度遅延部１５７は、この抽出したプロセスに対してステップ実行機能を無効化する（ステップＳ９０４）。具体的には、動作速度遅延部１５７は、ＣＰＵが有するステップ実行機能を使用して、このプロセスの命令を実行する毎に例外が発生しないように設定する。
【００８５】
一方で、抽出したプロセスが遅延対象外プロセスである場合（ステップＳ９０３において「ＹＥＳ」）、ステップＳ９０４の処理は行われない。
【００８６】
全ユーザプロセスに対する処理が完了していない場合（ステップＳ９０５において「ＮＯ」）、処理はステップＳ９０２に戻り、まだ処理されていないユーザプロセスに対してステップＳ９０２〜Ｓ９０５の処理が行われる。一方で、全ユーザプロセスに対する処理が完了した場合（ステップＳ９０５において「ＹＥＳ」）、処理はステップＳ９０６に進む。
【００８７】
動作速度遅延部１５７は、タイマ管理部１５８に、速度調整の終了を通知し（ステップＳ９０６）、処理を終了する。
【００８８】
図１０は、動作速度遅延部１５７がシステムコール管理部１５５から速度調整における動作倍率の変更の通知を受けた場合の動作を表わすフローチャートである。システムコール管理部１５５から動作倍率の変更の通知を受けると、動作速度遅延部１５７は、遅延対象外プロセス一覧表を参照することにより、遅延対象外プロセスの一覧を取得する（ステップＳ１００１）。次に、動作速度遅延部１５７は、ユーザプロセスを１件抽出する（ステップＳ１００２）。
【００８９】
抽出したプロセスが遅延対象外プロセスではない場合（ステップＳ１００３において「ＮＯ」）、動作速度遅延部１５７は、この抽出したプロセスに対して速度調整における動作倍率の変更を行う（ステップＳ１００４）。具体的には、動作速度遅延部１５７は、ＣＰＵのステップ実行機能による例外処理において、このプロセスの実行速度を、システムコール管理部１５５から動作倍率の変更の通知と共に通知された変更後の動作倍率に基づいた速度に調整する。
【００９０】
一方で、抽出したプロセスが遅延対象外プロセスである場合（ステップＳ１００３において「ＹＥＳ」）、ステップＳ１００４の処理は行われない。
【００９１】
全ユーザプロセスに対する処理が完了していない場合（ステップＳ１００５において「ＮＯ」）、処理はステップＳ１００２に戻り、まだ処理されていないユーザプロセスに対してステップＳ１００２〜Ｓ１００５の処理が行われる。一方で、全ユーザプロセスに対する処理が完了した場合（ステップＳ１００５において「ＹＥＳ」）、処理はステップＳ１００６に進む。
【００９２】
動作速度遅延部１５７は、タイマ管理部１５８に、動作倍率の変更と、変更後の動作倍率を通知し（ステップＳ１００６）、処理を終了する。
【００９３】
図１１は、タイマ管理部１５８の動作を表わすフローチャートである。以下、図１１を参照して、タイマ管理部１５８の動作について説明する。
【００９４】
タイマ管理部１５８は、ハードウェア時計１６０からの割り込み処理によって定期的に呼び出されることにより、各プロセスが設定したタイマの減算処理を開始する（ステップＳ１１０１）。
【００９５】
最初に、タイマ管理部１５８は、タイマを１件抽出する（ステップＳ１１０２）。
【００９６】
次に、速度調整が行われている最中ではない場合（ステップＳ１１０３において「ＮＯ」）、タイマ管理部１５８は、当該タイマの残り時間を減算する（ステップＳ１１０５）。
【００９７】
一方で、速度調整が行われている最中である場合（ステップＳ１１０３において「ＹＥＳ」）、タイマ管理部１５８は、当該タイマが速度調整対象かどうかを判定する（ステップＳ１１０４）。具体的には、この判定は、タイマ管理表１５９の当該タイマに対応するエントリを参照することによって行われてもよい。
【００９８】
当該タイマが速度調整対象ではない場合（ステップＳ１１０４において「ＮＯ」）、タイマ管理部１５８は、当該タイマの残り時間を減算する（ステップＳ１１０５）。一方で、当該タイマが速度調整対象である場合（ステップＳ１１０４において「ＹＥＳ」）、タイマ管理部１５８は、当該タイマの残り時間を減算する際に、動作速度遅延部１５７から通知された動作倍率に基づいて減算処理をスキップする（ステップＳ１１０６）。例えば、動作倍率が３倍である場合は、動作速度遅延部１５７は、３回に１回減算処理を行い、３回に２回は減算処理を行わない（スキップする）。
【００９９】
全タイマに対する処理が完了していない場合（ステップＳ１１０７において「ＮＯ」）、処理はステップＳ１１０２に戻り、まだ処理されていないタイマに対してステップＳ１１０２〜Ｓ１１０７の処理が行われる。一方で、全タイマに対する処理が完了した場合（ステップＳ１１０７において「ＹＥＳ」）、処理は終了する。
【０１００】
システムコール管理表１５４に登録されている、完了済みのエントリ（終了時刻が登録されているエントリ）は、定期的に削除されてもよい。
【０１０１】
以上のように、本発明の第１の実施形態に係る装置評価システムＳ１は、評価対象装置の見た目上の動作速度を速くする。なぜならば、動作速度遅延部１５７が、ユーザプロセスの動作速度を遅くするからである。
【０１０２】
また、本発明の第１の実施形態に係る装置評価システムＳ１は、評価に関係しない部分（機能や期間）への影響を抑えることができる。なぜならば、システムコール管理部１５５が、評価対象装置へのＩ／Ｏの開始に対応して速度調整を開始し、Ｉ／Ｏの完了に対応して速度調整を終了するからである。
【０１０３】
また、本発明の第１の実施形態に係る装置評価システムＳ１は、評価対象外装置の見た目上の動作速度が速くなることを防止する。なぜならば、速度調整中においては、システムコール遅延部１５６が評価対象外装置からＩ／Ｏ要求元プロセスへのＩ／Ｏ完了通知を遅延させるからである。
【０１０４】
また、本発明の第１の実施形態に係る装置評価システムＳ１は、遅くなっているユーザプロセスの動作速度とタイマの減算処理の不整合を防止する。なぜならば、速度調整中においては、タイマ管理部１５８が、ユーザプロセスのタイマの減算処理を速度調整の動作倍率に基づいて遅延させるからである。
【０１０５】
上述のように、第１の実施形態においては、動作速度遅延部１５７が、ユーザプロセスの動作速度を遅くするために、ＣＰＵが有するステップ実行機能を使用した。しかしながら、本発明においては、ユーザプロセスの動作速度を遅くするための方法はこれに限定されず、以下で説明する第２〜第４の実施形態のように、様々な速度調整の手法を用いることができる。なお、これら第２〜第４の実施形態は、上述した第１の実施形態を基本とするものであり、第１の実施形態に追加した構成要素とその処理動作を除き、第１の実施形態と同じである。
【０１０６】
［第２の実施形態］
次に、本発明の第２の実施の形態を説明する。以下の説明では、第１の実施形態と同様な構成については同一の参照番号を付与することにより、重複する説明を省略する。これは、第３および第４の実施形態の説明についても同様である。
【０１０７】
図１２は、本発明の第２の実施形態に係る装置評価システムの構成を表すブロック構成図である。本発明の第２の実施形態に係る装置評価システムＳ２は、図１の装置評価システムＳ１に加え、プロセスディスパッチ部１２０１と、命令置換部１２０２とを含む。
【０１０８】
プロセスディスパッチ部１２０１は、オペレーティングシステムが有する、ＣＰＵ資源のプロセスへの割り当て機能に手が加えられたものである。命令置換部１２０２は、ユーザプロセスの任意の命令をデバッグ用の割り込み命令に置き換え、割り込み発生時に元の命令に戻す。
【０１０９】
第２の実施形態においては、動作速度を遅くする対象のユーザプロセスへ処理が切り替わる際毎に、プロセスディスパッチ部１２０１が命令置換部１２０２を呼び出す。そして、命令置換部１２０２が、該当プロセスが次に実行する命令を一時的にデバッグ用の割り込み命令に置き換えることで、割り込み処理を呼び出す。このことにより、第１の実施形態と同様にステップ実行を行うことが可能となる。
【０１１０】
［第３の実施形態］
次に、本発明の第３の実施の形態を説明する。
【０１１１】
図１３は、本発明の第３の実施形態に係る装置評価システムの構成を表すブロック構成図である。本発明の第３の実施形態に係る装置評価システムＳ３は、図１の装置評価システムＳ１に加え、プロセスディスパッチ部１３０１と、メモリスワップアウト部１３０２とを含む。
【０１１２】
プロセスディスパッチ部１３０１は、オペレーティングシステムが有する、ＣＰＵ資源のプロセスへの割り当て機能に手が加えられたものである。メモリスワップアウト部１３０２は、ユーザプロセスが使用する物理メモリ上の全ての領域にダミーデータを読み込むことで、メモリのスワップアウトを発生させる。
【０１１３】
第３の実施形態においては、ユーザプロセスの切り替えが発生する毎に、プロセスディスパッチ部１３０１がメモリスワップアウト部１３０２を呼び出し、メモリのスワップアウトを発生させる。その後、該当プロセスが次の命令を実行することにより、スワップインが発生する。すなわち、ユーザプロセスの切り替えが発生する毎に、スワップアウトとスワップインの処理が動作することにより、ユーザプロセスの動作速度を遅くすることが可能となる。
【０１１４】
［第４の実施形態］
次に、本発明の第４の実施の形態を説明する。
【０１１５】
図１４は、本発明の第４の実施形態に係る装置評価システムの構成を表すブロック構成図である。本発明の第４の実施形態に係る装置評価システムＳ４は、図１の装置評価システムＳ１に加え、プロセスディスパッチ部１４０１を含む。
【０１１６】
プロセスディスパッチ部１４０１は、オペレーティングシステムが有する、ＣＰＵ資源のプロセスへの割り当て機能である。
【０１１７】
第４の実施形態においては、動作速度遅延手段１５７が、プロセスディスパッチ部１４０１に動作倍率を通知する。そして、プロセスディスパッチ部１４０１が、ユーザプロセスに割り当てるＣＰＵ時間を動作倍率に合わせて減らすことで、ユーザプロセスの動作速度を遅くすることが可能となる。
【０１１８】
具体的には、例えば、動作倍率が２倍である場合には、プロセスディスパッチ部１４０１が、該当プロセスに割り当てるＣＰＵ時間を１／２に設定する。また、本来なら該当プロセスが使用できる残りのＣＰＵ時間は、どのプロセスにも割り当てないようにする。このことにより、目的の動作速度を得ることができる。
【０１１９】
［第５の実施形態］
次に、本発明の第５の実施の形態を説明する。
【０１２０】
図１５は、本発明の第５の実施形態に係る装置評価システムの構成を表すブロック構成図である。本発明の第５の実施形態に係る装置評価システムＳ５は、情報処理装置１０００と、テープ装置３０００とを備える。情報処理装置１０００は、テープ装置使用プロセス１０１０と、システムコール管理部１０２０と、動作速度遅延部１０３０とを含む。
【０１２１】
テープ装置３０００は、評価対象装置と呼ばれることもある。テープ装置使用プロセス１０１０は、プロセスと呼ばれることもある。システムコール管理部１０２０は、Ｉ／Ｏ管理部と呼ばれることもある。
【０１２２】
テープ装置３０００は、情報処理装置１０００に接続される。
【０１２３】
テープ装置使用プロセス１０１０は、テープ装置３０００へのＩ／Ｏを発行する。
【０１２４】
システムコール管理部１０２０は、テープ装置使用プロセス１０１０からテープ装置３０００へのＩ／Ｏの発行を検出するのに応じて、速度調整を開始する。
【０１２５】
動作速度遅延部１０３０は、プロセスの動作速度を遅くする。上述の速度調整において、動作速度遅延部１０３０が、テープ装置使用プロセス１０１０の動作速度を遅くすることにより、テープ装置３０００の見た目上の速度が向上する。
【０１２６】
以上のように、本発明の第５の実施形態に係る装置評価システムＳ５は、評価対象装置の見た目上の動作速度を速くする。なぜならば、動作速度遅延部１０３０が、プロセスの動作速度を遅くするからである。
【０１２７】
また、本発明の第５の実施形態に係る装置評価システムＳ５は、評価に関係しない部分（機能や期間）への影響を抑えることができる。なぜならば、システムコール管理部１０２０が、評価対象装置へのＩ／Ｏの開始に対応して速度調整を開始するからである。
【０１２８】
図１６は、コンピュータを構成する要素の例を表すブロック構成図である。図１６のコンピュータ９０００は、ＣＰＵ９０１０と、ＲＡＭ(Random Access Memory)９０２０と、ＲＯＭ(Read Only Memory)９０３０と、ストレージ媒体９０４０と、通信インタフェース９０５０とを備えている。
【０１２９】
前述した情報処理装置１００および１０００の構成要素は、プログラムがコンピュータ９０００のＣＰＵ９０１０において実行されることにより実現されてもよい。具体的には、前述した図１あるいは１２〜１５に記載の構成要素である、ディスク装置使用プロセス１１０，テープ装置使用プロセス１２０，ディスク装置用デバイスドライバ１５１，テープ装置用デバイスドライバ１５２，システムコール処理部１５３，システムコール管理部１５５，システムコール遅延部１５６，動作速度遅延部１５７，タイマ管理部１５８，プロセスディスパッチ部１２０１と１３０１と１４０１，命令置換部１２０２およびメモリスワップアウト部１３０２は、ＣＰＵ９０１０がＲＯＭ９０３０あるいはハードディスクドライブ９０４０からプログラムを読み込み、読み込んだプログラムを、例えば図５および８〜１１に示したフローチャートの手順の如くＣＰＵ９０１０が実行することにより実現されてもよい。そして、このような場合において、上述した実施形態を例に説明した本発明は、係るコンピュータプログラムを表わすコードあるいはそのコンピュータプログラムを表わすコードが格納されたコンピュータ読み取り可能な記憶媒体（例えばハードディスクドライブ９０４０や、不図示の着脱可能な磁気ディスク媒体，光学ディスク媒体やメモリカードなど）によって構成されると捉えることができる。
【０１３０】
あるいは、ディスク装置使用プロセス１１０，テープ装置使用プロセス１２０，ディスク装置用デバイスドライバ１５１，テープ装置用デバイスドライバ１５２，システムコール処理部１５３，システムコール管理部１５５，システムコール遅延部１５６，動作速度遅延部１５７，タイマ管理部１５８，プロセスディスパッチ部１２０１と１３０１と１４０１，命令置換部１２０２およびメモリスワップアウト部１３０２は、専用のハードウェアで実現されてもよい。また、情報処理装置１００および１０００は、これら構成要素を備える専用のハードウェアであってもよい。
【０１３１】
上記の実施形態の一部または全部は、以下の付記のようにも記載されうるが、以下には限られない。
【０１３２】
（付記１）
評価対象装置が接続され、
前記評価対象装置へのＩ／Ｏを発行するプロセスと、
前記プロセスから前記評価対象装置へのＩ／Ｏの発行を検出するのに応じて速度調整を開始するＩ／Ｏ管理手段と、
前記プロセスの動作速度を遅くする動作速度遅延手段とを備え、
前記速度調整において、前記動作速度遅延手段が前記プロセスの動作速度を遅くすることにより、前記評価対象装置の見た目上の速度を向上させる情報処理装置。
【０１３３】
（付記２）
評価対象外装置がさらに接続され、
前記情報処理装置は、Ｉ／Ｏ完了通知を遅延させるＩ／Ｏ遅延手段をさらに含み、
前記プロセスが前記評価対象外装置へのＩ／Ｏを発行し、
前記速度調整において、前記Ｉ／Ｏ遅延手段が前記評価対象外装置からのＩ／Ｏ完了通知を遅延させる付記１に記載の情報処理装置。
【０１３４】
（付記３）
前記Ｉ／Ｏ管理手段が、前記評価対象装置からのＩ／Ｏ完了通知を検出するのに応じて、前記速度調整を終了し、
前記Ｉ／Ｏ遅延手段が、前記速度調整の開始から終了までの期間と、前記評価対象外装置へのＩ／Ｏの発行から完了までの期間に基づいて、前記評価対象外装置からのＩ／Ｏ完了通知を遅延させる付記１または２に記載の情報処理装置。
【０１３５】
（付記４）
前記プロセスが使用する計時手段を管理するタイマ管理手段をさらに備え、
前記速度調整において、前記タイマ管理手段が前記計時手段の減算処理を遅延させる付記１乃至３のいずれかに記載の情報処理装置。
【０１３６】
（付記５）
付記２乃至４のいずれかに記載の情報処理装置と、
前記評価対象装置と、
前記評価対象外装置とを備える装置評価システム。
【０１３７】
（付記６）
プロセスが評価対象外装置へのＩ／Ｏを発行し、
前記プロセスから前記評価対象装置へのＩ／Ｏの発行を検出し、
速度調整を開始し、
前記速度調整において、前記プロセスの動作速度を遅くすることにより、前記評価対象装置の見た目上の速度を向上させる装置評価方法。
【０１３８】
（付記７）
前記プロセスが評価対象外装置へのＩ／Ｏを発行し、
前記速度調整において、前記評価対象外装置からのＩ／Ｏ完了通知を遅延させる付記６に記載の装置評価方法。
【０１３９】
（付記８）
前記評価対象装置からのＩ／Ｏ完了通知を検出し、
前記速度調整を終了し、
前記速度調整の開始から終了までの期間と、前記評価対象外装置へのＩ／Ｏの発行から完了までの期間に基づいて、前記評価対象外装置からのＩ／Ｏ完了通知を遅延させる付記６または７に記載の装置評価方法。
【０１４０】
（付記９）
前記速度調整において、前記プロセスが使用する計時手段の減算処理を遅延させる付記６乃至８のいずれかに記載の装置評価方法。
【０１４１】
（付記１０）
コンピュータに、
プロセスから評価対象装置へのＩ／Ｏの発行を検出する処理と、
速度調整を開始する処理と、
前記速度調整において、前記プロセスの動作速度を遅くすることにより、前記評価対象装置の見た目上の速度を向上させる処理とを実行させるコンピュータプログラム。
【０１４２】
（付記１１）
コンピュータに、前記速度調整において、評価対象外装置からのＩ／Ｏ完了通知を遅延させる処理を実行させる付記１０に記載のコンピュータプログラム。
【０１４３】
（付記１２）
コンピュータに、
前記評価対象装置からのＩ／Ｏ完了通知を検出する処理と、
前記速度調整を終了する処理と、
前記速度調整の開始から終了までの期間と、前記評価対象外装置へのＩ／Ｏの発行から完了までの期間に基づいて、前記評価対象外装置からのＩ／Ｏ完了通知を遅延させる処理とを実行させる付記１０または１１に記載のコンピュータプログラム。
【０１４４】
（付記１３）
コンピュータに、前記速度調整において、前記プロセスが使用する計時手段の減算処理を遅延させる処理を実行させる付記１０乃至１２のいずれかに記載のコンピュータプログラム。
【産業上の利用可能性】
【０１４５】
本発明は、ソフトウェアと装置のタイミングの評価に使用することができる。
【符号の説明】
【０１４６】
１００，１０００    情報処理装置
１１０    ディスク装置使用プロセス
１２０，１０１０    テープ装置使用プロセス
１３０    動作倍率定義表
１４０    遅延対象外プロセス一覧表
１５０    オペレーティングシステム
１５１    ディスク装置用デバイスドライバ
１５２    テープ装置用デバイスドライバ
１５３    システムコール処理部
１５４    システムコール管理表
１５５，１０２０    システムコール管理部
１５６    システムコール遅延部
１５７，１０３０    動作速度遅延部
１５８    タイマ管理部
１５９    タイマ管理表
１６０    ハードウェア時計
２００    ディスク装置
３００，３０００    テープ装置
１２０１，１３０１，１４０１    プロセスディスパッチ部
１２０２    命令置換部
１３０２    メモリスワップアウト部
９０００    コンピュータ
９０１０    ＣＰＵ
９０２０    ＲＡＭ
９０３０    ＲＯＭ
９０４０    ハードディスクドライブ
９０５０    通信インタフェース
Ｓ１，Ｓ２，Ｓ３，Ｓ４，Ｓ５    装置評価システム
【図１】
2014174592.tif 000003
【図２】
2014174592.tif 000004
【図３】
2014174592.tif 000005
【図４】
2014174592.tif 000006
【図５】
2014174592.tif 000007
【図６】
2014174592.tif 000008
【図７】
2014174592.tif 000009
【図８】
2014174592.tif 000010
【図９】
2014174592.tif 000011
【図１０】
2014174592.tif 000012
【図１１】
2014174592.tif 000013
【図１２】
2014174592.tif 000014
【図１３】
2014174592.tif 000015
【図１４】
2014174592.tif 000016
【図１５】
2014174592.tif 000017
【図１６】
2014174592.tif 000018