(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024051247
(43)【公開日】2024-04-11
(54)【発明の名称】情報処理装置、情報処理方法、及びプログラム
(51)【国際特許分類】
G06F 21/31 20130101AFI20240404BHJP
【FI】
G06F21/31 360
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2022157305
(22)【出願日】2022-09-30
(71)【出願人】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】110002044
【氏名又は名称】弁理士法人ブライタス
(72)【発明者】
【氏名】山本 和也
(57)【要約】
【課題】再起動が必要なセキュリティパッチをマルチセッション方式対応のソフトウェアに適用する場合でも、利用者への影響を低減することにある。
【解決手段】情報処理装置は、複数の利用者が接続して利用するマルチセッション方式対応のソフトウェアが実装された複数のコンピュータごとに、当該コンピュータを利用する利用者の利用履歴を表す利用履歴情報を取得する取得部と、コンピュータごとに、当該コンピュータを利用する利用者の利用履歴情報を用いて、当該コンピュータの基準となる利用履歴を表す基準利用履歴情報を生成する生成部と、コンピュータを利用する利用者ごとに、当該利用者の利用履歴情報と、コンピュータそれぞれの基準利用履歴情報との類似度を算出し、類似度に基づいて当該利用者に対応するコンピュータを抽出する抽出部と、を有する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
複数の利用者が接続して利用するマルチセッション方式対応のソフトウェアが実装された複数のコンピュータごとに、当該コンピュータを利用する前記利用者の利用履歴を表す利用履歴情報を取得する取得手段と、
前記コンピュータごとに、当該コンピュータを利用する前記利用者の前記利用履歴情報を用いて、当該コンピュータの基準となる利用履歴を表す基準利用履歴情報を生成する生成手段と、
前記コンピュータを利用する利用者ごとに、当該利用者の前記利用履歴情報と、前記コンピュータそれぞれの前記基準利用履歴情報との類似度を算出し、前記類似度に基づいて当該利用者に対応するコンピュータを抽出する抽出手段と、
を有する情報処理装置。
【請求項2】
前記抽出手段は、
前記コンピュータを利用する複数の前記利用者の前記利用履歴情報それぞれと、当該コンピュータの前記基準利用履歴情報との第一の類似度を算出し、算出した前記第一の類似度のうち、あらかじめ設定した第一の閾値以下の前記第一の類似度を検出し、検出した前記第一の類似度に対応する第一の利用者を抽出する第一の抽出手段と、
抽出した前記第一の利用者それぞれの前記利用履歴情報と、他のコンピュータそれぞれの基準利用履歴情報との第二の類似度を算出し、算出した前記第二の類似度のうち、あらかじめ設定した第二の閾値以上の前記第二の類似度を検出し、検出した前記第二の類似度に対応する第二の利用者と、前記第二の利用者に対応するコンピュータとを抽出する第二の抽出手段と、を有する
請求項1に記載の情報処理装置。
【請求項3】
前記生成手段は、あらかじめ設定された期間における、前記コンピュータを共有する複数の前記利用者の前記利用履歴を用いて、複数の前記利用者の利用内容を平均化して前記基準利用履歴情報を生成する、
請求項2に記載の情報処理装置。
【請求項4】
前記生成手段は、前記コンピュータを共有する複数の前記利用者の前記利用履歴情報から不定期に発生する利用内容を検出し、検出した前記利用内容を、検出した前記利用内容に対応する時間において前記利用者が多く実施していた利用内容に置換える、
請求項3に記載の情報処理装置。
【請求項5】
前記第一の抽出手段は、前記コンピュータごとに、前記利用履歴情報それぞれと、前記基準利用履歴情報との第一の距離を算出し、算出した前記第一の距離を前記第一の類似度とする、
請求項4に記載の情報処理装置。
【請求項6】
前記第二の抽出手段は、前記第一の利用者それぞれの前記利用履歴情報と、前記他の仮想マシンそれぞれの基準利用履歴情報との第二の距離を算出し、算出した前記第二の距離を前記第二の類似度とする、
請求項5に記載の情報処理装置。
【請求項7】
前記第二の抽出手段は、前記第二の利用者の利用状況に類似した利用をしている利用者が多い他のコンピュータがあることを、マルチセッション方式対応のソフトウェアを管理する管理者の端末装置に送信する、
請求項6に記載の情報処理装置。
【請求項8】
情報処理装置が、
複数の利用者が接続して利用するマルチセッション方式対応のソフトウェアが実装された複数のコンピュータごとに、当該コンピュータを利用する前記利用者の利用履歴を表す利用履歴情報を取得し、
前記コンピュータごとに、当該コンピュータを利用する前記利用者の前記利用履歴情報を用いて、当該コンピュータの基準となる利用履歴を表す基準利用履歴情報を生成し、
前記コンピュータを利用する利用者ごとに、当該利用者の前記利用履歴情報と、前記コンピュータそれぞれの前記基準利用履歴情報との類似度を算出し、前記類似度に基づいて当該利用者に対応するコンピュータを抽出する、
情報処理方法。
【請求項9】
コンピュータに、
複数の利用者が接続して利用するマルチセッション方式対応のソフトウェアが実装された複数のコンピュータごとに、当該コンピュータを利用する前記利用者の利用履歴を表す利用履歴情報を取得させ、
前記コンピュータごとに、当該コンピュータを利用する前記利用者の前記利用履歴情報を用いて、当該コンピュータの基準となる利用履歴を表す基準利用履歴情報を生成させ、
前記コンピュータを利用する利用者ごとに、当該利用者の前記利用履歴情報と、前記コンピュータそれぞれの前記基準利用履歴情報との類似度を算出し、前記類似度に基づいて当該利用者に対応するコンピュータを抽出させる、
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、情報処理装置、情報処理方法、及びプログラムに関する。
【背景技術】
【0002】
VDI(Virtual Desktop Infrastructure)サービスのうち、デスクトップ環境をクラウド上に展開するサービスとしてDaaS(Desktop as a Service)が知られている。また、DaaSの方式にはシングルセッション方式とマルチセッション方式がある。マルチセッション方式としては、例えば、AVD(Azure Virtual Desktop:登録商標)などが知られている。
【0003】
シングルセッション方式では、仮想基盤(ハイパーバイザー)上に構築された仮想マシンそれぞれにシングルセッション方式対応のOS(Operating System)が実装される。また、シングルセッション方式のシステムは、仮想マシン一つに対して、一人の利用者(一つのシンクライアント端末装置)が割り当てられる。さらに、シンクライアント端末装置には、当該シンクライアント端末装置に対応するシングルセッション方式対応のOSの仮想デスクトップが提供される。
【0004】
対して、マルチセッション方式では、仮想基盤上に構築された仮想マシンそれぞれにマルチセッション方式対応のOSが実装される。また、マルチセッション方式のシステムでは、仮想マシン一台に対して複数の利用者のシンクライアント端末装置が割り当てられる。さらに、マルチセッション方式対応のOSは、当該マルチセッション方式対応のOSが実装されている仮想マシンに接続されているシンクライアント端末装置それぞれに仮想デスクトップを提供する。
【0005】
したがって、マルチセッション方式では、マルチセッション方式対応のOSが実装された仮想マシンに接続された複数のシンクライアント端末装置それぞれの利用者が、様々な業務をしている。そのため、再起動が必要なセキュリティパッチを、マルチセッション方式対応のOSに適用する場合に、再起動のタイミングが適切でないと、利用者の業務に影響がでてしまう。
【0006】
関連する技術として特許文献1には、情報処理装置と再起動管理装置とからなる再起動制御システムが開示されている。再起動管理装置は、情報処理装置とその情報処理装置と近隣関係にある他の情報処理装置に関する情報とを含む装置管理情報に基づいて、情報処理装置の再起動時間を設定する。また、再起動管理装置は、再起動時間を各情報処理装置に送信する。さらに、情報処理装置は送信された再起動時間に再起動を実行する。
【0007】
また、関連する技術として特許文献2には、適切なタイミングでクライアントとサーバの接続状態を変更し、クライアントを操作する利用者の処理状態や保持されるデータに不整合は生じないように接続状態の管理をする接続状況管理装置が開示されている。特許文献2の接続状況管理装置によれば、接続状況の変更要求があった際に、利用者の利用中の機能が強制的に接続状況を変更可能な機能であるかどうかを機能情報から取得し、変更可能な機能である場合は接続状態を変更する。
【0008】
さらに、関連する技術として特許文献3には、ホストと端末間のセッションを管理する通信処理装置において、ホスト上の応用プログラムAPの負荷状態を把握し負荷の最も少ないホスト上のAPの端末のセッションを開設することで、負荷が特定のホストに集中することを防ぐ通信処理装置が開示されている。特許文献3の通信処理装置によれば、ホスト上で障害が発生した場合、通信処理装置が各ホストの負荷状態を考慮し、AP単位にセッションの再接続先を決定し、セッションの再接続を自動的に行う。
【先行技術文献】
【特許文献】
【0009】
【特許文献1】特開2019-087010号公報
【特許文献2】特開2014-021812号公報
【特許文献3】特開平10-027146号公報
【発明の概要】
【発明が解決しようとする課題】
【0010】
しかしながら、特許文献1から3の技術は、再起動が必要なセキュリティパッチを、マルチセッション方式対応のOSに適用する場合に、利用者にできるだけ影響がでないようにするものではない。
【0011】
本開示の目的の一例は、再起動が必要なセキュリティパッチをマルチセッション方式対応のソフトウェアに適用する場合に、利用者への影響を低減することである。
【課題を解決するための手段】
【0012】
上記目的を達成するため、本開示の一側面における情報処理装置は、
複数の利用者が接続して利用するマルチセッション方式対応のソフトウェアが実装された複数のコンピュータごとに、当該コンピュータを利用する前記利用者の利用履歴を表す利用履歴情報を取得する取得部と、
前記コンピュータごとに、当該コンピュータを利用する前記利用者の前記利用履歴情報を用いて、当該コンピュータの基準となる利用履歴を表す基準利用履歴情報を生成する生成部と、
前記コンピュータを利用する利用者ごとに、当該利用者の前記利用履歴情報と、前記コンピュータそれぞれの前記基準利用履歴情報との類似度を算出し、前記類似度に基づいて当該利用者に対応するコンピュータを抽出する抽出部と、
を有することを特徴とする。
【0013】
また、上記目的を達成するため、本開示の一側面における情報処理方法は、
情報処理装置が、
複数の利用者が接続して利用するマルチセッション方式対応のソフトウェアが実装された複数のコンピュータごとに、当該コンピュータを利用する前記利用者の利用履歴を表す利用履歴情報を取得し、
前記コンピュータごとに、当該コンピュータを利用する前記利用者の前記利用履歴情報を用いて、当該コンピュータの基準となる利用履歴を表す基準利用履歴情報を生成し、
前記コンピュータを利用する利用者ごとに、当該利用者の前記利用履歴情報と、前記コンピュータそれぞれの前記基準利用履歴情報との類似度を算出し、前記類似度に基づいて当該利用者に対応するコンピュータを抽出する、
ことを特徴とする。
【0014】
さらに、上記目的を達成するため、本開示の一側面におけるプログラムは、
コンピュータに、
複数の利用者が接続して利用するマルチセッション方式対応のソフトウェアが実装された複数のコンピュータごとに、当該コンピュータを利用する前記利用者の利用履歴を表す利用履歴情報を取得させ、
前記コンピュータごとに、当該コンピュータを利用する前記利用者の前記利用履歴情報を用いて、当該コンピュータの基準となる利用履歴を表す基準利用履歴情報を生成させ、
前記コンピュータを利用する利用者ごとに、当該利用者の前記利用履歴情報と、前記コンピュータそれぞれの前記基準利用履歴情報との類似度を算出し、前記類似度に基づいて当該利用者に対応するコンピュータを抽出させる、
ことを特徴とする。
【発明の効果】
【0015】
以上のように本開示によれば、再起動が必要なセキュリティパッチをマルチセッション方式対応のソフトウェアに適用する場合に、利用者への影響を低減できる。
【図面の簡単な説明】
【0016】
【
図1】
図1は、情報処理装置の一例を説明する図である。
【
図2】
図2は、情報処理装置を有するシステムの一例を説明するための図である。
【
図3】
図3は、情報処理装置の構成を詳細に説明するための図である。
【
図4】
図4は、利用履歴情報のデータ構造の一例を説明するための図である。
【
図5】
図5は、利用停止期間の検出方法を説明するための図である。
【
図6】
図6は、再起動可能期間を設定する方法を説明するための図である。
【
図7】
図7は、利用履歴情報と基準利用履歴情報との関係を説明するための図である。
【
図8】
図8は、利用履歴の一例を説明するための図である。
【
図9】
図9は、日次の基準利用履歴情報の生成について説明するための図である。
【
図10】
図10は、週次の基準利用履歴情報の生成について説明するための図である。
【
図14】
図14は、情報処理装置の動作の説明をするための図である。
【
図15】
図15は、情報処理装置を実現するコンピュータの一例を説明するための図である。
【発明を実施するための形態】
【0017】
以下、図面を参照して実施形態について説明する。なお、以下で説明する図面において、同一の機能又は対応する機能を有する要素には同一の符号を付し、その繰り返しの説明は省略することもある。
【0018】
(実施形態)
図1を用いて、実施形態における情報処理装置10の構成について説明する。
図1は、情報処理装置の一例を説明する図である。
【0019】
[装置構成]
図1に示す情報処理装置10は、再起動が必要なセキュリティパッチを、マルチセッション方式対応のソフトウェアに適用する場合でも、利用者それぞれの利用に影響がでないようにコンピュータを再起動する。また、
図1に示すように、情報処理装置10は、取得部11と、生成部12と、第一の抽出部13と、第二の抽出部14とを有する。
【0020】
セキュリティパッチは、マルチセッション方式対応のソフトウェアの脆弱性を修正するためのプログラムである。公開済みのOSとアプリケーションには、脆弱性、セキュリティホールなどが発見されることがあるので、マルウェア、サイバー攻撃などから、情報処理装置10を保護するために、セキュリティパッチを用いてソフトウェアを修正する。なお、セキュリティパッチは、脆弱性が発見された場合に、例えばベンダーなどから配布される。
【0021】
取得部11は、複数の利用者が接続して利用するマルチセッション方式対応のソフトウェアが実装された複数のコンピュータごとに、当該コンピュータを利用する利用者の利用履歴を表す利用履歴情報を取得する。
【0022】
コンピュータは、例えば、情報処理装置10に実装された、仮想マシン又はハードウェアなどでもよい。なお、以降においては、コンピュータが仮想マシンである場合について説明する。
【0023】
マルチセッション方式は、仮想マシンなどに実装された、マルチセッション方式対応のソフトウェアを、複数の利用者が共有して利用する方式である。なお、マルチセッション方式は、DaaS方式で実現してもよい。
【0024】
マルチセッション方式対応のソフトウェアは、仮想マシンなどそれぞれに実装される、マルチセッション方式対応のOS、アプリケーションソフトウェアである。なお、以降において、アプリケーションソフトウェアをアプリケーション又はアプリと記載することがある。
【0025】
仮想マシンは、物理コンピュータと同様の機能を、ソフトウェアで実現したコンピュータである。また、仮想マシンは、物理コンピュータと同様に、OSとアプリケーションを実行する。
【0026】
生成部12は、仮想マシンごとに、当該仮想マシンを利用する利用者の利用履歴情報を用いて、当該仮想マシンの基準となる利用履歴を表す基準利用履歴情報を生成する。具体的には、生成部12は、あらかじめ設定された期間における、仮想マシンを共有する複数の利用者の利用履歴を用いて、複数の利用者の利用内容を平均化して基準利用履歴情報を生成する。
【0027】
設定した期間は、例えば、一日(ある曜日の24時間)、平日期間(月曜日から金曜日までの期間)、一週間(日曜日から土曜日までの期間)、一か月(一日から月末の日までの期間)などである。
【0028】
さらに、設定した期間は、現時点の曜日と同じ、過去直近の曜日を基準とした、一日、平日期間、一週間、一か月としてもよい。例えば、現時点の曜日が月曜であれば、一週間前の月曜日を基準とするので、一日は先週の月曜日となる。また、平日期間は先週の月曜日から金曜日までの期間となる。一週間は先週の月曜日から日曜日までの期間となる。一か月は先月の現時点と同じ日付から現時点より一日前の日付までの期間となる。
【0029】
平均化は、例えば、一日であれば、複数の利用者が、同じ日付又は曜日の、同じ時間帯(例えば一時間)に実施した利用内容を用いて、同じ利用内容ごとの数を算出し、利用者が一番多い利用内容を選択する。例えば、ある時間(例えば、月曜日の8:00から9:00)において、利用者user1、2がTask1の利用内容を実施し、利用者user3がTask2の利用内容を実施した場合、平均化するとその時間における利用内容はTask1になる。なお、上述した平日期間、一週間、一か月においても同様に平均化を行う。
【0030】
言い換えれば、平均化は、不定期に発生する利用内容を削除することともいえる。平均化は、例えば、突然の会議(利用内容)が発生した場合、当該会議(利用内容)を削除し、当該会議(利用内容)をしていた時間において利用者が多く実施していた利用内容に、当該会議(利用内容)を置換えるような処理である。
【0031】
抽出部は、仮想マシンを利用する利用者ごとに、当該利用者の利用履歴情報と、コンピュータそれぞれの基準利用履歴情報との類似度を算出し、類似度に基づいて当該利用者に対応するコンピュータを抽出する。なお、抽出部は、第一の抽出部13と、第二の抽出部14とを有する。
【0032】
第一の抽出部13は、仮想マシンを共有する複数の利用者の利用履歴情報それぞれと、当該仮想マシンの基準利用履歴情報との第一の類似度を算出し、算出した第一の類似度のうち、あらかじめ設定した第一の閾値以下の第一の類似度を検出し、検出した第一の類似度に対応する第一の利用者を抽出する。
【0033】
すなわち、第一の抽出部13では、対象の仮想マシンの基準利用履歴情報に類似していない利用履歴の第一の利用者を抽出する。
【0034】
第二の抽出部14は、抽出した第一の利用者それぞれの利用履歴情報と、他の仮想マシンそれぞれの基準利用履歴情報との第二の類似度を算出し、算出した第二の類似度のうち、あらかじめ設定した第二の閾値以上の第二の類似度を検出し、検出した第二の類似度に対応する第二の利用者と、第二の利用者に対応する他の仮想マシンとを抽出する。
【0035】
すなわち、第二の抽出部14では、対象の仮想マシンの以外の他の仮想マシンそれぞれの基準利用履歴情報と、抽出した第一の利用者の利用履歴を比較し、類似した利用履歴に対応する第一の利用者(第二の利用者)を抽出する。
【0036】
続いて、第二の利用者の利用に類似した利用をしている利用者が多い他の仮想マシンがあることを、マルチセッション方式対応のソフトウェアを管理する管理者に通知する。その後、通知に基づいて、管理者が仮想マシンと利用者の端末装置との接続を変更する。
【0037】
上述したように実施形態においては、再起動が必要なセキュリティパッチをマルチセッション方式対応のソフトウェアに適用する場合に、利用者への影響を低減できる。
【0038】
また、利用内容の類似に基づいて、利用者と仮想マシンの共有関係を変更できるので、仮想マシンの再起動を効率よく実行できる。すなわち、仮想マシンを共有する利用者のそれぞれの利用内容が類似しているので、仮想マシンの再起動を効率よく実行できる。
【0039】
[システム構成]
図2を用いて、実施形態における情報処理装置10の構成をより具体的に説明する。
図2は、情報処理装置を有するシステムの一例を説明するための図である。
【0040】
システム100は、
図2の例では、情報処理装置10と、複数の端末装置20とを有する。また、情報処理装置10は、ネットワークを介して、複数の端末装置20と接続されている。
【0041】
情報処理装置10は、例えば、CPU(Central Processing Unit)、又はFPGA(Field-Programmable Gate Array)などのプログラマブルなデバイス、又はGPU(Graphics Processing Unit)、又はそれらのうちのいずれか一つ以上を搭載した回路、サーバコンピュータなどである。また、情報処理装置10は、一つ以上の仮想マシン30と、セキュリティ管理部40とを有する。
【0042】
端末装置20は、例えば、CPU、又はFPGAなどのプログラマブルなデバイス、又はGPU、又はそれらのうちのいずれか一つ以上を搭載した回路、一般的なクライアント端末装置(パーソナルコンピュータ、タブレット、スマートフォンなど)、又はシンクライアント端末装置などである。
【0043】
シンクライアント端末装置は、例えば、クライアント端末装置から大容量の記憶媒体(HDD(Hard Disk Drive)、SSD(Solid State Drive))を省いた端末装置などである。
【0044】
ネットワークは、例えば、インターネット、LAN(Local Area Network)、専用回線、電話回線、企業内ネットワーク、移動体通信網、ブルートゥース(登録商標)、WiFi(Wireless Fidelity)などの通信回線を用いて構築された一般的な通信ネットワークである。
【0045】
仮想マシン30それぞれは、情報処理装置10の仮想基盤上に構築される。仮想マシン30は、端末装置20に、利用者が利用する仮想デスクトップの画面内容を表す画面情報を送信する。仮想マシン30は、端末装置20から、利用者の端末装置20の操作内容を表す操作情報を受信する。操作内容は、例えば、キーボード、マウス、タッチパネルなどの入力機器から入力された情報である。
【0046】
セキュリティ管理部40は、仮想マシン30に実装されているマルチセッション方式対応のソフトウェアに脆弱性が発見された場合に、ベンダーから配布されるセキュリティに関する情報を管理する。また、セキュリティ管理部40は、セキュリティパッチを用いてソフトウェアの脆弱性を修正し、仮想マシン30を再起動するための指示を生成する。その後、セキュリティ管理部40は、生成した指示を仮想マシン30に送信する。
【0047】
情報処理装置10について詳細に説明する。
図3は、情報処理装置の構成を詳細に説明するための図である。
図3の例では、複数の仮想マシン30それぞれは、収集部31と、再起動実行部32と、記憶部33とを有する。セキュリティ管理部40は、取得部11と、生成部12と、第一の抽出部13と、第二の抽出部14と、管理部41と、検出部42と、再起動指示部43と、記憶部44とを有する。
【0048】
なお、
図3の例では、記憶部33と記憶部44を分けているが、記憶部33と記憶部44とを一つの記憶部としてもよい。さらに、
図3の例では、記憶部33と記憶部44とを情報処理装置10の内部に設けているが、情報処理装置10の外部に設けてもよい。
【0049】
また、
図3の例では、仮想マシン30に、収集部31と再起動実行部32と記憶部33とが実装しているが、仮想マシン30の外部に設けてもよい。
【0050】
●仮想マシン30の説明
収集部31は、あらかじめ設定した間隔ごとに、仮想マシン30を共有している利用者それぞれの利用履歴情報を収集し、当該仮想マシン30を共有する利用者ごとに、利用履歴情報を記憶部33に記憶する。
【0051】
あらかじめ設定した間隔とは、例えば、数分、数時間などの間隔である。なお、収集部31は、仮想マシン30に実装されているエージェントの取集機能を用いて、利用履歴情報を収集してもよい。
【0052】
また、収集部31は、収集した利用履歴情報を、セキュリティ管理部40に送信する。セキュリティ管理部40の管理部41は、利用履歴情報を受信すると、仮想マシン30ごとに、仮想マシン30を共有する利用者の利用履歴情報を、記憶部44に記憶する。なお、利用履歴情報は、記憶部33に記憶せず、記憶部44に記憶してもよい。
【0053】
利用履歴情報は、利用者を識別するための利用者識別情報と、利用内容を特定するための利用特定情報と、利用内容をしていた期間を表す利用期間情報と、利用内容に対する操作を識別する操作識別情報とが関連付けられた情報である。
【0054】
図4は、利用履歴情報のデータ構造の一例を説明するための図である。
図4の例では、
図2に示した一方の仮想マシン30の利用者(user1からuser3)の利用履歴情報を表している。なお、
図4に示した他方の仮想マシン30それぞれの利用者(user4からuser6・・・userNからuserN+3)についても、
図4と同様に、利用履歴情報は記憶部33又は44に記憶される。
【0055】
図4の利用者識別情報には、一方の仮想マシン30を共有する利用者を識別する情報「user1」「user2」「user3」が記憶される。なお、仮想マシン30を共有する利用者の人数は、三人に限定されるものではない。
【0056】
図4の利用特定情報には、利用者(user1)が利用したソフトウェア、ハードウェア、ファイルの種類、及び利用者の操作により発生したイベントの種類を表す種類情報と、利用者(user1)が利用したソフトウェア、ハードウェア、ファイル、及び利用者の操作により発生したイベントなどを識別する識別情報とを有する。
【0057】
種類情報には、アプリケーション(ソフトウェア)の種類を表す「アプリ」、入力機器(ハードウェア)の種類を表す「デバイス」、ファイルの種類を表す「ファイル」と、イベントの種類を表す「イベント」などが記憶されている。なお、種類情報は、上述した種類に限定されるものではない。
【0058】
識別情報には、利用したアプリケーション(ソフトウェア)がコミュニケーションツールであることを表す「アプリ1」、利用した入力機器(ハードウェア)がキーボードであることを表す「キーボード」、利用したファイルが表計算アプリで使用するファイルであることを表す「アプリ2」、イベントがログアウトであることを表す「ログアウト」などが記憶されている。
【0059】
なお、識別情報は、上述した「アプリ1」「キーボード」「アプリ2」「ログアウト」に限定されるものではない。
【0060】
図4の利用期間情報には、上述したアプリケーション「アプリ1」、入力機器「キーボード」、ファイル「アプリ2」それぞれについて、利用者がそれらを利用した時間「2022/01/11 09:00-09:15 …」「2022/01/10 09:03-09:05 …」「2021/12/27 15:00-16:00 …」と、利用者がログアウトをした時間「2021/12/28 17:35 …」が記憶されている。
【0061】
図4の操作識別情報には、上述したアプリケーション「アプリ1」を実行した際の機能プロセス(モード)を表す「読み出し」、入力機器「キーボード」、ファイル「アプリ2」を実行した際の機能プロセス(モード)を表す「書き込み」が記憶されている。なお、イベント「ログアウト」を実行した際の機能プロセス(モード)はないため、
図4の例では「-」と記載した。
【0062】
また、
図4の操作識別情報では、機能プロセス(モード)を表す情報について示したが、利用の状態を表す情報でもよい。状態を表す情報は、例えば、アプリケーション「アプリ1」を利用者が操作した場合、電話又はチャットをしていることを表す「電話」又は「チャット」などの利用者の状態を記憶する。入力機器「キーボード」を利用者が操作して入力をしている場合、利用者の状態を表す「入力」などを記憶する。利用者がファイル「アプリ2」を開いていた場合、利用者がファイルを開いている状態を表す「オープン」などを記憶する。
【0063】
なお、状態を表す情報は、上述した「電話」「チャット」「入力」「オープン」に限定されるものではない。
【0064】
再起動実行部32は、再起動可能期間より前の時点において、再起動指示部43から、対象の仮想マシン30のソフトウェアにセキュリティパッチを適用し、対象の仮想マシン30を再起動可能期間に再起動させるための指示を受信し、受信した指示に基づいて、セキュリティパッチを適用し、再起動可能期間に仮想マシン30を再起動する。
【0065】
また、再起動実行部32は、対象の仮想マシン30を再起動する場合、対象の仮想マシン30を共有している利用者の端末装置20全てに、再起動する旨を通知してもよい。理由は、利用者が利用をしている可能性があるので、突然再起動した場合、利用に支障がでる可能性が高いためである。また、当該通知に、利用中のファイルの保存などを要請する通知を加えてもよい。
【0066】
記憶部33は、収集部31が収集した、仮想マシン30を共有している利用者それぞれの利用履歴情報を記憶する。
【0067】
●セキュリティ管理部40の説明
(A)セキュリティパッチの適用と仮想マシンの再起動について説明する。
セキュリティパッチの適用と仮想マシン30の再起動は、管理部41と、検出部42と、再起動指示部43と、記憶部44とを用いて実行する。
【0068】
管理部41は、ベンダーなどから配布されたセキュリティパッチと、当該セキュリティパッチの適用に伴う、再起動に必要な再起動必要時間を表す再起動必要時間情報とを、ネットワークを介して取得し、記憶部44に記憶する。
【0069】
検出部42は、複数の利用者が接続して利用するマルチセッション方式対応のソフトウェアに対するセキュリティパッチの適用において、仮想マシン30を再起動する必要がある場合、再起動に必要な再起動必要時間を表す再起動必要時間情報と、仮想マシン30の利用者それぞれの利用履歴を表す利用履歴情報とを用いて、再起動必要時間以上で、かつ利用者が同時に利用を停止していた利用停止期間を一つ以上検出する。
【0070】
具体的には、検出部42は、まず、記憶部44から再起動必要時間情報を取得する。また、検出部42は、記憶部44から、対象の仮想マシン30を共有する利用者それぞれの利用履歴情報を取得する。
【0071】
次に、検出部42は、再起動必要時間情報と利用履歴情報とを用いて、再起動必要時間以上で、かつ利用者が同時に利用を停止していた利用停止期間を一つ以上検出する。
【0072】
図5を用いて、利用停止期間の検出方法について説明する。
図5は、利用停止期間の検出方法を説明するための図である。
図5の例では、検出部42は、仮想マシン30を共有する利用者(user1からuser3)それぞれの利用履歴情報を用いて、利用者(user1からuser3)それぞれの利用を停止している期間(停止期間)を検出する。
【0073】
具体的には、利用者(user1からuser3)の場合であれば、利用者(user1からuser3)それぞれの利用期間と停止期間とを求める。例えば、利用者(user1)の場合、利用者(user1)の利用履歴情報を用いて、あらかじめ設定した検出期間における利用期間と停止期間とを求める。
【0074】
検出期間は、例えば、過去の一週間のいずれか一つの曜日の24時間(0:00から23:59)を用いることが考えられる。また、過去の一週間において、利用期間と停止期間とを求めてもよい。
【0075】
また、利用者(user2、user3)の場合につても、上述した利用者(user1)と同様に、利用期間と停止期間とを求める。
【0076】
なお、
図5の例では、利用者(user1からuser3)それぞれの、利用期間を「1」、停止期間を「0」として表している。
【0077】
次に、検出部42は、利用者(user1からuser3)それぞれの停止期間が重なる共通停止期間を検出する。
図5の例では、共通停止期間Tc1、Tc2が検出されたことを表している。
【0078】
次に、検出部42は、共通停止期間Tc1、Tc2それぞれについて、共通停止期間Tc1、Tc2が、再起動必要時間Th以上であるか否かを判定する。
図5の例では、共通停止期間Tc1は再起動必要時間Th以下であるので、利用停止期間ではない。共通停止期間Tc2は再起動必要時間Thより長いので、利用停止期間である。
【0079】
再起動指示部43は、検出した利用停止期間に基づいて、現時点より後に再起動可能期間を設定し、再起動可能期間に仮想マシン30を再起動させるための指示をする。
【0080】
例えば、現時点より過去の月曜日(今週の月曜日)の午前8時から午前9時までの期間において仮想マシンを共有する全ての利用者が利用を停止していて、かつ当該期間が再起動必要時間より長い期間(
図5の利用停止期間)である場合、再起動可能期間は、現時点より未来の月曜日(来週の月曜日)の午前8時から午前9時までの期間に設定をする。
【0081】
また、例えば、現時点より過去の一週間において仮想マシンを共有する全ての利用者が利用を停止していて、かつ再起動必要時間より長い期間(利用停止期間)が一以上検出された場合、再起動可能期間は、検出された複数の期間に対応する、現時点より未来の一週間の期間に設定する。
【0082】
図6は、再起動可能期間を設定する方法を説明するための図である。
図6の例では、現時点t0を月曜日の午前8時とし、先週の月曜日の午前8時(時点t1)から現時点t0までの過去の一週間について利用停止期間を検出した結果、利用停止期間T1、T2、T3、T4、T5が検出されたものとする。
【0083】
その場合、
図6の例では、検出した利用停止期間T1からT5を、曜日と時間を基準に、現時点t0から来週の月曜日の午前8時(時点t2)までの未来の一週間に割当て、再起動可能期間T1′、T2′、T3′、T4′、T5′とする。
【0084】
複数の再起動可能期間を設定する理由は、再起動可能期間T1′の期間に再起動ができない場合もあるので、そのような場合、次の再起動可能期間T2′に再起動をすることが望ましいからである。
【0085】
また、セキュリティパッチの適用は早くした方がよいので、現時点t0に最も近い再起動可能期間から順に選択していくことが望ましい。
【0086】
さらに、複数の再起動可能期間が設定されている場合、セキュリティパッチの適用に伴う再起動がされた後、当該セキュリティパッチに対応する再起動可能期間の設定を解除する。
【0087】
次に、再起動指示部43は、再起動可能期間より前に、仮想マシン30の再起動実行部32に、仮想マシン30のソフトウェアにセキュリティパッチを適用し、仮想マシン30を再起動するための指示を送信する。
【0088】
その後、再起動実行部32は、再起動可能期間より前の時点において指示を受信して、受信した指示に基づいて、仮想マシン30のソフトウェアにセキュリティパッチを適用し、再起動可能期間に仮想マシンを再起動する。
【0089】
記憶部44は、少なくとも、セキュリティパッチ、当該セキュリティパッチを適用した場合の再起動必要時間、仮想マシン30ごとの利用者それぞれの利用履歴情報、再起動可能期間を記憶する。
【0090】
(B)利用内容の類似に基づく仮想マシンの変更の説明
利用内容の類似に基づく仮想マシンの変更は、取得部11と、生成部12と、第一の抽出部13と、第二の抽出部14とを用いて実行する。
【0091】
取得部11は、記憶部44から、仮想マシン30ごとに、仮想マシン30を利用する複数の利用者の利用履歴を表す利用履歴情報を取得する。
【0092】
生成部12は、仮想マシン30ごとに、仮想マシン30を共有する複数の利用者の利用履歴情報を用いて、当該仮想マシン30を代表する基準となる利用履歴を表す基準利用履歴情報を生成し、記憶部44に記憶する。
【0093】
具体的には、生成部12は、あらかじめ設定された期間における、仮想マシン30を共有する複数の利用者の利用履歴を用いて、複数の利用者の利用内容を平均化して基準利用履歴情報を生成する。
【0094】
図7は、利用履歴情報と基準利用履歴情報との関係を説明するための図である。
図7の例は、
図2に示した仮想マシン30ごとに、基準利用履歴情報を生成した例である。
図7に示した情報71、72、73は、仮想マシン30を識別する仮想マシン識別情報と、利用者を識別する利用者識別情報と、利用者ごとの利用履歴情報とが関連付けられた情報である。
【0095】
図7の情報71の仮想マシン識別情報には「VM1」が記憶されている。また、
図7の情報71の利用者識別情報には、当該仮想マシンを利用する利用者を識別するための利用者識別情報「user1」「user2」「user3」が記憶されている。また、
図7の情報71の利用履歴情報には、当該仮想マシン30(VM1)を共有する利用者それぞれの利用履歴情報「history1」「history2」「history3」が記憶されている。
【0096】
図7の情報81には、仮想マシン30(VM1)を共有する利用者それぞれの利用履歴を用いて生成された、仮想マシン30(VM1)を代表する基準となる基準利用履歴情報VM1_historyが記憶されている。
【0097】
図7の情報72の仮想マシン識別情報には「VM2」が記憶されている。また、
図7の情報72の利用者識別情報には、当該仮想マシンを利用する利用者を識別するための利用者識別情報「user4」「user5」「user6」が記憶されている。また、
図7の情報72の利用履歴情報には、当該仮想マシン30(VM2)を共有する利用者それぞれの利用履歴情報「history4」「history5」「history6」が記憶されている。
【0098】
図7の情報82には、仮想マシン30(VM2)を共有する利用者それぞれの利用履歴を用いて生成された、仮想マシン30(VM2)を代表する基準となる基準利用履歴情報VM2_historyが記憶されている。
【0099】
図7の情報73の仮想マシン識別情報には「VMn」が記憶されている。また、
図7の情報73の利用者識別情報には、当該仮想マシンを利用する利用者を識別するための利用者識別情報「userN」「userN+1」「userN+2」が記憶されている。また、
図7の情報73の利用履歴情報には、当該仮想マシン30(VMn)を共有する利用者それぞれの利用履歴情報「historyN」「historyN+1」「historyN+2」が記憶されている。
【0100】
図7の情報83には、仮想マシン30(VMn)を共有する利用者それぞれの利用履歴を用いて生成された、仮想マシン30(VMn)を代表する基準となる基準利用履歴情報VMn_historyが記憶されている。
【0101】
基準利用履歴情報の生成について説明する。
図8は、利用履歴の一例を説明するための図である。
図8の表は、利用者(user1)の月次の利用履歴(
図7の「history1」)を表している。表8の「STOP」は利用をしていない期間(停止期間)を表し、「Task1」「Task2」「Task3」「Task4」は、利用特定情報(種類情報、識別情報)と、利用期間情報と、操作識別情報とにより決まる利用内容を表している。なお、利用内容は、上述した四種類に限定されるものではない。
【0102】
「Task1」は、例えば、種類情報「イベント」、識別情報「ログイン」、操作識別情報「-」を表している。「Task2」は、例えば、種類情報「ファイル」、識別情報「アプリ2」、操作識別情報「書き込み」を表している。「Task3」は、例えば、種類情報「アプリ」、識別情報「アプリ1」、操作識別情報「読み込み」を表している。「Task4」は、例えば、種類情報「イベント」、識別情報「ログアウト」、操作識別情報「-」を表している。
【0103】
なお、
図2の利用者(user2からuserN+2)の月次の利用履歴(
図7の「history2」から「historyN+2」)の表も、上述した利用者(user1)の表と同じような形式の表となる。
【0104】
日次の基準利用履歴情報の説明
図9は、日次の基準利用履歴情報の生成について説明するための図である。
図9は、仮想マシン30(VM1)を共有する利用者(user1からuser3)の月曜日の24時間の利用内容を平均化して日次の基準利用履歴情報VMn_history(代表1)を作成した例である。
【0105】
図9の例では、利用者(user1からuser3)は、月曜日の利用内容が略同じであるが、利用者(user3)だけが、2日の月曜日の8:00から9:00までの期間にログイン(Task1)をし、9:00から10:00までの期間に利用(Task2)をしている。したがって、基準利用履歴情報VM1_historyでは、多数決により、8:00から9:00までの期間を停止期間(STOP)とし、9:00から10:00までの期間をログイン(Task1)とする。
【0106】
上述した例では、利用者(user1からuser3)ごとに、複数の同じ曜日(2日、9日・・・)の24時間の利用内容について平均化をしたが、一つの曜日(例えば2日又は9日)の24時間の利用内容を平均化して、基準利用履歴情報VM1_historyを生成してもよい。
【0107】
週次の基準利用履歴情報の説明
図10は、週次の基準利用履歴情報の生成について説明するための図である。
図10は、仮想マシン30(VM1)を共有する利用者(user1からuser3)の同じ週の同じ日付の利用内容を平均化して週次の基準利用履歴情報VMn_history(代表1)を作成した例である。週は、過去の週のうち、現時点に近い週を用いることが望ましい。
【0108】
月次の基準利用履歴情報の説明
仮想マシン30(VM1)を共有する利用者(user1からuser3)の同じ月の同じ日付の利用を平均化して月次の基準利用履歴情報VMn_history(代表1)を作成してもよい。
【0109】
また、仮想マシン30(VM2・・・VMn)についても、上述したように基準利用履歴情報VM2_history(代表2)からVMn_history(代表n)を生成する。
【0110】
第一の抽出部13は、まず、仮想マシン30を共有する複数の利用者の利用履歴情報それぞれと、当該仮想マシン30の基準利用履歴情報との第一の類似度を算出する。
【0111】
図11は、第一の類似度を説明するための図である。
図11の例では、表91に、仮想マシン30(VM1)を共有する複数の利用者(user1からuser3)の利用履歴情報(「history1」「history2」「history3」)それぞれと、当該仮想マシン30(VM1)の基準利用履歴情報(VM1_history(代表1))との第一の類似度Ds1、Ds2、Ds3が示されている。
【0112】
表92に、仮想マシン30(VM2)を共有する複数の利用者(user4からuser6)の利用履歴情報(「history4」「history5」「history6」)それぞれと、当該仮想マシン30(VM2)の基準利用履歴情報(VM2_history(代表2))との第一の類似度Ds4、Ds5、Ds6が示されている。
【0113】
表93に、仮想マシン30(VMn)を共有する複数の利用者(userNからuserN+2)の利用履歴情報(「historyN」「historyN+1」「historyN+2」)それぞれと、当該仮想マシン30(VMn)の基準利用履歴情報(VMn_history(代表n))との第一の類似度DsN、DsN+1、DsN+2が示されている。
【0114】
第一の類似度は、例えば、仮想マシン30ごとに、利用履歴情報それぞれと、基準利用履歴情報との第一の距離を算出し、算出した第一の距離を第一の類似度とする。
【0115】
第一の距離は、例えば、Ds1の場合、
図10のuser1とhistory(代表1)における、各要素の差分の数とすることが考えられる。
【0116】
なお、距離が大きいほど、基準利用履歴情報と類似していない(平均からの乖離が大きい)。
【0117】
次に、第一の抽出部13は、仮想マシン30ごとに、算出した第一の類似度のうち、あらかじめ設定した第一の閾値Th1以下の第一の類似度Dsを検出し、検出した第一の類似度Dsに対応する第一の利用者を抽出する。
【0118】
第一の閾値Th1は、例えば、上述したシステム100を導入した最初の一ヶ月の実績から、第一の距離の大きい、上位10[%]にある距離の値を採用することなどが考えられる。又は、実験、シミュレーションなどにより決定する。
【0119】
図11の例では、第一の抽出部13が、仮想マシン30(VM1)の基準利用履歴情報(VM1_history(代表1))に類似していない利用履歴history3の第一の利用者(user3)を抽出している。
【0120】
第二の抽出部14は、抽出した第一の利用者それぞれの利用履歴情報と、他の仮想マシン30それぞれの基準利用履歴情報との第二の類似度を算出する。
【0121】
図12は、第二の類似度を説明するための図である。
図12の表94、95には、
図11の例で抽出した仮想マシン30(VM1)の第一の利用者(user3)と、他の仮想マシン30(VM2からVMn)の基準利用履歴情報(VM2_history(代表2)からVMn_history(代表n))それぞれとの第二の類似度Ds21・・・Dsn1が示されている。
【0122】
第二の類似度は、例えば、第一の利用者それぞれの利用履歴情報と、他の仮想マシン30それぞれの基準利用履歴情報との第二の距離を算出し、算出した第二の距離を第二の類似度とする。
【0123】
第二の距離は、例えば、Ds21の場合、
図10のuser3とhistory(代表2)における、各要素の差分の数とすることが考えられる。
【0124】
なお、距離が小さいほど、基準利用履歴情報と類似している(平均からの乖離が小さい)。
【0125】
次に、第二の抽出部14は、算出した第二の類似度のうち、あらかじめ設定した第二の閾値Th2以上の第二の類似度を検出し、検出した第二の類似度に対応する第二の利用者と、第二の利用者に対応する仮想マシン30とを抽出する。
【0126】
第二の閾値Th2は、例えば、上述したシステム100を導入した最初の一ヶ月の実績から、第一の距離の大きい、上位10[%]にある距離の値を採用することなどが考えられる。又は、実験、シミュレーションなどにより決定する。
【0127】
図12の例では、第一の利用者(user3)の利用履歴history3が、仮想マシン30(VM2)の基準利用履歴情報(VM2_history(代表2))に類似しているものとする。すなわち、
図12の表94の類似度「Ds21」が第二の閾値Th2以上であったとする。
【0128】
次に、第二の抽出部14は、第二の利用者の利用内容に類似した利用をしている利用者が多い他の仮想マシン30があることを、マルチセッション方式対応のソフトウェアを管理する管理者の端末装置20に通知する。その後、通知に基づいて、管理者が仮想マシン30と利用者の端末装置20との接続を変更する。
【0129】
図13は、通知の内容を説明するための図である。
図13には、変更前(現在)と変更後の、仮想マシン30と利用者の共有関係を示す情報101(通知の内容)が示されている。また、
図13の情報101には、
図12において第一の利用者(user3)の利用履歴history3が、仮想マシン30(VM2)の基準利用履歴情報(VM2_history(代表2))に類似していたので、第一の利用者(user3)の共有先を仮想マシン30(VM2)にできることを表す通知が、示されている。
【0130】
次に、通知に基づいて、管理者が手動で仮想マシン30と利用者の端末装置20との接続を変更する。又は、通知内容に基づいて、自動で仮想マシン30と利用者の端末装置20との接続を変更してもよい。
【0131】
[装置動作]
次に、実施形態の上述した(B)における情報処理装置の動作について
図14を用いて説明する。
図14は、情報処理装置の動作の説明をするための図である。以下の説明においては、適宜図を参照する。また、実施形態では、情報処理装置を動作させることによって、情報処理方法が実施される。よって、実施形態における情報処理方法の説明は、以下の情報処理装置の動作説明に代える。
【0132】
図14に示すように、取得部11は、複数の利用者が接続して利用するマルチセッション方式対応のソフトウェアが実装された仮想マシン30ごとに、仮想マシン30を利用する複数の利用者の利用履歴を表す利用履歴情報を取得する(ステップA1)。
【0133】
次に、生成部12は、仮想マシン30を共有する複数の利用者の利用履歴を用いて、当該仮想マシン30を代表する基準となる利用履歴を表す基準利用履歴情報を生成する(ステップA2)。
【0134】
具体的には、上述した基準利用履歴情報の生成で説明したように、ステップA2において、生成部12は、あらかじめ設定された期間における、仮想マシンを共有する複数の利用者の利用履歴を用いて、複数の利用者の利用内容を平均化して基準利用履歴情報を生成する。
【0135】
次に、第一の抽出部13は、対象の仮想マシン30の基準利用履歴情報に類似していない利用履歴の利用者(第一の利用者)を抽出する(ステップA3)。
【0136】
具体的には、ステップA3において、第一の抽出部13は、まず、仮想マシン30を共有する複数の利用者の利用履歴情報それぞれと、当該仮想マシン30の基準利用履歴情報との第一の類似度を算出する。
【0137】
次に、ステップA3において、第一の抽出部13は、仮想マシン30ごとに、算出した第一の類似度のうち、あらかじめ設定した第一の閾値Th1以下の第一の類似度を検出し、検出した第一の類似度に対応する第一の利用者を抽出する。
【0138】
次に、第二の抽出部14では、対象の仮想マシン30の以外の他の仮想マシン30それぞれの基準利用履歴情報と、抽出した第一の利用者の利用履歴を比較し、類似した利用履歴に対応する第一の利用者(第二の利用者)を抽出する(ステップA4)。
【0139】
具体的には、ステップA4において、第二の抽出部14は、まず、抽出した第一の利用者それぞれの利用履歴情報と、他の仮想マシン30それぞれの基準利用履歴情報との第二の類似度を算出する。
【0140】
次に、ステップA4において、第二の抽出部14は、算出した第二の類似度のうち、あらかじめ設定した第二の閾値Th2以上の第二の類似度を検出し、検出した第二の類似度に対応する第二の利用者と、第二の利用者に対応する他の仮想マシン30とを抽出する。
【0141】
次に、第二の抽出部14は、第二の利用者の利用情報と類似した基準利用履歴情報の仮想マシンがあることを、管理者の端末装置20に通知する(ステップA5)。具体的には、ステップA5において、第二の抽出部14は、第二の利用者の利用に類似した利用をしている利用者が多い他の仮想マシン30があることを、マルチセッション方式対応のソフトウェアを管理する管理者の端末装置20に通知する。
【0142】
次に、通知に基づいて、管理者が手動で仮想マシン30と利用者の端末装置20との接続を変更する。又は、通知内容に基づいて、自動で仮想マシン30と利用者の端末装置20との接続を変更してもよい。
【0143】
あお、実施形態では、例えば、ベンダーからセキュリティパッチが配布されるごとに、上述したステップA1からA5の処理を繰り返し実行する。又は、定期的にステップA1からA5の処理を繰り返し実行する。
【0144】
[実施形態の効果]
上述したように実施形態においては、再起動が必要なセキュリティパッチをマルチセッション方式対応のソフトウェアに適用する場合に、利用者への影響を低減できる。
【0145】
また、利用内容の類似に基づいて、利用者と仮想マシン30の共有関係を変更できるので、仮想マシン30の再起動を効率よく実行できる。すなわち、仮想マシン30を共有する利用者のそれぞれの利用内容が類似しているので、仮想マシン30の再起動を効率よく実行できる。
【0146】
[プログラム]
実施形態の上述した(B)におけるプログラムは、コンピュータに、
図14に示すステップA1からA5を実行させるプログラムであればよい。このプログラムをコンピュータにインストールし、実行することによって、実施形態における情報処理装置と情報処理方法とを実現することができる。この場合、コンピュータのプロセッサは、取得部11、生成部12、第一の抽出部13、第二の抽出部14として機能し、処理を行なう。
【0147】
また、コンピュータのプロセッサは、収集部31、再起動実行部32、記憶部33、管理部41、検出部42、再起動指示部43、記憶部44として機能し、処理を行なう。
【0148】
また、実施形態の上述した(B)におけるプログラムは、複数のコンピュータによって構築されたコンピュータシステムによって実行されてもよい。この場合は、例えば、各コンピュータが、それぞれ、取得部11、生成部12、第一の抽出部13、第二の抽出部14のいずれかとして機能してもよい。
【0149】
また、各コンピュータが、収集部31、再起動実行部32、記憶部33、管理部41、検出部42、再起動指示部43、記憶部44として機能してもよい。
【0150】
[物理構成]
ここで、実施形態におけるプログラムを実行することによって、情報処理装置を実現するコンピュータについて
図15を用いて説明する。
図15は、情報処理装置を実現するコンピュータの一例を説明するための図である。
【0151】
図15に示すように、コンピュータ110は、CPU(Central Processing Unit)111と、メインメモリ112と、記憶装置113と、入力インターフェイス114と、表示コントローラ115と、データリーダ/ライタ116と、通信インターフェイス117とを備える。これらの各部は、バス121を介して、互いにデータ通信可能に接続される。なお、コンピュータ110は、CPU111に加えて、又はCPU111に代えて、GPU、又はFPGAを備えていてもよい。
【0152】
CPU111は、記憶装置113に格納された、実施形態におけるプログラム(コード)をメインメモリ112に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ112は、典型的には、DRAM(Dynamic Random Access Memory)などの揮発性の記憶装置である。また、実施形態におけるプログラムは、コンピュータ読み取り可能な記録媒体120に格納された状態で提供される。なお、実施形態におけるプログラムは、通信インターフェイス117を介して接続されたインターネット上で流通するものであってもよい。なお、記録媒体120は、不揮発性記録媒体である。
【0153】
また、記憶装置113の具体例としては、ハードディスクドライブの他、フラッシュメモリなどの半導体記憶装置があげられる。入力インターフェイス114は、CPU111と、キーボード及びマウスといった入力機器118との間のデータ伝送を仲介する。表示コントローラ115は、ディスプレイ装置119と接続され、ディスプレイ装置119での表示を制御する。
【0154】
データリーダ/ライタ116は、CPU111と記録媒体120との間のデータ伝送を仲介し、記録媒体120からのプログラムの読み出し、及びコンピュータ110における処理結果の記録媒体120への書き込みを実行する。通信インターフェイス117は、CPU111と、他のコンピュータとの間のデータ伝送を仲介する。
【0155】
また、記録媒体120の具体例としては、CF(Compact Flash(登録商標))及びSD(Secure Digital)などの汎用的な半導体記憶デバイス、フレキシブルディスク(Flexible Disk)などの磁気記録媒体、又はCD-ROM(Compact Disk Read Only Memory)などの光学記録媒体があげられる。
【0156】
なお、実施形態における情報処理装置は、プログラムがインストールされたコンピュータではなく、各部に対応したハードウェアを用いることによっても実現可能である。さらに、情報処理装置は、一部がプログラムで実現され、残りの部分がハードウェアで実現されていてもよい。
【0157】
以上、実施形態を参照して発明を説明したが、発明は上述した実施形態に限定されるものではない。発明の構成や詳細には、発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【産業上の利用可能性】
【0158】
上述した記載によれば、利用内容の類似に基づいて、利用者が共有する仮想マシンを変更するので、仮想マシンの再起動を効率よく実行できる。また、仮想マシンの再起動が必要な分野において有用である。
【符号の説明】
【0159】
10 情報処理装置
11 取得部
12 生成部
13 第一の抽出部
14 第二の抽出部
20 端末装置
30 仮想マシン
31 収集部
32 再起動実行部
33 記憶部
40 セキュリティ管理部
41 管理部
42 検出部
43 再起動指示部
44 記憶部
100 システム
110 コンピュータ
111 CPU
112 メインメモリ
113 記憶装置
114 入力インターフェイス
115 表示コントローラ
116 データリーダ/ライタ
117 通信インターフェイス
118 入力機器
119 ディスプレイ装置
120 記録媒体
121 バス