(57)【要約】【課題】システム構成の変更にも柔軟に対応できる情報処理装置、情報処理システム、情報処理方法および情報処理プログラムを提供する。【解決手段】特定機能が取り得る複数の状態と遷移情報とを対応付けて保持する遷移情報保持手段１４２と、他の装置２００から状態遷移指示を取得したときの特定機能の現在状態を特定する現在状態特定手段１２６と、遷移情報保持手段１４２が特定機能に対応付けて保持している遷移情報と、状態遷移指示に示される指示状態と、現在状態とに基づいて、現在の状態から指示状態に遷移するために必要な遷移処理を特定する遷移処理特定手段１２８と、指示状態に遷移させる状態遷移手段１３０と、指示状態への遷移が完了したことを示す完了通知を他の装置２００に送信する完了通知送信手段１３２とを備えた。【選択図】        図２
2007128185.tif 000002
【特許請求の範囲】
【請求項１】
他の情報処理装置と協調して処理を行う情報処理装置であって、
当該情報処理装置の特定機能が取り得る複数の状態と、各状態から遷移可能な状態を示す遷移情報とを対応付けて保持する遷移情報保持手段と、
前記特定機能の状態を所定の状態に遷移させることを指示する状態遷移指示を、前記特定機能の状態に依存する他の装置から取得する状態遷移指示取得手段と、
前記状態遷移指示取得手段が前記状態遷移指示を取得したときの前記特定機能の現在状態を特定する現在状態特定手段と、
前記遷移情報保持手段が前記特定機能に対応付けて保持している前記遷移情報と、前記状態遷移指示取得手段が取得した前記状態遷移指示に示される指示状態と、前記現在状態特定手段により特定された前記現在状態とに基づいて、前記現在の状態から前記指示状態に遷移するために必要な遷移処理を特定する遷移処理特定手段と、
前記遷移処理特定手段により特定された前記遷移処理を実行し、前記指示状態に遷移させる状態遷移手段と、
前記状態遷移手段が処理を完了した場合に、前記指示状態への遷移が完了したことを示す完了通知を前記他の装置に送信する完了通知送信手段と
を備えたことを特徴とする情報処理装置。
【請求項２】
前記特定機能を実現する特定コンテンツをさらに備え、
前記現在状態特定手段は、前記特定コンテンツにおける前記現在状態を特定し、
前記遷移処理特定手段は、前記特定コンテンツにおける前記遷移処理を特定することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
当該情報処理装置は、複数の機能を実装し、
前記遷移情報保持手段は、前記機能ごとに、各機能が取り得る複数の状態と、前記遷移情報とを対応付けて保持し、
前記状態遷移指示取得手段は、前記他の装置から、所定の機能の所定の状態への遷移を指示する前記状態遷移指示を取得し、
前記状態遷移指示取得手段が取得した前記状態遷移指示に示される機能を特定する機能特定手段をさらに備え、
前記現在状態特定手段は、前記状態遷移指示取得手段が前記状態遷移指示を取得したときの、前記機能特定手段により特定された前記機能の前記現在状態を特定し、
前記遷移処理特定手段は、前記遷移情報保持手段が前記機能に対応付けて保持している前記遷移情報と、前記状態特定手段により特定された前記現在状態と、前記状態遷移指示に示される前記指示状態とに基づいて、前記現在状態から前記指示状態に遷移するために必要な前記遷移処理を特定することを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
複数の装置が協調して処理を行う情報処理システムであって、
前記複数の装置のうち、他の装置に依存する依存情報処理装置は、
当該依存情報処理装置において実行される特定処理と、当該特定処理を実行するために成立していなければならない、他の情報処理装置の特定機能における特定状態を示す制約情報とを対応付けて保持する制約情報保持手段と、
前記制約情報保持手段が保持している前記制約情報から、前記特定処理に対応する制約情報を検索する制約情報検索手段と、
前記制約情報検索手段により検索された前記制約情報に基づいて、前記他の情報処理装置を特定し、当該他の情報処理装置の前記特定機能の状態を前記特定状態に遷移させることを示す状態遷移指示を送信する遷移指示送信手段と
を有し、
前記制約情報検索手段により特定された前記他の情報処理装置は、
当該他の情報処理装置の前記特定機能が取り得る複数の状態と、各状態から遷移可能な状態を示す遷移情報とを対応付けて保持する遷移情報保持手段と、
前記特定機能の状態を前記特定状態に遷移させることを指示する前記状態遷移指示を、前記依存情報処理装置から取得する状態遷移指示取得手段と、
前記状態遷移指示取得手段が前記状態遷移指示を取得したときの前記特定機能の現在状態を特定する現在状態特定手段と、
前記遷移情報保持手段が前記特定機能に対応付けて保持している前記遷移情報と、前記状態遷移指示取得手段が取得した前記状態遷移指示に示される指示状態と、前記状態特定手段により特定された前記現在状態とに基づいて、前記現在状態から前記指示状態に遷移するために必要な遷移処理を特定する遷移処理特定手段と、
前記遷移処理特定手段により特定された前記遷移処理を実行し、前記指示状態に遷移させる状態遷移手段と、
前記状態遷移手段が処理を完了した場合に、前記指示状態への遷移が完了したことを示す完了通知を前記依存情報処理装置に送信する送信手段と
を有し、
前記依存情報処理装置は、
前記他の情報処理装置から、前記遷移指示に示す遷移が完了した旨を示す前記完了通知を受信する完了通知受信手段と、
前記完了通知受信手段が前記完了通知を受信した場合に、前記特定機能の前記特定処理を実行する処理管理手段と
をさらに有することを特徴とする情報処理システム。
【請求項５】
前記依存情報処理装置の前記遷移指示送信手段は、前記特定機能の前記特定処理を実行する前に、前記遷移指示を送信することを特徴とする請求項４に記載の情報処理システム。
【請求項６】
他の情報処理装置と協調して処理を行う情報処理方法であって、
前記特定機能の状態を所定の状態に遷移させることを指示する状態遷移指示を、前記特定機能の状態に依存する他の装置から取得する状態遷移指示取得ステップと、
前記状態遷移指示取得ステップにおいて前記状態遷移指示を取得したときの前記特定機能の現在状態を特定する現在状態特定ステップと、
当該情報処理装置の特定機能が取り得る複数の状態と、各状態から遷移可能な状態を示す遷移情報とを対応付けて保持する遷移情報保持手段が前記特定機能に対応付けて保持している前記遷移情報と、前記状態遷移指示取得ステップにおいて取得した前記状態遷移指示に示される指示状態と、前記現在状態特定手段により特定された前記現在状態とに基づいて、前記現在の状態から前記指示状態に遷移するために必要な遷移処理を特定する遷移処理特定ステップと、
前記遷移処理特定ステップにおいて特定された前記遷移処理を実行し、前記指示状態に遷移させる状態遷移ステップと、
前記状態遷移ステップにおける処理が完了した場合に、前記指示状態への遷移が完了したことを示す完了通知を前記他の装置に送信する完了通知送信ステップと
を有することを特徴とする情報処理方法。
【請求項７】
複数の装置が協調して処理を行う情報処理システムにおける情報処理方法であって、
前記複数の装置のうち、他の装置に依存する依存情報処理装置が、当該依存情報処理装置において実行される特定処理と、当該特定処理を実行するために成立していなければならない、他の情報処理装置の特定機能における特定状態を示す制約情報とを対応付けて保持する制約情報保持手段が保持している前記制約情報から、前記特定処理に対応する制約情報を検索する制約情報検索ステップと、
前記制約情報検索ステップにおいて検索された前記制約情報に基づいて、前記他の情報処理装置を特定し、当該他の情報処理装置の前記特定機能の状態を前記特定状態に遷移させることを示す状態遷移指示を送信する遷移指示送信ステップと、
前記制約情報検索手段により特定された前記他の情報処理装置が、前記特定機能の状態を前記特定状態に遷移させることを指示する前記状態遷移指示を、前記依存情報処理装置から取得する状態遷移指示取得ステップと、
前記状態遷移指示取得ステップにおいて前記状態遷移指示を取得したときの前記特定機能の現在状態を特定する現在状態特定ステップと、
当該他の情報処理装置の前記特定機能が取り得る複数の状態と、各状態から遷移可能な状態を示す遷移情報とを対応付けて保持する遷移情報保持手段が前記特定機能に対応付けて保持している前記遷移情報と、前記状態遷移指示取得ステップにおいて取得した前記状態遷移指示に示される指示状態と、前記状態特定ステップにおいて特定された前記現在状態とに基づいて、前記現在状態から前記指示状態に遷移するために必要な遷移処理を特定する遷移処理特定ステップと、
前記遷移処理特定ステップにおいて特定された前記遷移処理を実行し、前記指示状態に遷移させる状態遷移ステップと、
前記状態遷移ステップにおける処理が完了した場合に、前記指示状態への遷移が完了したことを示す完了通知を前記依存情報処理装置に送信する送信ステップと、
前記依存情報処理装置が、前記他の情報処理装置から、前記遷移指示に示す遷移が完了した旨を示す前記完了通知を受信する完了通知受信ステップと、
前記完了通知受信ステップにおいて前記完了通知を受信した場合に、前記特定機能の前記特定処理を実行する処理管理ステップと
を有することを特徴とする情報処理方法。
【請求項８】
他の情報処理装置と協調して処理を行う情報処理をコンピュータに実行させる情報処理プログラムであって、
前記特定機能の状態を所定の状態に遷移させることを指示する状態遷移指示を、前記特定機能の状態に依存する他の装置から取得する状態遷移指示取得ステップと、
前記状態遷移指示取得ステップにおいて前記状態遷移指示を取得したときの前記特定機能の現在状態を特定する現在状態特定ステップと、
当該情報処理装置の特定機能が取り得る複数の状態と、各状態から遷移可能な状態を示す遷移情報とを対応付けて保持する遷移情報保持手段が前記特定機能に対応付けて保持している前記遷移情報と、前記状態遷移指示取得ステップにおいて取得した前記状態遷移指示に示される指示状態と、前記現在状態特定手段により特定された前記現在状態とに基づいて、前記現在の状態から前記指示状態に遷移するために必要な遷移処理を特定する遷移処理特定ステップと、
前記遷移処理特定ステップにおいて特定された前記遷移処理を実行し、前記指示状態に遷移させる状態遷移ステップと、
前記状態遷移ステップにおける処理が完了した場合に、前記指示状態への遷移が完了したことを示す完了通知を前記他の装置に送信する完了通知送信ステップと
を有することを特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、他の情報処理装置と協調して処理を行う情報処理装置、情報処理システム、情報処理方法および情報処理プログラムに関するものである。
【背景技術】
【０００２】
近年、計算機システムが複雑化するとともに、計算機システムの管理コストの増加が問題となっている。そこで、計算機システム自身に計算機システムを管理させる自己管理システムに関する研究が行われている（例えば、「非特許文献１」参照）。
【０００３】
自己管理システムの実現のためには、計算機システムでおこる問題の検出、問題に対する対策の計画と実行が必要である。自己管理システム実現のために提案されているＡｕｔｏｎｏｍｉｃ  Ｃｏｍｐｕｔｉｎｇ  Ｔｏｏｌｋｉｔ（以下、ＡＣＴｏｏｌｋｉｔと称する）（非特許文献２）では、Ａｕｔｏｎｏｍｉｃ  Ｍａｎａｇｅｍｅｎｔ  Ｅｎｇｉｎｅ（以下、ＡＭＥと称する）と呼ばれるマネージャに、当該マネージャが監視すべきリソースと、監視対象リソースから検出するイベントとそれに対する動作を指定することで、自己管理システムを実現している。
【０００４】
【非特許文献１】An architectural blueprint for autonomic computing , IBM white paper
【非特許文献２】オートノミックコンピューティングとは何か , ソフトバンクパブリッシング; ISBN: 4797330376
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、自己管理システムを実現させる際、自動管理の対象となるシステムの構成要素間の依存関係が問題となる。すなわち、システムのある構成要素が正常に動作するためには、別の構成要素が特定の状態であることが必要な場合がある。
【０００６】
例えば、クライアントプログラムが正常に動作するためには、サーバプログラムが起動していることが必要である。この場合、自己管理システムの実現のためには、クライアントプログラムとサーバプログラム間の依存関係、サーバプログラムの状態を判定する方法およびサーバプログラムを起動する方法を自己管理システムに管理知識として備えさせる必要がある。
【０００７】
しかし、従来の自己管理システムにおいては、構成要素間の依存関係に関する管理知識は、集中的に管理されている。このため、構成要素の追加や置き換え等の変更に対して、柔軟に対応できないという問題がある。例えば、ＡＣＴｏｏｌｋｉｔでは、ＡＭＥの監視対象リソースやイベントに対する動作を追加、変更しなければならない。
【０００８】
また、従来の自己管理システムにおいては、自己管理のために、必要とするソフトウェアに特有の知識を再利用するための枠組が存在しない。すなわち、複数の構成要素に関する管理知識が混在した形式で管理されている。このため、管理知識と構成要素間の関係を判定することが困難であった。
【０００９】
このため、計算機システムに、例えば、新しいソフトウェアの追加といった変更を加える際には、管理者が、Ｗｅｂや文献などを調査して、必要な知識を収集することが必要であった。また、収集した知識を、自身が管理する計算機システム向けに編成する必要もあった。
【００１０】
本発明は、上記に鑑みてなされたものであって、システム構成の変更にも柔軟に対応できる情報処理装置、情報処理システム、情報処理方法および情報処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
上述した課題を解決し、目的を達成するために、本発明は、他の情報処理装置と協調して処理を行う情報処理装置であって、当該情報処理装置の特定機能が取り得る複数の状態と、各状態から遷移可能な状態を示す遷移情報とを対応付けて保持する遷移情報保持手段と、前記特定機能の状態を所定の状態に遷移させることを指示する状態遷移指示を、前記特定機能の状態に依存する他の装置から取得する状態遷移指示取得手段と、前記状態遷移指示取得手段が前記状態遷移指示を取得したときの前記特定機能の現在状態を特定する現在状態特定手段と、前記遷移情報保持手段が前記特定機能に対応付けて保持している前記遷移情報と、前記状態遷移指示取得手段が取得した前記状態遷移指示に示される指示状態と、前記現在状態特定手段により特定された前記現在状態とに基づいて、前記現在の状態から前記指示状態に遷移するために必要な遷移処理を特定する遷移処理特定手段と、前記遷移処理特定手段により特定された前記遷移処理を実行し、前記指示状態に遷移させる状態遷移手段と、前記状態遷移手段が処理を完了した場合に、前記指示状態への遷移が完了したことを示す完了通知を前記他の装置に送信する完了通知送信手段とを備えたことを特徴とする。
【００１２】
また、本発明の他の形態は、複数の装置が協調して処理を行う情報処理システムであって、前記複数の装置のうち、他の装置に依存する依存情報処理装置は、当該依存情報処理装置において実行される特定処理と、当該特定処理を実行するために成立していなければならない、他の情報処理装置の特定機能における特定状態を示す制約情報とを対応付けて保持する制約情報保持手段と、前記制約情報保持手段が保持している前記制約情報から、前記特定処理に対応する制約情報を検索する制約情報検索手段と、前記制約情報検索手段により検索された前記制約情報に基づいて、前記他の情報処理装置を特定し、当該他の情報処理装置の前記特定機能の状態を前記特定状態に遷移させることを示す状態遷移指示を送信する遷移指示送信手段とを有し、前記制約情報検索手段により特定された前記他の情報処理装置は、当該他の情報処理装置の前記特定機能が取り得る複数の状態と、各状態から遷移可能な状態を示す遷移情報とを対応付けて保持する遷移情報保持手段と、前記特定機能の状態を前記特定状態に遷移させることを指示する前記状態遷移指示を、前記依存情報処理装置から取得する状態遷移指示取得手段と、前記状態遷移指示取得手段が前記状態遷移指示を取得したときの前記特定機能の現在状態を特定する現在状態特定手段と、前記遷移情報保持手段が前記特定機能に対応付けて保持している前記遷移情報と、前記状態遷移指示取得手段が取得した前記状態遷移指示に示される指示状態と、前記状態特定手段により特定された前記現在状態とに基づいて、前記現在状態から前記指示状態に遷移するために必要な遷移処理を特定する遷移処理特定手段と、前記遷移処理特定手段により特定された前記遷移処理を実行し、前記指示状態に遷移させる状態遷移手段と、前記状態遷移手段が処理を完了した場合に、前記指示状態への遷移が完了したことを示す完了通知を前記依存情報処理装置に送信する送信手段とを有し、前記依存情報処理装置は、前記他の情報処理装置から、前記遷移指示に示す遷移が完了した旨を示す前記完了通知を受信する完了通知受信手段と、前記完了通知受信手段が前記完了通知を受信した場合に、前記特定機能の前記特定処理を実行する処理管理手段とを有することを特徴とする。
【００１３】
また、本発明の他の形態は、他の情報処理装置と協調して処理を行う情報処理方法であって、前記特定機能の状態を所定の状態に遷移させることを指示する状態遷移指示を、前記特定機能の状態に依存する他の装置から取得する状態遷移指示取得ステップと、前記状態遷移指示取得ステップにおいて前記状態遷移指示を取得したときの前記特定機能の現在状態を特定する現在状態特定ステップと、当該情報処理装置の特定機能が取り得る複数の状態と、各状態から遷移可能な状態を示す遷移情報とを対応付けて保持する遷移情報保持手段が前記特定機能に対応付けて保持している前記遷移情報と、前記状態遷移指示取得ステップにおいて取得した前記状態遷移指示に示される指示状態と、前記現在状態特定手段により特定された前記現在状態とに基づいて、前記現在の状態から前記指示状態に遷移するために必要な遷移処理を特定する遷移処理特定ステップと、前記遷移処理特定ステップにおいて特定された前記遷移処理を実行し、前記指示状態に遷移させる状態遷移ステップと、前記状態遷移ステップにおける処理が完了した場合に、前記指示状態への遷移が完了したことを示す完了通知を前記他の装置に送信する完了通知送信ステップとを有することを特徴とする。
【００１４】
また、本発明の他の形態は、複数の装置が協調して処理を行う情報処理システムにおける情報処理方法であって、前記複数の装置のうち、他の装置に依存する依存情報処理装置が、当該依存情報処理装置において実行される特定処理と、当該特定処理を実行するために成立していなければならない、他の情報処理装置の特定機能における特定状態を示す制約情報とを対応付けて保持する制約情報保持手段が保持している前記制約情報から、前記特定処理に対応する制約情報を検索する制約情報検索ステップと、前記制約情報検索ステップにおいて検索された前記制約情報に基づいて、前記他の情報処理装置を特定し、当該他の情報処理装置の前記特定機能の状態を前記特定状態に遷移させることを示す状態遷移指示を送信する遷移指示送信ステップと、前記制約情報検索手段により特定された前記他の情報処理装置が、前記特定機能の状態を前記特定状態に遷移させることを指示する前記状態遷移指示を、前記依存情報処理装置から取得する状態遷移指示取得ステップと、前記状態遷移指示取得ステップにおいて前記状態遷移指示を取得したときの前記特定機能の現在状態を特定する現在状態特定ステップと、当該他の情報処理装置の前記特定機能が取り得る複数の状態と、各状態から遷移可能な状態を示す遷移情報とを対応付けて保持する遷移情報保持手段が前記特定機能に対応付けて保持している前記遷移情報と、前記状態遷移指示取得ステップにおいて取得した前記状態遷移指示に示される指示状態と、前記状態特定ステップにおいて特定された前記現在状態とに基づいて、前記現在状態から前記指示状態に遷移するために必要な遷移処理を特定する遷移処理特定ステップと、前記遷移処理特定ステップにおいて特定された前記遷移処理を実行し、前記指示状態に遷移させる状態遷移ステップと、前記状態遷移ステップにおける処理が完了した場合に、前記指示状態への遷移が完了したことを示す完了通知を前記依存情報処理装置に送信する送信ステップと、前記依存情報処理装置が、前記他の情報処理装置から、前記遷移指示に示す遷移が完了した旨を示す前記完了通知を受信する完了通知受信ステップと、前記完了通知受信ステップにおいて前記完了通知を受信した場合に、前記特定機能の前記特定処理を実行する処理管理ステップとを有することを特徴とする。
【００１５】
また、本発明の他の形態は、他の情報処理装置と協調して処理を行う情報処理をコンピュータに実行させる情報処理プログラムであって、前記特定機能の状態を所定の状態に遷移させることを指示する状態遷移指示を、前記特定機能の状態に依存する他の装置から取得する状態遷移指示取得ステップと、前記状態遷移指示取得ステップにおいて前記状態遷移指示を取得したときの前記特定機能の現在状態を特定する現在状態特定ステップと、当該情報処理装置の特定機能が取り得る複数の状態と、各状態から遷移可能な状態を示す遷移情報とを対応付けて保持する遷移情報保持手段が前記特定機能に対応付けて保持している前記遷移情報と、前記状態遷移指示取得ステップにおいて取得した前記状態遷移指示に示される指示状態と、前記現在状態特定手段により特定された前記現在状態とに基づいて、前記現在の状態から前記指示状態に遷移するために必要な遷移処理を特定する遷移処理特定ステップと、前記遷移処理特定ステップにおいて特定された前記遷移処理を実行し、前記指示状態に遷移させる状態遷移ステップと、前記状態遷移ステップにおける処理が完了した場合に、前記指示状態への遷移が完了したことを示す完了通知を前記他の装置に送信する完了通知送信ステップとを有することを特徴とする。
【発明の効果】
【００１６】
本発明にかかる情報処理装置においては、遷移情報保持手段が、当該情報処理装置の特定機能が取り得る複数の状態と、各状態から遷移可能な状態を示す遷移情報とを対応付けて保持しており、状態遷移指示取得手段が、特定機能の状態を所定の状態に遷移させることを指示する状態遷移指示を、特定機能の状態に依存する他の装置から取得すると、現在状態特定手段が現在状態を特定し、遷移処理特定手段が、移情報保持手段が保持する情報、指示状態および現在状態に基づいて、現在の状態から示状態に遷移するために必要な遷移処理を特定し、この遷移処理により状態遷移を完了させた後、完了通知送信手段が完了通知を送信するので、当該情報処理装置の有する所定の機能の状態に依存する処理を他の装置が行う場合には、他の装置から遷移指示を受信した場合には、上記処理により状態遷移を完了する。したがって、当該情報処理装置の構成が更新された場合であっても、当該装置に依存する他の装置においては何ら変更を加える必要がなく、システムの変更に柔軟に対応することができるという効果を奏する。
【発明を実施するための最良の形態】
【００１７】
以下に、本発明にかかる情報処理装置、情報処理システム、情報処理方法および情報処理プログラムの実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１８】
図１は、実施の形態にかかる情報処理システム１０の全体構成を示す図である。情報処理システム１０は、ネットワーク５に接続された複数の計算機１００，２００・・・を備えている。本実施の形態にかかる情報処理システム１０に含まれる各計算機は、互いに他の装置の状態に依存しながら処理を進めていく。
【００１９】
実施の形態においては、サーバ計算機１００と、処理を行う際にサーバ計算機１００の所定の機能の状態に依存する依存計算機２００とを例に、依存処理について説明する。
【００２０】
サーバ計算機１００および依存計算機２００はそれぞれＳＳＨ（Ｓｅｃｕｒｅ  ＳＨｅｌｌ）クライアントとＳＳＨサーバである。ＳＳＨとは、近接の計算機から遠隔の計算機を暗号化通信を利用して操作するためのサービスである。
【００２１】
ＳＳＨを利用する場合、遠隔操作される計算機にＳＳＨサーバをインストールし、遠隔操作を行うために利用する近接の計算機にＳＳＨクライアントをインストールする必要がある。
【００２２】
ＳＳＨにおいては、公開鍵暗号を使って暗号化通信を行うことが可能である。公開鍵暗号とは、秘密鍵と公開鍵を利用し、秘密鍵を外部に公開しないことで、安全な暗号化を実現するものである。ＳＳＨサーバやＳＳＨクライアントを実装したプログラムにおいては、秘密鍵の設定が安全でない場合、正常に動作しないようにすることもできる。
【００２３】
ＳＳＨは、例えば、ＣＬＩ（Ｃｏｍｍａｎｄ  Ｌｉｎｅ  Ｉｎｔｅｒｆａｃｅ）から「ｓｓｈ  ｒｅｍｏｔｅ．ｅｘａｍｐｌｅ．ｊｐ」のように、遠隔操作したい計算機を指定することで利用できる。
【００２４】
図２は、サーバ計算機１００の機能構成を示すブロック図である。サーバ計算機１００は、第１コンテンツ１１１と、第２コンテンツ１１２と、サーバ計算機管理部１２０とを有している。さらに、サーバ計算機管理部１２０は、遷移指示受信部１２２と、機能特定部１２４と、現在状態特定部１２６と、遷移処理特定部１２８と、状態遷移部１３０と、完了通知送信部１３２と、機能情報データベース（ＤＢ）１４０と、遷移情報ＤＢ１４２とを有している。
【００２５】
第１コンテンツ１１１は、具体的には、ｏｐｅｎｓｓｈデーモンであり、ＳＳＨサーバとしての機能を実装したプログラムである。第２コンテンツ１１２は、メール受信機能を実装したプログラムである。このように、第１コンテンツ１１１および第２コンテンツ１１２は、所定の機能を実現するためのコンテンツである。サーバ計算機管理部１２０は、第１コンテンツ１１１および第２コンテンツ１１２における処理状態を管理する。
【００２６】
遷移指示受信部１２２は、ネットワーク５を介して外部から遷移指示を受信する。遷移指示とは、所定の機能を所定の状態にする旨を示す情報である。例えば、第１コンテンツ１１１を起動状態にする旨の情報などである。また、遷移指示受信部１２２は、具体的には、当該１００に依存する依存計算機２００から受信する。
【００２７】
機能特定部１２４は、遷移指示受信部１２２が受信した遷移指示に示される機能を特定する。この際、機能情報ＤＢ１４０に格納されている情報を参照する。機能情報ＤＢ１４０には、機能情報が格納されている。機能情報とは、第１コンテンツ１１１および第２コンテンツ１１２のようにサーバ計算機１００にインストールされている各機能を実際に実現するためのコンテンツを示す情報である。
【００２８】
現在状態特定部１２６は、機能特定部１２４により特定された機能の現在の状態を特定する。この際、遷移情報ＤＢ１４２に格納されている情報を参照する。遷移情報ＤＢ１４２には、各機能の状態情報が格納されている。ここで、状態情報とは、例えば、待機状態、起動状態など各機能における処理状態を示す情報である。さらに、各機能の現在の状態を示す情報も保持されている。
【００２９】
遷移処理特定部１２８は、現在状態特定部１２６により特定された現在状態から遷移指示に示される状態に遷移するための処理を特定する。この際、遷移情報ＤＢ１４２に格納されている情報を参照する。状態遷移部１３０は、遷移処理特定部１２８により特定された処理を実行し、遷移指示に示される機能を、遷移指示に示される状態に遷移させる。
【００３０】
完了通知送信部１３２は、状態遷移部１３０の処理が完了した場合に、遷移指示に示される状態への遷移が完了した旨を示す完了通知をネットワーク５を介して、遷移指示の送信元に送信する。
【００３１】
第１コンテンツ１１１、すなわちｏｐｅｎｓｓｈデーモンの配布パッケージには、ｏｐｅｎｓｓｈデーモンにおける状態を示す状態情報が含まれている。ｏｐｅｎｓｓｈデーモンがインストールされる際には、ｏｐｅｎｓｓｈデーモンの遷移情報が遷移情報ＤＢ１４２に読み込まれる。さらに、機能情報ＤＢ１４０の機能情報が更新される。
【００３２】
なお、ｏｐｅｎｓｓｈデーモンパッケージには、ｏｐｅｎｓｓｈデーモンはＳＳＨサーバであるという情報（以下、パッケージ情報と呼ぶ）を備えさせておく。そして、パッケージ情報を基に機能情報を更新できるインストール装置にて機能情報の更新を行う。また他の例としては、サーバ計算機１００の管理者などが機能情報の更新を行うこととしてもよい。
【００３３】
図３は、機能情報ＤＢ１４０のデータ構成を模式的に示す図である。機能と、実際に機能を実現するためのコンテンツとが対応付けて格納されている。例えば、機能「ＳＳＨ」に対応付けて「ｏｐｅｎｓｓｈデーモン」が格納されている。
【００３４】
図４は、遷移情報ＤＢ１４２に格納されているデータを説明するための図である。図４は、ｏｐｅｎｓｓｈデーモンの遷移情報を模式的に示している。ｏｐｅｎｓｓｈデーモンは、起動状態、停止状態およびエラー１状態の３つの状態間を遷移する。停止状態は、ｏｐｅｎｓｓｈデーモンが正常に停止している状態である。エラー１状態は、ｏｐｅｎｓｓｈデーモンが参照する秘密鍵ファイルが危険な設定、すなわち、管理者以外のユーザが読み込み可能な設定となっており、ｏｐｅｎｓｓｈデーモンの起動に失敗した状態である。ＳＳＨクライアントがｏｐｅｎｓｓｈデーモンに接続するためにはｏｐｅｎｓｓｈデーモンが起動状態である必要がある。
【００３５】
図４に示すように、停止状態と起動状態との間は互いに遷移可能である。エラー１状態からは、停止状態にのみ遷移可能である。停止状態から起動状態に遷移させるためには、プログラム１を実行させればよい。起動状態から停止状態に遷移させるためには、プログラム２を実行させればよい。また、エラー１状態から停止状態に遷移させるためには、プログラム３を実行させればよい。なお、プログラム１、プログラム２およびプログラム３は、ｏｐｅｎｓｓｈデーモンの状態を変化させるために必要な操作であり、ｏｐｅｎｓｓｈデーモンに特化したものである。
【００３６】
なお、ｏｐｅｎｓｓｈデーモンの図４に示すような状態遷移に関する情報は、ｏｐｅｎｓｓｈデーモンを運用管理する際の経験やｏｐｅｎｓｓｈデーモンに関する文献から得られる知識である。これらの情報に基づいて、管理者等により登録される。
【００３７】
さらに、遷移情報ＤＢ１４２には、現在の状態がいずれの状態であるかを認識可能な情報が格納されている。具体的には、図４に示すように現在の状態を示すフラグが付与されている。
【００３８】
図５は、遷移情報ＤＢ１４２のデータ構成を模式的に示す図である。遷移情報ＤＢ１４２は、図４を参照しつつ説明した遷移状態に関する情報を、コンテンツごとに格納している。図５に示すように、遷移情報ＤＢ１４２は、コンテンツごとに属性情報と、状態情報と、遷移情報とを格納している。
【００３９】
属性情報は、ｏｐｅｎｓｓｈデーモンの状態を判定するために必要な属性と、その属性値の計算方法を含んでいる。図５に示すように、ｏｐｅｎｓｓｈデーモンには、「プロセス」と「鍵安全性」という２つの属性が存在していることを示している。
【００４０】
例えば、図５に示す属性情報「プロセス：／ｖａｒ／ｒｕｎ／ｓｓｈｄ．ｐｉｄ  ｉｎ  ／ｐｒｏｃ／」は、以下の内容を示している。すなわち、「プロセス」という属性の属性値は、「／ｖａｒ／ｒｕｎ／ｓｓｈｄ．ｐｉｄ」というファイルに記述される文字列が「／ｐｒｏｃ」ディレクトリ内に存在している場合に「ｔｒｕｅ」となり、存在しない場合に「ｆａｌｓｅ」となる。
【００４１】
状態情報は、ｏｐｅｎｓｓｈデーモンの既知の状態と各状態における属性値を含んでいる。例えば、図５に示す「起動：プロセス＝ｔｒｕｅ，鍵安全性＝ｔｒｕｅ」は、以下の内容を示している。すなわち、プロセス属性値がｔｒｕｅであり、かつ鍵安全性属性がｔｒｕｅであれば、ｏｐｅｎｓｓｈデーモンは起動状態にある。
【００４２】
遷移情報は、ｏｐｅｎｓｓｈデーモンの状態を遷移させるために必要な処理を示す情報である。遷移情報は、遷移名と、事前状態、事後状態および処理を含んでいる。例えば、図５に示す「遷移１：停止、起動、プログラム１」は、以下の内容を示す。すなわち、停止状態から起動状態に遷移させるためには、プログラム１を実行する。
【００４３】
図６は、依存計算機２００の機能構成を示すブロック図である。依存計算機２００は、ｏｐｅｎｓｓｈクライアント２１０と、制約情報ＤＢ２２０と、依存計算機管理部２３０とを備えている。さらに、ｏｐｅｎｓｓｈクライアント２１０は、制約情報検索部２１２と、処理実行管理部２１４とを有している。依存計算機管理部２３０は、遷移指示送信部２３２と、完了通知受信部２３４とを有している。
【００４４】
ｏｐｅｎｓｓｈクライアント２１０は、ＳＳＨクライアントとしての機能を実装したプログラムである。ｏｐｅｎｓｓｈクライアント２１０における処理は、サーバ計算機１００が有する機能の状態に依存する。依存計算機管理部２３０は、ｏｐｅｎｓｓｈクライアント２１０における処理を管理する。
【００４５】
制約情報ＤＢ２２０は、制約情報を格納している。ここで、制約情報とは、ｏｐｅｎｓｓｈクライアント２１０が処理を進める際の制約となる内容を示す情報である。制約情報は、ｏｐｅｎｓｓｈクライアント２１０の処理が依存する機能の状態を示す情報である。例えば、ｏｐｅｎｓｓｈクライアント２１０が起動する際には、サーバ計算機１００が起動している必要があるとする。この場合には、ｏｐｅｎｓｓｈクライアント２１０の起動処理に対応付けて、サーバ計算機１００の起動を示す制約情報が格納されている。
【００４６】
制約情報検索部２１２は、ｏｐｅｎｓｓｈクライアント２１０において実行されている処理に対応付けられている制約情報を制約情報ＤＢ２２０において検索する。そして、制約情報に基づいて、ｏｐｅｎｓｓｈクライアント２１０の処理が依存する計算機、すなわち対象計算機を特定する。さらに、制約情報に基づいて、ｏｐｅｎｓｓｈクライアント２１０の処理を進めるために必要な対象計算機の状態を特定する。
【００４７】
処理実行管理部２１４は、ｏｐｅｎｓｓｈクライアント２１０の処理の実行を管理する。例えば、制約情報検索部２１２により特定された対象計算機が制約情報に示される状態になるまで処理を中断する。
【００４８】
遷移指示送信部２３２は、制約情報検索部２１２が特定した対象計算機に対し、制約情報検索部２１２が特定した状態に遷移する旨を示す遷移指示をネットワーク５を介して対象計算機に送信する。本実施の形態においては、サーバ計算機１００に送信する。
【００４９】
完了通知受信部２３４は、ネットワーク５を介して対象計算機すなわちサーバ計算機１００から完了通知を受信する。完了通知受信部２３４が完了通知を受信すると、処理実行管理部２１４は、ｏｐｅｎｓｓｈクライアント２１０の処理を再開する。
【００５０】
なお、依存計算機２００には、ｏｐｅｎｓｓｈクライアントがインストールされている。ｏｐｅｎｓｓｈクライアントは、ＳＳＨクライアントとしての機能を実装したプログラムである。ｏｐｅｎｓｓｈクライアントの配布パッケージには、ｏｐｅｎｓｓｈクライアントが正常に動作するための制約情報が含まれている。ｏｐｅｎｓｓｈクライアントがインストールされる際には、制約情報ＤＢ２２０に格納されている制約情報を依存計算機管理部２３０に伝えるための制約情報検索部２１２がインストールされる。制約情報検索部２１２は例えば、ｏｐｅｎｓｓｈクライアントをラップする以下のようなプログラムでよい。
＃！／ｕｓｒ／ｂｉｎ／ｐｙｔｈｏｎ
ｉｍｐｏｒｔ  ｏｓ
ｉｍｐｏｒｔ  ｓｙｓ
ｉｍｐｏｒｔ  ｃｌｉｅｎｔ＿ｍａｎａｇｅｒ
ｃｏｎｓｔ ＝ ｓｅａｒｃｈ＿ｃｏｎｓｔｒａｉｎｔ（“ｃｏｎｎｅｃｔ“）
ｈｏｓｔ ＝ ｓｅａｒｃｈ＿ｈｏｓｔ（ｃｏｎｓｔ，ｓｙｓ．ａｒｇｖ）
ｃｌｉｅｎｔ＿ｍａｎａｇｅｒ．ｒｅｑｕｅｓｔ（ｃｏｎｓｔ，ｈｏｓｔ）
ｏｓ．Ｓｙｓｔｅｍ（“／ｕｓｒ／ｂｉｎ／ｓｓｈ％ｓ”，ｓｙｓ．ａｒｇｖ〔１〕）
【００５１】
この例において、「ｓｅａｒｃｈ＿ｃｏｎｓｔｒａｉｎｔ」は、制約情報から、利用しようとしている機能に関連する制約を検索するプログラムである。上記の例では、引数に「ｃｏｎｎｅｃｔ（接続）」を指定することで、ｏｐｅｎｓｓｈクライアントの接続機能に関する制約を検索している。
【００５２】
「ｓｅａｒｃｈ＿ｈｏｓｔ」は、制約情報から、制約を満たしているべき計算機を検索するプログラムである。上記の例では、ｏｐｅｎｓｓｈクライアントの接続機能を利用する際の制約（ｃｏｎｓｔ）を満たしているべき計算機を検索している。また、「ｃｌｉｅｎｔ＿ｍａｎａｇｅｒ」はクライアント計算機の管理装置を実装したプログラムである。上記の例では、クライアント計算機の管理装置に、「ｈｏｓｔ」で指定する計算機に制約（ｃｏｎｓｔ）を充足させることを要求している。
【００５３】
上記のようなラッププログラムを、エイリアス機能を利用して、ｏｐｅｎｓｓｈクライアントとして利用することができる。また、他の例としては、制約情報検索部２１２は、例えば共有ライブラリなどを置き換えることにより実現されてもよい。
【００５４】
図７は、制約情報ＤＢ２２０のデータ構成を模式的に示す図である。ｏｐｅｎｓｓｈクライアント２１０の各種機能に対する制約情報が格納されている。制約情報には、各機能の他、当該機能に対応付けてアクセス先計算機と、条件が含まれている。図７に示すように機能「接続」に対応付けられているアクセス先計算機は「＜ＳＴＤＩＮ＞」である。すなわち、標準入力から指定された計算機であることを示している。ここで例えば、サーバ計算機１００が指定される。
【００５５】
また、機能「接続」に対応付けられている条件は、「ＳＳＨサーバ＝起動」である。これは、「ＳＳＨサーバ」が「起動」という状態である必要があることを示している。すなわち、制約情報において指定されているのは機能に対する条件であり、機能を実現するために実装されているコンテンツについての条件ではない。すなわち、コンテンツに依存しない条件である。
【００５６】
図８は、サーバ計算機１００が依存計算機２００に依存する処理を行う際の依存処理を示すフローチャートである。なお、ここでは、サーバ計算機１００がＳＳＨサーバを利用可能にする際の処理について説明する。前提として、サーバ計算機１００のＳＳＨサーバ、すなわちｏｐｅｎｓｓｈデーモンは、エラー１状態にあるものとする。
【００５７】
まず、依存計算機２００は、ユーザから入力されたｓｓｈ接続要求を取得する（ステップＳ１００）。次に、依存計算機２００は、ｏｐｅｎｓｓｈクライアント２１０を利用してサーバ計算機１００に接続を試みる。具体的には、ＣＬＩから「ｓｓｈ  ｓｅｒｖｅｒ．ｅｘａｍｐｌｅ．ｊｐ」というコマンドが発行される。ここで、「ｓｅｒｖｅｒ．ｅｘａｍｐｌｅ．ｊｐ」は、サーバ計算機１００のアドレスである。
【００５８】
次に、ｏｐｅｎｓｓｈクライアント２１０の制約情報検索部２１２は、制約情報を参照して（ステップＳ１０２）、対象計算機を特定する（ステップＳ１０４）。さらに、対象計算機における対象機能を特定する（ステップＳ１０６）。次に、サーバ計算機１００のサーバ計算機管理部１２０に、サーバ計算機１００においてＳＳＨサーバが起動状態であることが必要であることを通知する。すなわち、特定した対象計算機に対し、遷移指示を送信する（ステップＳ１０８）。
【００５９】
サーバ計算機１００の遷移指示受信部１２２が依存計算機２００から遷移指示を受信すると、機能特定部１２４は、機能情報ＤＢ１４０を参照し、対象機能を特定する（ステップＳ１１０）。さらに対象機能として実装されているコンテンツを特定する。具体的には、対象機能として、ＳＳＨサーバを特定し、機能情報ＤＢ１４０においてＳＳＨサーバに対応付けられているｏｐｅｎｎｓｓｈデーモンを特定する。
【００６０】
次に、現在状態特定部１２６は遷移情報ＤＢ１４２に格納されている情報に基づいて、現在状態を特定する（ステップＳ１１２）。具体的には、ｏｐｅｎｓｓｈデーモンの属性情報を参照し、各属性値を計算する。さらに計算された属性値と状態情報に基づいて、現在状態がエラー１状態であることを特定する。
【００６１】
次に、遷移処理特定部１２８は、遷移処理を特定する（ステップＳ１１４）。具体的には、遷移情報ＤＢ１４２に格納されている遷移情報に基づいて遷移処理を特定する。例えば、グラフ理論の探索アルゴリズム等を利用する。これにより、エラー１状態から起動状態へ遷移させるためには、プログラム３およびプログラム１を実行が必要な処理、すなわち遷移処理として特定する。なお、プログラム３およびプログラム１は、この順に実行される。すなわち、実行順番も特定される。
【００６２】
次に、状態遷移部１３０は、遷移処理特定部１２８により特定された遷移処理を実行し遷移指示に示される状態への遷移を完了させる（ステップＳ１１６）。具体的には、プログラム３およびプログラム１をこの順に実行する。これにより、ｏｐｅｎｓｓｈデーモンの起動状態への遷移が完了する。
【００６３】
遷移が完了した後、完了通知送信部１３２は、依存計算機２００に対し、起動状態への遷移が完了した旨を示す完了通知を送信する（ステップＳ１１８）。なお、現在状態と遷移指示に示される状態とが同一である場合には、サーバ計算機１００は、上記処理を行うことなく完了通知を送信する。
【００６４】
依存計算機２００の完了通知受信部２３４が完了通知を受信すると、処理実行管理部２１４は、処理の実行を指示する（ステップＳ１２０）。具体的には、サーバ計算機１００は、依存計算機２００への接続処理を開始する。以上で、依存処理が完了する。
【００６５】
なお、サーバ計算機１００が送信する遷移指示は、依存計算機２００の機能にのみ依存し、機能を実現するために実装されているコンテンツには依存しない情報である。このため、例えばＳＳＨサーバとして、ｏｐｅｎｓｓｈデーモン以外のコンテンツが実装されている場合であっても、遷移指示を受信した場合には、このコンテンツにおける現在の状態を特定し、この状態から遷移指示に示される状態に遷移させることができる。すなわち、依存計算機２００におけるある機能に対応するコンテンツを他のコンテンツに変更した場合であっても、サーバ計算機１００における設定を変更する必要はない。
【００６６】
また、従来のような集中管理システムにおいては、情報処理システム１０に含まれるサーバ計算機１００以外の計算機にＳＳＨサーバをインストールした場合には、これに対応した変更が必要であった。これに対し、本実施の形態にかかる情報処理システム１０においては、このような対応は不要であり、「＜ＳＴＤＩＮ＞」において、新たにＳＳＨサーバがインストールされた計算機を指定すればよい。
【００６７】
図９は、実施の形態に係る情報処理システム１０のハードウェア構成を示す図である。情報処理システム１０は、ハードウェア構成として、情報処理システム１０における依存処理を実行する依存処理プログラムなどが格納されているＲＯＭ５２と、ＲＯＭ５２内のプログラムに従って情報処理システム１０の各部を制御するＣＰＵ５１と、情報処理システム１０の制御に必要な種々のデータを記憶するＲＡＭ５３と、ネットワークに接続して通信を行う通信Ｉ／Ｆ５７と、各部を接続するバス６２とを備えている。
【００６８】
先に述べた情報処理システム１０における依存処理プログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、フロッピー（Ｒ）ディスク（ＦＤ）、ＤＶＤ等のコンピュータで読み取り可能な記録媒体に記録されて提供されてもよい。
【００６９】
この場合には、依存処理プログラムは、情報処理システム１０において上記記録媒体から読み出して実行することにより主記憶装置上にロードされ、上記ソフトウェア構成で説明した各部が主記憶装置上に生成されるようになっている。
【００７０】
また、本実施の形態の依存処理プログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。
【００７１】
以上、本発明を実施の形態を用いて説明したが、上記実施の形態に多様な変更または改良を加えることができる。
【００７２】
そうした第１の変更例としては、本実施の形態においては、協調処理を行う複数の計算機間における依存処理について説明したが、これにかえて、１つの計算機内に含まれる複数のプログラム間における依存処理に適用してもよい。この場合には、１つの計算機内の複数のプログラムそれぞれが依存するプログラムに対し遷移指示を送り、依存先のプログラムは遷移指示に示される状態への遷移が完了すると完了指示を返送する。
【００７３】
また、第２の変更例としては、本実施の形態においては、依存計算機２００の所定の機能がサーバ計算機１００の有する機能の状態に依存する場合について説明したが、これに加えて、サーバ計算機１００の所定の機能が依存計算機２００、またはその他の計算機の有する機能の状態に依存してもよい。この場合には、サーバ計算機１００が依存する計算機は、図２を参照しつつ説明したサーバ計算機１００のサーバ計算機管理部１２０の各種機能を備える。また、サーバ計算機１００は、図６を参照しつつ説明した依存計算機２００の各種機能を備える。
【図面の簡単な説明】
【００７４】
【図１】実施の形態にかかる情報処理システム１０の全体構成を示す図である。
【図２】サーバ計算機１００の機能構成を示すブロック図である。
【図３】機能情報ＤＢ１４０のデータ構成を模式的に示す図である。
【図４】遷移情報ＤＢ１４２に格納されているデータを説明するための図である。
【図５】遷移情報ＤＢ１４２のデータ構成を模式的に示す図である。
【図６】依存計算機２００の機能構成を示すブロック図である。
【図７】制約情報ＤＢ２２０のデータ構成を模式的に示す図である。
【図８】サーバ計算機１００が依存計算機２００に依存する処理を行う際の依存処理を示すフローチャートである。
【図９】実施の形態に係る情報処理システム１０のハードウェア構成を示す図である。
【符号の説明】
【００７５】
５  ネットワーク
１０  情報処理システム
５１  ＣＰＵ
５２  ＲＯＭ
５３  ＲＡＭ
５７  通信Ｉ／Ｆ
６２  バス
１００  サーバ計算機
１１１  第１コンテンツ
１１２  第２コンテンツ
１２０  サーバ計算機管理部
１２２  遷移指示受信部
１２４  機能特定部
１２６  現在状態特定部
１２８  遷移処理特定部
１３０  状態遷移部
１３２  完了通知送信部
２００  依存計算機
２１０  クライアント
２１２  制約情報検索部
２１４  処理実行管理部
２３０  依存計算機管理部
２３２  遷移指示送信部
２３４  完了通知受信部
１４０  機能情報ＤＢ
１４２  遷移情報ＤＢ
２２０  制約情報ＤＢ
【図１】
2007128185.tif 000003
【図２】
2007128185.tif 000004
【図３】
2007128185.tif 000005
【図４】
2007128185.tif 000006
【図５】
2007128185.tif 000007
【図６】
2007128185.tif 000008
【図７】
2007128185.tif 000009
【図８】
2007128185.tif 000010
【図９】
2007128185.tif 000011