(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024051246
(43)【公開日】2024-04-11
(54)【発明の名称】情報処理装置、情報処理方法、及びプログラム
(51)【国際特許分類】
G06F 8/65 20180101AFI20240404BHJP
【FI】
G06F8/65
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2022157304
(22)【出願日】2022-09-30
(71)【出願人】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】110002044
【氏名又は名称】弁理士法人ブライタス
(72)【発明者】
【氏名】山本 和也
【テーマコード(参考)】
5B376
【Fターム(参考)】
5B376AE21
5B376CA27
5B376CA34
5B376DA16
(57)【要約】
【課題】再起動が必要なセキュリティパッチをマルチセッション方式対応のソフトウェアに適用する場合に、利用者それぞれの利用に影響がでないようにコンピュータを再起動することにある。
【解決手段】情報処理装置は、複数の利用者が接続して利用するマルチセッション方式対応のソフトウェアに対するセキュリティパッチの適用において、コンピュータを再起動する必要がある場合、再起動に必要な再起動必要時間を表す再起動必要時間情報と、コンピュータの利用者それぞれの利用履歴を表す利用履歴情報とを用いて、再起動必要時間以上で、かつ利用者が同時に利用を停止していた利用停止期間を一つ以上検出する検出部と、検出した利用停止期間に基づいて、現時点より後に再起動可能期間を設定し、再起動可能期間にコンピュータを再起動させるための指示をする再起動指示部と、を有する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
複数の利用者が接続して利用するマルチセッション方式対応のソフトウェアに対するセキュリティパッチの適用において、コンピュータを再起動する必要がある場合、前記再起動に必要な再起動必要時間を表す再起動必要時間情報と、前記コンピュータの利用者それぞれの利用履歴を表す利用履歴情報とを用いて、前記再起動必要時間以上で、かつ前記利用者が同時に利用を停止していた利用停止期間を一つ以上検出する検出手段と、
検出した前記利用停止期間に基づいて、現時点より後に再起動可能期間を設定し、前記再起動可能期間に前記コンピュータを再起動させるための指示をする再起動指示手段と、
を有する情報処理装置。
【請求項2】
前記利用履歴情報は、前記利用者を識別するための利用者識別情報と、利用を特定するための利用特定情報と、利用をしていた期間を表す利用期間情報と、利用に対する操作を識別する操作識別情報とが関連付けられた情報である、
請求項1に記載の情報処理装置。
【請求項3】
前記検出手段は、更に、前記利用停止期間が検出できない場合、あらかじめ設定された利用停止検出ルール情報と、前記利用履歴情報とを用いて、前記再起動必要時間以上で、前記利用者が利用中でも同時に利用を停止してもよい停止可能期間を一つ以上検出する、
請求項2に記載の情報処理装置。
【請求項4】
前記再起動指示手段は、更に、検出した前記停止可能期間に基づいて、現時点より後に再起動可能期間を設定し、前記再起動可能期間に前記コンピュータを再起動させるための指示をする、
請求項3に記載の情報処理装置。
【請求項5】
前記利用停止検出ルール情報は、前記利用特定情報と、前記操作識別情報と、利用が停止可能か否かを表す停止可能利用情報とが関連付けられた情報である、
請求項4に記載の情報処理装置。
【請求項6】
前記利用停止検出ルール情報は、前記利用特定情報と、前記操作識別情報と、利用を停止した際に前記利用者に与える影響を表す指標となる停止可能利用情報とが関連付けられた情報である、
請求項4に記載の情報処理装置。
【請求項7】
前記操作識別情報は、利用に対応する機能プロセスを表す情報である、
請求項5又は6に記載の情報処理装置。
【請求項8】
前記操作識別情報は、利用の状態を表す情報である、
請求項5又は6に記載の情報処理装置。
【請求項9】
情報処理装置が、
複数の利用者が接続して利用するマルチセッション方式対応のソフトウェアに対するセキュリティパッチの適用において、コンピュータを再起動する必要がある場合、前記再起動に必要な再起動必要時間を表す再起動必要時間情報と、前記コンピュータの利用者それぞれの利用状況を表す利用履歴情報とを用いて、前記再起動必要時間以上で、かつ前記利用者が同時に利用を停止していた利用停止期間を一つ以上検出し、
検出した前記利用停止期間に基づいて、現時点より後に再起動可能期間を設定し、前記再起動可能期間に前記コンピュータを再起動させるための指示をする、
情報処理方法。
【請求項10】
コンピュータに、
複数の利用者が接続して利用するマルチセッション方式対応のソフトウェアに対するセキュリティパッチの適用において、コンピュータを再起動する必要がある場合、前記再起動に必要な再起動必要時間を表す再起動必要時間情報と、前記コンピュータの利用者それぞれの利用状況を表す利用履歴情報とを用いて、前記再起動必要時間以上で、かつ前記利用者が同時に利用を停止していた利用停止期間を一つ以上検出させ、
検出した前記利用停止期間に基づいて、現時点より後に再起動可能期間を設定し、前記再起動可能期間に前記コンピュータを再起動させるための指示をさせる、
プログラム。
【発明の詳細な説明】
【技術分野】
【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】
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかしながら、特許文献1の再起動制御システムは、近隣関係にある複数の情報処理装置の位置関係を考慮して、近隣関係にある複数の情報処理装置の再起動時間を、相互に異なる時間に設定しているだけである。
【0009】
すなわち、特許文献1の再起動制御システムは、再起動が必要なセキュリティパッチを、マルチセッション方式対応のOSに適用する場合に、利用者にできるだけ影響がでないようにするものではない。
【0010】
本開示の目的の一例は、再起動が必要なセキュリティパッチをマルチセッション方式対応のソフトウェアに適用する場合に、利用者への影響を低減することである。
【課題を解決するための手段】
【0011】
上記目的を達成するため、本開示の一側面における情報処理装置は、
複数の利用者が接続して利用するマルチセッション方式対応のソフトウェアに対するセキュリティパッチの適用において、コンピュータを再起動する必要がある場合、前記再起動に必要な再起動必要時間を表す再起動必要時間情報と、前記コンピュータの利用者それぞれの利用履歴を表す利用履歴情報とを用いて、前記再起動必要時間以上で、かつ前記利用者が同時に利用を停止していた利用停止期間を一つ以上検出する検出部と、
検出した前記利用停止期間に基づいて、現時点より後に再起動可能期間を設定し、前記再起動可能期間に前記コンピュータを再起動させるための指示をする再起動指示部と、
を有することを特徴とする。
【0012】
また、上記目的を達成するため、本開示の一側面における情報処理方法は、
情報処理装置が、
複数の利用者が接続して利用するマルチセッション方式対応のソフトウェアに対するセキュリティパッチの適用において、コンピュータを再起動する必要がある場合、前記再起動に必要な再起動必要時間を表す再起動必要時間情報と、前記コンピュータの利用者それぞれの利用状況を表す利用履歴情報とを用いて、前記再起動必要時間以上で、かつ前記利用者が同時に利用を停止していた利用停止期間を一つ以上検出し、
検出した前記利用停止期間に基づいて、現時点より後に再起動可能期間を設定し、前記再起動可能期間に前記コンピュータを再起動させるための指示をする、
することを特徴とする。
【0013】
さらに、上記目的を達成するため、本開示の一側面におけるプログラムは、
コンピュータに、
複数の利用者が接続して利用するマルチセッション方式対応のソフトウェアに対するセキュリティパッチの適用において、コンピュータを再起動する必要がある場合、前記再起動に必要な再起動必要時間を表す再起動必要時間情報と、前記コンピュータの利用者それぞれの利用状況を表す利用履歴情報とを用いて、前記再起動必要時間以上で、かつ前記利用者が同時に利用を停止していた利用停止期間を一つ以上検出させ、
検出した前記利用停止期間に基づいて、現時点より後に再起動可能期間を設定し、前記再起動可能期間に前記コンピュータを再起動させるための指示をさせる、
ことを特徴とする。
【発明の効果】
【0014】
以上のように本開示によれば、再起動が必要なセキュリティパッチをマルチセッション方式対応のソフトウェアに適用する場合でも、利用者への影響を低減できる。
【図面の簡単な説明】
【0015】
【
図1】
図1は、実施形態1の情報処理装置の一例を説明する図である。
【
図2】
図2は、再起動可能期間を設定する方法を説明するための図である。
【
図3】
図3は、実施形態1の情報処理装置を有するシステムの一例を説明するための図である。
【
図4】
図4は、情報処理装置の構成を詳細に説明するための図である。
【
図5】
図5は、利用履歴情報のデータ構造の一例を説明するための図である。
【
図6】
図6は、利用停止期間の検出方法を説明するための図である。
【
図7】
図7は、実施形態1の情報処理装置の動作を説明するための図である。
【
図8】
図8は、実施形態2の情報処理装置の一例を説明する図である。
【
図9】
図9は、利用停止検出ルール情報のデータ構造の一例を説明するための図である。
【
図10】
図10は、利用停止検出ルール情報のデータ構造の一例を説明するための図である。
【
図11】
図11は、停止可能期間の検出方法を説明するための図である。
【
図12】
図12は、実施形態2の情報処理装置の動作を説明するための図である。
【
図13】
図13は、実施形態1、2における情報処理装置を実現するコンピュータの一例を説明するための図である。
【発明を実施するための形態】
【0016】
以下、図面を参照して実施形態について説明する。なお、以下で説明する図面において、同一の機能又は対応する機能を有する要素には同一の符号を付し、その繰り返しの説明は省略することもある。
【0017】
(実施形態1)
図1を用いて、実施形態1における情報処理装置10の構成について説明する。
図1は、実施形態1の情報処理装置の一例を説明する図である。
【0018】
[装置構成]
図1に示す情報処理装置10は、再起動が必要なセキュリティパッチを、マルチセッション方式対応のソフトウェアに適用する場合に、セキュリティパッチを適用して、利用者それぞれの利用に影響がでないようにコンピュータを再起動する。また、
図1に示すように、情報処理装置10は、検出部11と、再起動指示部12とを有する。
【0019】
検出部11は、複数の利用者が接続して利用するマルチセッション方式対応のソフトウェアに対するセキュリティパッチの適用において、コンピュータを再起動する必要がある場合、再起動に必要な再起動必要時間を表す再起動必要時間情報と、コンピュータの利用者それぞれの利用履歴を表す利用履歴情報とを用いて、再起動必要時間以上で、かつ利用者が同時に利用を停止していた利用停止期間を一つ以上検出する。
【0020】
コンピュータは、例えば、情報処理装置10に実装された、仮想マシン又はハードウェアなどでもよい。なお、以降においては、コンピュータが仮想マシンである場合について説明する。
【0021】
マルチセッション方式は、仮想マシンなどに実装された、マルチセッション方式対応のソフトウェアを、複数の利用者が共有して利用する方式である。なお、マルチセッション方式は、DaaS方式で実現してもよい。
【0022】
マルチセッション方式対応のソフトウェアは、仮想マシンなどそれぞれに実装される、マルチセッション方式対応のOS、アプリケーションソフトウェアである。なお、以降において、アプリケーションソフトウェアをアプリケーション又はアプリと記載することがある。
【0023】
仮想マシンは、物理コンピュータと同様の機能を、ソフトウェアで実現したコンピュータである。また、仮想マシンは、物理コンピュータと同様に、OSとアプリケーションを実行する。
【0024】
セキュリティパッチは、マルチセッション方式対応のソフトウェアの脆弱性を修正するためのプログラムである。公開済みのOSとアプリケーションには、脆弱性、セキュリティホールなどが発見されることがあるので、マルウェア、サイバー攻撃などから、情報処理装置10を保護するために、セキュリティパッチを用いてソフトウェアを修正する。なお、セキュリティパッチは、脆弱性が発見された場合に、例えばベンダーなどから配布される。
【0025】
再起動指示部12は、検出した利用停止期間に基づいて、現時点より後に再起動可能期間を設定し、再起動可能期間に仮想マシンを再起動させるための指示をする。その後、仮想マシンは、再起動可能期間より前の時点において指示を受信し、受信した指示に基づいて、仮想マシンに実装されているソフトウェアにセキュリティパッチを適用してソフトウェアを修正し、仮想マシンを再起動可能期間に再起動する。
【0026】
例えば、現時点より過去の月曜日(今週の月曜日)の午前8時から午前9時までの期間において仮想マシンを共有する全ての利用者が利用を停止していて、かつ当該期間が再起動必要時間より長い期間(利用停止期間)である場合、再起動可能期間は、現時点より未来の月曜日(来週の月曜日)の午前8時から午前9時までの期間に設定をする。
【0027】
また、例えば、現時点より過去の一週間において仮想マシンを共有する全ての利用者が利用を停止していて、かつ再起動必要時間より長い期間(利用停止期間)が一以上検出された場合、再起動可能期間は、検出された複数の期間に対応する、現時点より未来の一週間の期間(曜日と時間が同じ期間)に設定する。
【0028】
図2は、再起動可能期間を設定する方法を説明するための図である。
図2の例では、現時点t0を月曜日の午前8時である場合に、先週の月曜日の午前8時(時点t1)から現時点t0までの過去の一週間について利用停止期間を検出した結果、利用停止期間T1、T2、T3、T4、T5が検出されたものとする。
【0029】
その場合、
図2の例では、検出した利用停止期間T1からT5を、曜日と時間を基準に、現時点t0から来週の月曜日の午前8時(時点t2)までの未来の一週間に割当て、再起動可能期間T1′、T2′、T3′、T4′、T5′とする。
【0030】
複数の再起動可能期間を設定する理由は、再起動可能期間T1′の期間に再起動ができない場合もあるので、そのような場合、次の再起動可能期間T2′に再起動をすることが望ましいからである。
【0031】
また、セキュリティパッチの適用は早くした方がよいので、現時点t0に最も近い再起動可能期間から順に選択することが望ましい。
【0032】
さらに、複数の再起動可能期間が設定されている場合、セキュリティパッチの適用にともなう再起動がされた後、当該セキュリティパッチに対応する再起動可能期間の設定を解除する。
【0033】
上述したように実施形態1においては、再起動が必要なセキュリティパッチをマルチセッション方式対応のソフトウェアに適用する場合、再起動必要時間情報と利用履歴情報とを用いて検出した利用停止期間に基づいて再起動可能期間を設定し、再起動可能期間に仮想マシンを再起動するので、利用者に影響がでないように仮想マシンを再起動できる。
【0034】
[システム構成]
図3を用いて、実施形態1における情報処理装置10の構成をより具体的に説明する。
図3は、実施形態1の情報処理装置を有するシステムの一例を説明するための図である。
【0035】
システム100は、
図3の例では、情報処理装置10と、複数の端末装置20とを有する。また、情報処理装置10は、ネットワークを介して、複数の端末装置20と接続されている。
【0036】
情報処理装置10は、例えば、CPU(Central Processing Unit)、又はFPGA(Field-Programmable Gate Array)などのプログラマブルなデバイス、又はGPU(Graphics Processing Unit)、又はそれらのうちのいずれか一つ以上を搭載した回路、サーバコンピュータなどである。また、情報処理装置10は、一つ以上の仮想マシン30と、セキュリティ管理部40とを有する。
【0037】
端末装置20は、例えば、CPU、又はFPGAなどのプログラマブルなデバイス、又はGPU、又はそれらのうちのいずれか一つ以上を搭載した回路、一般的なクライアント端末装置(パーソナルコンピュータ、タブレット、スマートフォンなど)、又はシンクライアント端末装置などである。
【0038】
シンクライアント端末装置は、例えば、クライアント端末から大容量の記憶媒体(HDD(Hard Disk Drive)、SSD(Solid State Drive))を省いた端末装置などである。
【0039】
ネットワークは、例えば、インターネット、LAN(Local Area Network)、専用回線、電話回線、企業内ネットワーク、移動体通信網、ブルートゥース(登録商標)、WiFi(Wireless Fidelity)などの通信回線を用いて構築された一般的な通信ネットワークである。
【0040】
仮想マシン30それぞれは、情報処理装置10の仮想基盤上に構築される。仮想マシン30は、端末装置20に、利用者が利用する仮想デスクトップの画面内容を表す画面情報を送信する。仮想マシン30は、端末装置20から、利用者の端末装置20の操作内容を表す操作情報を受信する。操作内容は、例えば、キーボード、マウス、タッチパネルなどの入力機器から入力された情報である。
【0041】
セキュリティ管理部40は、仮想マシン30に実装されているマルチセッション方式対応のソフトウェアに脆弱性が発見された場合に、ベンダーから配布されるセキュリティに関する情報を管理する。また、セキュリティ管理部40は、セキュリティパッチを用いてソフトウェアの脆弱性を修正し、仮想マシン30を再起動するための指示を生成する。その後、セキュリティ管理部40は、生成した指示を仮想マシン30に送信する。
【0042】
情報処理装置10について詳細に説明する。
図4は、情報処理装置の構成を詳細に説明するための図である。
図4の例では、複数の仮想マシン30それぞれは、収集部31と、再起動実行部32と、記憶部33とを有する。セキュリティ管理部40は、管理部41と、検出部11と、再起動指示部12と、記憶部42とを有する。
【0043】
なお、
図4の例では、記憶部33と記憶部42を分けているが、記憶部33と記憶部42とを一つの記憶部としてもよい。さらに、
図4の例では、記憶部33と記憶部42とを情報処理装置10の内部に設けているが、情報処理装置10の外部に設けてもよい。
【0044】
また、
図4の例では、仮想マシン30に、収集部31と再起動実行部32と記憶部33とを有しているが、仮想マシン30の外部に設けてもよい。
【0045】
●仮想マシン30の説明
収集部31は、あらかじめ設定した間隔ごとに、仮想マシン30を共有している利用者それぞれの利用履歴情報を収集し、当該仮想マシン30を共有する利用者ごとに、利用履歴情報を記憶部33に記憶する。
【0046】
あらかじめ設定した間隔とは、例えば、数分、数時間などの間隔である。なお、収集部31は、仮想マシン30に実装されているエージェントの取集機能を用いて、利用履歴情報を収集してもよい。
【0047】
また、収集部31は、収集した利用履歴情報を、セキュリティ管理部40に送信する。セキュリティ管理部40の管理部41は、利用履歴情報を受信すると、仮想マシン30ごとに、仮想マシン30を共有する利用者の利用履歴情報を、記憶部42に記憶する。なお、利用履歴情報は、記憶部33に記憶せず、記憶部42に記憶してもよい。
【0048】
利用履歴情報は、利用者を識別するための利用者識別情報と、利用を特定するための利用特定情報と、当該利用をしていた期間を表す利用期間情報と、利用に対する操作を識別する操作識別情報とが関連付けられた情報である。
【0049】
図5は、利用履歴情報のデータ構造の一例を説明するための図である。
図5の例では、
図3に示した一方の仮想マシン30の利用者(user1からuser3)の利用履歴情報を表している。なお、
図5に示した他方の仮想マシン30の利用者(user4からuser6)についても、
図5と同様に、利用履歴情報は記憶部33又は42に記憶される。
【0050】
図5の利用者識別情報には、一方の仮想マシン30を共有する利用者を識別する情報「user1」「user2」「user3」が記憶される。なお、仮想マシン30を共有する利用者の人数は、三人に限定されるものではない。
【0051】
図5の利用特定情報には、利用者(user1)が利用したソフトウェア、ハードウェア、ファイルの種類、及び利用者の操作により発生したイベントの種類を表す種類情報と、利用者(user1)が利用したソフトウェア、ハードウェア、ファイル、及び利用者の操作により発生したイベントなどを識別する識別情報とを有する。
【0052】
種類情報には、アプリケーション(ソフトウェア)の種類を表す「アプリ」、入力機器(ハードウェア)の種類を表す「デバイス」、ファイルの種類を表す「ファイル」と、イベントの種類を表す「イベント」などが記憶されている。なお、種類情報は、上述した種類に限定されるものではない。
【0053】
識別情報には、利用したアプリケーション(ソフトウェア)がコミュニケーションツールであることを表す「アプリ1」、利用した入力機器(ハードウェア)がキーボードであることを表す「キーボード」、利用したファイルが表計算アプリで使用するファイルであることを表す「アプリ2」、イベントがログアウトであることを表す「ログアウト」などが記憶されている。
【0054】
なお、識別情報は、上述した「アプリ1」「キーボード」「アプリ2」「ログアウト」に限定されるものではない。
【0055】
図5の利用期間情報には、上述したアプリケーション「アプリ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 …」が記憶されている。
【0056】
図5の操作識別情報には、上述したアプリケーション「アプリ1」を実行した際の機能プロセス(モード)を表す「読み出し」、入力機器「キーボード」、ファイル「アプリ2」を実行した際の機能プロセス(モード)を表す「書き込み」が記憶されている。なお、イベント「ログアウト」を実行した際の機能プロセス(モード)はないため、
図4の例では「-」と記載した。
【0057】
また、
図5の操作識別情報では、機能プロセス(モード)を表す情報について示したが、利用の状態を表す情報でもよい。状態を表す情報は、例えば、アプリケーション「アプリ1」を利用者が操作した場合、電話又はチャットをしていることを表す「電話」又は「チャット」などの利用者の状態を記憶する。入力機器「キーボード」を利用者が操作して入力をしている場合、利用者の状態を表す「入力」などを記憶する。利用者がファイル「アプリ2」を開いていた場合、利用者がファイルを開いている状態を表す「オープン」などを記憶する。
【0058】
なお、状態を表す情報は、上述した「電話」「チャット」「入力」「オープン」に限定されるものではない。
【0059】
再起動実行部32は、再起動可能期間より前の時点において、再起動指示部12から、対象の仮想マシン30のソフトウェアにセキュリティパッチを適用し、対象の仮想マシン30を再起動可能期間に再起動させるための指示を受信し、受信した指示に基づいて、セキュリティパッチを適用し、再起動可能期間に仮想マシン30を再起動する。
【0060】
また、再起動実行部32は、対象の仮想マシン30を再起動する場合、対象の仮想マシン30を共有している利用者の端末装置20全てに、再起動する旨を通知してもよい。理由は、利用者が利用をしている可能性があるので、突然再起動した場合、利用に支障がでる可能性が高いためである。また、当該通知に、利用中のファイルの保存などを要請する通知を加えてもよい。
【0061】
記憶部33は、収集部31が収集した、仮想マシン30を共有している利用者それぞれの利用履歴情報を記憶する。
【0062】
●セキュリティ管理部40の説明
管理部41は、ベンダーなどから配布されたセキュリティパッチと、当該セキュリティパッチの適用にともなう、再起動に必要な再起動必要時間を表す再起動必要時間情報とを、ネットワークを介して取得し、記憶部42に記憶する。
【0063】
検出部11は、セキュリティパッチの適用にともない、仮想マシン30の再起動が必要である場合、まず、記憶部42から再起動必要時間情報を取得する。また、検出部11は、記憶部42から、対象の仮想マシン30を共有する利用者それぞれの利用履歴情報を取得する。
【0064】
次に、検出部11は、再起動必要時間情報と利用履歴情報とを用いて、再起動必要時間以上で、かつ利用者が同時に利用を停止していた利用停止期間を一つ以上検出する。
【0065】
利用停止期間の検出方法について説明する。
図6は、利用停止期間の検出方法を説明するための図である。
図6の例では、検出部11は、仮想マシン30を共有する利用者(user1からuser3)それぞれの利用履歴情報を用いて、利用者(user1からuser3)それぞれが過去に利用を停止している期間(停止期間)を検出する。
【0066】
具体的には、利用者(user1からuser3)の場合であれば、利用者(user1からuser3)それぞれの利用時間と停止期間とを求める。例えば、利用者(user1)の場合、利用者(user1)の利用履歴情報を用いて、あらかじめ設定した検出期間における利用期間と停止期間とを求める。
【0067】
検出期間は、例えば、過去の一週間のいずれか一つの曜日の24時間(0:00から23:59)を用いることが考えられる。また、過去の一週間において、利用期間と停止期間とを求めてもよい。
【0068】
また、利用者(user2、user3)の場合についても、上述した利用者(user1)と同様に、利用期間と停止期間とを求める。
【0069】
なお、
図6の例では、利用者(user1からuser3)それぞれの、利用期間を「1」、停止期間を「0」として表している。
【0070】
次に、検出部11は、利用者(user1からuser3)それぞれの停止期間が重なる共通停止期間を検出する。
図6の例では、共通停止期間Tc1、Tc2が検出されたことを表している。
【0071】
次に、検出部11は、共通停止期間Tc1、Tc2それぞれについて、共通停止期間Tc1、Tc2が、再起動必要時間Th以上であるか否かを判定する。
図6の例では、共通停止期間Tc1は再起動必要時間Th以下であるので、利用停止期間ではない。共通停止期間Tc2は再起動必要時間Thより長いので、利用停止期間である。
【0072】
再起動指示部12は、まず、利用停止期間に基づいて再起動可能期間を設定する。例えば、
図6の共通停止期間Tc2が、今週の月曜日の24時間に含まれているのであれば、現時点より後の来週の月曜日における、共通停止期間Tc2に対応する期間を、再起動可能期間として設定する。ただし、曜日は月曜に限定されるものではない。
【0073】
次に、再起動指示部12は、再起動可能期間より前に、仮想マシン30の再起動実行部32に、仮想マシン30のソフトウェアにセキュリティパッチを適用し、仮想マシン30を再起動するための指示を送信する。
【0074】
記憶部42は、少なくとも、セキュリティパッチ、当該セキュリティパッチを適用した場合の再起動必要時間、仮想マシン30ごとの利用者それぞれの利用履歴情報、再起動可能期間を記憶する。
【0075】
[実施形態1の装置動作]
実施形態1における情報処理装置10の動作について
図7を用いて説明する。
図7は、実施形態1の情報処理装置の動作を説明するための図である。以下の説明においては、適宜図を参酌する。また、実施形態1では、情報処理装置を動作させることによって、情報処理方法が実施される。よって、実施形態1における情報処理方法の説明は、以下の情報処理装置の動作説明に代える。
【0076】
図7に示すように、まず、管理部41は、セキュリティパッチと、再起動必要時間情報とを、ネットワークを介して取得し、記憶部42に記憶する(ステップA1)。
【0077】
具体的には、ステップA1において、管理部41は、ベンダーなどからネットワークを介して配布された、セキュリティに関する情報(セキュリティパッチと、当該セキュリティパッチの適用にともなう仮想マシン30の再起動に必要な再起動必要時間を表す再起動必要時間情報)を取得する。
【0078】
次に、ステップA1において、管理部41は、取得したセキュリティパッチと再起動必要時間情報とを記憶部42に記憶する。
【0079】
次に、検出部11は、再起動必要時間情報と利用履歴情報とを用いて、利用停止期間を一つ以上検出する(ステップA2)。
【0080】
具体的には、ステップA2において、検出部11は、記憶部42から、再起動必要時間情報を取得する。また、ステップA2において、検出部11は、収集部31が収集した、対象の仮想マシン30を共有している利用者それぞれの利用履歴を表す利用履歴情報を、記憶部42から取得する。
【0081】
次に、ステップA2において、検出部11は、再起動必要時間情報と利用履歴情報とを用いて、上述した利用停止期間の検出方法などに基づいて、再起動必要時間以上で、かつ利用者が同時に利用を停止していた利用停止期間を一つ以上検出する。
【0082】
次に、再起動指示部12は、検出した利用停止期間に基づいて、現時点より後に再起動可能期間を設定する(ステップA3)。
【0083】
具体的には、ステップA3において、再起動指示部12は、検出した利用停止期間に基づいて、現時点より後の期間に設定する、再起動可能期間を表す再起動可能期間情報を生成し、生成した再起動可能期間情報を記憶部42に記憶する。
【0084】
例えば、
図6を用いて説明したように、共通停止期間Tc2が、今週の月曜日の24時間に含まれているのであれば、現時点より後の来週の月曜日における、共通停止期間Tc2に対応する期間を、再起動可能期間として設定する。ただし、曜日は月曜日に限定されるものではない。
【0085】
又は、例えば、過去の一週間において仮想マシン30を共有する全ての利用者が利用を停止していて、かつ再起動必要時間より長い期間(利用停止期間)が複数検出された場合、検出された複数の利用停止期間を、曜日と時間を基準に、未来の一週間の対応する期間に割当て、割当てた期間を再起動可能期間に設定する。
【0086】
次に、再起動指示部12は、対象の仮想マシン30を再起動可能期間に再起動させるための指示をする(ステップA4)。
【0087】
具体的には、ステップA4において、再起動指示部12は、設定した再起動可能期間より前の時点において、対象の仮想マシン30のソフトウェアにセキュリティパッチの適用をするとともに、対象の仮想マシン30を再起動するための指示を生成する。次に、ステップA4において、再起動指示部12は、生成した指示を、設定した再起動可能期間より前の時点で、仮想マシン30に実装されている再起動実行部32に送信する。
【0088】
なお、再起動実行部32は、送信された指示を受信した場合、再起動可能期間に、仮想マシン30のソフトウェアへのセキュリティパッチの適用にともなう、仮想マシン30の再起動を実行する。
【0089】
上述したステップA1からA4の処理は、ベンダーから新たなセキュリティパッチが配布されるごとに実行される。また、上述したステップA1からステップA4の処理は、全ての仮想マシン30それぞれに対して実行する。仮想マシンごとに利用者が異なるので、仮想マシンごとに再起動可能期間は異なる。
【0090】
[実施形態1の効果]
以上のように実施形態1によれば、再起動が必要なセキュリティパッチをマルチセッション方式対応のソフトウェアに適用する場合、再起動必要時間情報と利用履歴情報とを用いて検出した利用停止期間に基づいて再起動可能期間を設定し、再起動可能期間に仮想マシンを再起動するので、利用者に影響がでないように仮想マシンを再起動させることができる。
【0091】
[プログラム]
実施形態1におけるプログラムは、コンピュータに、
図7に示すステップA1からA4を実行させるプログラムであればよい。このプログラムをコンピュータにインストールし、実行することによって、実施形態1における情報処理装置と情報処理方法とを実現することができる。この場合、コンピュータのプロセッサは、管理部41、検出部11、再起動指示部12、収集部31、再起動実行部32として機能し、処理を行なう。
【0092】
また、実施形態1におけるプログラムは、複数のコンピュータによって構築されたコンピュータシステムによって実行されてもよい。この場合は、例えば、各コンピュータが、それぞれ、管理部41、検出部11、再起動指示部12、収集部31、再起動実行部32のいずれかとして機能してもよい。
【0093】
(実施形態2)
実施形態2では、再起動可能期間が検出できない場合、仮想マシンを共有している利用者が利用中でも、利用に影響が少ない範囲で、セキュリティパッチの適用にともなう、仮想マシンを再起動させる方法について説明する。
【0094】
[システム構成]
図8を用いて、実施形態2における情報処理装置10aの構成について説明する。
図8は、実施形態2の情報処理装置の一例を説明する図である。
【0095】
情報処理装置10aは、
図8の例では、一つ以上の仮想マシン30aと、セキュリティ管理部40aとを有する。
図8の例では、複数の仮想マシン30aそれぞれは、収集部31と、再起動実行部32aと、記憶部33とを有する。セキュリティ管理部40aは、管理部41と、検出部11aと、再起動指示部12aと、記憶部42とを有する。
【0096】
なお、
図8の例では、記憶部33と記憶部42を分けているが、記憶部33と記憶部42とを一つの記憶部としてもよい。さらに、
図8の例では、記憶部33と記憶部42とを情報処理装置10aの内部に設けているが、情報処理装置10aの外部に設けてもよい。
【0097】
また、
図8の例では、仮想マシン30aに、収集部31と再起動実行部32aと記憶部33とが実装しているが、仮想マシン30aの外部に設けてもよい。
【0098】
●セキュリティ管理部40aの説明
管理部41、記憶部42の説明について、実施形態1で既に説明をしたので、管理部41、記憶部42の説明については省略する。
【0099】
検出部11aは、セキュリティパッチの適用に伴い、仮想マシン30aの再起動が必要である場合、まず、記憶部42から再起動必要時間情報を取得する。また、検出部11aは、記憶部42から、対象の仮想マシン30aを共有する利用者それぞれの利用履歴情報を取得する。
【0100】
次に、検出部11aは、再起動必要時間情報と利用履歴情報とを用いて、再起動必要時間以上で、かつ利用者が同時に利用を停止していた利用停止期間を検出する。なお、利用停止期間が検出された場合については、既に実施形態1で説明したので、説明を省略する。
【0101】
次に、検出部11aは、利用停止期間が検出できない場合、あらかじめ設定された利用停止検出ルール情報と、利用履歴情報とを用いて、再起動必要時間以上で、かつ利用者が利用中でも、利用者の利用を同時に停止可能な停止可能期間を一つ以上検出する。
【0102】
利用停止検出ルール情報は、仮想マシン30aごとに、利用特定情報(種類情報、識別情報)と、操作識別情報と、利用の停止が可能か否かを表す停止可能利用情報とが関連付けられた情報である。なお、利用特定情報(種類情報、識別情報)と操作識別情報の説明は、既に実施形態1で説明したので、利用特定情報(種類情報、識別情報)と操作識別情報の説明は省略する。
【0103】
図9は、利用停止検出ルール情報のデータ構造の一例を説明するための図である。
図9の例では、操作識別情報には、「読み出し」「書き込み」などの機能プロセスが記憶されている。停止可能利用情報には、利用の停止が可能か否かを表す「1」「0」が記憶されている。「1」は、利用を停止可能でないことを表す。「0」は、利用を停止可能であることを表す。
【0104】
例えば、
図9の利用停止検出ルール情報の一行目のルール(「アプリ」「アプリ1」「読み出し」「0」)は、利用者がアプリ1を利用している場合に、機能プロセスが読み出しを表していれば、利用者の利用は停止可能であることを表している。
【0105】
また、
図9の利用停止検出ルール情報の二行目のルール(「アプリ」「アプリ1」「書き込み」「1」)は、利用者がアプリ1を利用している場合に、機能プロセスが書き込みを表していれば、利用者の利用を停止可能でないことを表している。
【0106】
図10は、利用停止検出ルール情報のデータ構造の一例を説明するための図である。
図10の例では、操作識別情報には、利用の状態を表す情報として、利用者が会議をしていることを表す「会議」、利用者がチャットをしていることを表す「チャット」、利用者がキー入力をしていることを表す「入力」、利用者がマイクで会話をしていることを表す「会話」、利用者がファイルを開いていることを表す「オープン」などが記憶されている。
【0107】
また、利用停止可能情報には、利用の停止が可能か否かを表す「1」「0」が記憶されている。「1」は、利用を停止できないことを表す。「0」は、利用を停止可能であることを表す。
【0108】
例えば、
図10の利用停止検出ルール情報の一行目のルール(「アプリ」「アプリ1」「会議」「1」)は、利用者がアプリ1を利用して会議をしている場合、利用者の利用を停止できないことを表している。
【0109】
図10の利用停止検出ルール情報の二行目のルール(「アプリ」「アプリ1」「チャット」「0」)は、利用者がアプリ1を利用してチャットをしている場合、利用者の利用を停止可能であることを表している。
【0110】
停止可能期間の検出方法について説明する。
図11は、停止可能期間の検出方法を説明するための図である。
図11の例では、検出部11aは、仮想マシン30aを共有する利用者(user1からuser3)それぞれの利用履歴情報を用いて、利用停止検出ルール情報を参照し、利用者(user1からuser3)それぞれの利用を停止可能な期間(停止可能期間)を一つ以上検出する。
【0111】
具体的には、利用者(user1からuser3)の場合であれば、あらかじめ設定した検出期間における、利用者(user1からuser3)それぞれの利用時間と停止可能期間とを求める。
【0112】
例えば、利用者(user1)の場合、まず、利用者(user1)の利用履歴情報に含まれる種類情報と識別情報と操作識別情報と、利用停止検出ルール情報に含まれる種類情報と識別情報と操作識別情報とを比較して、種類情報と識別情報と操作識別情報とが一致するか否かを判定する。
【0113】
種類情報と識別情報と操作識別情報が一致した場合、利用履歴情報の一致した情報に関連する利用期間情報と、利用停止検出ルール情報の一致した情報に関連する利用停止情報とを関連付ける。すなわち、利用停止情報が、利用の停止が可能である「0」を表していれば、当該利用期間情報が表す利用期間は停止可能期間となる。逆に、利用停止情報が利用の停止が可能でない「1」を表していれば、当該利用期間情報が表す利用期間となる。
【0114】
検出期間は、例えば、過去の一週間のいずれか一つの曜日の24時間(0:00から23:59)を用いることが考えられる。また、過去の一週間において、利用期間と停止可能期間とを求めてもよい。
【0115】
また、利用者(user2、user3)の場合についても、上述した利用者(user1)と同様に、利用期間と停止可能期間とを求める。
【0116】
なお、
図11の例では、利用者(user1からuser3)それぞれの、利用期間を「1」、停止可能期間を「0」として表している。
【0117】
次に、検出部11aは、利用者(user1からuser3)それぞれの停止可能期間が重なる共通停止可能期間を検出する。
図11の例では、共通停止可能期間Ts1、Ts2が検出されたことを表している。
【0118】
次に、検出部11aは、共通停止可能期間Ts1、Ts2それぞれについて、共通停止可能期間Ts1、Ts2が、再起動必要時間Th以上であるか否かを判定する。
図11の例では、共通停止可能期間Ts1は再起動必要時間Th以下であるので、停止可能期間ではない。共通停止可能期間Ts2は再起動必要時間Thより長いので、停止可能期間である。
【0119】
再起動指示部12aは、まず、停止可能期間に基づいて再起動可能期間を設定する。例えば、共通停止可能期間Ts2が、今週の月曜日の24時間に含まれているのであれば、現時点より後の来週の月曜日における、共通停止可能期間Ts2に対応する期間を、再起動可能期間として設定する。ただし、曜日は月曜に限定されるものではない。
【0120】
次に、再起動指示部12aは、再起動可能期間より前に、仮想マシン30aの再起動実行部32aに、仮想マシン30aのソフトウェアにセキュリティパッチを適用し、仮想マシン30aを再起動するための指示を送信する。
【0121】
なお、
図9、10に示した利用停止検出ルール情報は一つに纏めてもよい。また、
図9、10では、利用停止情報を二値(「0」「1」)の情報としたが、利用を停止した際に利用者に与える影響を表す統計的な指標としてもよい。指標は、例えば、影響の大きさに応じて、0.0から1.0の間の数値で表すことが考えられる。
【0122】
また、利用停止情報として指標を用いる場合、利用者全ての指標の合計が、あらかじめ設定した閾値以下となる期間を、停止可能期間とする。閾値は、実験、シミュレーションなどにより決定する。
【0123】
●仮想マシン30aの説明
収集部31、記憶部33の説明について、実施形態1で既に説明をしたので、収集部31、記憶部33の説明については省略する。
【0124】
再起動実行部32aは、再起動可能期間より前の時点において、再起動指示部12aから、対象の仮想マシン30aのソフトウェアにセキュリティパッチを適用し、対象の仮想マシン30aを再起動可能期間に再起動させるための指示を受信し、受信した指示に基づいて、セキュリティパッチを適用し、再起動可能期間に仮想マシン30aを再起動する。
【0125】
再起動実行部32aは、対象の仮想マシン30aを再起動する場合、対象の仮想マシン30aを共有している利用者の端末装置20全てに、再起動する旨を通知する。理由は、利用者が利用をしている可能性が高いので、突然再起動した場合、利用に支障がでる可能性が高いためである。また、当該通知に、利用中のファイルの保存などを要請する通知を加えてもよい。
【0126】
[実施形態2の装置動作]
実施形態2における情報処理装置10aの動作について
図12を用いて説明する。
図12は、実施形態2の情報処理装置の動作を説明するための図である。以下の説明においては、適宜図を参酌する。また、実施形態2では、情報処理装置を動作させることによって、情報処理方法が実施される。よって、実施形態2における情報処理方法の説明は、以下の情報処理装置の動作説明に代える。
【0127】
図12のステップA1からA4の処理の説明については、既に実施形態1で説明をしたので、ステップA1からA4の処理の説明は省略する。
【0128】
検出部11aは、利用停止期間が検出できない場合(ステップB1:No)、利用停止検出ルール情報と、利用履歴情報とを用いて、再起動必要時間以上で、かつ利用者が利用中でも、利用者の利用を同時に停止可能な停止可能期間を一つ以上検出する(ステップB2)。
【0129】
具体的には、ステップB2において、検出部11aは、仮想マシン30aを共有する利用者それぞれの利用履歴情報を用いて、利用停止検出ルール情報を参照し、上述した停止可能期間の検出方法などに基づいて、利用者それぞれの利用を停止可能な期間(停止可能期間)を一つ以上検出する。
【0130】
次に、再起動指示部12aは、検出した停止可能期間に基づいて、現時点より後の時点に再起動可能期間を設定する(ステップB3)。
【0131】
具体的には、ステップB3において、再起動指示部12aは、検出した停止可能期間に基づいて、現時点より後の期間に設定する、再起動可能期間を表す再起動可能期間情報を生成し、生成した再起動可能期間情報を記憶部42に記憶する。
【0132】
例えば、
図11を用いて説明したように、共通停止可能期間Ts2が、今週の月曜日の24時間に含まれているのであれば、現時点より後の来週の月曜日における、共通停止可能期間Ts2に対応する期間を、再起動可能期間として設定する。ただし、曜日は月曜日に限定されるものではない。
【0133】
又は、例えば、過去の一週間において仮想マシン30aを共有する全ての利用者が利用を停止していて、かつ再起動必要時間より長い期間(停止可能期間)が複数検出された場合、検出された複数の利用停止期間を、曜日と時間を基準に、未来の一週間の対応する期間に割当て、割当てた期間を再起動可能期間と設定をする。
【0134】
図12に示したステップA1からA4、ステップB1からB3の処理は、ベンダーから新たなセキュリティパッチが配布されるごとに実行される。また、上述したステップA1からステップA4、ステップB1からB3の処理は、全ての仮想マシン30aそれぞれに対して実行する。仮想マシン30aごとに利用者が異なるので、仮想マシン30aごとに再起動可能期間は異なる。
【0135】
[実施形態2の効果]
以上のように実施形態2によれば、再起動が必要なセキュリティパッチをマルチセッション方式対応のソフトウェアに適用する場合に、仮想マシンを共有している利用者が利用中でも、利用に影響が少ない範囲で、仮想マシンを再起動できる。
【0136】
また、従来のように同じ仮想マシンを利用者間で、コミュニケーションツールなどを用いて再起動時間を調整するよりも、システムで自動的に判定を行う方がコストを低くできる。
【0137】
[プログラム]
実施形態2におけるプログラムは、コンピュータに、
図12に示すステップA1からA4、ステップB1からB3を実行させるプログラムであればよい。このプログラムをコンピュータにインストールし、実行することによって、実施形態2における情報処理装置と情報処理方法とを実現することができる。この場合、コンピュータのプロセッサは、管理部41、検出部11a、再起動指示部12a、収集部31、再起動実行部32aとして機能し、処理を行なう。
【0138】
また、実施形態1におけるプログラムは、複数のコンピュータによって構築されたコンピュータシステムによって実行されてもよい。この場合は、例えば、各コンピュータが、それぞれ、管理部41、検出部11a、再起動指示部12a、収集部31、再起動実行部32aのいずれかとして機能してもよい。
【0139】
[物理構成]
ここで、実施形態1、2におけるプログラムを実行することによって、情報処理装置を実現するコンピュータについて
図13を用いて説明する。
図13は、実施形態1、2における情報処理装置を実現するコンピュータの一例を説明するための図である。
【0140】
図13に示すように、コンピュータ110は、CPU(Central Processing Unit)111と、メインメモリ112と、記憶装置113と、入力インターフェイス114と、表示コントローラ115と、データリーダ/ライタ116と、通信インターフェイス117とを備える。これらの各部は、バス121を介して、互いにデータ通信可能に接続される。なお、コンピュータ110は、CPU111に加えて、又はCPU111に代えて、GPU、又はFPGAを備えていてもよい。
【0141】
CPU111は、記憶装置113に格納された、実施形態1、2におけるプログラム(コード)をメインメモリ112に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ112は、典型的には、DRAM(Dynamic Random Access Memory)などの揮発性の記憶装置である。また、実施形態1、2におけるプログラムは、コンピュータ読み取り可能な記録媒体120に格納された状態で提供される。なお、実施形態1、2におけるプログラムは、通信インターフェイス117を介して接続されたインターネット上で流通するものであってもよい。なお、記録媒体120は、不揮発性記録媒体である。
【0142】
また、記憶装置113の具体例としては、ハードディスクドライブの他、フラッシュメモリなどの半導体記憶装置があげられる。入力インターフェイス114は、CPU111と、キーボード及びマウスといった入力機器118との間のデータ伝送を仲介する。表示コントローラ115は、ディスプレイ装置119と接続され、ディスプレイ装置119での表示を制御する。
【0143】
データリーダ/ライタ116は、CPU111と記録媒体120との間のデータ伝送を仲介し、記録媒体120からのプログラムの読み出し、及びコンピュータ110における処理結果の記録媒体120への書き込みを実行する。通信インターフェイス117は、CPU111と、他のコンピュータとの間のデータ伝送を仲介する。
【0144】
また、記録媒体120の具体例としては、CF(Compact Flash(登録商標))及びSD(Secure Digital)などの汎用的な半導体記憶デバイス、フレキシブルディスク(Flexible Disk)等の磁気記録媒体、又はCD-ROM(Compact Disk Read Only Memory)などの光学記録媒体があげられる。
【0145】
なお、実施形態1、2における情報処理装置は、プログラムがインストールされたコンピュータではなく、各部に対応したハードウェアを用いることによっても実現可能である。さらに、情報処理装置は、一部がプログラムで実現され、残りの部分がハードウェアで実現されていてもよい。
【0146】
以上、実施形態を参照して発明を説明したが、発明は上述した実施形態に限定されるものではない。発明の構成や詳細には、発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【産業上の利用可能性】
【0147】
上述した記載によれば、再起動が必要なセキュリティパッチをマルチセッション方式対応のソフトウェアに適用する場合でも、利用者に影響がでないようにできる。また、セキュリティパッチの適用が必要な分野において有用である。
【符号の説明】
【0148】
10、10a 情報処理装置
11、11a 検出部
12、12a 再起動指示部
20 端末装置
30、30a 仮想マシン
31 収集部
32、32a 再起動実行部
33 記憶部
40、40a セキュリティ管理部
41 管理部
42 記憶部
100 システム
110 コンピュータ
111 CPU
112 メインメモリ
113 記憶装置
114 入力インターフェイス
115 表示コントローラ
116 データリーダ/ライタ
117 通信インターフェイス
118 入力機器
119 ディスプレイ装置
120 記録媒体
121 バス