(57)【要約】【課題】異常事態になる前にソフトウェアの機能に制限を加えて、ソフトウェアの安定性を高めるリソース管理システムを提供する。【解決手段】このリソース管理システムは、ソフトウェア１が情報機器で実行するときに利用するリソースに対して、動作可能な範囲を設定する制限設定手段４と、この制限設定手段４で設定した動作可能な範囲内で動作していることを検証する動作範囲検証手段３を備えている。ソフトウェア１からリソース利用要求があったときに、この動作範囲検証手段３は設定してある動作可能な範囲と要求されたリソース量とを比較して、動作可能な範囲外のときにはそのソフトウェア１の実行を中止させ、予期しないソフトウェア障害を未然に防ぎ、動作安定性を高めるようにした。【選択図】　　　　図１
2004094782.tif 000002
【特許請求の範囲】
【請求項１】
情報機器で動作するソフトウェアの使用するリソースを管理するリソース管理システムにおいて、前記ソフトウェアの利用するリソースに対して、動作可能な範囲を設定する制限設定手段と、前記ソフトウェアが前記制限設定手段で設定した動作可能な範囲内で動作していることを検証する動作範囲検証手段を備え、前記動作範囲検証手段で動作可能な範囲外で動作しようとする前記ソフトウェアを検知して、予期しないソフトウェア障害を未然に防ぎ、動作安定性を高めるようにしたことを特徴とするリソース管理システム。
【請求項２】
請求項１のリソース管理システムにおいて、前記ソフトウェアを前記情報機器にインストールするときに、この情報機器の動作可能上限を調べ、この動作可能上限から動作可能な範囲を決定することを特徴とするリソース管理システム。
【請求項３】
請求項１のリソース管理システムにおいて、サーバと１台以上の情報機器をネットワークで接続した場合、前記サーバに前記情報機器の動作可能な範囲を保持しておき、前記情報機器の制限設定手段は、前記サーバに保持された動作可能な範囲を取得して、該情報機器の動作可能な範囲として設定することを特徴とするリソース管理システム。
【請求項４】
請求項１のリソース管理システムにおいて、サーバと１台以上の情報機器をネットワークで接続した場合、前記サーバは、前記情報機器にネットワーク経由でソフトウェアをインストールするときに、この情報機器の動作可能上限を調べ、この動作可能上限から決定した動作可能な範囲を前記情報機器の動作可能な範囲として設定することを特徴とするリソース管理システム。
【請求項５】
請求項１のリソース管理システムにおいて、前記情報機器の動作可能な範囲として警告値を有し、前記動作範囲検証手段で前記ソフトウェアのリソースの使用量がこの警告値に達したと判断した場合、利用者に警告を送信することを特徴とするリソース管理システム。
【請求項６】
請求項５のリソース管理システムにおいて、サーバと１台以上の情報機器をネットワークで接続した場合、前記動作範囲検証手段で前記ソフトウェアのリソースの使用量がこの警告値に達したと判断したとき、前記サーバに警告を送信することを特徴とするリソース管理システム。
【請求項７】
コンピュータに、請求項１乃至６のいずれか１に記載のリソース管理システムの機能を実行させるためのプログラム。
【請求項８】
請求項７に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、リソース管理システム、プログラムおよび記録媒体に関し、具体的には、情報機器上で動作するソフトウェアに対して、現実的に動作可能な環境で動作を保証することによって、予期せぬ障害が発生することを未然に防ぐリソース管理技術に関する。
【０００２】
【従来の技術】
従来のソフトウェアは、情報機器が持つ性能を限界まで利用すると障害が発生しやすいばかりか、機器そのものの動作にまで影響を与えてしまうことになる。
また、理論上は動作可能な機能でも、実際に動作範囲限界まで試験可能な環境を用意することが難しいため十分な試験が行えずに、予期せぬ障害を発生させていた。
【０００３】
例えば、リソースが、１ＧＨｚのＣＰＵ、１ＧＢのメモリ、５ＧＢのハードディスクを搭載したコンピュータには、ＯＳと文章管理を行うソフトウェア（以下、文章管理ソフトという）が動作しているものとする。このＯＳは、５００ＭＢのメモリ、１ＧＢのハードディスクを利用している。
また、ＯＳは、ＯＳ上で動作しているソフトウェアからメモリ利用要求があると、不足分をハードディスクにスワップアウトし、利用可能になったメモリをソフトウェアに提供している。
一方、文章管理ソフトは、動作するために７００ＭＢのメモリ、プログラムを格納するために５００ＭＢのハードディスクが必要であり、さらに、一件の文章を登録するために１００ＭＢのメモリが必要になるものとする。
また、この文章管理ソフトは、利用可能なハードディスクが少なくなってくるとファイル書込みによるエラーが発生し、データを破損することが確認されているものとする。
【０００４】
このような状況において、この文章管理ソフトが動作する時、２００ＭＢのメモリ空間が不足するが、ＯＳはＯＳ自身が利用している２００ＭＢ分のメモリをハードディスクにスワップアウトし、空いた７００ＭＢのメモリ空間を文章管理ソフトに提供することになる。
文章管理ソフトが実行され文章登録を行って、格納された文章が３．２ＧＢになると、ハードディスク利用量はＯＳの利用分１ＧＢ、ＯＳをスワップアウトした２００ＭＢ、および文章管理ソフトが利用している分５００ＭＢを合わせると、４．９ＧＢになっている。
さらに、１００ＭＢの文章を１件登録しようとすると、この１００ＭＢのメモリのために、ＯＳは１００ＭＢ分のメモリをハードディスクにスワップアウトしようとするが、この時ハードディスクの利用量は５．０Ｇになるので、ハードディスクへ登録中のデータが破損されることになる。
【０００５】
このように障害を与えるソフトウェアの実行を制御する方法として、従来は、情報機器のリソース（ＣＰＵ、メモリ、ディスク、その他のハードウェア）の使用量の制限値を事前に設定し、この制限値以上の処理を抑止するようにしていた。
しかし、処理するデータ規模などによりリソースの使用量は変動するものであり、この方法では、利用者側で事前に適切な制限値を設定することは事実上不可能と考えられる。
【０００６】
これを解決するために、特許文献１の「ジョブの挙動分析方法および装置、ならびに記憶媒体」は、処理中もしくは処理後のジョブの各コンピュータのリソース（ＣＰＵ、メモリ、ディスク／磁気テープおよびネットワーク）の使用状況の片寄りをチェックして、使用状況に片寄りがある場合には、処理中もしくは処理後のジョブを異常なジョブとして早期に検出し、無駄なコンピュータリソースへの投資の回避および処理時間の悪化を防止している。
【０００７】
【特許文献１】
特開２０００−２９７５２号公報
【０００８】
【発明が解決しようとする課題】
しかしながら、上述の特許文献１の技術では、異常なジョブとなってしまったものを検出して排除するものであり、異常事態になる前に検知して、そのソフトウェアに制限を与え、ソフトウェアの動作を保証するものではない。
【０００９】
本発明は、上述の実情を考慮してなされたものであって、異常事態になる前にソフトウェアの機能に制限を加えて、ソフトウェアの安定性を高めるリソース管理システム、プログラムおよび記録媒体を提供することを目的としている。
【００１０】
【課題を解決するための手段】
上記の課題を解決するために、本発明の請求項１のリソース管理システムは、情報機器で動作するソフトウェアの使用するリソースを管理するリソース管理システムにおいて、前記ソフトウェアの利用するリソースに対して、動作可能な範囲を設定する制限設定手段と、前記ソフトウェアが前記制限設定手段で設定した動作可能な範囲内で動作していることを検証する動作範囲検証手段を備え、前記動作範囲検証手段で動作可能な範囲外で動作しようとする前記ソフトウェアを検知して、予期しないソフトウェア障害を未然に防ぎ、動作安定性を高めるようにしたことを特徴とする。
また、本発明の請求項２は、請求項１のリソース管理システムにおいて、前記ソフトウェアを前記情報機器にインストールするときに、この情報機器の動作可能上限を調べ、この動作可能上限から動作可能な範囲を決定することを特徴とする。
また、本発明の請求項３は、請求項１のリソース管理システムにおいて、サーバと１台以上の情報機器をネットワークで接続した場合、前記サーバに前記情報機器の動作可能な範囲を保持しておき、前記情報機器の制限設定手段は、前記サーバに保持された動作可能な範囲を取得して、該情報機器の動作可能な範囲として設定することを特徴とする。
また、本発明の請求項４は、請求項１のリソース管理システムにおいて、サーバと１台以上の情報機器をネットワークで接続した場合、前記サーバは、前記情報機器にネットワーク経由でソフトウェアをインストールするときに、この情報機器の動作可能上限を調べ、この動作可能上限から決定した動作可能な範囲を前記情報機器の動作可能な範囲として設定することを特徴とする。
また、本発明の請求項５は、請求項１のリソース管理システムにおいて、前記情報機器の動作可能な範囲として警告値を有し、前記動作範囲検証手段で前記ソフトウェアのリソースの使用量がこの警告値に達したと判断した場合、利用者に警告を送信することを特徴とする。
また、本発明の請求項６は、請求項５のリソース管理システムにおいて、サーバと１台以上の情報機器をネットワークで接続した場合、前記動作範囲検証手段で前記ソフトウェアのリソースの使用量がこの警告値に達したと判断したとき、前記サーバに警告を送信することを特徴とする。
また、本発明の請求項７のプログラムは、コンピュータに、請求項１乃至６のいずれか１に記載のリソース管理システムの機能を実行させるためのプログラムである。
また、本発明の請求項８の記録媒体は、請求項７に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体である。
【００１１】
以上のような構成により、ソフトウェアの実行時にリソース不足を予め検知することによって、予期しないソフトウェア障害を未然に防ぎ、情報機器全体の動作安定性を向上させることができる。
また、ソフトウェアのインストール時に、動作可能な範囲の制限値を自動的に設定することによって、管理者がこの制限値を設定する手順を簡略化させることができる。
また、動作可能な範囲の制限値として警告値を備えるようにして、リソースの利用可能量がこの警告値を超えるような場合には、利用者へ警告を通知するようにし、ソフトウェアが機能制限を行う前に対策をとりやすくなる。
【００１２】
また、情報機器がネットワーク等でサーバによって管理されている場合には、各情報機器の動作可能な範囲の制限値をサーバに保持し、情報機器でリソース利用の問合せが必要となったときに、この制限値をサーバから取り寄せることによって各情報機器への設定手順を簡略化させることができる。
または、情報機器にネットワーク経由でソフトウェアをインストールするときに、サーバから直接各情報機器へ設定を行うことにより制限値の設定手順を簡略化させることができる。
【００１３】
【発明の実施の形態】
以下、図面を参照して本発明のリソース管理システムの実施形態を説明する。
＜実施形態１＞
図１は、本発明のリソース管理システムの実施形態１の機能構成を示すブロック図である。
図１において、情報機器上で動作するリソース管理システムは、ソフトウェア１、ＯＳ（オペレーティングシステム）２、動作範囲検証手段３、制限設定手段４、制限記憶手段５を含んでいる。
ソフトウェア１は、例えば、文章管理を行うためのアプリケーションソフトウェア、文書を作成するためのアプリケーションソフトウェアやファイルコピーなどのユーティリティソフトウェアであり、リソース（ＣＰＵ、メモリ、ディスク、その他のハードウェア）の監視対象となるソフトウェアである。
【００１４】
ＯＳ（オペレーティングシステム）２は、ソフトウェア１の実行や情報機器におけるリソース等を制御する。
例えば、ＯＳ２は、ハードディスク、ＣＤ−ＲＯＭ等の記憶装置に対する入出力管理を行う。
また、ＯＳ２は、メモリ領域の確保、メモリ領域の解除、または、メモリ領域のスワップイン／スワップアウト等のメモリ管理を行う。
さらに、ＯＳ２は、情報機器のＣＰＵ（中央演算装置）によって実行するソフトウェアのスケジュール管理を行う。
【００１５】
制限設定手段４は、ソフトウェア１がエラーを引き起こさずに動作可能なリソースの制限値を制限記憶手段５に設定する。
例えば、この制限記憶手段５には、情報機器の使用可能なメモリ最大量、記憶装置ごとの利用可能な最大量、ＣＰＵ稼働率の制限等が記憶される。
この制限記憶手段５に記憶されるリソースの制限値を、情報機器を管理する管理者が設定してもよいが、ソフトウェア１をインストールする際に、インストーラが情報機器のリソースを調べて設定するようにしてもよい。
【００１６】
例えば、メモリ１ＧＢ、ハードディスク５ＧＢのリソースを備えている情報機器で、メモリ５００ＭＢ、ハードディスク１ＧＢのリソースを消費するＯＳが動作している時に、インストーラを用いて、メモリ７００ＭＢ、ハードディスク５００ＭＢのリソースを消費する文章管理ソフトウェアをインストールする場合を考える。
インストール処理を開始すると、インストーラは、インストール中の情報機器の所有するリソース情報、ＯＳ動作中に消費されるリソース情報（例えば、スワップアウト領域等）およびインストール済みのソフトウェアのリソース情報を取得して、インストール中のソフトウェアが消費するリソース情報を差し引いた利用可能なリソース情報から適切な制限値（例えば、利用可能最大量の８０％に設定）を決定する。
この場合、ハードディスクの利用可能最大量は、
５ＧＢ−１ＧＢ（ＯＳ）−５００ＭＢ（文章管理ソフト）＝３．５ＧＢ
であるから、制限値を利用可能最大量である３．５ＧＢの８０％にあたる２．８ＧＢと設定するようにする。
【００１７】
動作範囲検証手段３は、ソフトウェア１によって要求された入出力管理、メモリ管理やスケジュール管理の際に呼び出され、ＯＳ２によって管理されているリソースの状態と制限記憶手段５に記憶されたリソースとを比較して、このソフトウェア１が動作可能であるかを検証する。
【００１８】
図２は、動作範囲検証手段３の処理手順を示すフローチャートである。
ソフトウェア１からＯＳ２経由でリソース利用の問い合わせ（例えば、ハードディスクにデータを書き出す）があると、要求されたリソース量を取得する（ステップＳ１）。
このリソース量と制限記憶手段５に記憶された対応するリソースの制限値を比較する（ステップＳ２）。
制限値を超えていた場合（ステップＳ２のＹＥＳ）、ＯＳ２へ「そのリソースの利用中止」を知らせる（ステップＳ３）。
一方、制限値を超えていなかった場合（ステップＳ２のＮＯ）、「そのリソースの利用許可」をＯＳ２へ知らせる（ステップＳ４）。
【００１９】
ＯＳ２は、以上のようにして動作範囲検証手段３から「リソースの利用中止」を通知されると、リソース利用の問い合わせ要求を出したソフトウェア１へ実行の中止を通知する。
また、ＯＳ２は、動作範囲検証手段３から「リソースの利用許可」を通知されると、例えば、ハードディスクへの領域確保であれば、要求された量の領域をそのハードディスク上に確保し、その領域へデータ等を書き出す。
これにより、リソースの利用可能な範囲を超えて使用することがなくなるので、すでに登録されているデータ等の破壊がなくなる。
【００２０】
さらに、制限記憶手段５に各リソースに警告値を保持するようにして、動作範囲検証手段３は要求されたリソース量がこの警告値を超えているかを検知し、超えていた場合には図３のような警告メッセージを情報機器に備えられた表示装置の画面へ表示するようにしてもよい。
この場合、利用者へ警告を通知するようにしたので、ソフトウェアが機能制限を行う前に利用者が対策をとりやすくなる。
【００２１】
例えば、制限記憶手段５のハードディスクの警告値を２．０ＧＢ、利用可能最大量として３．０ＧＢと設定されている場合、文章管理ソフトが動作している時に、ハードディスクの使用量が２．０ＧＢに達した時に図３のような内容の警告メッセージを表示装置の画面へ表示させる。
【００２２】
＜実施形態２＞
図４は、本発明のリソース管理システムの実施形態２の構成を示すブロック図である。
図４において、リソース管理システムは、サーバ１０と１台以上の情報機器２０をネットワーク３０で接続している。
サーバ１０は、各情報機器２０の有するリソースの動作可能な範囲である制限値を記憶したファイルを情報機器２０ごとに保持している。
この制限値は、各情報機器２０からのリソース利用の問合せに応じて、要求のあった情報機器２０へ送信される。
この制限値は、情報機器２０を管理するサーバ１０の管理者が設定してもよいが、ソフトウェアをサーバ１０からネットワーク３０経由でインストールした場合に、このインストーラがインストールする情報機器２０のリソースを調べて、算出するようにしてもよい。
【００２３】
サーバ１０に接続した情報機器２０はすべて同一の仕様であっても、また、違う仕様であってもかまわない。
情報機器２０は、実施形態１と同様な機能構成（図１参照）を持っている。
この情報機器２０において、ソフトウェア１からはじめてリソース利用の問い合わせがＯＳ２にあったとき、制限設定手段４がサーバ１０からリソースの制限値を記憶したファイルを、例えば、ＦＴＰ（Ｆｉｌｅ　Ｔｒａｎｓｆｅｒ　Ｐｒｏｔｏｃｏｌ）コマンドによって取得し、そのファイルの内容を制限記憶手段５へ書き込む。
その後で、ＯＳ２は、動作範囲検証手段３によって、要求されたリソース量が対応するリソースの制限値を超えているかどうかを検証する。
【００２４】
さらに、情報機器２０の制限記憶手段５に各リソースの警告値を保持するようにした場合、動作範囲検証手段３は要求されたリソース量がこの警告値を超えているかを検知し、超えていた場合にはサーバ１０へ警告を通知する。
この警告を受信したサーバ１０は、図５のような警告メッセージをサーバ１０が備えている表示装置の画面に表示するようにしてもよい。
このような構成は、プリンタのような複数台の情報機器をサーバへネットワーク接続した場合、サーバへ表示したこの警告によってプリンタの管理者が適切な処置を施して、情報機器の動作安定性を向上させることができる。
【００２５】
ネットワーク３０は、サーバ１０と１台以上の情報機器２０間を結合するための伝送路であって、一般には、ケーブルで実現され、通信プロトコルにはＴＣＰ／ＩＰが使われる。但し、伝送路としてはケーブルだけではなく、それらの間の通信プロトコルが一致するものであれば有線または無線のいずれでもよく、例えば、公衆回線や専用回線等によるＬＡＮ（Ｌｏｃａｌ　Ａｒｅａ　Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ　Ａｒｅａ　Ｎｅｔｗｏｒｋ）、インターネットなどを用いることができる。
【００２６】
＜実施形態２の変形例＞
上述の実施形態２では、サーバ１０にネットワーク３０で接続された情報機器２０のリソースに対する制限値をファイルとしてサーバ１０に保持するようにしていたが、本変形例では、ソフトウェアをサーバ１０からネットワーク３０経由で情報機器２０へインストールするときに、上述の実施形態１と同様にして算出した制限値をその情報機器２０の制限記憶手段５へ記憶させるようにする。
【００２７】
例えば、図４において、サーバ１０から情報機器２０１にハードディスク利用量が１００ＭＢのソフトウェアを、情報機器２０２にハードディスク利用量が３００ＭＢのソフトウェアをネットワーク３０経由によってインストールする場合を考える。
サーバ１０におけるインストーラは、算出したリソースの制限値のうちハードディスク利用可能量をそれぞれ２．９ＧＢ、２．７ＧＢとした制限値のファイルをＦＴＰコマンドでそれぞれの情報機器２０の制限記憶手段５で直接書き込む。
【００２８】
＜実施形態３＞
本発明は、上述した実施形態のみに限定されたものではない。上述した実施形態の機能をプログラム化し、あらかじめＣＤ−ＲＯＭ等の記録媒体に書き込んでおき、コンピュータに搭載したＣＤ−ＲＯＭドライブのような媒体駆動装置にこのＣＤ−ＲＯＭ等を装着して、これらのプログラムをコンピュータのメモリあるいは記憶装置に格納し、それを実行することによって、本発明の目的を達成することができる。
【００２９】
なお、記録媒体としては半導体媒体（例えば、ＲＯＭ、不揮発性メモリカード等）、光媒体（例えば、ＤＶＤ、ＭＯ、ＭＤ、ＣＤ−Ｒ等）、磁気媒体（例えば、磁気テープ、フレキシブルディスク等）のいずれであってもよい。
【００３０】
また、ロードしたプログラムの指示に基づき、オペレーティングシステム等が実際の処理の一部または全部を行い、その処理によって上述した実施形態の機能が実現される場合も含まれる。
【００３１】
さらに、上述したプログラムが、機能拡張ボードや機能拡張ユニットに備わるメモリにロードされ、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって、上述した実施形態の機能が実現される場合も含まれる。
【００３２】
また、上述したプログラムをサーバコンピュータの磁気ディスク等の記憶装置に格納しておき、通信網で接続されたユーザのコンピュータからダウンロードさせて頒布する場合、このサーバコンピュータの記憶装置も本発明の記録媒体に含まれる。
【００３３】
【発明の効果】
以上説明したように本発明によれば、ソフトウェアの実行時にリソース不足を予め検知することによって、予期しないソフトウェア障害を未然に防ぎ、情報機器全体の動作安定性を向上させることができる。
また、ソフトウェアのインストール時に、動作可能な範囲の制限値を自動的に設定することによって、管理者がこの制限値を設定する手順を簡略化させることができる。
また、動作可能な範囲の制限値として警告値を備えるようにして、リソースの利用可能量がこの警告値を超えるような場合には、利用者へ警告を通知するようにし、ソフトウェアが機能制限を行う前に対策をとりやすくなる。
【００３４】
また、情報機器がネットワーク等でサーバによって管理されている場合には、各情報機器の動作可能な範囲の制限値をサーバに保持し、情報機器でリソース利用の問合せが必要となったときに、この制限値をサーバから取り寄せることによって各情報機器への設定手順を簡略化させることができる。
または、情報機器にネットワーク経由でソフトウェアをインストールするときに、サーバから直接各情報機器へ設定を行うことにより制限値の設定手順を簡略化させることができる。
【図面の簡単な説明】
【図１】本発明のリソース管理システムの実施形態１の機能構成を示すブロック図である。
【図２】動作範囲検証手段の処理手順を示すフローチャートである。
【図３】警告メッセージの表示例である。
【図４】本発明のリソース管理システムの実施形態２の構成を示すブロック図である。
【図５】サーバに表示される警告メッセージの表示例である。
【符号の説明】
１…ソフトウェア、２…ＯＳ、３…動作範囲検証手段、４…制限設定手段、５…制限記憶手段、１０…サーバ、２０，２０１，２０２，２０ｎ…情報機器、３０…ネットワーク。
【図１】
2004094782.tif 000003
【図２】
2004094782.tif 000004
【図３】
2004094782.tif 000005
【図４】
2004094782.tif 000006
【図５】
2004094782.tif 000007