(57)【特許請求の範囲】
【請求項１】
要求元から送信されるＩ／Ｏ要求を受信し、要求元毎に及びアプリケーションプログラム毎に用意されたＩ／Ｏリストに受信したＩ／Ｏ要求を登録するＩ／Ｏ要求受信部と、Ｉ／Ｏリスト毎に優先度を保持するＩ／Ｏ優先度保持部と、入出力対象のＩ／Ｏ装置に送るＩ／Ｏ要求を格納するＩ／Ｏキューと、
を有し、
アプリケーションプログラムの一つであるバックアッププログラムの優先度は、前記アプリケーションプログラムの他のプログラムの優先度よりも相対的に低く設定されており、その設定の結果として、前記バックアッププログラムの処理時間は、前記他のプログラムの処理時間よりも相対的に短く設定されており、
前記Ｉ／Ｏ優先度保持部から所定の順番で循環式に選択されたＩ／Ｏリスト毎の優先度を読み出し、前記バックアッププログラムの優先度の設定の結果として相対的に短く設定された前記バックアッププログラムの処理時間、及び、前記アプリケーションプログラムの他のプログラムの優先度の設定の結果として相対的に長く設定された前記他のプログラムの処理時間だけ繰り返して、当該Ｉ／Ｏリストに登録された前記バックアッププログラム及び前記他のプログラムに対応するＩ／Ｏ要求の読み出しとＩ／Ｏキューへの格納を実行するＩ／Ｏ発行部と、
ユーザのリクエストに応じて前記Ｉ／Ｏ優先度保持部の内容を変更する優先度設定部と、
をさらに有することを特徴とする入出力制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入出力制御装置に関する。
【背景技術】
【０００２】
バックアップを行うシステムとしては特許文献１のものがある。これは、対象となるクライアントの起動用ＯＳイメージをバックアップサーバが作成してメディアに記録するので、そのメディアを介して起動用ＯＳをクライアントが導入して起動することにより、ネットワークを介してクライアントがバックアップサーバに接続される。その後、バックアップ対象のハードディスクやバックアップ先を選択してバックアップサーバに通知すると、バックアップ処理が行われた後、起動用ＯＳが自動的に終了するものである。尚、個々のアプリケーションプログラムに実行時の優先度を設定することも従来から行われている。例えば、表側を走るサービスプログラムの優先度を高くし、裏で走るバックアッププログラムの優先度を低く設定する等である。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−３５８２４５
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、バックアップ処理では大量のファイルやデータを外部の記憶装置、例えばハードディスク装置等のファイル装置に記録する。その際、ＯＳ（オペレーティングシステム）に対して大量のＩ／Ｏ要求を発行するので、ＯＳがその処理に忙殺されてしまって、表側で走っているアプリケーションプログラムの処理に悪い影響を与えてしまことがある。つまり、プログラムあるいはタスクとしての実行優先度は低くても、大量のＩ／Ｏ要求を発行すると他のアプリケーションプログラムのＩ／Ｏが待たされてしまい、結果としてアプリケーションプログラムの速度低下や反応の悪さとなって表れて、ユーザの使い勝手が低下していた。そこで、本願では、アプリケーションプログラムの走行中に並行してバックアップ処理を実行しても、アプリケーションプログラムに与える影響が少なくなるような入出力制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００５】
本発明は、要求元から送信されるＩ／Ｏ要求を受信し、要求元毎に及びアプリケーションプログラム毎に用意されたＩ／Ｏリストに受信したＩ／Ｏ要求を登録するＩ／Ｏ要求受信部と、Ｉ／Ｏリスト毎に優先度を保持するＩ／Ｏ優先度保持部と、入出力対象のＩ／Ｏ装置に送るＩ／Ｏ要求を格納するＩ／Ｏキューと、を有し、アプリケーションプログラムの一つであるバックアッププログラムの優先度は、前記アプリケーションプログラムの他のプログラムの優先度よりも相対的に低く設定されており、その設定の結果として、前記バックアッププログラムの処理時間は、前記他のプログラムの処理時間よりも相対的に短く設定されており、前記Ｉ／Ｏ優先度保持部から所定の順番で循環式に選択されたＩ／Ｏリスト毎の優先度を読み出し、前記バックアッププログラムの優先度の設定の結果として相対的に短く設定された前記バックアッププログラムの処理時間、及び、前記アプリケーションプログラムの他のプログラムの優先度の設定の結果として相対的に長く設定された前記他のプログラムの処理時間だけ繰り返して、当該Ｉ／Ｏリストに登録された前記バックアッププログラム及び前記他のプログラムに対応するＩ／Ｏ要求の読み出しとＩ／Ｏキューへの格納を実行するＩ／Ｏ発行部と、ユーザのリクエストに応じて前記Ｉ／Ｏ優先度保持部の内容を変更する優先度設定部と、を備え、上記課題を解決するものである。
【発明の効果】
【０００６】
本発明のバックアップシステムによれば、裏側で走っているバックアッププログラムのＩ／Ｏ処理の優先度を、表側で走っているアプリケーションプログラムのＩ／Ｏ処理の優先度より相対的に低く設定して処理するので、バックアップに係るＩ／Ｏ処理の負荷が抑えられてアプリケーションプログラムの処理への悪影響が軽減される。これによりユーザの使い勝手が向上する。
【図面の簡単な説明】
【０００７】
【図１】実施形態のＩ／Ｏ処理に係る部分の構成を示す図である。
【図２】実施形態のＩ／Ｏ要求受信部の動作を示すフローチャートである。
【図３】実施形態のＩ／Ｏ発行部の動作を示すフローチャートである。
【発明を実施するための形態】
【０００８】
本発明の実施の形態におけるバックアップシステムのＩ／Ｏ処理に係る部分の構成を図１に示す。１０はアプリケーションプログラムであり、ここでは、ユーザインターフェースを備えたいわゆる表側で実行されるサービスプログラムのみならず、裏側で実行されてサービスプログラムが作成した各種データやファイルをバックアップ処理するバックアッププログラムもアプリケーションプログラムに含まれる。アプリケーションプログラム１０は各種Ｉ／Ｏの必要が生じるとそのＩ／Ｏ要求をＩ／Ｏ要求送信部１１がＩ／Ｏ受付部に送信する。また、アプリケーションプログラム１０は複数が同時並行に実行可能であり、バックアッププログラムは表側のアプリケーションプログラムが運用中にもバックアップ処理を実行する。
【０００９】
２０はＩ／Ｏ受付部であり、送信されてきたＩ／Ｏ要求を受信するＩ／Ｏ要求受信部２１と、受信したＩ／Ｏ要求を登録するＩ／Ｏリスト２２と、Ｉ／Ｏリスト２２に登録されているＩ／Ｏ要求を取り出してＩ／Ｏ処理部にＩ／Ｏ要求を発行するＩ／Ｏ発行部２３と、優先度設定を保持するＩ／Ｏリスト優先度保持部２４を備える。このＩ／Ｏリスト優先度保持部２４はＩ／Ｏリスト２２毎の優先度を管理するＩ／Ｏリスト優先度管理テーブルとして構成されている。
【００１０】
Ｉ／Ｏリスト２２はアプリケーションプログラム１０毎に用意されており、送信されてきたＩ／Ｏ要求がそれを送信したアプリケーションプログラム１０別に先入れ先出し方式でＩ／Ｏリスト２２に溜められる。Ｉ／Ｏリスト２２はそれぞれに優先度が設定され、その優先度がＩ／Ｏリスト優先度保持部２４に登録されている。この優先度は本実施形態では当該Ｉ／Ｏリスト２２に登録されているＩ／Ｏ要求をＩ／Ｏキュー３１へ発行する処理（Ｉ／Ｏ要求をＩ／Ｏキュー３１に格納する処理）を連続して行なうことができる時間の多小で設定される。優先度が高いものほど処理時間が多く割り当てられるので、それだけ多くのＩ／Ｏ要求を発行できる。また、このＩ／Ｏリスト優先度保持部２４の内容は、アプリケーションプログラム１０のリクエストを受けて、優先度設定部２５が変更するようになっている。
【００１１】
３０はＩ／Ｏ処理部であり、Ｉ／Ｏ要求を先入れ先出し方式で格納するＩ／Ｏキュー３１と、Ｉ／Ｏキュー３１に格納されているＩ／Ｏ要求を順に取り出して、そのＩ／Ｏ要求の対象となるＩ／Ｏ装置にＩ／Ｏ即ち入出力を指示するＩ／Ｏ手段３２とを備える。４０はＩ／Ｏ装置であり、具体的には、例えば、ハードディスク装置で構成したファイル装置等が相当する。そして、これらＩ／Ｏ受付部２０とＩ／Ｏ処理部３０及びＩ／Ｏ装置４０が入出力制御装置を構成する。
【００１２】
ここで、図２および図３を参照して本実施形態の動作を説明する。図２はＩ／Ｏ要求受信部２１の動作を表すフローチャートであり、図３はＩ／Ｏ発行部２３の動作を表すフローチャートである。要求元であるアプリケーションプログラム１０からＩ／Ｏ要求が送信されると、Ｉ／Ｏ要求受信部１１がそれを受信し（ステップＳ２１）、送信元のプログラムに対応するＩ／Ｏリスト２２に登録する（ステップＳ２２）。
【００１３】
一方、Ｉ／Ｏ発行部２３は、複数用意されているＩ／Ｏリスト２２を所定の順番で循環式に選択し（ステップＳ３１）、選択したＩ／Ｏリスト２２について、そこに登録されたＩ／Ｏ要求を読み出し、その読み出したＩ／Ｏ要求をＩ／Ｏキュー３１に格納する（ステップＳ３３）。その際、Ｉ／Ｏ発行部２３は、当該Ｉ／Ｏリスト２２に設定された優先度を、Ｉ／Ｏリスト優先度保持部２４を参照して取得し（ステップＳ３２）、その優先度に対応した所定の処理時間だけ、Ｉ／Ｏリスト２２からＩ／Ｏ要求を読み出してＩ／Ｏキュー３１に格納する処理を、Ｉ／Ｏリスト２２が空になるまで繰り返し実行する。そして、処理時間が経過するか、又はＩ／Ｏリスト２２が空になると、そのＩ／Ｏリスト２２に対する処理を終了し、次のＩ／Ｏリスト２２を処理の対象として選択し、選択したＩ／Ｏリスト２２について同様の処理を実行するものである。
【００１４】
Ｉ／Ｏ処理部３０のＩ／Ｏ手段３２は、Ｉ／Ｏキュー３１に格納されたＩ／Ｏ要求を先入れ先出し方式、即ち、古いものから新しいものへと順に取り出していって、入出力対象のＩ／Ｏ装置４０に入出力を指示する処理を繰り返す。こうしてアプリケーションプログラム１０のＩ／Ｏ要求がＩ／Ｏキュー３１に格納され、格納された順にＩ／Ｏ装置４０に送られて入出力処理が実行される。
【００１５】
本実施形態では、アプリケーションプログラム１０の１つであるバックアッププログラムには、他のアプリケーションプログラム１９よりも相対的に低い優先度を設定している。バックアッププログラムが送信するＩ／Ｏ要求は、送信の都度すべてＩ／Ｏ要求受信部２１により受信されてバックアッププログラム用のＩ／Ｏリスト２２に一旦登録されるが、その後、Ｉ／Ｏキュー３１への格納に際してこの優先度が効いてくる。
【００１６】
つまり、バックアッププログラム用のＩ／Ｏリスト２２には相対的に低い優先度が設定されているので、その低い優先度に対応して、Ｉ／Ｏ発行部２３がバックアッププログラムの為に使えるＩ／Ｏ要求のＩ／Ｏキュー３１への格納処理の処理時間が、他のアプリケーションプログラムに使える時間より短くなる。その為、バックアッププログラムのＩ／Ｏ要求がＩ／Ｏキュー３１に格納される量が抑えられる。この結果、バックアッププログラムの入出力処理が、例えばユーザインターフェースを司る業務プログラム等のいわゆる表側で走るサービスプログラムの入出力処理よりも少なくなるので、それら業務プログラムの速度低下や反応速度低下によるユーザビリティの悪化を抑えることができるものである。
【００１７】
また、ユーザ（アプリケーションプログラム１０）からのリクエストに応じて、優先度設定部２５がＩ／Ｏリスト優先度保持部２４の内容を変更するので、使用状況や環境に応じて優先度を柔軟に設定してシステムを運用できるようになるものである。
【符号の説明】
【００１８】
１０  アプリケーションプログラム    ２０  Ｉ／Ｏ受付部    ２２  Ｉ／Ｏリスト    ２３  Ｉ／Ｏ発行部    ２４  Ｉ／Ｏリスト優先度保持部    ３０  Ｉ／Ｏ処理部
【図２】
0005819085.tif 000002
【図３】
0005819085.tif 000003
【図１】
0005819085.tif 000004