(57)【特許請求の範囲】
【請求項１】
複数の異なる計算機の中の１の計算機を、利用を要求してきたユーザに割り当てる計算機割当システムであって、
ユーザが利用を要求してきた場合に、いずれのユーザにも割り当てられていない計算機を当該ユーザに割り当てる割当手段と、
前記割当手段によって割り当てられている前記計算機の利用状態を監視する利用状態監視手段と、
全ての計算機が割り当てられている時に新たなユーザから利用の要求があった場合に、前記利用状態監視手段が監視する前記計算機の利用状態と、利用されていない状態を判断するための解除条件と、に従って、利用されていないと判断する計算機の中から割り当てを解除する計算機を決定し、割り当てを解除する割当解除手段と、
前記計算機に割り当て可能な各ユーザの属性を保持するユーザ属性保持手段と、
各計算機の属性を保持する計算機属性保持手段と、
前記割当手段によって割り当てられた前記計算機の利用状態を監視する利用状態監視手段と
を備え、
前記割当手段は、
全ての計算機が割り当てられている時に新たなユーザから利用の要求があった場合に、前記割当解除手段が解除した計算機を前記利用の要求があったユーザに割り当て、
前記解除条件は、
前記ユーザの属性と、前記計算機の属性と、前記利用状態とを用いて記述されており、
前記解除条件には、
他のユーザへの計算機の割り当てを解除してでも計算機の割り当てを必要とするか否かについて、前記利用を要求してきたユーザに問い合わせるか否かを記述した開始条件が含まれており、
前記割当解除手段は、
他のユーザへの計算機の割り当てを解除してでも計算機の割り当てを必要とするか否かについて、前記利用を要求してきたユーザに問い合わせることが前記開始条件に記述されている場合に、前記利用を要求してきたユーザにその旨を問い合わせ、当該ユーザから利用の有無に関する回答と共に、利用時間の指示を受け付けることを特徴とする計算機割当システム。
【請求項２】
請求項１に記載の計算機割当システムであって、
前記解除条件には、
計算機の割り当てを解除する候補となったユーザに、当該解除の可否を問い合わせるか否かを記述した決定条件がさらに含まれ、
前記割当解除手段は、
計算機の割り当てを解除する候補となったユーザに当該解除の可否を問い合わせることが前記決定条件に記述されている場合に、前記開始条件に従った問い合わせに対する応答で前記利用を要求してきたユーザから受け付けた利用時間を、割り当て解除の可否の問い合わせ時に提示することを特徴とする計算機割当システム。
【請求項３】
請求項１または２に記載の計算機割当システムであって、
前記解除条件には、
計算機の割り当てを解除する候補となったユーザに、解除の可否を問い合わせるか否かを記述した決定条件が含まれることを特徴とする計算機割当システム。
【請求項４】
請求項１から３のいずれか一項に記載の計算機割当システムであって、
前記割当解除手段によって解除された計算機を、前記割当手段が、前記利用を要求してきたユーザに割り当てた場合に、当該計算機と、新規に割り当てたユーザと、割り当てを解除されたユーザとを対応付けて管理する割込情報管理手段をさらに備えることを特徴とする計算機割当システム。
【請求項５】
請求項４に記載の計算機割当システムであって、
前記割当手段は、
ユーザが計算機の利用を終えた際に、当該利用を終えたユーザが、前記割込情報管理手段に新規に割り当てたユーザとして登録されている場合には、当該ユーザに対応付けて登録されている割り当てを解除されたユーザに、前記利用を終えた計算機を再度割り当て、
ユーザが計算機の利用を終えた際に、当該利用を終えたユーザが、前記割込情報管理手段に新規に割り当てたユーザとして登録されていない場合には、前記割込情報管理手段に割り当てを解除されたユーザとして登録されているユーザがあれば、当該ユーザの中の１のユーザに、前記利用を終えた計算機を割り当てることを特徴とする計算機割当システム。
【請求項６】
請求項５に記載の計算機割当システムであって、
前記割当手段は、
前記割当解除手段によって割り当てを解除する計算機が決定された場合に、当該計算機を前記利用を要求してきたユーザに割り当てる前に、その時点の当該計算機の動作状態を当該計算機内に保持させ、
ユーザが計算機の利用を終えた際に、当該利用を終えたユーザが、前記割込情報管理手段に新規に割り当てたユーザとして登録されている場合には、当該計算機に保持されている情報を用いて、割り当て解除前の動作状態で当該計算機を起動させた上で、当該ユーザに対応付けて登録されている割り当てを解除されたユーザに、前記利用を終えた計算機を再度割り当てることを特徴とする計算機割当システム。
【請求項７】
請求項５に記載の計算機割当システムであって、
計算機を利用するために必要なデータ領域を、各ユーザ毎に割り当てて保持するストレージ手段をさらに備え、
前記割当手段は、
前記割当解除手段によって割り当てを解除する計算機が決定された場合に、当該計算機を前記利用を要求してきたユーザに割り当てる前に、その時点の当該計算機の動作状態を前記ストレージ手段内の、解除前に利用していたユーザに割り当られているデータ領域に保持させ、
ユーザが計算機の利用を終えた際に、当該利用を終えたユーザが、前記割込情報管理手段に新規に割り当てたユーザとして登録されている場合には、前記ストレージ手段内において解除前に利用していたユーザのデータ領域に保持されている情報を用いて、割り当て解除前の動作状態で当該計算機を起動させた上で、当該ユーザに対応付けて登録されている割り当てを解除されたユーザに、当該計算機を再度割り当て、
ユーザが計算機の利用を終えた際に、当該利用を終えたユーザが、前記割込情報管理手段に新規に割り当てたユーザとして登録されていない場合には、前記割込情報管理手段に割り当てを解除されたユーザとして登録されているユーザがあれば、前記ストレージ手段内の当該ユーザのデータ領域に保持されている情報を用いて、割り当て解除前の動作状態で当該計算機を起動させた上で、当該割り当てを解除されたユーザに、当該計算機を割り当てることを特徴とする計算機割当システム。
【請求項８】
請求項１から７のいずれか一項に記載の計算機割当システムであって、
前記解除条件には、下記の（１）から（４）が記述されており、
前記割当解除手段は、
下記の（１）から（４）の少なくともいずれかを満たす計算機を、割り当てを解除する計算機として決定することを特徴とする計算機割当システム。
（１）ユーザの端末とのセッションが未接続状態であり、かつ、ユーザの端末から起動したプロセス数が０
（２）ユーザの端末とのセッションが未接続状態であり、かつ、監視対象のアプリケーションがいずれも起動していない
（３）ユーザの端末とのセッションが接続状態であり、かつ、監視対象のアプリケーションがいずれも起動しておらず、かつ、前回のキーインからの経過時間が予め定められた値を超えている
（４）ユーザの端末とのセッションが接続状態であり、かつ、監視対象のアプリケーションの一部が起動しており、かつ、前回のキーインからの経過時間が予め定められた値を超えている
【請求項９】
複数のコンピュータリソースの中の１のコンピュータリソースを、利用を要求してきたユーザに割り当てるコンピュータリソース割当システムであって、
ユーザが利用を要求してきた場合に、いずれのユーザにも割り当てられていないコンピュータリソースを当該ユーザに割り当てる割当手段と、
全てのコンピュータリソースが割り当てられている時に新たなユーザから利用の要求があった場合に、ユーザが利用していない状態を判断する解除条件に従って、割り当てを解除する前記コンピュータリソースを決定し、割り当てを解除する割当解除手段と、
前記コンピュータリソースに割り当て可能な各ユーザの属性を保持するユーザ属性保持手段と、
各コンピュータリソースの属性を保持するコンピュータリソース属性保持手段と、
前記割当手段によって割り当てられた前記コンピュータリソースの利用状態を監視する利用状態監視手段と
を備え、
前記割当手段は、
全てのコンピュータリソースが割り当てられている時に新たなユーザから利用の要求があった場合に、前記割当解除手段が解除したコンピュータリソースを前記利用の要求があったユーザに割り当て、
前記解除条件は、
前記ユーザの属性と、前記コンピュータリソースの属性と、前記利用状態とを用いて記述されており、
前記解除条件には、
全てのコンピュータリソースが割り当てられている時に、既に他のユーザに割り当てられているコンピュータリソースの解除を行う前に前記利用を要求してきたユーザに問い合わせるか否かを記述した開始条件が含まれ、
前記割当解除手段は、
問い合わせることが前記開始条件に記述されている場合に、前記利用を要求してきたユーザに問い合わせ、当該ユーザから利用の有無に関する回答に加え、利用時間の指示を受け付けることを特徴とするコンピュータリソース割当システム。
【請求項１０】
請求項９に記載のコンピュータリソース割当システムであって、
前記解除条件には、
全てのコンピュータリソースが割り当てられている時に、割り当てを解除する候補となったコンピュータリソースのユーザに、割り当て解除の可否を問い合わせるか否かを記述した決定条件がされに含まれ、
前記割当解除手段は、
問い合わせることが前記決定条件に記述されている場合に、前記開始条件に従った問い合わせに対する応答で前記利用を要求してきたユーザから受け付けた利用時間を、割り当て解除の可否の問い合わせ時に提示することを特徴とするコンピュータリソース割当システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、リモートディスクトップ等、ネットワークを介してリモートのコンピュータにアクセスするコンピュータシステムの管理に関するものである。
【背景技術】
【０００２】
現在個々のユーザが利用しているパーソナルコンピュータ（ＰＣ）のディスクに記憶しているデータやアプリケーションをブレード化して集約し、ユーザに割り当てる技術が存在する。ブレード化したＰＣを、ブレードＰＣと呼ぶ。ユーザの手元のＰＣには、ブレードＰＣにアクセスし、ブレードＰＣ側で処理した結果をディスプレイに表示するための最小限のアプリケーションのみが保持される。ユーザは、手元のＰＣからブレードＰＣにアクセスし、各種の処理を行う。
【０００３】
さらに、データ領域や起動ディスク領域をブレードＰＣから切り離し、ストレージ装置に格納するシステム形態が存在する（例えば、非特許文献１参照。）。データ領域や起動ディスク領域を分離してストレージ装置に格納するシステムの場合、各ブレードＰＣを固定的にユーザに割り当てる必要がないため、アクセスしてきたユーザに空いているブレードＰＣを割り当てることができる。すなわち、ブレードＰＣを共有できる。ブレードＰＣの共有により、利用しているユーザ数より、ブレードＰＣの数を減らすことができ、物理リソースを軽減しかつ、リソースの利用率を高めることができる。
【０００４】
ブレードＰＣの数が、ブレードＰＣの利用が許可されている全ユーザ数よりも少ない環境では、ブレードＰＣの数以上のユーザが同時に利用しようとするときには、利用できないユーザが出てくる。このような場合は、接続はしているものの実際にはブレードＰＣを利用していないユーザを特定し、そのユーザの接続を切り離し、新規に利用したいユーザを割り当てる処理が必要である。
【０００５】
例えば、サーバクライアントシステムであって、サーバへのログイン数が限られているシステムにおいて、最大ログイン数に達している場合にアクセスしてきたユーザをログインさせるため、ログイン中のクライアントを強制的に開放する技術がある（例えば、特許文献１参照。）。
【０００６】
【特許文献１】特開平１０−１９８６２２号公報
【非特許文献１】日経コミュニケーション２００５年２月１日号，７２頁〜７３頁
【発明の開示】
【発明が解決しようとする課題】
【０００７】
特許文献１に記載の技術では、設定時間以上アクセスがないクライアントをログアウトさせ、新たなログイン要求を受け付ける。しかし、上記のようなユーザのＰＣ環境のほとんどがブレードＰＣ側に保持されるシステムでは、ユーザのアプリケーションそのものがブレードＰＣ上で稼動している。このため、ユーザがブレードＰＣにアクセスしていなくとも、ブレードＰＣ側でユーザが指示したアプリケーションが稼動中の可能性がある。
【０００８】
このようなシステムでは、ブレードＰＣへのアクセス状況だけでは、接続を解除可能なユーザと判断することはできない。すなわち、リソースであるブレードＰＣ数が限られているような環境において、ブレードＰＣ数以上のユーザからアクセスがあった場合に、未活用のブレードＰＣを適切に抽出することができない。
【０００９】
本発明は、上記事情に鑑みてなされたもので、クライアントブレードシステムのように運用管理者が提供するブレードＰＣリソースが、ユーザ数より少ない場合、限られたリソースを効率的に活用することができる技術を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記課題を解決するために、本発明では、リソースを管理する管理システムが未活用のリソースを判断できるよう、リソースの利用状況を収集する手段と、収集した利用状況から活用状態を判断する条件を保持する手段を備える。
【００１１】
具体的には、複数の異なる計算機の中の１の計算機を、利用を要求してきたユーザに割り当てる計算機割当システムであって、ユーザが利用を要求してきた場合に、いずれのユーザにも割り当てられていない計算機を当該ユーザに割り当てる割当手段と、前記割当手段によって割り当てられている前記計算機の利用状態を監視する利用状態監視手段と、全ての計算機が割り当てられている時に新たなユーザから利用の要求があった場合に、前記利用状態監視手段が監視する前記計算機の利用状態と、利用されていない状態を判断するための解除条件と、に従って、利用されていないと判断する計算機の中から割り当てを解除する計算機を決定し、割り当てを解除する割当解除手段と、前記計算機に割り当て可能な各ユーザの属性を保持するユーザ属性保持手段と、各計算機の属性を保持する計算機属性保持手段と、前記割当手段によって割り当てられた前記計算機の利用状態を監視する利用状態監視手段とを備え、前記割当手段は、全ての計算機が割り当てられている時に新たなユーザから利用の要求があった場合に、前記割当解除手段が解除した計算機を前記利用の要求があったユーザに割り当て、前記解除条件は、前記ユーザの属性と、前記計算機の属性と、前記利用状態とを用いて記述されており、前記解除条件には、他のユーザへの計算機の割り当てを解除してでも計算機の割り当てを必要とするか否かについて、前記利用を要求してきたユーザに問い合わせるか否かを記述した開始条件が含まれており、前記割当解除手段は、他のユーザへの計算機の割り当てを解除してでも計算機の割り当てを必要とするか否かについて、前記利用を要求してきたユーザに問い合わせることが前記開始条件に記述されている場合に、前記利用を要求してきたユーザにその旨を問い合わせ、当該ユーザから利用の有無に関する回答と共に、利用時間の指示を受け付けることを特徴とすることを特徴とする計算機割当システムを提供する。
【発明の効果】
【００１２】
本発明によれば、クライアントブレードシステムのように運用管理者が提供するブレードＰＣリソースが、ユーザ数より少ない場合、限られたリソースを効率的に活用できる。
【発明を実施するための最良の形態】
【００１３】
＜＜第一の実施形態＞＞
以下、本発明を適用した実施形態について図面を用いて説明する。まず、第一の実施形態を図１から図１２を用いて説明する。
【００１４】
図１は、本実施形態のブレードＰＣをリモートから利用するブレードＰＣシステムのシステム構成図である。本システムは、ユーザが利用するＰＣに相当する構成を備えるブレードＰＣである管理対象装置２０、管理対象装置２０が利用するディスク情報を保持するストレージ装置３０、ユーザがリモートから管理対象装置２０にアクセスするためのインタフェースとなるクライアント端末４０、ストレージ装置３０を管理するストレージ管理装置６０、およびシステム全体を管理するシステム管理装置１０で構成される。システム管理装置１０と、管理対象装置２０と、ストレージ装置３０と、ストレージ管理装置６０とは、管理用通信網１で接続される。また、クライアント端末４０は、管理用通信網１とネットワーク２を介して接続される。なお、本システム内の管理対象装置２０の数は、利用を許可されているユーザ数よりも少ない数である。
【００１５】
管理対象装置２０は、ストレージ装置３０内の各ユーザに割り当てられているユーザ領域３１にアクセスするためにシステム管理装置１０と通信を行う通信制御装置Ａ２１、アプリケーションを実行するためのワークメモリ２２、処理を実行する中央処理装置（ＣＰＵ）２３、クライアント端末４０からのコマンドを受信し、画面情報を送信するための通信制御装置Ｂ２４を備える。本実施形態では、システム管理装置１０やストレージ装置３０との通信を行う通信制御装置Ａ２１とクライアント端末４０と通信を行う通信制御装置Ｂ２４とを別々のものとしたが、これらを一つの通信制御装置で構成しても良い。
【００１６】
ストレージ装置３０内には、個々のユーザ毎にユーザ領域３１が確保される。各ユーザ領域３１には、管理対象装置２０のハードディスクの役割りを果たし、状態監視プログラム３２、ユーザのデータやアプリケーション、オペレーティングシステム等が個別に格納される。状態監視プログラム３２は、管理対象装置２０において実行され、当該管理対象装置２０の状態を監視し、システム管理装置１０に通知する。詳細は後述する。
【００１７】
クライアント端末４０は、管理対象装置３１との通信やネットワーク２を介してシステム管理装置１０との通信を行う通信制御装置４１、プログラム情報を格納するプログラムメモリ４２、プログラムを実行するためのワークメモリ４３、プログラムを実行する中央処理装置（ＣＰＵ）４４、管理対象装置３１から受信した画面情報を表示する出力装置であるディスプレイ（ＣＲＴ）４５、ユーザデータを加工するためのデータの入力を受け付ける入力装置であるキーボード４６およびマウス４７、前記入出力装置を制御するための入出力制御装置４８を備える。
【００１８】
クライアント端末４０上のプログラムメモリ４２には、システム管理装置１０と情報を交換するためのコンソールプログラム４９、入力装置４６、４７を介して受け付けた入力データを管理対象装置３１に送信し、管理対象装置３１から送信された画面情報を受信する画面制御プログラム５０が含まれる。
【００１９】
システム管理装置１０は、ユーザが利用しているクライアント端末４０、ストレージ管理装置６０，管理対象装置２０と通信するための通信制御装置１１と、プログラム処理のための演算領域および結果の格納領域として使用するワークメモリ１５と、ユーザ情報や管理対象装置２０の構成情報などのデータベースおよび各種処理に必要なデータを格納する記憶部１３と、管理に関するプログラムを格納するプログラムメモリ１２と、プログラムメモリ１２に格納されたプログラムの実行、プログラムメモリ１２および記憶部１３のアクセスを制御する中央処理装置（ＣＰＵ）１４と、管理対象装置２０の利用状況などの管理情報を表示する出力装置であるディスプレイ（ＣＲＴ）１６と、管理者からの情報の入力を受け付ける入力装置であるキーボード１７およびマウス１８と、前記入出力装置を制御する入出力制御装置１９と、を備える。
【００２０】
プログラムメモリ１２には、アクセスしてきたユーザに対して管理対象装置２０を割り当てる管理対象割当制御プログラム１２１が保持される。ＣＰＵ１４は、管理対象割当制御プログラム１２１を実行することにより、クライアント端末４０を介してのユーザからの要求を受け付けて処理を行う要求受付処理部１２２と、全ての管理対象装置２０がユーザに割り当てられている場合、管理対象装置２０から割当解除可能な管理対象装置２０を選択する割込制御処理部１２３と、を実現する。
【００２１】
要求受付処理部１２２がクライアント端末４０を介してユーザから受け付ける要求には、管理対象装置２０を割り当てて起動させること要求する割当要求と、割り当てられている管理対象装置２０を停止し割り当てを解除することを要求する解除要求とがある。要求受付処理部１２２は、割当要求を受け付けると、割当要求を送信してきたユーザに対して管理対象装置２０を割り当て、割り当てた管理対象装置２０を起動させる。また、解除要求を受け付けると、当該要求を送信してきたユーザ（クライアント端末４０）に割り当てられている管理対象装置２０を停止させ、割当を解除する。
【００２２】
ストレージ管理装置６０は、ストレージ装置３０内に各ユーザに割り当てるユーザ領域３１を作成し、作成した各ユーザ領域３１を管理対象装置２０が利用できるように設定する。
【００２３】
次に、記憶部１３内に格納される情報について説明する。記憶部１３には、本システムを利用するユーザの情報であるユーザ情報を格納したユーザ情報テーブル２１０と、管理対象装置２０に関する情報を格納した管理対象装置テーブル２２０と、の２種のデータベースを備える。また、管理者等によって予め設定される割込制御ポリシーファイル５００と、状態監視プログラム３２により取得されるデータが格納される内部テーブル８００と、割込制御処理部１２３によって再割当処理が行われた際に生成される割込情報テーブル１０００と、再割当処理時にユーザへの問い合わせに用いる通知画面９００データと、確認画面１１００データとが格納される。以下、それぞれの詳細を説明する。
【００２４】
図２は、記憶部１３内に格納されている各データベースの一部を示すものであり、図２（ａ）は、ユーザ情報テーブル２１０を、図２（ｂ）は、管理対象装置テーブル２２０を示す。
【００２５】
ユーザ情報テーブル２１０には、本実施形態のシステムにおいて、管理対象装置２０に利用が許可されている全ユーザについて、ユーザ毎に、ユーザＩＤ２１１と、ユーザ名２１２と、所属２１３と、役職２１４と優先フラッグ２１５と、割当回数２１６とが登録される。
【００２６】
ユーザＩＤ２１１は、各ユーザに予め割り当てられているユーザを一意に特定するための識別情報であり、本実施形態では番号が用いられる。ユーザ名２１２は、ユーザの実際の氏名である。所属２１３は、ユーザが会社内に所属している部署である。役職２１４は、ユーザの役職である。本実施形態では、役職２１４には、各役職を数字で表したデータが登録される。役職を示す数字は、「部署員」を１「係長」を２「課長」を３のように、役職が上位になるに従って値が大きくなるよう設定される。優先フラッグ２１５は、割込み可能なユーザを特定する情報である。本実施形態では、割込み可能なユーザには１が、割込み不可能なユーザには０が登録される。割込み回数２１６は、過去の一定期間内に実行された割込み回数が格納される。これは、優先フラッグ２１５に１が登録されているユーザに関してのみ登録される。
【００２７】
ここで、割り込みが可能と登録されているユーザの場合、全ての管理対象装置２０がユーザに割り当てられている場合であっても、解除可能なユーザがある限り、当該ユーザに割り当てられている管理対象装置２０が解放され、解放された管理対象装置２０が割り当てられ、割り当てられた管理対象装置２０上でＰＣ環境を起動することができる。一方、割込みが不可能と登録されているユーザの場合、全ての管理対象装置２０がユーザに割り当てられている時は、常に当人のＰＣ環境を起動できない。
【００２８】
管理対象装置テーブル２２０には、管理対象装置２０毎に、装置ＩＤ２２１と、配置場所２２２と、利用状態２２３と、利用ユーザＩＤ２２４とが登録される。
【００２９】
装置ＩＤ２２１は、各管理対象装置２０を一意に識別するための情報である。配置場所２２２は、各管理対象装置２０が配されている位置を特定する情報である。たとえば、管理対象装置２０がブレードからなるブレードシステムの場合、どのシャーシのどのスロットのブレードであるかを示す情報が登録される。利用状態２２３は、最新の管理対象装置２０の利用状態を示す情報である。利用状態２２３には、「割当済」、「未割当」が登録される。「割当済」が登録されている管理対象装置２０は、既にユーザが割り当てられていることを示し、「未割当」が登録されている管理対象装置２０は、ユーザに割り当てられていないことを示す。利用ユーザＩＤ２２４は、当該管理対象装置２０に割り当てられているユーザのユーザＩＤである。利用ユーザＩＤ２２４に登録されているユーザＩＤは、ユーザ情報テーブル２１０のユーザＩＤ２１１のいずれかが登録される。利用ユーザＩＤ２２４にユーザＩＤが登録されるのは、利用状態２２３が「割当済」のもののみである。利用状態２２３が「未割当」のものに登録されている利用ユーザＩＤ２２４は無意味である。
【００３０】
次に、割込制御ポリシーファイル５００について説明する。割込制御ポリシーファイル５００は、クライアント端末４０を介してユーザから割当要求があった際、管理対象装置２０を割り当てるルールを記述したものである。ここには、全ての管理対象装置２０に対してユーザが割り当てられている場合に、再割当処理の対象とする管理対象装置２０を抽出するための条件が記述される。なお、再割当処理とは、全ての管理対象装置２０がユーザに割り当てられている時に、割当要求が行われた場合、既に割り当てられている管理対象装置２０の割り当てを解除し、割当要求を行ってきたユーザに当該管理対象装置２０を割り当てる割込み処理である。
【００３１】
図３は、本実施形態の割込制御ポリシーファイル５００の一例を示したものである。
【００３２】
割込制御ポリシーファイル５００は、割当要求を行ってきたユーザの中で、再割当処理を実行可能なユーザを限定する優先条件５１０と、管理対象装置２０の中で、再割当処理を行う管理対象装置２０の範囲を限定する割込対象条件５２０と、再割当処理を実行する条件を示す実行条件５３０と、管理対象装置２０が使用されているか否かを判断する条件を規定する状態監視条件５４０とを備える。
【００３３】
優先条件５１０には、再割当処理を実行するユーザの条件が指定される。すなわち、優先条件５１０に指定された条件を満足したユーザに対して再割当処理が実行される。条件は、ユーザ情報テーブル２１０に登録されている情報を用いて記述される。
【００３４】
具体的には、優先条件５１０は、＜ｐｒｉｏｒｉｔｙ＿ｃｏｎｄｉｔｉｏｎ＞と＜／ｐｒｉｏｒｉｔｙ＿ｃｏｎｄｉｔｉｏｎ＞との間に記述される。＜ａｔｔｒｉｂｕｔｅ＞と＜／ａｔｔｒｉｂｕｔｅ＞との間には、ユーザ情報テーブル２１０内のキー（項目名）が記述される。＜ｖａｌｕｅ  ｌｏｇｉｃ＝‘ｍｏｒｅ＿ｔｈａｎ’＞と＜／ｖａｌｕｅ＞との間には、当該キーが満たすべき値が記述される。また、＜ｖａｌｕｅ  ｌｏｇｉｃ＝‘ｍｏｒｅ＿ｔｈａｎ’＞のｌｏｇｉｃ以下の記述は、値として記述されたものと割当要求をかけるユーザの該当するキーの値との比較方法を示す。‘ｍｏｒｅ＿ｔｈａｎ’の場合には、値以上を示し、‘ｅｑｕａｌ’は同じ値を示し、‘ｌｅｓｓ＿ｔｈａｎ’の場合には、値以下を示す。図３の例では、条件５１１は、割当要求を行ったユーザの「役職」が１以上である場合、再割当処理を実行することを示す。また、条件５１２は、割当要求を行ったユーザの「優先フラッグ」が１である場合、再割当処理を実行することを示す。
【００３５】
なお、優先条件５１０は、複数指定することができる。＜ｐｒｉｏｒｉｔｙ＿ｃｏｎｄｉｔｉｏｎ＞と＜／ｐｒｉｏｒｉｔｙ＿ｃｏｎｄｉｔｉｏｎ＞とにより囲まれた範囲内に記述された条件はＡＮＤ条件、すなわち、この間に記述された全ての条件を満たす場合に再割当処理が実施され、＜ｐｒｉｏｒｉｔｙ＿ｃｏｎｄｉｔｉｏｎ＞と＜／ｐｒｉｏｒｉｔｙ＿ｃｏｎｄｉｔｉｏｎ＞とにより囲まれた条件が複数記載されている場合、それぞれはＯＲ条件、すなわち、いずれかの条件を満たす場合に再割当処理が実行される。図３の例では、「役職」が１以上であり、かつ、「優先フラッグ」が１である場合、再割当処理を実行することを示す。
【００３６】
割込対象条件５２０には、再割当処理を実行する対象を特定する条件が指定される。割込対象条件５２０は、＜ａｒｅａ＿ｃｏｎｄｉｔｉｏｎ＞と＜／ａｒｅａ＿ｃｏｎｄｉｔｉｏｎ＞との間に記述される。割込対象条件５２０には、＜ａｒｅａ＿ｔａｂｌｅ＞と＜／ａｒｅａ＿ｔａｂｌｅ＞との間に記述される対象テーブルを指定する条件と、＜ａｒｅａ＿ａｔｔｒｉｂｕｔｅ＞と＜／ａｒｅａ＿ａｔｔｒｉｂｕｔｅ＞との間に記述される対象テーブルの項目を指定する条件と、＜ａｒｅａ＿ｖａｌｕｅ＞と＜／ａｒｅａ＿ｖａｌｕｅ＞との間に記述される、満たすべき値を指定する条件とがある。
【００３７】
なお、＜ａｒｅａ＿ａｔｔｒｉｂｕｔｅ＞タグ内には、ｌｏｇｉｃとして、比較方法が記述される。また、＜ａｒｅａ＿ｃｏｎｄｉｔｉｏｎ＞＜／ａｒｅａ＿ｃｏｎｄｉｔｉｏｎ＞間の情報は、＜ｐｒｉｏｒｉｔｙ＿ｃｏｎｄｉｔｉｏｎ＞＜／ｐｒｉｏｒｉｔｙ＿ｃｏｎｄｉｔｉｏｎ＞間の情報と同じで、＜ａｒｅａ＿ｃｏｎｄｉｔｉｏｎ＞＜／ａｒｅａ＿ｃｏｎｄｉｔｉｏｎ＞内に複数の条件が存在する場合は、全ての条件を満足するものが条件であり、＜ａｒｅａ＿ｃｏｎｄｉｔｉｏｎ＞＜／ａｒｅａ＿ｃｏｎｄｉｔｉｏｎ＞が複数存在する場合は、それぞれの条件のどちらかが満足したものが対象になる。すなわち、＜ａｒｅａ＿ｃｏｎｄｉｔｉｏｎ＞と＜／ａｒｅａ＿ｃｏｎｄｉｔｉｏｎ＞との間には、ＡＮＤ条件が記述される。＜ａｒｅａ＿ｃｏｎｄｉｔｉｏｎ＞と＜／ａｒｅａ＿ｃｏｎｄｉｔｉｏｎ＞とにより記述される条件同士は、ＯＲ条件である。
【００３８】
図３の例では、条件５２２は、管理対象装置テーブル２２０の、配置場所２２２に、シャーシ１と登録されている装置を、再割当処理を実行する対象と指定する。ここでは、＜ａｒｅａ＿ａｔｔｒｉｂｕｔｅ  ｌｏｇｉｃ  ＝‘ｉｎｃｌｕｄｅ’＞の中のｌｏｇｉｃは、値として設定されたものと対象範囲の管理情報に対して検索をかけるための属性の値との比較方法を示しており、‘ｉｎｃｌｕｄｅ’は、後述の＜ａｒｅａ＿ｖａｌｕｅ＞＜／ａｒｅａ＿ｖａｌｕｅ＞間で指定される値を含んでいるかを判断するものである。
【００３９】
また、条件５２３は、ユーザテーブル２１０の、所属２１３が、割当要求をしてきたユーザの所属２１３として登録されているものを含むユーザが割当要求をしている管理対象装置２０を、再割当処理を実行する対象と指定する。ここでは、＜ａｒｅａ＿ａｔｔｒｉｂｕｔｅ  ｌｏｇｉｃ＝‘ｉｎｃｌｕｄｅ’  ｖａｌｕｅ＝‘ｒｅｑｕｅｓｔ’＞の中にｖａｌｕｅが存在する。この値が「ｒｅｑｕｅｓｔ」の場合には、比較のための条件は、割当要求をかけたユーザの属性を基に判断される。すなわち、ユーザ情報テーブル２１０の所属２１３属性が割当要求のユーザの所属２１３属性の値を含んだユーザ情報を持つユーザが、管理対象装置を起動している場合に、その管理対象装置２０が再割当処理の対象となる。図３の例では、２つの条件５２２と５２３のどちらかを満足する管理対象装置２０が再割当処理の対象となる。
【００４０】
実行条件５３０は、＜ｅｘｃｈａｎｇｅ＿ｌｏｇｉｃ＞と＜／ｅｘｃｈａｎｇｅ＿ｌｏｇｉｃ＞との間に記述される。実行条件５３０には、再割当を開始する条件（開始条件）と、再割当処理時に対象となる管理対象装置２０を決定する条件（決定条件）とが設定される。
【００４１】
＜ｓｅａｒｃｈ＿ｌｏｇｉｃ＞と＜／ｓｅａｒｃｈ＿ｌｏｇｉｃ＞との間には、開始条件が記述される。開始条件には、割当要求があり再割当が必要な場合、処理開始前に割当要求をかけたユーザに対して問合せを行う方式と、問合せを行うことなく処理を開始する方式とがある。前者の場合、＜ｓｅａｒｃｈ＿ｌｏｇｉｃ＞と＜／ｓｅａｒｃｈ＿ｌｏｇｉｃ＞との間に「問合せ」を示す値を記述し、後者の場合「自動」を示す値を記述する。図３の例では、条件５３１は、問合せを行う場合を示す。
【００４２】
＜ｄｅｆｉｎｉｔｉｏｎ＿ｌｏｇｉｃ＞と＜／ｄｅｆｉｎｉｔｉｏｎ＿ｌｏｇｉｃ＞の間には、決定条件が記述される。決定条件には、再割当処理時に、利用中のユーザの意向を問合せながら再割当処理の対象となるユーザおよび/または管理対象装置２０を決定する方式と、ユーザに問い合わせることなく再割当処理を行う方式とがある。前者の場合「問合せ」を、後者の場合、「自動」を記述する。図３の条件５３２は、問い合わせを行う方式を指定したことを示す。
【００４３】
状態監視条件５４０は、＜ｃｈｅｃｋ＿ｃｏｎｄｉｔｉｏｎ＞と＜／ｃｈｅｃｋ＿ｃｏｎｄｉｔｉｏｎ＞との間に記述される。状態を監視する対象は、特定のアプリケーションの使用状態と、管理対象装置２０への非アクセス時間とがある。
【００４４】
＜ｃｈｅｃｋ＿ａｐｐｌｉｃａｔｉｏｎ＞と＜ｃｈｅｃｋ＿ａｐｐｌｉｃａｔｉｏｎ＞との間には、ユーザの利用状態を判断するための監視対象であるアプリケーションの種類が記述される。＜ａｐ＿ｌｉｓｔ＞と＜／ａｐ＿ｌｉｓｔ＞との間に記述されたアプリケーションが動作している場合、後述する内部テーブル８００にその旨記録される。図３の条件５４１では、ＡＰ１、ＡＰ２、ＡＰ３の３つのアプリケーションのいずれかが管理対象装置２０上で動作している場合、各アプリケーションの利用状態が内部テーブル８００に記録される。
【００４５】
＜ｔｉｍｅ＿ｄｕｒａｔｉｏｎ＞と＜／ｔｉｍｅ＿ｄｕｒａｔｉｏｎ＞との間には、管理対象装置２０が未使用と判定される時間が分単位で設定される。判定に用いられる時間は、当該管理対象装置２０に割り当てられているユーザから、クライアント端末４０を介して当該管理対象装置２０へのアクセスがない時間である。図３の条件５４２では、１００分以上非アクセスの状態が継続している場合、当該管理対象装置２０は、未使用と判定される。
【００４６】
以上、割込制御ポリシーファイル５００を説明した。
【００４７】
次に、内部テーブル８００について説明する。内部テーブル８００には、各管理対象装置２０上で稼動する状態監視プログラム３２により収集され、システム管理装置１０に送信された、各管理対象装置２０上の状態が格納される。図４は、内部テーブル８００を説明するための図である。
【００４８】
本図に示すように、内部テーブル８００には、管理対象装置２０ごとに、当該管理対象装置の装置ＩＤ８０１と、利用ユーザ８０２と、セッション状態８０３と、未利用時間８０４と、所定のアプリケーションの利用状態であるＡＰ状態８０５と、ユーザプロセス８０６とが登録される。
【００４９】
利用ユーザ８０２として、当該管理対象装置２０に割り当てられているユーザのユーザＩＤが登録される。クライアント端末４０と当該管理対象装置２０との接続状態が状態監視プログラム３２により取得され、セッション状態８０３として取得された状態に応じて接続または未接続が登録される。未利用時間８０４としては、セッション状態８０３が接続のものに関し、前回のキーインからの時間が状態監視プログラム３２によりカウントされ、登録される。なお、セッション状態８０３が未接続のものについては、未利用時間８０４は無意味であるため、−１が登録される。
【００５０】
次に、ＡＰ状態８０５として、割込制御ポリシーファイル５００の状態監視条件５４０に指定されている監視対象のアプリケーションそれぞれの利用状態が登録される。登録される利用状態は、アプリケーションが起動している場合、管理対象装置２０のＣＰＵ１４を該当アプリケーションが未利用である時間である。本情報も状態監視プログラム３２によりカウントされる。なお、アプリケーションが起動していない場合は、−１が登録される。アプリケーションの起動、未起動情報も、状態監視プログラム３２により取得される。ユーザプロセス８０６には、管理対象装置２０上で、ユーザがクライアント端末４０から起動したプロセス数が登録される。
【００５１】
次に、割込情報テーブル１０００について説明する。割込情報テーブル１０００には、再割当処理を行った際、割当要求をしたユーザおよび管理対象装置２０への割り当てを解除されたユーザに関する情報が割込制御処理部１２３により記録される。
【００５２】
図５は、割込情報テーブル１０００の一例を示す図である。本図に示すように、割込情報テーブル１０００には、管理対象装置２０ごとに、当該管理対象装置２０を特定する装置ＩＤ１００１と、管理対象装置２０への割り当てを解除されたユーザの識別子である強制停止ユーザＩＤ１００２と、再割当を受けたユーザの識別子である割込みユーザＩＤ１００３と、割り当てを解除されたユーザが割り当てを解除されている予定時間である停止予定時間１００４とが登録される。停止予定時間１００４に登録される時間は、後述する通知画面９００を通じて割当要求の送信元ユーザから入力された利用予定時間である。以後、再割当処理により、割り当てを解除されたユーザのことを、強制停止ユーザと呼ぶ。
【００５３】
割込情報テーブル１０００は、要求受付処理部１２２が、ユーザから解除要求を受け付けた際、解放された管理対象装置２０を強制停止ユーザに割り当てる時に利用する。本テーブルは、割り込まれた時間順にデータが並んでいるものとし、強制停止ユーザの強制停止が解除された場合、すなわち、割り当てが復帰した場合、該当するデータは削除される。
【００５４】
次に、通知画面９００データについて説明する。通知画面９００データは、割込制御ポリシーファイル５００の実行条件５３０の開始条件に「問合せ」が記述されている場合、再割当処理開始時に割当要求の送信元のユーザのクライアント端末４０に送信される。クライアント端末４０のコンソールプログラム４９は、通知画面９００データを受け取ると、画面制御プログラム５０に通知する。画面制御プログラム５０は、通知画面９００データを処理し、表示装置４５に表示させる。表示装置４５に表示される画面例を図６に示す。
【００５５】
本図に示すように、通知画面９００データにより表示される通知画面は問い合わせ内容を表示する内容表示部９０４と、起動希望の意思を受け付ける利用要求ボタン９０２と、起動を希望しない意思を受け付ける終了ボタン９０３と、起動希望の場合、利用時間の入力を受け付ける利用時間入力欄９０１とを備える。利用時間は、割当要求を送信したユーザが、管理対象装置２０を使用する予定の時間であり、後述するように、再割当処理の対象となる管理対象装置２０が複数ある場合、その中から１つを抽出するために利用される。
【００５６】
次に、確認画面１１００について説明する。確認画面１１００データは、割込制御ポリシーファイル５００の実行条件５３０の決定条件に「問合せ」が記述されている場合、停止候補の管理対象装置２０のユーザのクライアント端末４０に送信される。クライアント端末４０の表示装置４５に表示される画面例を図７に示す。
【００５７】
本図に示すように、確認画面１１００は、内容を表示する内容表示部１１０４と、停止を許可する意思を受け付ける許可ボタン１１０２と、停止を許可しない意思を受け付ける不許可ボタン１１０３と、再割当されるユーザの利用予定時間を表示する利用時間表示欄１１０１とを備える。利用時間表示欄１１０１には、問合せ画面９００で、割当要求の送信元のユーザが利用時間入力欄９０１に入力した時間が表示される。
【００５８】
次に、本実施形態における、各装置間での情報の授受の概要を説明する。図８は、上記各装置間での情報の授受の概要を説明するための図である。
【００５９】
ユーザがＰＣ環境を管理対象装置２０上で利用したいとき、ユーザを特定する情報とともにクライアント端末４０のコンソールプログラム４９を用いてシステム管理装置１０に対して起動を要求する。すなわち、クライアント端末４０は、ユーザから指示を受け付けると、コンソールプログラム４９により、システム管理装置１０に対して管理対象装置２０の割り当ておよび起動を要求する割当要求を送信する（ステップ３０１）。
【００６０】
システム管理装置１０は、クライアント端末４０を介してユーザから割当要求を受信すると、当該ユーザに対して割り当て可能な管理対象装置２０を決定し、ユーザを特定する情報とともにストレージ管理装置６０に通知する（ステップ３０２）。ストレージ管理装置６０は、通知を受けた管理対象装置２０と当該ユーザに割り当てられているユーザ領域３１を割り当てる（ステップ３０３）。
【００６１】
この後、システム管理装置１０は、割り当てた管理対象装置２０を起動させ（ステップ３０４）、その結果を、割当要求を送信してきたクライアント端末４０上のコンソールプログラム４９に通知する（ステップ３０５）。
【００６２】
コンソールプログラム４９は、ユーザに割り当てられた管理対象装置２０の情報を画面制御プログラム５０に通知する。そして、画面制御プログラム５０は、割り当てられた管理対象装置２０に接続し（ステップ３０６）、該当する管理対象装置２０の画面情報を受信し、その結果をＣＲＴ４５に表示する。ユーザは表示された画面情報を見ながらマウス４７やキーボード４６を用いて管理対象装置２０にログインし、管理対象装置２０上でアプリケーションを起動してユーザデータを加工する。
【００６３】
ユーザは、所望の処理を終了すると、解除要求を送信し、使用していた管理対象装置２０を停止し、処理を終える。本実施形態では、管理対象装置２０の停止方法は２種ある。すなわち、クライアント端末４０から管理対象装置２０に直接停止を要求をする解除要求を送信する方法、および、クライアント端末４０上のコンソールプログラム４９を介して解除要求をシステム管理装置１０に行う（ステップ３０７）の２種である。
【００６４】
クライアント端末４０から管理対象装置２０に直接解除要求を送信した場合は、システム管理装置１０は管理対象装置２０で稼動する状態監視プログラム３２から解除要求を受信し（ステップ３０８）、ユーザ情報テーブル２１０、管理対象装置テーブル２２０などの内部データを更新する。一方、クライアント端末４０のコンソールプログラム４９から解除要求を受信した場合、システム管理装置１０は、該当する管理対象装置２０を停止する処理を行う（ステップ３０９）。
【００６５】
次に、システム管理装置１０の管理対象割当制御プログラム１２１の動作概要について説明する。図９は、本実施形態の管理対象割当制御プログラム１２１の処理の概要を示すフローチャートである。
【００６６】
管理対象割当制御プログラム１２１は、システム管理装置１０が起動すると、要求受付処理部１２２を実行する。
【００６７】
要求受付処理部１２２は、まず、割込制御ポリシーファイル５００を読み取る（ステップ４０１）。
【００６８】
要求受付処理部１２２は、読み込んだ割込制御ポリシーファイル５００を解析してワークメモリ１５に解析結果を保持する。その後、クライアント端末４０および管理対象装置２０からのデータの受信待ちの状態となる（ステップ４０２）。
【００６９】
要求受付処理部１２２は、データを受信すると、受信したデータの内容を解析する（ステップ４０３、４０５）。受信したデータが、クライアント端末４０からの割当要求である場合（ステップ４０３）、後述する利用要求処理を実行する（ステップ４０４）。受信したデータが、クライアント端末４０または管理対象装置２０からの解除要求である場合（ステップ４０５）、後述する終了要求処理を実行する（ステップ４０６）。
【００７０】
受信したデータの内容がいずれでもない場合、利用要求処理が終了した場合、および、終了要求処理が終了した場合、要求受付処理部１２２は、ステップ４０２に戻り、受信待ちの状態となる。
【００７１】
次に、ステップ４０４の利用要求処理の詳細について説明する。図１０は、利用要求処理のフローチャートである。
【００７２】
要求受付処理部１２２は、利用要求処理開始の指示を受けると、割り当て可能な管理対象装置２０が存在するか否かを判断する（ステップ６０１）。すなわち、未使用の管理対象装置２０（空き管理対象装置２０）の存在の有無を判断する。これは、管理対象装置テーブル２２０の利用状態２２３により判断する。未使用の管理対象装置２０が存在する場合、その中から抽出した１の管理対象装置２０を割当要求の送信元のユーザに割り当てる。
【００７３】
具体的には、要求受付処理部１２２は、まず、ストレージ管理装置３０に対して、割当要求を送信してきたユーザのユーザ領域３１を抽出した管理対象装置２０への割り当てを要求する（ステップ６０２）。ステップ６０２の処理が終了すると、その管理対象装置２０を起動させる（ステップ６０３）。そして、ユーザ領域３１内に保持され、割り当てた管理対象装置２０上で実行される状態監視プログラム３２に、割込制御ポリシーファイル５００の状態監視条件５４０内で指定された、状態監視対象のアプリケーションを監視アプリケーションリストとして通知する（ステップ６０４）。
【００７４】
要求受付処理部１２２は、以上の処理を終えると、割当要求の送信元のクライアント端末４０に対して割り当てた管理対象装置２０を特定する情報を通知する（ステップ６０５）。そして、管理対象装置情報テーブル２２０の利用状態２２３、利用ユーザＩＤ２２４を割り当て後の情報に更新する（ステップ６０６）。
【００７５】
なお、管理対象装置２０では、起動後、状態監視プログラム３２を用いて、指示された監視アプリケーションリスト上のアプリケーションの起動の有無、ユーザからのログオンの有無、ユーザからのキーボードやマウス操作の有無を常に監視し、システム管理装置１０に状態情報として送信する。
【００７６】
一方、ステップ６０１において、未使用の管理対象装置２０が存在しない場合、要求受付処理部１２２は、割込制御処理部１２３に、再割当処理を行わせる（ステップ６０７）。
【００７７】
再割当処理の詳細を以下に説明する。図１１は、本実施形態の再割当処理のフローチャートである。割込制御処理部１２３は、基本的に、割当要求が割込制御ポリシーファイル５００に記述された各条件を満たすか否かを順次判断し、処理を進める。
【００７８】
割込制御処理部１２３は、割当要求を送信してきたユーザが、割り込みを許されているユーザであるか判別する（ステップ７０１）。具体的には、割当要求に付加されている割当要求送信元のユーザのユーザＩＤに対応づけてユーザ情報テーブル２１０に登録されている情報が、割込制御ポリシーファイル５００の優先条件５１０を満たすか否か判別し、満たす場合、割り込み可能なユーザ、すなわち、再割当可能なユーザと判別する。割込制御ポリシーファイル５００が図３に示すものの場合、割当要求送信元のユーザの役職２１４および優先フラッグ２１５の情報が、優先条件５１０を満たした場合、割り込み可能なユーザと判断する。
【００７９】
割り込み可能なユーザでなければ、利用できる環境が存在しないこと、すなわち、割当可能な管理対象装置２０がないため起動ができないことをクライアント端末に対して通知し（ステップ７０２）、処理を終了する。
【００８０】
割り込み可能なユーザであれば、割込制御処理部１２３は、次に、割り込み可能な管理対象装置２０の有無を判断する（ステップ７０３、７０４）。具体的には、まず、割込制御ポリシーファイル５００の割込条件５２０に合致する管理対象装置２０が存在するか否かを判別する。そして、その中で、状態監視条件５４０に設定されている条件を満たす管理対象装置２０が存在するか否かを判別する。
【００８１】
割込制御ポリシーファイル５００が図３に示すものの場合、管理対象装置テーブル２２０に、配置場所２２２がシャーシ１と登録されている管理対象装置２０、または、ユーザ情報テーブル２１０と管理対象装置テーブル２２０とを参照し、割当要求の送信元のユーザと同じ所属２１３のユーザに割り当てられている管理対象装置２０を、停止候補となる管理対象装置２０として検索する。
【００８２】
そして、内部テーブル８００を参照し、上記検索した停止候補となる管理対象装置２０の中から、所定の条件を満足する管理対象装置２０を抽出する（ステップ７０３）。
【００８３】
本実施形態では、例えば以下の条件（選択条件）のいずれかを満足する管理対象装置２０を停止候補として抽出するものとする。これらの条件は、以下に限られない。
【００８４】
（１）セッション状態８０３が未接続であり、ユーザプロセス８０６が０である管理対象装置２０。
（２）セッション状態８０３が未接続であり、ＡＰ状態８０５が全て未起動である管理対象装置２０。
（３）セッション状態８０３が接続で、ＡＰ状態８０５が全て未起動であり、かつ、未利用時間８０４が割込制御ポリシーファイル５００の状態監視条件５４０内に指定されている未使用と判定される時間を越えている管理対象装置２０。
（４）セッション状態８０３が接続で、ＡＰ状態８０５の一部が起動中ではあるものの、未利用時間８０４が割込制御ポリシーファイル５００の状態監視条件５４０内に指定されている未使用と判定される時間を越えている管理対象装置２０。
【００８５】
ステップ７０３において、停止候補となる管理対象装置２０を抽出できた場合、割込条件５２０に合致する管理対象装置２０が存在するものと判断する（ステップ７０４）。
【００８６】
ステップ７０４において、停止候補となる管理対象装置２０がない場合は、割当要求送信元のユーザに起動不可であることを通知し（ステップ７０２）、処理を終了する。
【００８７】
停止候補となる管理対象装置２０が検索された場合、割込制御処理部１２３は、次に、実行条件５３０の開始条件を判別する（ステップ７０５）。開始条件に、合致する管理対象装置２０があれば、再割当処理を実行する「自動」が設定されている場合は、そのまま再割当処理を実行する（ステップ７０８）。
【００８８】
一方、実行条件５３０の開始条件に「問合せ」が設定されている場合は、ユーザに起動希望の有無を問い合わせる（ステップ７０６）。
【００８９】
ステップ７０６の問い合せに応じて、ユーザから起動を希望しないとの意思を受け付けた場合は、処理を終了する。一方、ユーザから起動を希望する旨の意思を受け付けた場合は、再割当処理を実行する（ステップ７０８）。
【００９０】
再割当処理の実行にあたり、割込制御処理部１２３は、実行条件５３０の、決定条件を判別する（ステップ７０８）。決定条件に「自動」が設定されている場合は、停止候補となる管理対象装置２０として検索したものの中から停止対象となる管理対象装置２０を決定し（ステップ７０９）、当該管理対象装置２０のユーザに停止通知を送信する（ステップ７１０）。停止候補となる管理対象装置２０が複数ある場合は、本実施形態では、以下の方法により、その中から１の管理対象装置２０を停止対象として選択する。
【００９１】
まず、停止候補となる管理対象装置２０を、上述の（１）〜（４）の選択条件を満たすもの毎に優先度を付与する。選択条件の番号が小さいものほど選択の優先度は高いものとする。同じ優先度の候補が複数存在する場合、選択条件（１）、（２）の場合は、ユーザ情報テーブル２１０を参照し、割込回数２１６の最も少ないユーザに割り当てられている管理対象装置２０を抽出し、（３）、（４）の場合は、未利用時間８０４が最も短いものを抽出する。これらが複数ある場合は、その中から任意に選択する。なお、選択基準は、これに限られない。予め設定し、記憶部１３に登録しておけばよい。
【００９２】
割込制御処理部１２３は、選択した管理対象装置２０のユーザが使用しているクライアント端末４０に、停止する旨を通知する停止通知を送信し（ステップ７１０）、当該管理対象装置２０を停止する（ステップ７１１）。
【００９３】
一方、ステップ７０８の判別において、決定条件に「問合せ」が設定されている場合は、全ての停止候補となる管理対象装置２０として検索、抽出したものに割り当てられているユーザが利用しているクライアント端末４０に、確認画面１１００データを送信する（ステップ７１５）。
【００９４】
割込制御処理部１２３は、ユーザからの返答を受信すると、返答に応じて停止対象とする管理対象装置２０を選択する（ステップ７１６）。複数の管理対象装置２０から許可の意思を受け取った場合、予め管理者等により定められ記憶部１３に登録されている選択のルールに従って決定する。選択のルールは、例えば、未利用時間８０４が最も長いものを選択する、所定時間返答がないユーザに割り当てられている管理対象装置２０を選択する、などが考えられる。もちろん、これに限られない。また、全ての返答が、不許可、すなわち、継続使用希望である場合は、上述の決定条件が「自動」である場合の選択方法により選択する。
【００９５】
ステップ７１５において、確認画面１１００データを送信した全クライアント端末４０に、結果を送信する（ステップ７１７）。ここでは、ステップ７１６において、停止対象として選択された管理対象装置２０のユーザのクライアント端末４０には、停止通知を、他のクライアント端末４０には、停止対象とならなかった旨を通知する。そして、選択された管理対象装置２０を停止する（ステップ７１１）。
【００９６】
次に、割込制御処理部１２３は、割当要求を送信してきたユーザに、選択された管理対象装置２０を割り当てる。すなわち、割当要求を送信してきたユーザに割り当てられているユーザ領域３１を、ステップ７１１において停止した管理対象装置２０に割り当て、状態監視プログラム３２に、監視アプリケーションリストを通知し（ステップ７１２）、割当要求の送信元のユーザに割り当てが完了したことを通知する（ステップ７１３）。そして、割込制御処理部１２３は、割込情報テーブル１０００に登録し（ステップ７１４）、処理を終了する。
【００９７】
次に、ユーザが、割り当てられている管理対象装置２０の利用を終了し、割り当てを解除する要求である解除要求を送信した際、当該解除要求を受信したシステム管理装置１０の処理について説明する。
【００９８】
図１２は、解除要求を受信した際の、要求受付処理部１２２の処理のフローチャートである。
【００９９】
解除要求を受け取ると、要求受付処理部１２２は、送信元のユーザに割り当てられている管理対象装置２０に対し、電源切断処理（停止処理）を実行する（ステップ１２０１）。その管理対象装置２０が電源停止状態となると、割り込まれたユーザの有無を判別する（ステップ１２０２）。具体的には、割込情報テーブル１０００を参照し、その管理対象装置２０の装置ＩＤに対応づけて強制停止ユーザＩＤが登録されている場合、割り込まれたユーザがあるものと判断する。
【０１００】
ステップ１２０２において、有りと判断された場合、要求受付処理部１２２は、強制停止ユーザＩＤに登録されているユーザを復帰ユーザと特定する。復帰ユーザとは、割り当てが解除された管理対象装置２０を割り当てるユーザである。そして、ステップ１２０１において電源停止状態とした管理対象装置２０を起動する（ステップ１２０３）。ここでは、復帰ユーザに割り当てられているユーザ領域３１を、電源停止状態とした管理対象装置２０に割り当て、当該管理対象装置２０を起動する。さらに、割込情報テーブル１０００から、起動状態に戻した管理対象装置２０に関するデータを削除する。
【０１０１】
一方、ステップ１２０２において、無しと判断された場合、要求受付処理部１２２は、割込情報テーブル１０００を参照し、他に強制停止ユーザとして登録されているものがあるか否かを判別する（ステップ１２０５）。他に強制停止ユーザが登録されている場合、当該ユーザの中で、最も長く停止させられているユーザ（割情報テーブル１０００に登録されているデータの中の最も古いデータに該当するユーザ）を抽出し、復帰ユーザとし、ステップ１２０１において電源停止状態とした管理対象装置２０を起動し、復帰ユーザに割り当てる（ステップ１２０３）。そして、復帰ユーザのデータを、割込情報テーブル１０００から削除する。
【０１０２】
割り当てが確認された後、復帰ユーザに対し、管理対象装置２０が再度割り当てられたことを通知し（ステップ１２０４）、処理を終了する。
【０１０３】
ステップ１２０５で無しと判別された場合、要求受付処理部１２２は、そのまま処理を終了する。
【０１０４】
以上説明したように、本実施形態によれば、管理対象装置２０を利用することを許可されたユーザ数が管理対象装置２０の台数より少ない環境で、全ての管理対象装置２０が所定のユーザに割り当てられている状態のとき、新たに利用したいユーザが発生した場合、既割り当てのユーザの中で、実際に使用している可能性の低いユーザを抽出して、割り当てを解除することができる。すなわち、未活用の管理対象装置２０を適切に抽出することができる。従って、本実施形態によれば、限られたリソースである管理対象装置２０を有効に活用することが可能となる。
【０１０５】
＜＜第二実施形態＞＞
次に、本発明を適用した第二の実施形態について説明する。本実施形態では、再割当処理において、停止対象となった管理対象装置２０を停止させる際、システムハイバネーション処理を行う。すなわち、停止直前の管理対象装置２０のワークメモリ２２の内容をそのまま退避させる処理を行う。
【０１０６】
図１３は、本実施形態のシステム構成図である。本実施形態のシステム構成は、基本的に第一の実施形態のシステム構成と同様である。ただし、本実施形態の管理対象装置２０は、それぞれ、データ格納領域１３０１を備える。データ格納領域１３０１は、システムハイバネーション時のデータ（ワークメモリ２２の内容）を退避する領域である。
【０１０７】
また、本実施形態の割込情報テーブル１４００の一例を図１４に示す。本実施形態の割込情報テーブル１４００は、第一の実施形態の割込情報テーブル１０００と同様に、管理対象装置２０ごとに、当該管理対象装置２０を特定する装置ＩＤ１００１と、管理対象装置２０への割り当てを解除されたユーザの識別子である強制停止ユーザＩＤ１００２と、再割当を受けたユーザの識別子である割込みユーザＩＤ１００３と、割り当てを解除されたユーザが割り当てを解除されている予定時間である停止予定時間１００４とが登録される。本実施形態の割込み情報テーブル１４００には、さらに、システムハイバネーションを行って停止したものであるか否かを示すハイバネ１４０１が登録される。システムハイバネーションを行って停止したものの場合、ハイバネ１４０１として、「Ｔｒｕｅ」が登録され、そうでない場合は、「Ｆａｌｓｅ」が登録される。
【０１０８】
次に、本実施形態における再割当処理について、第一の実施形態と異なる処理のみ説明する。第一の実施形態と異なる部分は、停止対象の管理装置を停止する際の処理および割込情報テーブル１４００への登録処理である。図１１のフローチャートでいえば、ステップ７１１および７１４の処理である。
【０１０９】
まず、本実施形態の停止時の処理（ステップ７１１）の、第一の実施形態と異なる点を説明する。本実施形態では、割込制御処理部１２３は、停止対象として所定の管理対象装置２０が選択されると、内部テーブル８００を参照し、当該管理対象装置２０の、割り当てられたユーザによる利用状態を確認する。
【０１１０】
このとき、セッション状態８０３が未接続であり、かつ、ユーザプロセス８０６が０の場合は、当該管理対象装置２０上では、実質的に何の作業も行われていないため、そのまま停止させる。
【０１１１】
それ以外の場合は、割込制御処理部１２３は、当該管理対象装置２０を停止させる前に、当該管理対象装置２０にシステムハイバネーションを行わせる。システムハイバネーションにおいては、管理対象装置２０は、その時点での作業環境を、データ格納領域１３０１に退避させる。システムハイバネーションを終えた後、割込制御処理部１２３は、当該管理対象装置２０を停止させる。
【０１１２】
なお、本実施形態において、停止対象の管理対象装置２０が特定された後、内部テーブル８００を参照して当該管理対象装置２０の状態を確認するステップ無しで、常にシステムハイバネーションを行わせて停止させるよう構成してもよい。
【０１１３】
本実施形態の割込情報テーブル１０００への登録処理（ステップ７１４）について第一の実施形態と異なる点は、本実施形態では、割込制御処理部１２３は、第一の実施形態で登録する情報に加え、システムハイバネーションをして停止したか否かを、ハイバネ１４０１に登録することである。
【０１１４】
次に、解除要求を受信した際の要求受付処理部１２２の処理について、第一の実施形態と本実施形態と異なる点について説明する。第一の実施形態と異なる点は、停止した管理対象装置２０に対応づけて強制停止ユーザが登録されていない場合の処理および復帰ユーザの起動状態に戻す際の処理である。図１２で言えば、ステップ１２０５および１２０３の処理である。
【０１１５】
ステップ１２０５の処理において、要求受付処理部１２２が、割込情報テーブル１４００を参照し、他に強制停止ユーザとして登録されたものがあるか否かを判別する。本実施形態においては、このとき、ハイバネ１４０１において、「ｆａｌｓｅ」が登録されている強制停止ユーザがある場合のみ、有りと判断する。本実施形態では、システムハイバネーション処理を行って停止させた管理対象装置２０については、元のユーザのみ復旧に意味があるからである。強制停止ユーザがいても、当該ユーザのハイバネ１４０１に「ｆａｌｓｅ」が登録されていない場合は、強制停止ユーザはいないものとして処理を終了する。
【０１１６】
ステップ１２０２において、有りと判断された場合、要求受付処理部１２２は、管理対象装置２０を起動する際、管理対象装置２０にシステムハイバネーションからの復帰であることを通知する。管理対象装置２０は、その通知を受け、データ格納領域１３０１に退避したデータをワークメモリ２２に展開することにより、元のユーザの稼動状態で起動させる。なお、この時、システムハイバネーションからの復帰、すなわち、元の稼動状態での復帰の可否をユーザに尋ねるよう構成してもよい。この場合は、ユーザから元の稼動状態での復帰の指示を受けた場合のみ、データ格納領域１３０１に退避したデータをワークメモリ２２に展開して起動させる。そうでない場合は、初期状態で起動させる。
【０１１７】
一方、ステップ１２０５において、「ｆａｌｓｅ」が登録されている他の強制停止ユーザが有ると判断された場合、ステップ１２０３に進む。この場合、要求受付処理部１２２は、管理対象装置２０にシステムハイバネーションからの復帰であることを通知せず、第一の実施形態と同様に管理対象装置２０を起動させる。
【０１１８】
以上、本実施形態によれば、第一の実施形態のように、限られたリソースを有効活用できることに加え、再割当を行う際、元のユーザの作業環境を保持して停止させるため、復帰時に停止前の状態に戻すことができる。
【０１１９】
＜＜第三の実施形態＞＞
次に、本発明を適用した第三の実施形態について説明する。第二の実施形態では、再割当処理後の復帰において、システムハイバネーション処理を有効に活用できるのは、元の管理対象装置２０で復帰する場合に限られているが、本実施形態では、いずれの管理対象装置２０で復帰する場合も、停止前の作業環境で復帰ができる。
【０１２０】
図１５は、本実施形態のシステム構成図である。本実施形態のシステム構成は、基本的に第一の実施形態のシステム構成と同様である。ただし、本実施形態の各管理対象装置２０は、プログラムメモリ１５０１を備え、プログラムメモリ１５０１内にデータ転送プログラム１５０２を備える。
【０１２１】
データ転送プログラム１５０２は、ＣＰＵ２３により実行されることにより、当該管理対象装置２０においてシステムハイバネーション処理を行った際に退避すべきデータを、その時点で割り当てられているユーザ領域３１に転送する退避データ転送機能を実現する。
【０１２２】
本実施形態の動作概要は、基本的に第一の実施形態と同様である。ただし、再割当処理において、停止対象の管理対象装置を停止させる処理と割込情報テーブル１０００への登録処理、すなわち、図１１のステップ７１１と７１４との処理、および、停止処理時の強制停止ユーザの復帰処理、すなわち、図１２のステップ１２０３の処理が異なる。
【０１２３】
以下、本実施形態の第一の実施形態と異なる点のみ説明する。本実施形態では、割込制御処理部１２３は、停止対象として所定の管理対象装置２０が選択されると、内部テーブル８００を参照し、当該管理対象装置２０の、割り当てられたユーザによる利用状態を確認する。
【０１２４】
このとき、セッション状態８０３が未接続であり、かつ、ユーザプロセス８０６が０の場合は、当該管理対象装置２０上では、実質的に何の作業も行われていないため、そのまま、停止させる。
【０１２５】
それ以外の場合は、割込制御処理部１２３は、当該管理対象装置２０を停止させる前に、当該管理対象装置２０にシステムハイバネーションを行わせる。このとき、システムハイバネーションを行うよう指示を受けた管理対象装置２０では、退避データ転送機能に、その時点での作業環境に関するデータ（ワークメモリ２２の内容）を、データ領域３１に転送させる。システムハイバネーションを終えた後、割込制御処理部１２３は、当該管理対象装置２０を停止させる。
【０１２６】
なお、本実施形態においても、第二の実施形態同様、停止対象の管理対象装置２０が特定された後、内部テーブル８００を参照して当該管理対象装置２０の状態を確認するステップ無しで、常にハイバネーションを行わせて停止させるよう構成してもよい。
【０１２７】
また、本実施形態においては、第二の実施形態同様、割込情報テーブル１０００への登録処理（ステップ７１４）においては、第一の実施形態で登録する情報に加え、システムハイバネーションをして停止したか否かをハイバネ１４０１として登録する。登録内容は、第二の実施形態と同様であるため、ここでは説明しない。
【０１２８】
次に、解除要求を受信した再の要求受付処理部１２２の処理について、第一の実施形態と本実施形態との違いについて説明する。
【０１２９】
本実施形態では、復帰ユーザとして特定されたユーザの起動時の処理が異なる。図１２のステップ１２０３の処理である。本実施形態では、復帰ユーザが特定されると、要求受付処理部１２２は、割込情報テーブル１０００を参照し、復帰ユーザとして特定されたユーザがシステムハイバネーションを行って停止したものであるかどうか判別する。具体的には、ハイバネ１４０１が「Ｔｒｕｅ」であるか否かを判別する。「Ｔｒｕｅ」である場合は、システムハイバネーション処理を行っていることを、管理対象装置２０へ通知する。
【０１３０】
管理対象装置２０は、その通知を受け付けると、割り当てられたデータ領域３１から退避されているデータの転送を受け、当該データをワークメモリ２２に展開することにより、復帰ユーザとして特定されたユーザの元の稼動状態で起動させる。本実施形態においても、復帰時に、元の稼動状態で起動させるか否かを、ユーザに問い合わせ、その応答に応じて起動させるよう構成してもよい。
【０１３１】
以上、本実施形態によれば、元のユーザの作業環境をストレージ装置３０側の、各ユーザに割り当てられたユーザ領域３１に退避するため、強制停止前に当該管理対象装置２０を使用していたユーザに限らず、強制停止後の復帰時にユーザの元の作業環境で復帰することができる。すなわち、強制停止されたユーザは、どの管理対象装置２０であっても、空きができた際に、停止前の状態で復帰することができる。
【図面の簡単な説明】
【０１３２】
【図１】第一の実施形態のシステム構成図である。
【図２】第一の実施形態の記憶部内に格納されている各データベースの一例を示す図である。
【図３】第一の実施形態の割込制御ポリシーファイルの一例を示す図である。
【図４】第一の実施形態の内部テーブルの一例を示す図である。
【図５】第一の実施形態の割込情報テーブルの一例を示す図である。
【図６】第一の実施形態の通知画面の画面例を示す図である。
【図７】第一の実施形態の確認画面の画面例を示す図である。
【図８】第一の実施形態の各装置間での情報の授受の概要を説明するための図である。
【図９】第一の実施形態の管理対象割当制御プログラムの処理のフローチャートである。
【図１０】第一の実施形態の割当要求受信時の利用要求処理のフローチャートである。
【図１１】第一の実施形態の再割当処理のフローチャートである。
【図１２】第一の実施形態の解除要求受信時の処理のフローチャートである。
【図１３】第二の実施形態のシステム構成図である。
【図１４】第二の実施形態の割込情報テーブルの一例を示す図である。
【図１５】第三の実施形態のシステム構成図である。
【符号の説明】
【０１３３】
１：管理用通信網、２：ネットワーク、１０：システム管理装置、１１：通信制御装置、１２：プログラムメモリ、１２１：管理対象割当制御プログラム、１２２：要求受付処理部、１２３：割込み制御処理部、１３：記憶部、１４：ＣＰＵ、１５：ワークメモリ、１６：ＣＲＴ、１７：キーボード、１８：マウス、２０：管理対象装置、２１：通信制御装置Ａ、２２：通信制御装置Ｂ、２３：ＣＰＵ、２４：ワークメモリ、３０：ストレージ装置、３１：ユーザ領域、３２：状態監視プログラム、４０：クライアント端末、４１：通信制御装置、４２：プログラムメモリ、４３：ワークメモリ、４４：ＣＰＵ、４５：ＣＲＴ、４６：キーボード、４７：マウス、４８：入出力装置、４９：コンソールプログラム、５０：画面制御プログラム、６０：ストレージ管理装置
【図１】
0004663528.tif 000002
【図２】
0004663528.tif 000003
【図３】
0004663528.tif 000004
【図４】
0004663528.tif 000005
【図５】
0004663528.tif 000006
【図６】
0004663528.tif 000007
【図７】
0004663528.tif 000008
【図８】
0004663528.tif 000009
【図９】
0004663528.tif 000010
【図１０】
0004663528.tif 000011
【図１１】
0004663528.tif 000012
【図１２】
0004663528.tif 000013
【図１３】
0004663528.tif 000014
【図１４】
0004663528.tif 000015
【図１５】
0004663528.tif 000016