JP5365526B2 - 情報処理装置、情報処理システム、コンピュータプログラム及び情報処理方法 - Google Patents

情報処理装置、情報処理システム、コンピュータプログラム及び情報処理方法 Download PDF

Info

Publication number
JP5365526B2
JP5365526B2 JP2009550411A JP2009550411A JP5365526B2 JP 5365526 B2 JP5365526 B2 JP 5365526B2 JP 2009550411 A JP2009550411 A JP 2009550411A JP 2009550411 A JP2009550411 A JP 2009550411A JP 5365526 B2 JP5365526 B2 JP 5365526B2
Authority
JP
Japan
Prior art keywords
information
setting information
information processing
virtual
operating environment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2009550411A
Other languages
English (en)
Other versions
JPWO2009093333A1 (ja
Inventor
一樹 松井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of JPWO2009093333A1 publication Critical patent/JPWO2009093333A1/ja
Application granted granted Critical
Publication of JP5365526B2 publication Critical patent/JP5365526B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)

Description

本発明は、シンクライアント方式により複数のユーザに、コンピュータによる処理を提供することができる情報処理装置に関し、特に、ユーザ毎に異なる設定情報に基づく動作環境を提供することができる情報処理装置、情報処理システム、コンピュータプログラム及び情報処理方法に関する。
通信インフラの普及が進み、またユビキタス社会とも言われるように、ユーザが時間、場所を問わずに自身が携帯する端末装置を用いて通信網を介した多様なサービスを受けることができる。しかし、ユーザが携帯する端末装置を多様なサービスに対応させるために高機能化させた場合、それぞれの端末装置のコストが上昇する。また、このような端末装置に大容量の記憶装置を備えさせた場合、当該端末装置が盗難、遺失等により失われたときは、記憶されている個人情報、企業の秘密情報等の各種情報の漏洩の危険性が高まり、情報の安全性が確保されない。
そこで、シンクライアント(thin client)システムが普及している。シンクライアントシステムでは、ユーザが持つ端末装置を、例えばメモリ、ネットワークカード、グラフィックカード等の必要最低限のハードウェアで構成する。そして、実際の主な処理は、通信網を介して接続されるサーバ装置で行ない、端末装置は、処理の結果に基づく表示画面の情報のみをサーバ装置から取得してディスプレイに表示する(特許文献1参照)。これにより、端末装置に備えるべきハードウェアを最小限にしてコストを抑え、更に情報の漏洩を防止することができる。
また、近年では、仮想PC(Personal Computer )方式のシンクライアントシステムが、コスト削減に効果があるとして注目を集めている。仮想PC方式とは、サーバ装置において、仮想マシンモニタ(VMM:Virtual Machine Monitor )、ハイパーバイザ等と呼ばれる技術によってサーバ装置内のハードウェアを仮想化し、その上で複数のゲストOS(仮想PC)を実行させる方式であり、サーバ装置に対して同時に接続可能な端末装置の数を増加させることができる。
特開2001−282747号公報
企業向け又はコンシューマ向けに拘わらず、既にユーザが使用しているPC等の端末装置においては、ユーザが設定したOS(Operating System)の動作に関する設定情報、各種のアプリケーションに対する設定情報等の各種の設定情報、何らかの認証処理に用いるための認証情報等が、ハードディスク又は不揮発性メモリ等に格納されている。また、ユーザだけでなく、場合によっては、企業内の運用管理者が、セキュリティの強化を目的として予め設定した各種の設定情報も、ハードディスク又は不揮発性メモリ等に格納されている。このように格納された各種の情報を用いることにより、端末装置は、一度設定された設定情報に基づく動作を繰り返すことができる。
一方、シンクライアントシステムは比較的新しいシステムであり、これから導入する企業又は一般ユーザも多い。また、既に使用している端末装置に対する2台目としてシンクライアントシステムを利用する形態も考えられ、この場合、各ユーザが既に使用している端末装置における各種の設定情報を、シンクライアントシステムに対しても反映させたいという要望がある。
しかし、各ユーザが既に使用している端末装置における各種の設定情報を、シンクライアントシステムに対しても反映させる場合、各ユーザがシンクライアントシステムに対しても設定操作を行なう必要があり、各ユーザの作業負担が非常に大きい。また、今後、コンシューマ向けにシンクライアントシステムを提供する場合において、高齢者及び主婦等を提供先のターゲットとすることも考えられ、この場合にも、設定操作の単純化が不可欠である。
本発明は斯かる事情に鑑みてなされたものであり、その目的とするところは、各ユーザが既に使用しているPC等の端末装置における各種の設定情報を、シンクライアントシステムの他のユーザの動作環境に影響を与えない範囲で、シンクライアントシステムに対しても反映させることを可能とすることにより、シンクライアントシステムにおいて利用者の利便性を向上させることが可能な情報処理装置、情報処理システム、コンピュータプログラム、情報処理方法を提供することにある。
本情報処理装置の特徴は、ネットワークを介して外部装置と接続され、各種処理を実行する実行手段を備える情報処理装置であって、外部装置から、利用者を特定するための利用者情報及び該利用者を認証するための認証情報を含む接続要求を取得すると共に、前記実行手段が実行する各種処理の動作環境に関する設定情報を取得し、取得した接続要求に含まれる利用者情報及び認証情報に基づいて、前記接続要求に対する接続の可否を判定し、接続可であると判定した場合、取得した設定情報が、前記実行手段が実行する各種処理の動作環境に対して予め規定された制約条件に基づく許容範囲内であるか否かを判定し、許容範囲内であると判定した場合、取得した設定情報に基づいて、前記実行手段が実行する各種処理の動作環境を設定し、設定した動作環境を前記外部装置に対して割り当てる点にある。また、本情報処理装置の特徴は、取得した設定情報が許容範囲内でないと判定した場合、所定の設定情報に基づいて動作環境を設定し、設定した動作環境を前記外部装置に対して割り当て、更に、所定の設定情報に基づく動作環境である旨を前記外部装置に通知する点にある。
本情報処理装置の特徴は、外部装置に対して割り当てられた動作環境で実行される処理に対する操作を示す操作情報を前記外部装置から取得し、取得した操作情報に基づいて、画面を描画するための画像信号を生成し、生成された画像信号を前記外部装置へ送信する点にある。
本情報処理装置の特徴は、外部装置に対して割り当てられた動作環境で実行される処理の終了を示す切断要求を前記外部装置から取得した場合、前記外部装置に対して割り当てられた動作環境の前記外部装置への割り当てを解消し、前記外部装置への割り当てを解消された動作環境を、所定の初期設定情報に基づいて初期化する点にある。
本情報処理システムの特徴は、各種処理を実行する実行手段を備える中央装置と、該中央装置とネットワークを介して接続される端末装置とを含む情報処理システムであって、端末装置が、利用者を特定するための利用者情報及び該利用者を認証するための認証情報を含む接続要求を中央装置へ送信すると共に、中央装置の実行手段が実行する各種処理の動作環境に関する設定情報を中央装置へ送信する点にある。また、本情報処理システムの特徴は、中央装置が、端末装置から前記接続要求を取得すると共に、前記設定情報を取得し、取得した接続要求に含まれる利用者情報及び認証情報に基づいて、前記接続要求に対する接続の可否を判定し、接続可であると判定した場合、取得した設定情報が、前記実行手段が実行する各種処理の動作環境に対して予め規定された制約条件に基づく許容範囲内であるか否かを判定し、許容範囲内であると判定した場合、取得した設定情報に基づいて、前記実行手段が実行する各種処理の動作環境を設定し、設定した動作環境を前記端末装置に対して割り当てる点にある。また、本情報処理システムの特徴は、中央装置が、取得した設定情報が許容範囲内でないと判定した場合、所定の設定情報に基づいて動作環境を設定し、設定した動作環境を前記端末装置に対して割り当て、更に、所定の設定情報に基づく動作環境である旨を前記端末装置に通知する点にある。
本コンピュータプログラムの特徴は、コンピュータに読み取らせて実行させることにより、上述したような情報処理装置をコンピュータによって実現することが可能となる点にある。即ち、本コンピュータプログラムをコンピュータに読み取らせて実行させることにより、コンピュータに、外部装置から取得した接続要求に含まれる利用者情報及び認証情報に基づいて、前記接続要求に対する接続の可否を判定させ、接続可であると判定された場合、前記外部装置から取得した設定情報が、前記実行手段が実行する各種処理の動作環境に対して予め規定された制約条件に基づく許容範囲内であるか否かを判定させ、許容範囲内であると判定された場合、前記設定情報に基づいて、前記実行手段が実行する各種処理の動作環境を設定させ、設定された動作環境を前記外部装置に対して割り当てさせる点にある。また、コンピュータに、前記外部装置から取得した設定情報が許容範囲内でないと判定された場合、所定の設定情報に基づいて動作環境を設定させ、設定された動作環境を前記外部装置に対して割り当てさせ、更に、所定の設定情報に基づく動作環境である旨を前記外部装置に通知させる点にある。
本コンピュータプログラムの特徴は、本コンピュータプログラムをコンピュータに読み取らせて実行させることにより、コンピュータに、外部装置から取得した操作情報に基づいて、画面を描画するための画像信号を生成させ、生成された画像信号を前記外部装置へ送信させる点にある。
本コンピュータプログラムの特徴は、本コンピュータプログラムをコンピュータに読み取らせて実行させることにより、コンピュータに、外部装置に対して割り当てられた動作環境で実行される処理の終了を示す切断要求を前記外部装置から取得した場合、前記外部装置に対して割り当てられた動作環境の前記外部装置への割り当てを解消させ、前記外部装置への割り当てを解消された動作環境を、所定の初期設定情報に基づいて初期化させる点にある。
本情報処理方法の特徴は、ネットワークを介して外部装置と接続され、各種処理を実行する実行手段を備える情報処理装置による情報処理方法であって、情報処理装置が、外部装置から、利用者を特定するための利用者情報及び該利用者を認証するための認証情報を含む接続要求を取得すると共に、前記実行手段が実行する各種処理の動作環境に関する設定情報を取得し、取得した接続要求に含まれる利用者情報及び認証情報に基づいて、前記接続要求に対する接続の可否を判定し、接続可であると判定された場合、取得した設定情報が、前記実行手段が実行する各種処理の動作環境に対して予め規定された制約条件に基づく許容範囲内であるか否かを判定し、許容範囲内であると判定された場合、取得した設定情報に基づいて、前記実行手段が実行する各種処理の動作環境を設定し、設定された動作環境を前記外部装置に対して割り当てることにある。また、本情報処理方法の特徴は、情報処理装置が、取得した設定情報が許容範囲内でないと判定された場合、所定の設定情報に基づいて動作環境を設定し、設定された動作環境を前記外部装置に対して割り当て、更に、所定の設定情報に基づく動作環境である旨を前記外部装置に通知することにある。
本情報処理方法の特徴は、情報処理装置が、外部装置に対して割り当てられた動作環境で実行される処理に対する操作を示す操作情報を前記外部装置から取得し、取得した操作情報に基づいて、画面を描画するための画像信号を生成し、生成された画像信号を前記外部装置へ送信することにある。
本情報処理方法の特徴は、情報処理装置が、外部装置に対して割り当てられた動作環境で実行される処理の終了を示す切断要求を前記外部装置から取得した場合、前記外部装置に対して割り当てられた動作環境の前記外部装置への割り当てを解消し、前記外部装置への割り当てを解消された動作環境を、所定の初期設定情報に基づいて初期化することにある。
本情報処理装置によれば、外部装置から接続要求を取得した場合、取得した接続要求に対する接続の可否を判定することにより、正当な権限を有するユーザからの接続要求に対してのみ接続を許可することが可能となる。また、本情報処理装置によれば、接続可であると判定された外部装置から取得した設定情報が、予め規定された制約条件に基づく許容範囲内であるか否かを判定することにより、この設定情報に基づいて、実行手段が実行する各種処理の動作環境を設定した場合に正常に動作できるか否かを判定することが可能となる。更に、本情報処理装置によれば、外部装置から取得した設定情報が許容範囲内であると判定された場合、前記設定情報に基づく動作環境を設定し、設定した動作環境を前記外部装置に対して割り当てることにより、外部から取得した設定情報に基づく動作環境を前記外部装置に対して設定することが可能となる。また、本情報処理装置によれば、外部装置から取得した設定情報が許容範囲内でないと判定された場合、所定の記設定情報に基づく動作環境を設定し、設定した動作環境を前記外部装置に対して割り当てることにより、動作環境を確実に前記外部装置に割り当てることが可能となる。
本情報処理装置によれば、それぞれの動作環境で実行される処理に対する操作を取得した場合に、この操作に基づいて画面を描画するための画像信号を生成し、対応する外部装置へ送信する。よって、本情報処理装置において、例えばシンクライアントシステムにおけるサーバ装置としての動作が可能となる。
本情報処理装置によれば、それぞれの動作環境で実行される処理の終了を示す切断要求を取得した場合、前記動作環境の外部装置への割り当てを解消し、前記動作環境を初期化する。よって、動作を終了した動作環境における設定情報を、次に各動作環境が動作する際には残さない。
本情報処理装置では、外部装置から取得した設定情報に基づく動作環境を前記外部装置に対して設定することができるので、このような情報処理装置をシンクライアントシステムにおけるサーバ装置に適用することにより、各ユーザが既に使用しているPC等の端末装置における各種の設定情報を、煩雑な設定操作を行なうことなく、シンクライアントシステムに対しても反映させることができる。このように、シンクライアントシステムに対する各種の設定条件を容易に設定することができるので、既に使用している端末装置に対する2台目としてシンクライアントシステムを利用したいユーザにおいても、高齢者及び主婦等のように端末装置の操作に不慣れなユーザにおいても、シンクライアントシステムを気軽に導入することができる。
また、本情報処理装置では、外部装置から取得した設定情報に基づく動作環境を前記外部装置に対して設定する際に、この設定情報に基づいて設定された動作環境が、他のユーザの動作環境に影響を与えることなく正常に動作可能であるか否かを判断するので、各ユーザが既に使用しているPC等の端末装置における各種の設定情報を、シンクライアントシステムに対しても反映させた場合であっても、シンクライアントシステムの他のユーザの動作環境には影響を与えない。また、本情報処理装置では、外部装置から取得した設定情報に基づいて動作環境を設定すると他のユーザの動作環境に影響を与えると判断されたときには、外部から取得した設定情報ではなく、所定の設定情報に基づく動作環境を前記外部装置に対して設定することにより、他のユーザの動作環境に影響を与えない範囲内で確実に動作環境を外部装置に割り当てることができる。
実施形態1に係るシンクライアントシステムの構成例を示す模式図である。 実施形態1の情報処理装置の内部構成を示すブロック図である。 仮想PC状態テーブルの登録内容を示す模式図である。 実施形態1に係る端末装置の内部構成を示すブロック図である。 情報処理装置の機能構成を示す機能ブロック図である。 仮想化サーバの機能構成を示す機能ブロック図である。 端末装置が情報処理装置に仮想PCの起動を要求した場合の処理手順を示すフローチャートである。 端末装置が情報処理装置に仮想PCの起動を要求した場合の処理手順を示すフローチャートである。 端末装置が情報処理装置に仮想PCの停止を要求した場合の処理手順を示すフローチャートである。 設定情報登録テーブルの登録内容を示す模式図である。 仮想化サーバの機能構成を示す機能ブロック図である。 端末装置が情報処理装置に仮想PCの起動を要求した場合の処理手順を示すフローチャートである。 端末装置が情報処理装置に仮想PCの起動を要求した場合の処理手順を示すフローチャートである。 端末装置が情報処理装置に仮想PCの停止を要求した場合の処理手順を示すフローチャートである。
符号の説明
1 情報処理装置
10 制御部(実行手段)
101 仮想化サーバ(接続要求取得手段、設定情報取得手段、切断要求取得手段)
102 認証手段
103 設定情報検査手段(判定手段)
106 仮想PC起動手段(設定手段、割当手段)
108 仮想PC修復手段(解消手段、初期化手段)
2 端末装置
N1 ネットワーク
以下に、本発明に係る情報処理装置(中央装置)を備えた本発明に係る情報処理システムについて、シンクライアントシステムに適用した実施形態を示す図面に基づいて詳述する。なお、以下では、本発明に係る情報処理システムを、情報処理装置のハードウェアを仮想化し、その上で複数の仮想PC(ゲストOS)を実行させる仮想PC方式のシンクライアントシステムに適用した実施形態を例に説明する。
(実施形態1)
以下に、実施形態1に係るシンクライアントシステムについて説明する。図1は実施形態1に係るシンクライアントシステムの構成例を示す模式図である。本実施形態1のシンクライアントシステムは、本発明に係る情報処理装置群1,1…、ネットワークN1、ネットワークN1を介して情報処理装置群1,1…と接続されている端末装置(外部装置)2,2…とを含んで構成される。
情報処理装置群1,1…はインターネット等の公衆通信網N2にも接続されている。ネットワークN1は、高精細の映像の送受信が可能な専用のIP(Internet Protocol)通信網であることが望ましい。情報処理装置群1,1…は、それぞれがサーバコンピュータ装置により構成されている。端末装置2,2…はシンクライアントとして使用され、テレビジョン受像機(以下、テレビという)26に接続されるセットトップボックス(STB;Set Top Box )として構成される。端末装置2,2…は、テレビ26のほかに、キーボード27及びマウス28を接続可能に構成されており、端末装置2、テレビ26、キーボード27及びマウス28によってシンクライアントとして利用される。
なお、シンクライアントとして利用される端末装置2,2…は、このような構成に限られず、例えば、HD等の記憶装置を備えないパーソナルコンピュータ装置、STBの機能を備え、キーボード及びマウスが接続可能なテレビジョン受像機でもよい。
以下では、説明を簡易にするために情報処理装置1と端末装置2,2…との関係を1対多として説明する。情報処理装置1は、一の装置で複数の情報処理装置として動作する仮想化技術が適用されており、各端末装置2,2…に対応する仮想PC(ゲストOS)を起動して実行するようにしてある。また情報処理装置1は、各仮想PCの起動/停止及びその動作を管理する機能を有する仮想化サーバ101(図5,6参照)を起動して実行するようにしてある。
上述した構成のシンクライアントシステムにおいて、情報処理装置1は、端末装置2から仮想PCの起動(ログイン)を要求する接続要求信号を受信した場合、対応する仮想PCを起動すると共に、当該仮想PCが出力する描画指示信号に基づいてテレビ26で画面を表示させるための画像信号を生成して端末装置2へ送信する。このとき情報処理装置1は、起動した仮想PCに対応する端末装置2のアドレスを取得し、そのアドレスを宛て先として、仮想PCが出力する描画指示信号に基づいて生成した画像信号をIPパケットに含め、ネットワークN1へ送信する。これにより、端末装置2は送信された画像信号を受信してテレビ26に表示し、シンクライアントとしての動作を開始する。
図2は実施形態1の情報処理装置1の内部構成を示すブロック図である。本実施形態1の情報処理装置1は、本発明に係るコンピュータプログラムをコンピュータに読み取らせて実行させることによって実現される。なお、専用の装置によって本実施形態1の情報処理装置1を構成するようにしてもよい。
情報処理装置1はサーバコンピュータ装置により構成されており、ルータを介してネットワークN1に接続されている。また、図1に示したように、情報処理装置1は公衆通信網N2にも接続されている(図2においては図示せず)。
情報処理装置1は、制御部10、ROM11、RAM12、記憶部13、通信部14、入出力部15等を備えており、それぞれはバス1aを介して相互に接続されている。また、情報処理装置1は、入出力部15に接続された複数の画像送信装置3,3…を備える。
制御部10は、例えばCPU(Central Processing Unit )又はMPU(Micro Processor Unit)等であり、ROM11又は記憶部13に予め記憶してある制御プログラムを適宜RAM12に読み出して実行すると共に、上述したハードウェア各部の動作を制御する。ROM11は、本実施形態1の情報処理装置1を本発明の情報処理装置として動作させるために必要な種々の制御プログラムを予め格納している。RAM12は、例えばSRAM又はフラッシュメモリ等であり、制御部10による制御プログラムの実行時に発生する種々のデータを一時的に記憶する。
記憶部13は、例えばHDD(Hard Disk Drive )等の大容量の記憶装置である。記憶部13は、本実施形態1の情報処理装置1を本発明の情報処理装置として動作させるために必要な種々の制御プログラム、OSプログラム13a、仮想化サーバプログラム13b、図3に示すような仮想PC状態テーブル13c、設定許容範囲テンプレート13d、初期情報テンプレート13e、各種のデータ等を格納している。
OSプログラム13aは、ユーザが操作できるCUI(Command User Interface)、GUI(Graphic User Interface)を持つWindows (登録商標)、Linux等のOSソフトウェアである。制御部(実行手段)10は、OSプログラム13aを読み出して実行することにより仮想PC100(図5参照)として動作し、各種処理を実行し、実行した処理に応じて表示すべきCUI、GUI等を含む表示画面を描画するための描画指示信号を生成して画像送信装置3へ出力する。また、制御部10は仮想PC100として動作する際は、キーボード、マウス等の入出力装置からの制御信号(操作情報)を受け付け、このような制御信号に応じて各種処理を実行し、処理に応じたCUI及びGUIの画面を構成するための描画指示信号のみならず、音声信号等を画像送信装置3へ出力する。
仮想化サーバプログラム13bは、情報処理装置1を本発明に係る情報処理装置として動作させるために必要な各種処理を行なうための主要なプログラムであり、情報処理装置1において複数の仮想PC100,100…が動作する仮想化技術を実現するためのソフトウェアである。制御部10は、仮想化サーバプログラム13bを読み出して実行することにより仮想化サーバ101として動作し、情報処理装置1が論理的に複数の情報処理装置として動作する仮想化環境を提供する。これにより、情報処理装置1において論理的に複数の独立した仮想PCが動作することが可能となる。制御部10は、マルチコアCPUで構成され、各仮想PC100,100…、仮想化サーバ101がそれぞれ物理的に異なるCPUコア上に分散して動作するように最適に設計されている。なお、マルチコアCPUとは限らず、シングルコアCPUで構成してもよい。
また、制御部10は、仮想化サーバプログラム13bを実行して仮想化サーバ101として動作することにより、各ソフトウェアとハードウェア資源との間の管理を実現し、各仮想PC100,100…に対応するハードウェアの動作の基本的な制御を行なう。更に、仮想化サーバ101として動作する制御部10は、各端末装置2,2…からの接続(起動)の要求に応じ、対応するOSプログラム13aを読み出して実行し、各仮想PC100,100…を起動させる。この場合、制御部10は、各仮想PC100,100…に利用されるハードウェア、即ち、制御部10、RAM12、通信部14及び画像送信装置3,3…の割り当て制御、及び割り当てられていない画像送信装置3の探索等を行なう。
なお、制御部10が仮想化サーバ101として動作する際の詳細な処理については、図5,6に基づいて後述する。また、仮想PC状態テーブル13cの登録内容の詳細については、図3に基づいて後述する。更に、設定許容範囲テンプレート13d及び初期情報テンプレート13eについても後述する。
RAM12は、制御部10がOSプログラム13a及び仮想化サーバプログラム13bをそれぞれ読み出す際に使用される他、制御部10が各制御プログラムを読み出して実行し、各処理を行なう際に一時的に各種情報を記憶し、また、制御部10が各仮想PC100,100…として動作する場合に対応する端末装置2,2…毎の設定情報を記憶するために使用される。従って、RAM12も論理的に複数のメモリに分割され、各仮想PC100,100…、仮想化サーバ101それぞれに割り当てられる。
通信部14は、例えばネットワークカードを備え、ネットワークN1を介した端末装置2,2…等との通信を実現するハードウェアである。また、通信部14は、公衆通信網N2とも接続されており、公衆通信網N2を介して公開されている映像、画像、テキストデータ等の各種情報を、各仮想PC100,100…が通信部14を介して取得することができる。なお、ネットワークN1に接続するための通信部と、公衆通信網N2に接続するための通信部とを各別に備える構成としてもよい。
入出力部15は、PCI(Peripheral Component Interconnect )等のシリアル転送バススロットを含む入出力インタフェースである。入出力部15は、例えばGPU(Graphics Processing Unit)ドライバ15a及びUSB(Universal Serial Bus)ドライバ15bを備えており、後述する画像送信装置3,3…との間で描画指示信号を含む各種の制御信号の送受を実現する。
画像送信装置3は、PCI(PCI−Express)ボードで構成されており、GPU30、入出力インタフェース31、データ変換部32、符号化部33、パケット変換部34、通信部35等を備える。
GPU30は、情報処理装置1の制御部10が各仮想PC100,100…として動作している場合に生成される描画指示信号を、入出力部15のGPUドライバ15aを介して取得し、取得した描画指示信号に基づいて表示画面を表わす画像信号を生成する。GPU30は、生成した画像信号をデータ変換部32へ送出する。
データ変換部32は、GPU30で生成された画像信号を符号化部33へ入力するためのデータ変換処理を行ない、データ変換した画像信号を符号化部33へ送出する。符号化部33は、データ変換部32によりデータ変換された画像信号を、例えばH.264等のデジタル映像信号に圧縮符号化するエンコーダチップである。符号化部33は、圧縮符号化したデジタル映像信号をパケット変換部34へ送出する。
入出力インタフェース31は、例えばUSBインタフェースであり、入出力部15のUSBドライバ15bとの間で各種の制御信号の送受を行なう。入出力インタフェース31は、情報処理装置1の制御部10が各仮想PC100,100…として動作する際に、処理に応じて出力される音声信号を含む制御信号を、端末装置2におけるテレビ26、キーボード27、マウス28、スピーカ(図示せず)等の各入出力装置へ中継する機能を有している。また逆に、後述する端末装置2に接続されている各入出力装置から取得した制御信号を、対応する仮想PC100が動作する制御部10へ中継する機能も有している。
パケット変換部34は、符号化部33により圧縮符号化されたデジタル映像信号、又は入出力インタフェース31を介して取得した制御信号をIPパケットにパケット化して通信部35へ送出する。なお、入出力インタフェース31がUSBインタフェースである場合、制御信号は既にパケット化されているので、パケット変換部34が、入出力インタフェース31を介して取得した制御信号をIPパケットに格納する処理は簡易な処理で済む。また、パケット変換部34は、通信部35を介して端末装置2から受信したパケット化されている制御信号に対して逆パケット化処理を行なって制御信号を取得する。
通信部35は、例えばネットワークカードを備え、ネットワークN1を介した端末装置2,2…等との間でパケットの送受信を実現する。具体的には、通信部35は、符号化部33から出力されるデジタル映像信号、又は入出力インタフェース31を介してUSBドライバ15bから取得した制御信号を、パケット変換部34によってパケット化して得られたIPパケットをネットワークN1へ出力する。なお、符号化部33は、入出力部15(GPUドライバ15a)を介して情報処理装置1の制御部10から出力される音声信号を符号化して映像信号と共に多重化してもよい。
情報処理装置1の制御部10は、それぞれの仮想PC100,100…に応じて端末装置2のアドレス等の送信先情報を入出力部15を介して画像送信装置3,3…へ出力する。画像送信装置3のパケット変換部34は、送信先情報に基づきIPパケットに画像信号を格納し、通信部35を介して外部へ出力するようにしてある。画像送信装置3の通信部35から出力されたIPパケットは、アドレスに対応する端末装置2へルータ等の通信経路を介して送信される。
画像送信装置3は、GPU30により描画指示信号を受け付ける構成としており、情報処理装置1の制御部10から処理に応じた描画指示信号が出力される先として考えた場合、一般にパーソナルコンピュータ装置に備えられているグラフィックカード、グラフィックアクセラレータ(Graphic Accelerator )等と呼ばれる装置と同等である。従って、画像送信装置3が備えられることにより、情報処理装置1の制御部10の描画指示信号の出力処理を大きく改める必要がない点、効果的である。
なお、情報処理装置1の制御部10が画像送信装置3へ出力する送信先情報は、端末装置2のアドレスを直接的に特定するものでなくともよい。送信先情報は、画像送信装置3の通信部35又は他の装置の通信部に割り振られたネットワークアドレスとポート番号とでもよく、通信部35は送信先情報に示されているポートに、画像信号を格納したIPパケットを出力し、端末装置2で当該ポートから取得する構成でもよい。
図3は仮想PC状態テーブル13cの登録内容を示す模式図である。図3に示すように、仮想PC状態テーブル13cには、情報処理装置1において制御部10がOSプログラム13aを実行することによって起動される各仮想PC100,100…について、各仮想PC100,100…を識別するための仮想PC−IDと、各仮想PC100,100…の状態情報とが対応付けて登録されている。仮想PC状態テーブル13cの仮想PC−IDは、情報処理装置1をシンクライアントシステムのサーバ装置として動作させる際に予め登録されており、状態情報は、仮想化サーバ101として動作する制御部10が、各仮想PC100,100…を起動させる都度、又はシャットダウン(停止)させる都度、制御部10によって「起動中」又は「未起動」に更新される。
なお、設定許容範囲テンプレート13d及び初期情報テンプレート13eの詳細については図示しない。設定許容範囲テンプレート13dは、仮想化サーバ101として動作する制御部10が、認証手段102(図6参照)によって認証された端末装置2,2…からの接続(起動)の要求に応じ、対応するOSプログラム13aを読み出して実行することによって、端末装置2,2…から取得した設定情報に基づく動作環境を設定(各仮想PC100,100…を起動)する際に、端末装置2,2…から取得した設定情報に基づいて各仮想PC100,100…を起動させた場合であっても、他のユーザの動作環境(他の仮想PC100,100…)に影響を与えないことを確認するために用いるテンプレートである。
初期情報テンプレート13eは、仮想化サーバ101として動作する制御部10が、各仮想PC100,100…の動作を終了させる場合に、各仮想PC100,100…における動作環境を初期状態に設定する(初期化する)際に用いるテンプレートである。具体的には、例えば、仮想PC100をデフォルトの設定情報に基づいて起動させた場合のメモリのダンプイメージを用いることができる。
図4は実施形態1に係る端末装置2の内部構成を示すブロック図である。本実施形態1の端末装置2は、通信部21、パケット変換部22、入出力インタフェース23、復号部24、信号変換部25等を備える。
通信部21は、例えばネットワークカードを備え、ネットワークN1を介した情報処理装置1等との通信を実現する。なお、通信部21は、自身の端末装置2に対応する仮想PC100に割り当てられた画像送信装置3からのパケットを取得してパケット変換部22へ送出する。
パケット変換部22は、通信部21を介して取得したパケットに対して逆パケット化処理を行ない、パケットから映像信号又は音声信号を含む制御信号を取得し、それぞれを復号部24又は入出力インタフェース23へ出力する。また、パケット変換部22は、入出力インタフェース23を介してキーボード27及びマウス28等の入出力装置から取得した制御信号をパケット化して通信部21へ送出する。この場合、通信部21は、パケット変換部22によってパケット化された制御信号を、自身の端末装置2に対応する仮想PC100へ送信する。
復号部24は、例えばH.264等のデジタル映像信号を復号するデコーダチップであり、パケット変換部22によって取得されたデジタル映像信号が圧縮符号化されている場合、このデジタル映像信号を復号して信号変換部25へ送出する。
入出力インタフェース23は、例えばUSBインタフェース等の各種デバイスとの入出力信号を受け付ける入出力部であり、キーボード27、マウス28、スピーカ(図示せず)等の入出力装置と接続されており、各入出力装置との間で入出力信号を送受信する。なお、端末装置2がリモートコントローラ(図示せず)による操作が可能である場合、リモートコントローラから同様の入出力信号を受信する構成とすることもできる。また、入出力インタフェース23は、パケット変換部22から音声信号が送出されてきた場合、音声信号を信号変換部25へ送出する。なお、入出力インタフェース23にスピーカが接続されている場合、入出力インタフェース23は、パケット変換部22から取得した音声信号をスピーカへ出力すればよい。
信号変換部25は、復号部24によって復号された画像信号をテレビ26に入力するためにデータ変換し、テレビ26へ送出する。また、信号変換部25は、入出力インタフェース23から音声信号を取得した場合、音声信号もテレビ26へ送出する。
以下に、上述した構成の情報処理装置1において、制御部10がROM11又は記憶部13に格納してある制御プログラムを実行することによって実現される情報処理装置1の機能について説明する。図5は情報処理装置1の機能構成を示す機能ブロック図、図6は仮想化サーバ101の機能構成を示す機能ブロック図である。本実施形態1の情報処理装置1において、制御部10は、記憶部13に記憶してあるOSプログラム13a及び仮想化サーバプログラム13bを実行することによって、仮想PC(第1仮想PC、第2仮想PC)100,100及び仮想化サーバ101等の各機能を実現する。
図5には、情報処理装置1で、制御部10、RAM12、記憶部13、通信部14、画像送信装置3等を含むハードウェア上で、仮想化サーバ101(ホストOS)の動作により、複数の仮想PC100,100(ゲストOS)がそれぞれ独立して実行可能となっていることが示されている。また、図5には、各端末装置2,2…と各仮想PC100,100との対応関係が示されている。なお、仮想PC100、画像送信装置3、端末装置2の対応を明確にするため、図5においては、それぞれに第1又は第2を付与している。即ち、図5では、第1端末装置2には第1仮想PC100及び第1画像送信装置3が対応し、第2端末装置2には第2仮想PC100及び第2画像送信装置3が対応している。
制御部10は、仮想化サーバプログラム13bを実行して仮想化サーバ101として動作している場合に、端末装置2,2…から接続要求信号を取得した場合、取得した接続要求信号に応じて、それぞれの端末装置2,2…に対応するOSプログラム13a及び画像送信装置3を選択して割り当てる。また、仮想化サーバ101は、それぞれの端末装置2,2…に割り当てたOSプログラム13aを実行し、画像送信装置3を起動させることにより、それぞれの端末装置2,2…に対応する仮想PC100,100…を起動する。
例えば、仮想化サーバ101は、第1端末装置2から接続要求信号を取得した場合、対応する第1仮想PC100を起動させるが、その際に、複数の画像送信装置3,3…から空いている第1画像送信装置3を検索し、第1仮想PC100に割り当てる。第1仮想PC100として動作する制御部10は、処理に応じて出力する描画指示信号を、割り当てられた第1画像送信装置3へ出力する。第1画像送信装置3は取得した描画指示信号に基づき表示画面を表わす画像信号を生成して映像信号に符号化し、第1端末装置2へ送信する。これにより、第1端末装置2はシンクライアントとして動作を開始する。
ここで、本実施形態1のシンクライアントシステムでは、各端末装置2,2…は、情報処理装置1に対して各仮想PC100,100…の起動を要求する際に、各端末装置2,2…のユーザを識別するためのユーザ情報(利用者情報)と、ユーザを認証するための認証情報と、各種の設定情報とを含む接続要求信号を情報処理装置1へ送信する。情報処理装置1において、仮想化サーバ101として動作する制御部(接続要求取得手段、設定情報取得手段)10は、通信部14を介して各端末装置2,2…から接続要求信号を受信した場合、受信したユーザ情報及び認証情報に基づいてユーザ認証(ログインの可否の判定)を行なう。
正当なユーザであると認証できた場合、仮想化サーバ101として動作する制御部10は、各端末装置2,2…から取得した設定情報に基づいて各仮想PC100,100…を起動させる。そして、仮想化サーバ101は、起動させた仮想PC100,100…に対する各端末装置2,2…のログイン処理を行ない、各端末装置2,2…にそれぞれ仮想PC100,100…を割り当てる。これにより、例えば、各端末装置2,2…のユーザが既に使用しているPC等の装置における各種の設定情報を、煩雑な設定操作を行なうことなく、シンクライアントに対しても反映させることができる。
なお、シンクライアントシステムを利用する端末装置2,2…のユーザは、自身において既に使用しているPC等の装置における各種の設定情報を、USBメモリ及びIC(Integrated Circuit)カード等の可搬型の外部メモリに予め記憶させておく。そして、情報処理装置1に対して仮想PC100の起動を要求する際に、ユーザが外部メモリを入出力インタフェース23に接続し、端末装置2が外部メモリに記憶された設定情報を読み取り、ユーザ情報及び認証情報と共に情報処理装置1へ送信することにより、ユーザの好みの設定情報を情報処理装置1へ送信することができる。
なお、ユーザ情報及び認証情報は、端末装置2の不揮発性のメモリ(図示せず)に予め記憶させておいてもよく、端末装置2を起動させる際にユーザによって入力されてもよい。ユーザ情報及び認証情報を、端末装置2のメモリに予め記憶させておく構成とした場合、端末装置2を起動させて情報処理装置1に仮想PC100の起動を要求させる際に、ユーザは、端末装置2の電源ボタン(図示せず)を押下するだけでよい。
従って、本実施形態1の端末装置2は、動作停止状態において電源ボタン(図示せず)が押下された場合、起動し、メモリからユーザ情報及び認証情報を読み出すと共に、外部メモリから設定情報を読み出し、それぞれ読み出した情報を含む接続要求信号を情報処理装置1へ送信し、仮想PC100の起動を要求するように構成されているものとする。また、本実施形態1の端末装置2は、動作状態において電源ボタンが押下された場合、動作中の仮想PC100の動作終了を要求する切断要求信号を情報処理装置1へ送信し、シンクライアントとしての動作を停止するように構成されている。
なお、仮想化サーバ101として動作する制御部10は、各端末装置2,2…から取得した設定情報に基づいて各仮想PC100,100…を起動させる際、各端末装置2,2…から取得した設定情報に基づいて仮想PC100,100…を起動させた場合に、既に動作を開始している他の仮想PC100,100…に影響を与えるか否かの判定を行なう。従って、各端末装置2,2…から取得した設定情報を反映させた仮想PC100,100…を起動させた場合であっても、既に起動している他の仮想PC100,100…には影響を与えず、全ての仮想PC100,100…において良好な動作環境での実行が可能となる。
具体的には、本実施形態1では、図6に示すように、制御部10が仮想化サーバ101として動作する場合、更に、認証手段102、設定情報検査手段103、設定情報格納手段104、仮想PC選択手段105、仮想PC起動手段106、仮想PC画面送信手段107、仮想PC修復手段108等として動作する。
認証手段102は、いずれかの端末装置2から仮想PC100の起動を要求する接続要求信号を受信した場合、受信した接続要求信号からユーザ情報及び認証情報を取得する。なお、ユーザ情報としては、例えばユーザIDを用いることができ、認証情報としては、例えば予め登録してあるパスワードを用いることができる。
なお、シンクライアントシステムの利用を許可された各ユーザのユーザ情報及び認証情報が予め記憶部13に格納されており、認証手段102は、端末装置2から取得したユーザ情報及び認証情報が、記憶部13に格納されているいずれかのユーザ情報及び認証情報に一致するか否かに基づいて、端末装置2から取得した接続要求信号に対する接続の可否を判定する認証処理を行なう。認証手段102は、端末装置2から取得したユーザ情報及び認証情報が、記憶部13に格納されているいずれかのユーザ情報及び認証情報に一致すると判定した場合、この端末装置2からの接続要求に対する接続が許可されていると判断する。
設定情報検査手段103は、認証手段102によって接続が許可されていると認証された場合、認証された端末装置2から受信した接続要求信号から設定情報を取得する。なお、端末装置2から取得する設定情報としては、例えば、仮想PC100におけるOS(ゲストOS)の動作に関する設定情報、各種のアプリケーションの動作に関する設定情報、ネットワークN1,N2を介した通信に関する設定情報、GUIを含む画像処理に関する設定情報等がある。
より具体的には、画面サイズ、壁紙の画像データ、音量、ブックマーク、制御部におけるレジスタ値等があり、設定情報検査手段103は、例えば、画面サイズとして1024×768ピクセル、壁紙の画像データとしてビットマップデータ、音量としてボリューム4、ブックマークとしてURL1,URL2,URL3…、制御部におけるレジスタ値としてAPL1=reg1,APL2=reg2…を含む設定情報を取得する。
設定情報検査手段(判定手段)103は、接続要求信号から取得した設定情報が、設定許容範囲テンプレート13dによって規定された制約条件に基づく許容範囲内であるか否かを判定する。即ち、設定情報検査手段103は、端末装置2から取得した設定情報に基づいて仮想PC100を起動させた場合に、他の仮想PC100,100…に影響を与えないか否かを判定する。具体的には、設定情報検査手段103は、接続要求信号から取得した設定情報が、以下の2つの条件式(式1、式2)を満足するか否かを判定し、満足する場合、端末装置2から取得した設定情報が、設定許容範囲テンプレート13dによって規定された制約条件に基づく許容範囲内であると判定する。
まず、リソース条件式として、
R(t)×θ1 ≧ f1×α1+g1×β1 …(式1)
を用いる。
R(t):現在の全体リソース使用量、f1:画面サイズ、
g1:仮想メモリサイズ、θ1,α1,β1:係数
なお、上記の式1は、例えば、端末装置2から取得した設定情報に基づいて仮想PC100を起動させた場合に、仮想PC100に割り当てられるRAM12又は記憶部13等によって実現される仮想メモリが許容範囲内であるか否かを判定するための式であり、画面サイズ及び仮想メモリサイズによって判断される。
現在の全体リソース使用量(R(t))は、仮想化サーバ101が各仮想PC100,100…を起動させた場合に各仮想PC100,100…毎に算出されたリソース使用量の合計である。なお、仮想化サーバ101が各仮想PC100,100…を起動させる都度、設定情報検査手段103が、起動すべき各仮想PC100,100…におけるリソース使用量を算出し、各仮想PC100,100…のIDに対応付けて、算出したリソース使用量を記憶部13に格納しておく。また、設定情報検査手段103は、算出した各仮想PC100,100…におけるリソース使用量を、記憶部13に記憶してある現在の全体リソース使用量に加算する。
更に、仮想化サーバ101が各仮想PC100,100…をシャットダウンさせる都度、設定情報検査手段103が、シャットダウンされた仮想PC100,100…におけるリソース使用量を記憶部13から消去すると共に、このリソース使用量を、記憶部13に記憶してある現在の全体リソース使用量から減算する。このように、仮想化サーバ101が各仮想PC100,100…を起動又はシャットダウンさせる都度、現在の全体リソース使用量を更新することにより、逐次更新される現在の全体リソース使用量を正確に把握することができる。
画面サイズ(f1)は、端末装置2から取得した設定情報に含まれる画面サイズであり、例えば800×600ピクセル、1028×768ピクセル、1280×768ピクセル、1280×1024ピクセル等が代入される。仮想メモリサイズ(g1)は、1つの仮想PC100に対して予め設定されたサイズであってもよく、各仮想PC100,100…の使用環境を考慮したサイズであってもよく、例えば100MBから1GB等のうちから選択されて代入される。
また、画面サイズ及び仮想メモリサイズを、各仮想PC100,100…の起動後に、各ユーザによって変更できるように構成することもできる。ただし、各仮想PC100,100…の起動後に、各ユーザによって画面サイズ及び仮想メモリサイズを変更した場合、各仮想PC100,100…におけるリソース使用量を再度算出し直す必要がある。
各係数θ1,α1,β1は、情報処理装置1における仮想PC100,100…の起動可能数、仮想PC100,100…の使用環境等の各種の条件を考慮して設定すればよい。また、リソース条件式は、上記の式1のように仮想メモリが許容範囲内であるか否かの判定だけに限られず、各種のリソースにおいて許容範囲内であるかを判定できる計算式を用いることができる。
次に、パフォーマンス条件式として、
P(t)×θ2 ≧ f2×α2+g2×β2+h2×γ2 …(式2)
を用いる。
P(t):現在の全体パフォーマンス量、f2:メモリ使用優先度、
g2:スケジューリング優先度、h2:視覚効果優先度、θ2,α2,β2,γ2:係数
なお、上記の式2は、例えば、各仮想PC100,100…を起動させた場合に、各仮想PC100,100…に割り当てられる制御部10の使用率が許容範囲内であるか否かを判定するための式であり、メモリ使用優先度、スケジューリング優先度及び視覚効果優先度のうちの全部又は一部を用いて判断される。
現在の全体パフォーマンス量(P(t))は、仮想化サーバ101が各仮想PC100,100…を起動させた場合に各仮想PC100,100…毎に算出されたパフォーマンス量の合計である。なお、仮想化サーバ101が各仮想PC100,100…を起動させる都度、設定情報検査手段103が、起動すべき各仮想PC100,100…におけるパフォーマンス量を算出し、各仮想PC100,100…のIDに対応付けて、算出したパフォーマンス量を記憶部13に格納しておく。また、設定情報検査手段103は、算出した各仮想PC100,100…におけるパフォーマンス量を、記憶部13に記憶してある現在の全体パフォーマンス量に加算する。
更に、仮想化サーバ101が各仮想PC100,100…をシャットダウンさせる都度、設定情報検査手段103が、シャットダウンされた仮想PC100,100…におけるパフォーマンス量を記憶部13から消去すると共に、このパフォーマンス量を、記憶部13に記憶してある現在の全体リソース使用量から減算する。このように、仮想化サーバ101が各仮想PC100,100…を起動又はシャットダウンさせる都度、現在の全体パフォーマンス量を更新することにより、逐次更新される現在の全体パフォーマンス量を正確に把握することができる。
メモリ使用優先度(f2)は、各仮想PC100,100…に割り当てられるRAM12及び記憶部13による仮想メモリを各種のプログラムを実行するためのプログラム領域として利用することを優先する場合と、システムキャッシュ領域として利用することを優先する場合とにおいて、それぞれの優先度合いに割り当てられた優先度である。
スケジューリング優先度(g2)は、各仮想PC100,100…に割り当てられた制御部10がマルチプロセスの実行中に、画面上に表示されているプログラムに対して優先的に制御部10を割り当てる場合と、バックグラウンドで実行されているプログラムに対して優先的に制御部10を割り当てる場合とにおいて、それぞれの優先度合いに割り当てられた優先度である。
視覚効果優先度(h2)は、例えばGUIにおけるパフォーマンスを優先する場合と、見た目の画質等の視覚効果を優先する場合とにおいて、それぞれの優先度合いに割り当てられた優先度である。
なお、メモリ使用優先度、スケジューリング優先度及び視覚効果優先度は、端末装置2から取得した設定情報に含んでおいてもよく、端末装置2から取得した設定情報から取得した各優先度が式2に代入される。また、各仮想PC100,100…を起動させる際に、各端末装置2,2…を介して各ユーザによって選択されるように構成することができ、各ユーザによって選択された各優先度が式2に代入される。
また、メモリ使用優先度、スケジューリング優先度及び視覚効果優先度を、各仮想PC100,100…の起動後に、各ユーザによって変更できるように構成することもできる。ただし、各仮想PC100,100…の起動後に、各ユーザによってメモリ使用優先度、スケジューリング優先度又は視覚効果優先度を変更した場合、各仮想PC100,100…におけるパフォーマンス量を再度算出し直す必要がある。
各係数θ2,α2,β2,γ2は、情報処理装置1における仮想PC100,100…の起動可能数、仮想PC100,100…の使用環境等の各種の条件を考慮して設定すればよい。また、パフォーマンス条件式は、上記の式2のように制御部10の使用率が許容範囲内であるか否かの判定だけに限られず、例えば制御部10の処理速度、画像送信装置3の処理能力等のパフォーマンスにおいて許容範囲内であるかを判定できる計算式を用いることができる。
上述した処理により、設定情報検査手段103が、各端末装置2,2…から取得した設定情報が許容範囲内であると判定した場合、設定情報格納手段104は、各端末装置2,2…から取得した設定情報を一旦RAM12に格納する。なお、設定情報検査手段103が、各端末装置2,2…から取得した設定情報が許容範囲内でないと判定した場合、設定情報格納手段104は、その旨をRAM12に格納しておく。なお、デフォルト値として設定された設定情報がRAM12に予め格納されており、設定情報検査手段103によって設定情報が許容範囲内でないと判定された場合は、デフォルト値に基づいて仮想PC100が起動されることになる。
仮想PC選択手段105は、接続要求信号を送信してきた端末装置2に対応する仮想PC100(OSプログラム13a)を、仮想PC状態テーブル13cの登録内容に基づいて、未起動の仮想PC100のうちから選択する。なお、仮想PC選択手段105は、仮想PC状態テーブル13cに登録されている各仮想PC100,100…の状態情報を登録順に確認し、最初に検出した未起動の仮想PC100を選択すればよい。
また、仮想PC選択手段105は、複数の画像送信装置3,3…から空いている画像送信装置3を検索し、選択した仮想PC100に割り当てる。仮想PC起動手段(設定手段、割当手段)106は、端末装置2から取得し、設定情報格納手段104によってRAM12に格納された設定情報に基づいて、仮想PC選択手段105によって選択された未起動の仮想PC100(OSプログラム13a)を起動させると共に画像送信装置3の動作を開始させ、仮想PC100の動作環境を設定して端末装置2に割り当てる。
なお、端末装置2から取得した設定情報がRAM12に格納されておらず、端末装置2から取得した設定情報が許容範囲内でない旨を示す情報がRAM12に格納されている場合、仮想PC起動手段106は、デフォルト値としてRAM12に格納されている設定情報に基づいて、選択された未起動の仮想PC100を起動させると共に画像送信装置3の動作を開始させ、仮想PC100の動作環境を設定して端末装置2に割り当てる。
仮想PC画面送信手段107は、仮想PC100(制御部10)が処理に応じて出力する描画指示信号を、仮想PC100に割り当てられた画像送信装置3へ出力する。画像送信装置3は、取得した描画指示信号に基づき表示画面を描画するための画像信号を生成し、生成した画像信号を映像信号に符号化して端末装置2へ送信する。これにより、端末装置2はシンクライアントとして動作を開始する。
なお、仮想化サーバ101として動作する制御部10による画像送信装置3,3…の割り当て及び空いている画像送信装置3の探索は、例えば、テーブルを用いて行なうことができる。即ち、画像送信装置3,3…のそれぞれにID(識別情報、例えば番号)を付与しておき、各仮想PC100,100…を起動させた場合に、図3に示した仮想PC状態テーブル13cにおいて、対応する仮想PC100の状態情報を「起動中」に更新すると共に、対応する画像送信装置3のIDを登録するようにすればよい。
これにより、仮想PC状態テーブル13cにおいて起動中の仮想PC100,100…に対応してIDが登録された画像送信装置3,3…以外の画像送信装置3,3…は空いている画像送信装置3,3…であると判断することができる。また、空いている画像送信装置3,3…のIDを予めテーブルに登録しておき、各仮想PC100,100…に割り当てられた画像送信装置3,3…のIDをこのテーブルから削除しておくことにより、このテーブルに登録してあるIDの画像送信装置3,3…は空いている画像送信装置3,3…であると判断することができる。
ここで、本実施形態1のシンクライアントシステムでは、シンクライアントとして動作している各端末装置2,2…のユーザは、対応する仮想PC100,100…の動作を終了させたい場合、端末装置2の電源ボタンを押下する。動作中の端末装置2は、電源ボタンが押下された場合、対応する仮想PC100の動作終了(ログアウト)を要求するための切断要求信号を情報処理装置1へ送信し、シンクライアントとしての動作を終了する。
仮想化サーバ101として動作する制御部(切断要求取得手段)10が、シンクライアントとして動作している端末装置2から切断要求信号を取得した場合、仮想PC修復手段108(解消手段)が、この端末装置2に対応する起動中の仮想PC100(OSプログラム13a)を特定し、特定した仮想PC100からの端末装置2のログアウト処理を行ない、特定した仮想PC100の端末装置2への割り当てを解消する。これにより、仮想PC100を他の端末装置2,2…に開放することができ、仮想PC100,100…の有効利用を図ることができる。
また、仮想PC修復手段(初期化手段)108は、端末装置2のログアウト処理を行なった仮想PC100の動作を終了(シャットダウン)させ、シャットダウンさせた仮想PC100に、初期情報テンプレート(初期設定情報)13eのデータをロード(上書き)する。これにより、シャットダウンされた仮想PC100を、初期情報テンプレート13eによって規定された初期状態に修復(初期化)することができる。
このようにシャットダウンさせた仮想PC100を初期化することにより、各仮想PC100,100…における設定条件等を、各仮想PC100,100…の次の起動時においては反映させず、また、不要なデータをRAM12又は記憶部13に残さないことによりRAM12及び記憶部13を有効に利用することができる。
また、仮想PC修復手段108は、仮想PC選択手段105によって仮想PC100,100…に割り当てられていた画像送信装置3,3…を特定し、この画像送信装置3,3…も他の端末装置2,2…に開放する。これにより、画像送信装置3,3…の有効利用も図ることができる
上述したように、本実施形態1の情報処理装置1では、端末装置2,2…から仮想PC100,100…の起動を要求された場合、端末装置2,2…から取得した設定情報に基づく動作環境で起動させた仮想PC100,100…を提供することができる。よって、端末装置2,2…の各ユーザが既に使用しているPC等の装置における各種の設定情報を、煩雑な設定操作を行なうことなく、シンクライアントに対しても反映させることができるので、ユーザによる設定処理の手間は省け、利便性が向上する。従って、既に使用している装置に対する2台目としてシンクライアントシステムを利用したいユーザにおいても、高齢者及び主婦等のように端末装置の操作に不慣れなユーザにおいても、シンクライアントシステムを気軽に導入することができる。
また、本実施形態1の情報処理装置1では、端末装置2から取得した設定情報に基づいて仮想PC100を起動させる際に、他のユーザによって既に使用されている仮想PC100,100…に影響を与えることなく正常に動作可能であるか否かを判定する。従って、他の仮想PC100,100…に影響を与えない場合にのみ、端末装置2から取得した設定情報に基づいて仮想PC100を起動させるので、新たな仮想PC100が起動された場合であっても、他の仮想PC100,100…において急激なパフォーマンスの悪化、リソースの不足等を回避することができる。また、シンクライアントシステムを提供するサービス提供者側にとっても、システム全体としてのリソース面及びパフォーマンス面において安定したシステムを提供できると共に、ユーザ毎に異なる設定情報に基づく仮想PC100の環境を提供することができる。
また、本実施形態1の情報処理装置1では、端末装置2,2…から仮想PC100,100…の起動を要求された場合、ユーザ認証を行ない、正当な権限を有しないユーザからの接続を拒否することによって、セキュリティ面においても安全なシステムを提供することができる。また、本実施形態1の情報処理装置1では、端末装置2,2…から、対応する各仮想PC100,100…の利用の終了指示を取得した場合、各仮想PC100,100…の端末装置2,2…への割り当てを解消すると共に、各仮想PC100,100…を初期化するので、前のユーザによって設定された各種の設定条件等を次のユーザが利用する仮想PC100に残さない。また、前のユーザによって生成された不要なデータを消去することにより、RAM12及び記憶部13等のハードウェア資源を有効に利用することができる。
以下に、本実施形態1のシンクライアントシステムにおいて、情報処理装置1及び端末装置2間で行われる具体的な処理手順についてフローチャートに基づいて説明する。図7及び図8は端末装置2が情報処理装置1に仮想PC100の起動を要求した場合の処理手順を示すフローチャートである。なお、以下の処理は、図4に示した端末装置2のハードウェア各部によって実行されると共に、情報処理装置1のROM11又は記憶部13に格納してある制御プログラムに従って制御部10によって実行される。
端末装置2は、入出力インタフェース23を介して電源ボタンが押下されたことを検知したか否かを判断しており(S1)、電源ボタンを押下されたことを検知していないと判断した場合(S1:NO)、電源ボタンが押下されたことを検知したと判断するまで待機する。端末装置2は、電源ボタンが押下されたことを検知したと判断した場合(S1:YES)、端末装置2のユーザ情報、認証情報及び設定情報を含む接続要求信号を通信部21により情報処理装置1へ送信する(S2)。
情報処理装置1の制御部10(認証手段102)は、端末装置2から接続要求信号を受信した場合、受信した接続要求信号に含まれるユーザ情報及び認証情報に基づいてユーザ認証を行ない(S3)、受信した接続要求信号に対する接続の可否を判断する(S4)。制御部10は、受信した接続要求信号に対する接続が否であると判断した場合(S4:NO)、接続不可を、接続要求信号の送信元の端末装置2へ通知する(S5)。
端末装置2は、情報処理装置1から接続不可を通知された場合、情報処理装置1へ接続できない旨を示すメッセージをテレビ26に表示し(S6)、仮想PC100の起動を要求する処理を終了する。
一方、受信した接続要求信号に対する接続が可であると判断した場合(S4:YES)、制御部10(設定情報検査手段103)は、端末装置2から受信した接続要求信号に含まれる設定情報が、設定許容範囲テンプレート13dによって規定された制約条件に基づく許容範囲内であるか否かを判定する(S7)。設定情報が許容範囲内であると判断した場合(S7:YES)、制御部10(設定情報格納手段104)は、端末装置2から受信した設定情報をRAM12に一旦格納する(S8)。設定情報が許容範囲内でないと判断した場合(S7:NO)、制御部10は、ステップS8の処理をスキップする。なお、この場合、制御部10は、設定情報が許容範囲内でないと判断した旨を示す情報をRAM12に格納する。
制御部10(仮想PC選択手段105)は、仮想PC状態テーブル13cの登録内容に基づいて、接続要求信号を送信してきた端末装置2に対応する仮想PC100(OSプログラム13a)を選択する(S9)。そして、制御部10は、未だ割り当てられていない画像送信装置3を探索し(S10)、探索した画像送信装置3を選択した仮想PC100に割り当てる(S11)。このとき例えば、制御部10は、端末装置2…のIDと、対応する仮想PC100のIDと、画像送信装置3のIDとの対応関係を記憶しておき、端末装置2から各種の信号を受け付けた場合に、送信元の端末装置2のアドレス、ID等から対応する仮想PC100及び画像送信装置3を特定できるようにしておく。
制御部10(仮想PC起動手段106)は、ステップS8でRAM12に格納した設定情報に基づいて、ステップS11で割り当てた画像送信装置3を起動させると共に、ステップS9で選択した仮想PC100を起動する(S12)。なお、このとき、設定情報が許容範囲内でなく、端末装置2から取得した設定情報がRAM12に格納されていない場合には、制御部10は、デフォルト値としてRAM12に予め格納してある設定情報に基づいて、ステップS9で選択した仮想PC100を起動する。
制御部10は、仮想PC100を起動させた場合、端末装置2のテレビ26に初期画面を描画させるための画像信号を、仮想PC100に割り当てられた画像送信装置3を介して、接続要求信号の送信元の端末装置2へ送信する(S13)。端末装置2は、情報処理装置1から取得した画像信号に基づく初期画面をテレビ26に表示させ(S14)、シンクライアントとしての動作を開始し、仮想PC100の起動を要求する処理を終了する。
図9は端末装置2が情報処理装置1に仮想PC100の停止を要求した場合の処理手順を示すフローチャートである。なお、以下の処理は、図4に示した端末装置2のハードウェア各部によって実行されると共に、情報処理装置1のROM11又は記憶部13に格納してある制御プログラムに従って制御部10によって実行される。
端末装置2は、シンクライアントとしての動作を行ないつつ、入出力インタフェース23を介して電源ボタンが押下されたことを検知したか否かを判断しており(S21)、電源ボタンを押下されたことを検知していないと判断した場合(S21:NO)、電源ボタンが押下されたことを検知したと判断するまで待機する。端末装置2は、電源ボタンが押下されたことを検知したと判断した場合(S21:YES)、切断要求信号を通信部21により情報処理装置1へ送信する(S22)。
情報処理装置1の制御部10は、端末装置2から切断要求信号を受信した場合、切断要求信号の送信元の端末装置2に対応する仮想PC100を特定し(S23)、特定した仮想PCに対する端末装置2のログアウト処理を行なうと共に、特定した仮想PC100をシャットダウンさせる(S24)。また、制御部10(仮想PC修復手段108)は、シャットダウンさせた仮想PC100に、初期情報テンプレート13eのデータをロードさせて初期化し、他の端末装置2,2…に開放する(S25)。制御部10は、ステップS24でシャットダウンさせた仮想PC100に割り当てられていた画像送信装置3を特定し(S26)、特定した画像送信装置3も他の端末装置2,2…に開放し(S27)、仮想PC100の停止の処理を終了する。
上述した構成により、シンクライアントシステムにおいて、各端末装置2,2…のユーザ毎に異なる設定情報に基づく仮想PC100,100…の動作環境を、既に起動している他の仮想PC100,100…に影響を与えることなく提供することができる。よって、各ユーザは、煩雑な操作を行なうことなく、使い慣れた動作環境でシンクライアントと利用することができ、利便性を向上させることができる。
なお、上述した構成の情報処理装置1では、各端末装置2,2…から取得した設定情報に基づいて各仮想PC100,100…を起動させる際に、各設定情報が、設定許容範囲テンプレート13dに基づく許容範囲内であるか否かを判断し、許容範囲内でないと判断した場合、デフォルト値として予めRAM12に格納してある設定情報に基づいて仮想PC100,100…を起動させる。このとき、仮想PC100,100…を起動させた後に端末装置2のテレビ26において描画される初期画面に、「端末装置2から取得した設定情報に基づく環境での起動はできませんでした」のようなメッセージを含めてもよい。これにより、端末装置2,2…のユーザは、デフォルト値の設定情報に基づいて仮想PC100,100…が起動されたことを容易に把握することができる。
本実施形態1では、各端末装置2,2…が情報処理装置1へ送信する設定情報は、端末装置2,2…が、自身に接続された外部メモリから読み取る構成を例に説明した。これに対して、例えば、設定情報を端末装置2,2…の不揮発性メモリ(図示せず)に記憶させておく構成としてもよい。この場合、端末装置2,2…のユーザは、端末装置2,2…をシンクライアントとして起動させる都度、外部メモリを端末装置2,2…に挿入する必要がなくなる。
本実施形態1では、各端末装置2,2…から、対応する仮想PC100,100…の動作終了を要求された場合、対応する仮想PC100,100…をシャットダウンさせる構成を例に説明した。これに対して、例えば、各仮想PC100,100…に対する各端末装置2,2…のログアウト処理を行なった後、各仮想PC100,100…をシャットダウンさせずに、初期情報テンプレート13eに基づく初期化のみを行なって、ホットスタンバイ状態で待機させておく構成とすることもできる。この場合、各端末装置2,2…から仮想PC100,100…の起動を新たに要求された場合に、各仮想PC100,100…の起動時間を短縮することができる。
(実施形態2)
以下に、実施形態2に係るシンクライアントシステムについて説明する。なお、本実施形態2のシンクライアントシステムは、上述した実施形態1のシンクライアントシステムと同様の構成によって実現される。従って、本実施形態2のシンクライアントシステムにおける情報処理装置1及び端末装置2の構成についての詳細な説明は省略する。
本実施形態2の情報処理装置1は、図2に示した構成のほかに、記憶部13に、図10に示すような設定情報登録テーブル13fが格納されている。図10は設定情報登録テーブル13fの登録内容を示す模式図である。図10に示すように、設定情報登録テーブル13fは、シンクライアントシステムの利用を許可された各ユーザ毎に、ユーザを識別するためのユーザ情報、ユーザ認証に用いる認証情報、設定情報がそれぞれ対応付けて登録されている。設定情報登録テーブル13fの登録内容は、実施形態1で説明したように、各端末装置2,2…から取得した設定情報に基づいて起動した各仮想PC100,100…を情報処理装置1の制御部10(仮想PC修復手段108)がシャットダウンさせる都度、制御部10(仮想PC修復手段108)によって登録される。
また、設定情報登録テーブル13fの登録内容は、例えば、端末装置2,2…の各ユーザが、シンクライアントシステムの提供サービスを終了(退会)した場合に、端末装置2,2…を介して取得した退会要求信号に基づいて、制御部10によって削除される。また、情報処理装置1を操作するシンクライアントシステムの管理者が、各ユーザからの退会要求を受け付けた場合に、情報処理装置1を操作する都度、制御部10によって削除される。
なお、仮想PC修復手段108は、各仮想PC100,100…をシャットダウンさせた場合、対応する端末装置2,2…のユーザのユーザ情報及び認証情報が既に設定情報登録テーブル13fに登録されているか否かを検索する。そして、仮想PC修復手段108は、ユーザ情報及び認証情報が既に登録されている場合には、設定情報のみを更新し、まだ登録されていない場合には、ユーザ情報、認証情報及び設定情報の全てを登録する。
図11は仮想化サーバ101の機能構成を示す機能ブロック図である。本実施形態2の情報処理装置1において、制御部10は、記憶部13に格納してある仮想化サーバプログラム13bを実行することによって仮想化サーバ101として動作している場合、図6に示した構成のほかに、設定情報検索手段109の機能を実現する。
設定情報検索手段109は、認証手段102によって仮想PC100の起動が許可された端末装置2から受信した接続要求信号に含まれるユーザ情報及び認証情報を、設定情報登録テーブル13fのユーザ情報の欄及び認証情報の欄から検索することにより、このユーザ情報及び認証情報に対応する設定情報が設定情報登録テーブル13fに登録されているか否かを検索する。
設定情報検索手段109は、対応する設定情報が設定情報登録テーブル13fに登録されていると判断した場合、この設定情報を設定情報登録テーブル13fから読み出し、設定情報検査手段103へ送出する。なお、対応する設定情報が設定情報登録テーブル13fに登録されていないと判断した場合、設定情報検索手段109は、端末装置2,2…から取得した接続要求信号に含まれる設定情報を設定情報検査手段103へ送出する。
そして、設定情報検査手段103は、設定情報検索手段109から送出されてきた設定情報、具体的には、設定情報登録テーブル13fに登録されていた設定情報、又は端末装置2から取得した設定情報が、設定許容範囲テンプレート13dによって規定された制約条件に基づく許容範囲内であるか否かを判定する。
設定情報検査手段103、設定情報格納手段104、仮想PC選択手段105、仮想PC起動手段106及び仮想PC画面送信手段107が行なう処理は、実施形態1で説明した処理と同様である。なお、仮想PC修復手段108は、実施形態1で説明した処理のほかに、上述したように、各仮想PC100,100…をシャットダウンさせた場合に、端末装置2,2…のユーザのユーザ情報、認証情報及び設定情報の設定情報登録テーブル13fへの登録又は更新を行なう。
以下に、本実施形態2のシンクライアントシステムにおいて、情報処理装置1及び端末装置2間で行われる具体的な処理手順についてフローチャートに基づいて説明する。図12及び図13は端末装置2が情報処理装置1に仮想PC100の起動を要求した場合の処理手順を示すフローチャートである。なお、以下の処理は、図4に示した端末装置2のハードウェア各部によって実行されると共に、情報処理装置1のROM11又は記憶部13に格納してある制御プログラムに従って制御部10によって実行される。
端末装置2は、入出力インタフェース23を介して電源ボタンが押下されたことを検知したか否かを判断しており(S31)、電源ボタンを押下されたことを検知していないと判断した場合(S31:NO)、電源ボタンが押下されたことを検知したと判断するまで待機する。端末装置2は、電源ボタンが押下されたことを検知したと判断した場合(S31:YES)、端末装置2のユーザ情報、認証情報及び設定情報を含む接続要求信号を通信部21により情報処理装置1へ送信する(S32)。
情報処理装置1の制御部10(認証手段102)は、端末装置2から接続要求信号を受信した場合、受信した接続要求信号に含まれるユーザ情報及び認証情報に基づいてユーザ認証を行ない(S33)、受信した接続要求信号に対する接続の可否を判断する(S34)。制御部10は、受信した接続要求信号に対する接続が否であると判断した場合(S34:NO)、接続不可を、接続要求信号の送信元の端末装置2へ通知する(S35)。
端末装置2は、情報処理装置1から接続不可を通知された場合、情報処理装置1へ接続できない旨を示すメッセージをテレビ26に表示し(S36)、仮想PC100の起動を要求する処理を終了する。
一方、受信した接続要求信号に対する接続が可であると判断した場合(S34:YES)、制御部10(設定情報検索手段109)は、端末装置2から受信した接続要求信号に含まれる設定情報が、設定情報登録テーブル13fに登録されているか否かを判断する(S37)。制御部10は、設定情報が設定情報登録テーブル13fに登録されていると判断した場合(S37:YES)、設定情報登録テーブル13fから設定情報を読み出し(S38)、設定情報が設定情報登録テーブル13fに登録されていないと判断した場合(S37:NO)、ステップS38の処理をスキップする。
次に、制御部10(設定情報検査手段103)は、設定情報登録テーブル13fから読み出した設定情報又は端末装置2から受信した接続要求信号に含まれる設定情報が、設定許容範囲テンプレート13dによって規定された制約条件に基づく許容範囲内であるか否かを判定する(S39)。設定情報が許容範囲内であると判断した場合(S39:YES)、制御部10(設定情報格納手段104)は、設定情報登録テーブル13fから読み出した設定情報又は端末装置2から受信した設定情報をRAM12に一旦格納する(S40)。設定情報が許容範囲内でないと判断した場合(S39:NO)、制御部10は、ステップS40の処理をスキップする。なお、この場合、制御部10は、設定情報が許容範囲内でないと判断した旨を示す情報をRAM12に格納する。
制御部10(仮想PC選択手段105)は、仮想PC状態テーブル13cの登録内容に基づいて、接続要求信号を送信してきた端末装置2に対応する仮想PC100(OSプログラム13a)を選択する(S41)。そして、制御部10は、未だ割り当てられていない画像送信装置3を探索し(S42)、探索した画像送信装置3を選択した仮想PC100に割り当てる(S43)。
制御部10(仮想PC起動手段106)は、ステップS40でRAM12に格納した設定情報に基づいて、ステップS43で割り当てた画像送信装置3を起動させると共に、ステップS41で選択した仮想PC100を起動する(S44)。なお、このとき、設定情報が許容範囲内でなく、端末装置2から取得した設定情報がRAM12に格納されていない場合には、制御部10は、デフォルト値としてRAM12に予め格納してある設定情報に基づいて、ステップS41で選択した仮想PC100を起動する。
制御部10は、仮想PC100を起動させた場合、端末装置2のテレビ26に初期画面を描画させるための画像信号を、仮想PC100に割り当てられた画像送信装置3を介して、接続要求信号の送信元の端末装置2へ送信する(S45)。端末装置2は、情報処理装置1から取得した画像信号に基づく初期画面をテレビ26に表示させ(S46)、シンクライアントとしての動作を開始し、仮想PC100の起動を要求する処理を終了する。
図14は端末装置2が情報処理装置1に仮想PC100の停止を要求した場合の処理手順を示すフローチャートである。なお、以下の処理は、図4に示した端末装置2のハードウェア各部によって実行されると共に、情報処理装置1のROM11又は記憶部13に格納してある制御プログラムに従って制御部10によって実行される。
端末装置2は、シンクライアントとしての動作を行ないつつ、入出力インタフェース23を介して電源ボタンが押下されたことを検知したか否かを判断しており(S51)、電源ボタンを押下されたことを検知していないと判断した場合(S51:NO)、電源ボタンが押下されたことを検知したと判断するまで待機する。端末装置2は、電源ボタンが押下されたことを検知したと判断した場合(S51:YES)、切断要求信号を通信部21により情報処理装置1へ送信する(S52)。
情報処理装置1の制御部10は、端末装置2から切断要求信号を受信した場合、切断要求信号の送信元の端末装置2に対応する仮想PC100を特定し(S53)、特定した仮想PC100における設定情報を、対応する端末装置2のユーザ情報及び認証情報に対応付けて設定情報登録テーブル13fに登録する(S54)。制御部10は、ステップS53で特定した仮想PCに対する端末装置2のログアウト処理を行なうと共に、特定した仮想PC100をシャットダウンさせる(S55)。
制御部10(仮想PC修復手段108)は、シャットダウンさせた仮想PC100に、初期情報テンプレート13eのデータをロードさせて初期化し、他の端末装置2,2…に開放する(S56)。制御部10は、ステップS55でシャットダウンさせた仮想PC100に割り当てられていた画像送信装置3を特定し(S57)、特定した画像送信装置3も他の端末装置2,2…に開放し(S58)、仮想PC100の停止の処理を終了する。
上述した構成により、シンクライアントシステムにおいて、各端末装置2,2…のユーザ毎に異なる設定情報に基づく仮想PC100,100…の動作環境を提供することができる。また、各端末装置2,2…から取得した設定情報を設定情報登録テーブル13fにおいて管理しておくことにより、各ユーザは、端末装置2,2…をシンクライアントとして起動させる都度、外部メモリを端末装置2,2…に挿入する必要がなく、利便性をより向上させることができる。
上述した実施形態2の情報処理装置1は、設定情報登録テーブル13fに設定情報を登録しておき、次回に各端末装置2,2…が仮想PC100,100…の起動を要求してきた場合に、設定情報登録テーブル13fに登録してある設定情報を用いて仮想PC100,100…を起動させる構成であった。これに対して、例えば、設定情報の代わりに、仮想PC100,100…におけるメモリのダンプイメージを設定情報登録テーブル13fに登録しておく構成としてもよい。
この場合、認証手段102によって認証された端末装置2から受信した接続要求信号に含まれるユーザ情報及び認証情報に対応するダンプイメージが設定情報検索手段109によって設定情報登録テーブル13fから読み出される。そして、仮想PC起動手段106が、RAM12に予め格納してあるデフォルト値の設定情報に基づいて仮想PC100を起動させ、起動させた仮想PC100に、設定情報登録テーブル13fから読み出したダンプイメージをロードすればよい。
なお、この場合、仮想PC100を起動させた後に、ダンプイメージをロードするため、仮想PC100を起動させる際の設定情報が、設定許容範囲テンプレート13dによって規定される許容範囲内であるか否かを判定する処理を行なえない。しかし、設定情報登録テーブル13fに登録される各ダンプイメージに対応して、各ダンプイメージがロードされた状態の仮想PC100におけるリソース使用量及びパフォーマンス量を設定情報登録テーブル13fに登録しておくことにより、設定情報登録テーブル13fに登録されたダンプイメージに基づく動作環境で仮想PC100を動作させた場合に、他の仮想PC100,100…に影響を与えるか否かを検査することができる。
上述した実施形態1,2の情報処理装置1では、各仮想PC100,100…をシャットダウンさせた場合に、初期情報テンプレート13eに基づいて各仮想PC100,100…を初期化する構成であった。このような構成により、各端末装置2,2…に対するログアウト処理を行なった後に、各仮想PC100,100…及び画像送信装置3,3…を、次にログインしてきた各端末装置2,2…に割り当てることができ、ハードウェア資源をより効率よく利用することができる。
これに対して、例えば、各端末装置2,2…からシンクライアントシステムの提供サービスを終了(退会)要求があった場合に、初期情報テンプレート13eに基づいて各仮想PC100,100…を初期化する構成とすることもできる。この場合、シンクライアントシステムの提供サービスを開始(入会)し、一度仮想PC100を起動させた場合に、シンクライアントシステムの提供サービスを終了(退会)するまで、仮想PC100及び画像送信装置3を1つの端末装置2に占有させることができる。また、この場合、端末装置2,2…毎に対応する仮想PC100,100…及び画像送信装置3,3…が確保されていることになるので、端末装置2,2…の各ユーザは、いつでもシンクライアントを利用することが可能となる。
上述した実施形態1,2では、各端末装置2,2…が情報処理装置1に仮想PC100,100…の起動を要求する際に情報処理装置1へ送信する設定情報は、ユーザ情報及び認証情報と共に接続要求信号として情報処理装置1へ送信する構成を例に説明した。
これに対して、例えば、ユーザ情報及び認証情報と、設定情報とを別々に情報処理装置1へ送信する構成とすることもできる。具体的には、各端末装置2,2…が仮想PC100,100…の起動を要求する際に、ユーザ情報及び認証情報のみを含む接続要求信号を情報処理装置1へ送信し、ユーザ認証の結果、情報処理装置1への接続が可であると判断された場合、端末装置2から情報処理装置1へ設定情報のみが送信される構成とすることができる。また、このような構成において、設定情報を暗号化する構成とした場合、端末装置2から情報処理装置1へ送信される設定情報が改ざんされることを防止できる。なお、外部メモリに記憶する際に、設定情報を暗号化しておいてもよい。
また、設定情報を暗号化して情報処理装置1へ送信する場合、設定情報を復号するための鍵を、設定情報とは別に端末装置2から情報処理装置1へ送信する構成とすることにより、情報処理装置1において鍵を保持・管理する必要がなく、情報処理装置1に対する不正な侵入を排除することができ、シンクライアントシステムのサーバ装置として安定した運用が可能となる。
更に、情報処理装置1において、各端末装置2,2…から取得した設定情報が改ざんされたか否かを検知する構成を備えた場合には、設定情報を更に安全に取り扱うことができる。
上述した実施形態1の情報処理装置1は、各端末装置2,2…から取得した設定情報に基づいて仮想PC100,100…を起動させる構成である。上述した実施形態2の情報処理装置1は、各端末装置2,2…から取得した設定情報に基づいて仮想PC100,100…を起動させると共に、各端末装置2,2…から取得した設定情報を登録しておく構成である。このような構成に加え、仮想PC100,100…が動作中に変更された各種の設定情報を、対応する端末装置2,2…へ送信し、端末装置2,2…のそれぞれに接続されている外部メモリに格納(上書き)させる、又は設定情報登録テーブル13fに登録してある設定情報に上書きさせる構成とすることもできる。これにより、各ユーザは、シンクライアントを利用中に変更した各設定情報を、次回にシンクライアントを利用する際にも反映させることができる。

Claims (10)

  1. ネットワークを介して外部装置と接続され、各種処理を実行する実行手段を備える情報処理装置であって、
    前記外部装置から、利用者を特定するための利用者情報及び該利用者を認証するための認証情報を含む接続要求を取得する接続要求取得手段と、
    前記外部装置から、前記実行手段が実行する各種処理の動作環境に関する設定情報を取得する設定情報取得手段と、
    前記接続要求取得手段が取得した接続要求に含まれる利用者情報及び認証情報に基づいて、前記接続要求に対する接続の可否を判定する認証手段と、
    該認証手段が接続可であると判定した場合、前記設定情報取得手段が取得した設定情報が、前記実行手段が実行する各種処理の動作環境に対して予め規定された制約条件に基づく許容範囲内であるか否かを判定する判定手段と、
    該判定手段が許容範囲内であると判定した場合、前記設定情報取得手段が取得した設定情報に基づいて、前記実行手段が実行する各種処理の動作環境を設定し、前記判定手段が許容範囲内でないと判定した場合、所定の設定情報に基づいて、前記実行手段が実行する各種処理の動作環境を設定する設定手段と、
    該設定手段が設定した動作環境を、前記外部装置に対して割り当てる割当手段と
    前記設定手段が前記所定の設定情報に基づいて動作環境を設定した場合に前記外部装置に通知する手段と
    を備えることを特徴とする情報処理装置。
  2. 前記外部装置から、前記割当手段によって割り当てられた動作環境で実行される処理に対する操作を示す操作情報を取得する手段と、
    取得した操作情報に基づいて、画面を描画するための画像信号を生成する手段と、
    生成された画像信号を前記外部装置へ送信する手段と
    を備えることを特徴とする請求項1に記載の情報処理装置。
  3. 前記外部装置から、前記割当手段によって割り当てられた動作環境で実行される処理の終了を示す切断要求を取得する切断要求取得手段と、
    該切断要求取得手段が切断要求を取得した場合、前記割当手段によって割り当てられた動作環境の前記外部装置への割り当てを解消する解消手段と、
    該解消手段によって前記外部装置への割り当てを解消された動作環境を、所定の初期設定情報に基づいて初期化する初期化手段と
    を備えることを特徴とする請求項1又は2に記載の情報処理装置。
  4. 各種処理を実行する実行手段を備える中央装置と、該中央装置とネットワークを介して接続される端末装置とを含む情報処理システムであって、
    前記端末装置は、
    利用者を特定するための利用者情報及び該利用者を認証するための認証情報を含む接続要求を前記中央装置へ送信する手段と、
    前記中央装置の実行手段が実行する各種処理の動作環境に関する設定情報を前記中央装置へ送信する手段とを備え、
    前記中央装置は、
    前記端末装置から前記接続要求を取得する接続要求取得手段と、
    前記端末装置から前記設定情報を取得する設定情報取得手段と、
    前記接続要求取得手段が取得した接続要求に含まれる利用者情報及び認証情報に基づいて、前記接続要求に対する接続の可否を判定する認証手段と、
    該認証手段が接続可であると判定した場合、前記設定情報取得手段が取得した設定情報が、前記実行手段が実行する各種処理の動作環境に対して予め規定された制約条件に基づく許容範囲内であるか否かを判定する判定手段と、
    該判定手段が許容範囲内であると判定した場合、前記設定情報取得手段が取得した設定情報に基づいて、前記実行手段が実行する各種処理の動作環境を設定し、前記判定手段が許容範囲内でないと判定した場合、所定の設定情報に基づいて、前記実行手段が実行する各種処理の動作環境を設定する設定手段と、
    該設定手段が設定した動作環境を、前記端末装置に対して割り当てる割当手段と
    前記設定手段が前記所定の設定情報に基づいて動作環境を設定した場合に前記端末装置に通知する手段とを備えること
    を特徴とする情報処理システム。
  5. コンピュータに、ネットワークを介して外部装置と接続させ、各種処理を実行する実行手段を動作させるためのコンピュータプログラムであって、
    前記コンピュータに、
    前記外部装置から取得した、利用者を特定するための利用者情報及び該利用者を認証するための認証情報を含む接続要求に含まれる利用者情報及び認証情報に基づいて、前記接続要求に対する接続の可否を判定する認証ステップと、
    該認証ステップで接続可であると判定された場合、前記外部装置から取得した、前記実行手段が実行する各種処理の動作環境に関する設定情報が、前記実行手段が実行する各種処理の動作環境に対して予め規定された制約条件に基づく許容範囲内であるか否かを判定する判定ステップと、
    該判定ステップで許容範囲内であると判定された場合、前記設定情報に基づいて、前記実行手段が実行する各種処理の動作環境を設定し、前記判定ステップで許容範囲内でないと判定された場合、所定の設定情報に基づいて、前記実行手段が実行する各種処理の動作環境を設定する設定ステップと、
    該設定ステップで設定された動作環境を、前記外部装置に対して割り当てる割当ステップと
    前記設定ステップで前記所定の設定情報に基づいて動作環境を設定した場合に前記外部装置に通知するステップと
    を実行させるためのコンピュータプログラム。
  6. 前記コンピュータに、
    前記外部装置から取得した、前記割当ステップで割り当てられた動作環境で実行される処理に対する操作を示す操作情報に基づいて、画面を描画するための画像信号を生成するステップと、
    生成された画像信号を前記外部装置へ送信するステップと
    を実行させるための請求項5に記載のコンピュータプログラム。
  7. 前記外部装置から、前記割当ステップで割り当てられた動作環境で実行される処理の終了を示す切断要求を取得した場合、前記割当ステップで割り当てられた動作環境の前記外部装置への割り当てを解消する解消ステップと、
    該解消ステップで前記外部装置への割り当てを解消された動作環境を、所定の初期設定情報に基づいて初期化する初期化ステップと
    を実行させるための請求項5又は6に記載のコンピュータプログラム。
  8. ネットワークを介して外部装置と接続され、各種処理を実行する実行手段を備える情報処理装置による情報処理方法であって、
    前記情報処理装置が、前記外部装置から、利用者を特定するための利用者情報及び該利用者を認証するための認証情報を含む接続要求を取得する接続要求取得ステップと、
    前記情報処理装置が、前記外部装置から、前記実行手段が実行する各種処理の動作環境に関する設定情報を取得する設定情報取得ステップと、
    前記情報処理装置が、前記接続要求取得ステップで取得した接続要求に含まれる利用者情報及び認証情報に基づいて、前記接続要求に対する接続の可否を判定する認証ステップと、
    前記情報処理装置が、前記認証ステップで接続可であると判定した場合、前記設定情報取得ステップで取得した設定情報について前記実行手段が実行する各種処理の動作環境に対して予め規定された制約条件に基づく許容範囲内であるか否かを判定する判定ステップと、
    前記情報処理装置が、前記判定ステップで許容範囲内であると判定した場合、前記設定情報取得ステップで取得した設定情報に基づいて、前記実行手段が実行する各種処理の動作環境を設定し、前記判定ステップで許容範囲内でないと判定した場合、所定の設定情報に基づいて、前記実行手段が実行する各種処理の動作環境を設定する設定ステップと、
    前記情報処理装置が、前記設定ステップで設定された動作環境を、前記外部装置に対して割り当てる割当ステップと
    前記設定ステップで前記所定の設定情報に基づいて動作環境を設定した場合に前記外部装置に通知するステップと
    を含むことを特徴とする情報処理方法。
  9. 前記情報処理装置が、前記外部装置から、前記割当ステップで割り当てられた動作環境で実行される処理に対する操作を示す操作情報を取得するステップと、
    前記情報処理装置が、取得した操作情報に基づいて、画面を描画するための画像信号を生成するステップと、
    前記情報処理装置が、生成された画像信号を前記外部装置へ送信するステップと
    を含むことを特徴とする請求項8に記載の情報処理方法。
  10. 前記情報処理装置が、前記外部装置から、前記割当ステップで割り当てられた動作環境で実行される処理の終了を示す切断要求を取得する切断要求取得ステップと、
    前記情報処理装置が、前記切断要求取得ステップで切断要求を取得した場合、前記割当ステップで割り当てられた動作環境の前記外部装置への割り当てを解消する解消ステップと、
    前記情報処理装置が、前記解消ステップで前記外部装置への割り当てを解消された動作環境を、所定の初期設定情報に基づいて初期化する初期化ステップと
    を含むことを特徴とする請求項8又は9に記載の情報処理方法。
JP2009550411A 2008-01-25 2008-01-25 情報処理装置、情報処理システム、コンピュータプログラム及び情報処理方法 Expired - Fee Related JP5365526B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2008/051102 WO2009093333A1 (ja) 2008-01-25 2008-01-25 情報処理装置、情報処理システム、コンピュータプログラム及び情報処理方法

Publications (2)

Publication Number Publication Date
JPWO2009093333A1 JPWO2009093333A1 (ja) 2011-05-26
JP5365526B2 true JP5365526B2 (ja) 2013-12-11

Family

ID=40900851

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009550411A Expired - Fee Related JP5365526B2 (ja) 2008-01-25 2008-01-25 情報処理装置、情報処理システム、コンピュータプログラム及び情報処理方法

Country Status (3)

Country Link
US (1) US8560817B2 (ja)
JP (1) JP5365526B2 (ja)
WO (1) WO2009093333A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010061435A1 (ja) * 2008-11-25 2010-06-03 富士通株式会社 代替処理判定方法、代替処理判定装置、プログラム、及び携帯電話端末
JP2011160300A (ja) * 2010-02-02 2011-08-18 Fujitsu Ltd ルータ、ルーティング方法、ルーティングプログラム、情報処理装置、仮想マシン構築方法および仮想マシン構築プログラム
JP2012075070A (ja) * 2010-09-30 2012-04-12 Fujitsu Ltd 管理プログラム、装置及び方法、ルータ、情報処理プログラム及び方法
WO2014045453A1 (ja) * 2012-09-24 2014-03-27 富士通株式会社 環境変数保存方法、情報処理装置およびプログラム
US10628186B2 (en) * 2014-09-08 2020-04-21 Wirepath Home Systems, Llc Method for electronic device virtualization and management
JP6381492B2 (ja) * 2015-07-27 2018-08-29 三菱電機株式会社 計算機システム
JP7027027B2 (ja) * 2016-03-17 2022-03-01 キヤノン株式会社 情報処理装置、制御方法、およびそのプログラム

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08194605A (ja) * 1995-01-17 1996-07-30 Hitachi Ltd 情報処理装置
JP2002049488A (ja) * 2000-08-02 2002-02-15 Seiko Instruments Inc 情報処理装置、設定支援装置、およびコンピュータ読み取り可能な記録媒体
JP2004318544A (ja) * 2003-04-17 2004-11-11 Mitsubishi Electric Corp 情報処理装置
JP2005204174A (ja) * 2004-01-16 2005-07-28 Seiko Epson Corp 画像形成装置、及び記憶媒体
JP2007179108A (ja) * 2005-12-26 2007-07-12 Casio Comput Co Ltd コンピュータシステム、サーバ装置、端末装置
JP2007188139A (ja) * 2006-01-11 2007-07-26 Hitachi Ltd サーバ装置およびレンタルサーバシステム
JP2007193429A (ja) * 2006-01-17 2007-08-02 Ricoh Co Ltd ネットワークコンピューティングシステム、通信方法、画像投影装置、画像入出力装置および画面データ取得方法
JP2007272449A (ja) * 2006-03-30 2007-10-18 Casio Comput Co Ltd コンピュータシステムのサーバ装置
JP2007310901A (ja) * 2004-04-12 2007-11-29 Hitachi Ltd コンピュータシステム

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001282747A (ja) 2000-03-29 2001-10-12 Matsushita Electric Works Ltd ユーザー認証機能付きネットワーク端末
US7110516B2 (en) * 2004-02-18 2006-09-19 Comdial Corporation Dynamic telephone configuration
US20060143617A1 (en) * 2004-12-29 2006-06-29 Knauerhase Robert C Method, apparatus and system for dynamic allocation of virtual platform resources
US8191008B2 (en) * 2005-10-03 2012-05-29 Citrix Systems, Inc. Simulating multi-monitor functionality in a single monitor environment
US20070174429A1 (en) * 2006-01-24 2007-07-26 Citrix Systems, Inc. Methods and servers for establishing a connection between a client system and a virtual machine hosting a requested computing environment
US9213513B2 (en) * 2006-06-23 2015-12-15 Microsoft Technology Licensing, Llc Maintaining synchronization of virtual machine image differences across server and host computers
US20080301770A1 (en) * 2007-05-31 2008-12-04 Kinder Nathan G Identity based virtual machine selector

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08194605A (ja) * 1995-01-17 1996-07-30 Hitachi Ltd 情報処理装置
JP2002049488A (ja) * 2000-08-02 2002-02-15 Seiko Instruments Inc 情報処理装置、設定支援装置、およびコンピュータ読み取り可能な記録媒体
JP2004318544A (ja) * 2003-04-17 2004-11-11 Mitsubishi Electric Corp 情報処理装置
JP2005204174A (ja) * 2004-01-16 2005-07-28 Seiko Epson Corp 画像形成装置、及び記憶媒体
JP2007310901A (ja) * 2004-04-12 2007-11-29 Hitachi Ltd コンピュータシステム
JP2007179108A (ja) * 2005-12-26 2007-07-12 Casio Comput Co Ltd コンピュータシステム、サーバ装置、端末装置
JP2007188139A (ja) * 2006-01-11 2007-07-26 Hitachi Ltd サーバ装置およびレンタルサーバシステム
JP2007193429A (ja) * 2006-01-17 2007-08-02 Ricoh Co Ltd ネットワークコンピューティングシステム、通信方法、画像投影装置、画像入出力装置および画面データ取得方法
JP2007272449A (ja) * 2006-03-30 2007-10-18 Casio Comput Co Ltd コンピュータシステムのサーバ装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CSNH200600089008; 清水 孝弘,他5名著: 'C&Cユーザーフォーラム&iEXPO2005特集 〜技術コンバージェンスによるユビキタス時代の先進ソ' NEC技報 第59巻,第1号, 20060228, p.37-40., 日本電気株式会社 *
JPN6012041385; 清水 孝弘,他5名著: 'C&Cユーザーフォーラム&iEXPO2005特集 〜技術コンバージェンスによるユビキタス時代の先進ソ' NEC技報 第59巻,第1号, 20060228, p.37-40., 日本電気株式会社 *

Also Published As

Publication number Publication date
WO2009093333A1 (ja) 2009-07-30
US20100287362A1 (en) 2010-11-11
JPWO2009093333A1 (ja) 2011-05-26
US8560817B2 (en) 2013-10-15

Similar Documents

Publication Publication Date Title
JP5365526B2 (ja) 情報処理装置、情報処理システム、コンピュータプログラム及び情報処理方法
KR101062244B1 (ko) 정보 처리 장치, 정보 처리 시스템 및 정보 처리 장치의제어 방법
US9167020B2 (en) Web-browser based desktop and application remoting solution
KR102102168B1 (ko) 가상 데스크탑 서비스 장치 및 방법
US20130027744A1 (en) Apparatus, system, and method of output distribution, and recording medium storing output distribution control program
US20100262681A1 (en) Remote wake-up method, host to be remotely awaked, and wake-up management server
JP2008090493A (ja) 情報処理システム、端末、情報処理装置、管理サーバ
US20120096465A1 (en) Image forming apparatus, log management method, and storage medium
CN101567951A (zh) 信息处理装置、复合机以及复合机的外部认证系统
KR102102169B1 (ko) 가상 데스크탑 서비스를 위한 장치 및 가상 데스크탑 서비스 방법
US20080060059A1 (en) Data processor, peripheral device, and recording medium used herewith
US20180270246A1 (en) Information processing system, information processing apparatus, and information processing method
JP2018005281A (ja) 情報処理装置、その制御方法、及びプログラム
JP7200619B2 (ja) 情報処理システム、情報処理方法、情報処理装置、及びプログラム
JP2017228059A (ja) 情報処理システム及び認可方法
US9549019B2 (en) Managing a logical client for a virtual machine
KR20190002890A (ko) 다중 사용자용 데스크탑 컴퓨터 시스템
TWI480740B (zh) 建立客戶機主機連接之技術
JP7566207B2 (ja) 組み込み機器及び表示システム
WO2023199387A1 (ja) 組み込み機器及び表示システム
JP4602093B2 (ja) 通信装置、通信システム、通信装置の制御方法、プログラム及び記録媒体
JP6155289B2 (ja) ネットワーク接続装置、ネットワーク接続方法、およびネットワーク接続システム
CN113569220A (zh) 一种cam卡自动识别方法、识别装置及显示设备
CN118260743A (zh) 一种特权操作执行方法和电子设备
JP2021073565A (ja) 画像形成装置、画像形成装置の制御方法、及びプログラム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120814

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120928

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121113

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121218

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130212

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130813

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130826

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees