(57)【要約】【課題】仮想マシンと接続されている端末装置が外部装置を見つけた後、仮想マシンが外部装置を使用するという設定を仮想マシンが行った場合、仮想マシンと接続されている他の端末装置が外部装置を見つけたとき、仮想マシンが外部装置を使用するという設定を再び仮想マシンが行うことなく、仮想マシンが外部装置を使用できるようにする。【解決手段】仮想マシン３０が端末装置１０Ａと接続されて、端末装置１０Ａが外部装置４０を見つけると、外部装置４０を使用する装置がユーザーにより選択される。仮想マシン３０が選択されると、仮想マシン３０が外部装置４０を使用する設定とする。端末装置１０Ａと仮想マシン３０との接続が切断された後、端末装置１０Ｂが仮想マシン３０に接続され、端末装置１０Ｂが外部装置４０を見つけると、設定に応じて仮想マシン３０が外部装置４０を使用する。【選択図】図１
2017027385.tif 000002
【特許請求の範囲】
【請求項１】
仮想マシンが第１端末装置と接続されている場合、前記第１端末装置が外部装置を見つけると、前記仮想マシンが前記外部装置を使用するという設定を前記仮想マシンが行い、前記第１端末装置とは異なる第２端末装置と前記仮想マシンとが接続された場合、前記第２端末装置が前記外部装置を見つけると前記設定により前記外部装置を前記仮想マシンが使用する
情報処理システム。
【請求項２】
仮想マシンに接続された第１端末装置が外部装置を見つけた場合、前記外部装置を使用する装置を前記第１端末装置のユーザーに選択させる選択手段と、
前記選択手段で前記仮想マシンが選択された場合、前記外部装置を使用する装置を前記仮想マシンに設定する設定手段と、
前記仮想マシンに接続されている前記第１端末装置又は前記仮想マシンに接続されている第２端末装置が、前記設定が行われた後に前記外部装置を見つけた場合、前記設定により前記外部装置を使用する前記仮想マシンと
を備える情報処理システム。
【請求項３】
前記仮想マシンと接続されている前記第１端末装置又は前記第２端末装置と前記仮想マシンとの接続が切断された場合、当該接続が切断された前記第１端末装置又は前記第２端末装置が前記外部装置を使用する
請求項２に記載の情報処理システム。
【請求項４】
仮想マシンと接続する第１接続手段と、
外部装置と接続する第２接続手段と、
前記第１接続手段により前記仮想マシンに接続した場合、前記仮想マシンが前記外部装置を使用するという設定を前記仮想マシンから取得すると、前記仮想マシンが前記外部装置を使用するという設定を再度行うことなく、前記第２接続手段により自装置に接続した前記外部装置を前記仮想マシンに使用させる制御手段と
を備える端末装置。
【請求項５】
コンピュータを、
仮想マシンと接続する第１接続手段と、
外部装置と接続する第２接続手段と、
前記第１接続手段により前記仮想マシンに接続した場合、前記仮想マシンが前記外部装置を使用するという設定を前記仮想マシンから取得すると、前記仮想マシンが前記外部装置を使用するという設定を再度行うことなく、前記第２接続手段により自装置に接続した前記外部装置を前記仮想マシンに使用させる制御手段
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム、端末装置及びプログラムに関する。
【背景技術】
【０００２】
ブレードサーバーとクライアントとをネットワークを介して接続し、クライアントに接続されたデバイスをブレードサーバーから利用可能にする発明として特許文献１に開示されたシステムがある。このシステムにおいては、クライアントは、フィルタドライバを備え、フィルタドライバは、デバイスとクライアントのアプリケーションとの間のデータの送受信と、デバイスとブレードサーバーとの間のデータの送受信とを排他的に制御する。特許文献１のシステムによれば、クライアントに接続されたデバイスをサーバーで実現する仮想マシンから利用することもできる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−６５６７９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
一般的に、仮想マシンと接続されている端末装置が、当該端末装置に接続可能な外部装置を見つけた後、当該仮想マシンが当該外部装置を使用するという設定を当該仮想マシンが行った場合、当該仮想マシンと接続されている他の端末装置が当該外部装置を見つけたとき、既に仮想マシンで行われた設定があるにも関わらず、当該仮想マシンが当該外部装置を使用するという設定を再び当該仮想マシンが行っていた。
【０００５】
本発明は、仮想マシンと接続されている端末装置が外部装置を見つけた後、当該仮想マシンが当該外部装置を使用するという設定を当該仮想マシンが行った場合、当該仮想マシンと接続されている他の端末装置が当該外部装置を見つけたとき、当該仮想マシンが当該外部装置を使用するという設定を再び当該仮想マシンが行うことなく、当該仮想マシンが当該外部装置を使用できるようにすることを目的とする。
【課題を解決するための手段】
【０００６】
本発明の請求項１に係る情報処理システムは、仮想マシンが第１端末装置と接続されている場合、前記第１端末装置が外部装置を見つけると、前記仮想マシンが前記外部装置を使用するという設定を前記仮想マシンが行い、前記第１端末装置とは異なる第２端末装置と前記仮想マシンとが接続された場合、前記第２端末装置が前記外部装置を見つけると前記設定により前記外部装置を前記仮想マシンが使用する。
【０００７】
本発明の請求項２に係る情報処理システムは、仮想マシンに接続された第１端末装置が外部装置を見つけた場合、前記外部装置を使用する装置を前記第１端末装置のユーザーに選択させる選択手段と、前記選択手段で前記仮想マシンが選択された場合、前記外部装置を使用する装置を前記仮想マシンに設定する設定手段と、前記仮想マシンに接続されている前記第１端末装置又は前記仮想マシンに接続されている第２端末装置が、前記設定が行われた後に前記外部装置を見つけた場合、前記設定により前記外部装置を使用する前記仮想マシンとを備える。
【０００８】
本発明の請求項３に係る情報処理システムは、前記仮想マシンと接続されている前記第１端末装置又は前記第２端末装置と前記仮想マシンとの接続が切断された場合、当該接続が切断された前記第１端末装置又は前記第２端末装置が前記外部装置を使用する。
【０００９】
本発明の請求項４に係る端末装置は、仮想マシンと接続する第１接続手段と、外部装置と接続する第２接続手段と、前記第１接続手段により前記仮想マシンに接続した場合、前記仮想マシンが前記外部装置を使用するという設定を前記仮想マシンから取得すると、前記仮想マシンが前記外部装置を使用するという設定を再度行うことなく、前記第２接続手段により自装置に接続した前記外部装置を前記仮想マシンに使用させる制御手段とを備える。
【００１０】
本発明の請求項５に係るプログラムは、コンピュータを、仮想マシンと接続する第１接続手段と、外部装置と接続する第２接続手段と、前記第１接続手段により前記仮想マシンに接続した場合、前記仮想マシンが前記外部装置を使用するという設定を前記仮想マシンから取得すると、前記仮想マシンが前記外部装置を使用するという設定を再度行うことなく、前記第２接続手段により自装置に接続した前記外部装置を前記仮想マシンに使用させる制御手段として機能させるためのプログラムである。
【発明の効果】
【００１１】
請求項１に係る情報処理システムによれば、仮想マシンと接続されている端末装置が外部装置を見つけた後、当該仮想マシンが当該外部装置を使用するという設定を当該仮想マシンが行った場合、当該仮想マシンと接続されている他の端末装置が当該外部装置を見つけたとき、当該仮想マシンが当該外部装置を使用するという設定を再び当該仮想マシンが行うことなく、当該仮想マシンが当該外部装置を使用できるようにすることができる。
請求項２に係る情報処理システムによれば、仮想マシンと接続されている端末装置が外部装置を見つけた後、当該仮想マシンが当該外部装置を使用するという設定を当該仮想マシンが行った場合、当該仮想マシンと接続されている他の端末装置が当該外部装置を見つけたとき、当該仮想マシンが当該外部装置を使用するという設定を再び当該仮想マシンが行うことなく、当該仮想マシンが当該外部装置を使用できるようにすることができる。
請求項３に係る情報処理システムによれば、外部装置と仮想マシンとの切断された場合、外部装置に接続されている端末装置が外部装置を使用することができる。
請求項４に係る端末装置によれば、仮想マシンが外部装置を使用する設定が行われている場合、仮想マシンに接続されている端末装置が外部装置に接続すると、当該端末装置において設定を行うことなく、仮想マシンが外部装置を使用することができる。
請求項５に係るプログラムによれば、仮想マシンが外部装置を使用する設定が行われている場合、仮想マシンに接続されている端末装置が外部装置に接続すると、当該端末装置において設定を行うことなく、仮想マシンが外部装置を使用することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の一実施形態に係る情報処理システム１を構成する装置を示した図。
【図２】端末装置１０Ａ、１０Ｂのハードウェア構成を示した図。
【図３】接続先テーブルＴＢ１の一例を示した図。
【図４】端末装置１０Ａ、１０Ｂの機能ブロック図。
【図５】サーバー装置２０のハードウェア構成を示した図。
【図６】サーバー装置２０の機能ブロック図。
【図７】実施形態の動作例を説明するためのシーケンス図。
【図８】タッチパネル１０３に表示される画面の一例を示した図。
【図９】端末装置１０Ａ、１０Ｂが行う処理の流れを示したフローチャート。
【図１０】実施形態の動作例を説明するためのシーケンス図。
【図１１】仮想マシン３０が行う処理の流れを示したフローチャート。
【図１２】仮想マシン３０が行う処理の流れを示したフローチャート。
【図１３】タッチパネル１０３に表示される画面の一例を示した図。
【図１４】実施形態の動作例を説明するためのシーケンス図。
【発明を実施するための形態】
【００１３】
［実施形態］
（全体構成）
図１は、本発明の一実施形態の情報処理システム１に係る装置を示した図である。通信回線２は、データ通信が行われる通信ネットワークであり、データ通信を行う複数のコンピュータ装置が接続される。通信回線２には、有線及び無線の通信ネットワークが含まれる。
【００１４】
端末装置１０Ａ、１０Ｂは、データ通信を行う装置であり、本実施形態においては、スマートフォンやタブレット端末である。端末装置１０Ａ、１０Ｂは、通信回線２に含まれている無線ＬＡＮ（Local Area Network）のアクセスポイントを介して通信回線２に接続し、通信回線２を介してデータ通信を行う。端末装置１０Ａ、１０Ｂは、シンクライアントのクライアント端末として機能する。
【００１５】
サーバー装置２０は、シンクライアントのサーバー装置として機能する装置である。サーバー装置２０は、サーバー装置２０により認証されたユーザー毎に仮想マシン３０を起動する。仮想マシン３０は、端末装置１０Ａ、１０Ｂと接続する。仮想マシン３０は、仮想マシン３０を操作するためのＧＵＩ（Graphical User Interface）画面の情報を端末装置１０Ａ、１０Ｂへ送る。この情報に基づいて端末装置１０Ａ、１０Ｂが表示したＧＵＩ画面で情報の入力や操作が行われると、仮想マシン３０は、入力された情報や行われた操作に応じて各種情報処理を行う。
【００１６】
外部装置４０は、Bluetooth（登録商標）の規格に従った通信で端末装置１０Ａ、１０Ｂに接続される装置であり、本実施形態においては、用紙に画像を形成する画像形成装置である。外部装置４０は、画像形成装置に限定されるものではなく、Bluetoothの規格に従った通信を行う装置（以下、Bluetoothデバイスと称する）であれば、他の装置であってもよい。例えば、外部装置４０は、スキャナ装置、マイクロフォン、スピーカ、プロジェクター、キーボード、マウスなど、端末装置１０Ａ、１０Ｂと接続して利用される公知のBluetoothデバイスであってもよい。
【００１７】
（端末装置１０Ａ、１０Ｂの構成）
図２は、端末装置１０Ａ、１０Ｂのハードウェア構成の一例を示した図である。なお、端末装置１０Ａ、１０Ｂの各部を区別する必要がある場合、説明の便宜上、端末装置１０の符号の末尾のアルファベットを各部の符号の末尾に付加して説明を行う。例えば、端末装置１０Ａの各部を他の端末装置１０Ｂの各部と区別する場合、端末装置１０Ａの各部の符号の末尾には「Ａ」を付ける。
【００１８】
タッチパネル１０３は、液晶ディスプレイなどの表示装置と、表示装置の表示面において指の接触を検出するセンサーとを組み合わせた装置であり、ユーザーにより操作される操作部の一例である。タッチパネル１０３は、文字やＧＵＩ、メニュー画面などを表示する。また、タッチパネル１０３は、ユーザーが指で触れた位置をセンサーで検出する。制御部１０１は、タッチパネル１０３が検出した位置と、タッチパネルに表示されている画面に応じてユーザーの操作を特定し、特定した操作に応じて各部の制御や各種処理を実行する。
【００１９】
通信部１０５は、移動体通信網（図示略）の無線基地局に対して無線通信を行う通信インターフェースとして機能する。音声処理部１０７は、マイクロフォンとスピーカを有している。音声処理部１０７は、端末装置１０Ａ、１０Ｂが音声通話を行う場合、通話相手の音声に係るデジタル信号が通信部１０５から供給されると、供給されたデジタル信号をアナログ信号に変換する。このアナログ信号は、スピーカへ供給され、スピーカからは、通話相手の音声が放音される。また、音声処理部１０７は、マイクロフォンが音声を収音すると、収音した音声をデジタル信号に変換する。音声処理部１０７は、端末装置で音声通話を行う場合、ユーザーの音声を変換したデジタル信号を通信部１０５へ供給する。このデジタル信号は、通信部１０５から移動体通信網へ送信され、通話相手の端末装置へ送信される。
【００２０】
近距離通信部１０９は、Bluetoothの規格に従った無線通信や、無線ＬＡＮの通信規格に従った無線通信を行う通信インターフェースとして機能する。近距離通信部１０９は、通信回線２が備える無線ＬＡＮのアクセスポイントへ無線ＬＡＮの規格に従った通信により接続し、通信回線２を介してデータ通信を行う。また、近距離通信部１０９は、Bluetoothのデバイスを識別するＢＤ（Bluetooth Device）アドレスを記憶しており、Bluetoothの規格に従った通信により外部装置４０へ接続し、外部装置４０と通信を行う。
【００２１】
記憶部１０２は、データを永続的に記憶する不揮発性メモリーを有しており、オペレーティングシステムのプログラムやアプリケーションプログラムなどを記憶する。本実施形態においては、記憶部１０２は、タブレット端末やスマートフォンにインストールされる周知のアプリケーションプログラムに加え、仮想マシン３０に接続して仮想マシン３０を操作するアプリケーションプログラム（以下、クライアントアプリと称する）や、クライアントアプリが使用する各種情報を記憶する。
【００２２】
また、記憶部１０２は、外部装置４０のＢＤアドレスと、外部装置４０を使用する装置とを対応付けて格納した接続先テーブルＴＢ１を記憶する。図３は、接続先テーブルＴＢ１の一例を示した図である。接続先テーブルＴＢ１は、ＢＤアドレスフィールドとリンク先フィールドを有する。ＢＤアドレスフィールドは、Bluetoothの通信を行う外部装置４０のＢＤアドレスを格納する。リンク先フィールドは、外部装置４０を使用する装置を表す情報を格納する。端末装置に接続された外部装置４０を仮想マシン３０が使用する場合には、リンク先フィールドには仮想マシンを表す情報が格納され、端末装置に接続された外部装置４０を端末装置が使用する場合には、リンク先フィールドには自装置を表す情報が格納される。
【００２３】
制御部１０１は、ＣＰＵ（Central Processing Unit）やＲＡＭ（Random Access Memory）を備えており、オペレーティングシステムのプログラムやアプリケーションプログラムを実行する。制御部１０１は、本発明に係る制御手段の一例である。制御部１０１と通信部１０５は協働し、仮想マシン３０と接続する第１接続手段として機能する。また、制御部１０１と近距離通信部１０９は協働し、外部装置４０と接続する第２接続手段として機能する。
【００２４】
（端末装置１０の機能構成）
図４は、クライアントアプリを実行することにより端末装置１０において実現する機能のうち、本発明に係る特徴的な機能の構成を示した機能ブロック図である。
選択部１５１は、外部装置４０を使用する装置を端末装置のユーザーに選択させる選択手段の一例である。選択部１５１は、外部装置４０を使用する装置を仮想マシン３０か端末装置のいずれかに設定する。
設定部１５２は、選択手段の選択結果に応じて外部装置４０を使用する装置を設定する設定手段の一例である。設定部１５２は、選択手段が仮想マシン３０を選択した場合、外部装置４０を使用する装置を仮想マシン３０に設定し、選択手段が端末装置を選択した場合、外部装置４０を使用する装置を端末装置に設定する。
要求部１５３は、設定部１５２による設定が行われた後、仮想マシン３０に接続されている自装置が外部装置４０を検索により見つけた場合、設定手段の設定に応じて外部装置４０の使用を仮想マシン３０へ要求する要求手段の一例である。
【００２５】
（サーバー装置２０の構成）
図５は、サーバー装置２０のハードウェア構成の一例を示したブロック図である。通信部２０５は、データ通信を行うための通信インターフェースとして機能し、通信回線２に接続されている。
記憶部２０２は、プログラムやプログラムで使用する情報などを永続的に記憶する装置（例えばハードディスク装置）を有している。記憶部２０２が記憶するプログラムとしては、オペレーティングシステムのプログラムや、文書の作成や編集を行うワードプロセッサーのプログラム、表計算のプログラム、仮想マシン３０を実現するプログラムなどがある。記憶部２０２が記憶する情報としては、仮想マシン３０に付与されたＢＤアドレス、仮想マシン３０との接続が設定されている外部装置４０のＢＤアドレスのリストであるＢＤアドレスリストＬ１、管理者によりサーバー装置２０の利用を許可されたユーザーのユーザー名とパスワードの組などがある。また、記憶部２０２は、サーバー装置２０を利用するユーザーが使用するデータを記憶する。ユーザーが使用するデータとしては、ワードプロセッサーのプログラムで使用する文書ファイルや、表計算のプログラムで使用する表計算ファイルなどがある。
【００２６】
制御部２０１は、ＣＰＵやＲＡＭを有しており、オペレーティングシステムのプログラムを実行し、記憶部２０２や通信部２０５を制御する。また、仮想マシン３０を実現するプログラムをＣＰＵが実行すると、サーバー装置２０に認証されたユーザー毎に仮想マシン３０を起動し、接続したユーザーが使用する端末装置へ仮想マシン３０を提供する。
【００２７】
（サーバー装置２０の機能構成）
図６は、サーバー装置２０において実現する機能のうち、本発明に係る機能の構成を示したブロック図である。
リスト送信部３５１は、端末装置１０Ａ、１０Ｂからの要求に応じて、記憶部２０２に記憶されているＢＤアドレスリストＬ１を端末装置１０Ａ、１０Ｂへ送信する。
外部装置制御部３５２は、端末装置１０Ａ、１０Ｂからの要求に応じて、仮想マシン３０が外部装置４０を使用する状態にする。
【００２８】
（実施形態の動作例）
次に本実施形態の動作例について図面を参照して説明する。なお、以下の説明においては、端末装置１０Ａをスマートフォン（第１端末装置の一例）、端末装置１０Ｂをタブレット端末（第２端末装置の一例）とし、端末装置１０Ａ、１０Ｂを同じユーザーが操作する場合を想定して動作例の説明を行う。
【００２９】
ユーザーは、仮想マシン３０を端末装置１０Ａから操作する場合、まず、クライアントアプリを起動する操作をタッチパネル１０３Ａにおいて行う。制御部１０１Ａは、タッチパネル１０３Ａで行われた操作に応じてクライアントアプリを起動する（図７：ステップＳ１）。制御部１０１Ａは、クライアントアプリを起動すると、近距離通信部１０９Ａを制御し、サーバー装置２０を利用するためのユーザー認証のページへアクセスする（ステップＳ２）。サーバー装置２０は、端末装置１０Ａからのアクセスに応じて、ユーザー認証のページを端末装置１０Ａへ送信する（ステップＳ３）。
【００３０】
このページを近距離通信部１０９Ａが受信すると、制御部１０１Ａは、受信したページが表示されるようにタッチパネル１０３Ａを制御する（ステップＳ４）。ユーザー認証のページが表示されたタッチパネル１０３Ａにおいて、ユーザーが自身のユーザー名とパスワードを入力する操作を行うと、制御部１０１Ａは、入力されたユーザー名とパスワードを取得する（ステップＳ５）。次にユーザーが、入力したユーザー名とパスワードを送信する操作を行うと、制御部１０１Ａは、入力されたユーザー名とパスワードの組を、近距離通信部１０９Ａを制御してサーバー装置２０へ送信する（ステップＳ６）。
【００３１】
制御部２０１は、送信されたユーザー名とパスワードの組が、記憶部２０２に記憶されている場合、サーバー装置２０の利用をユーザーに対して許可する（ステップＳ７）。サーバー装置２０は、ユーザーに対して利用を許可すると、ユーザーに対応した仮想マシン３０を起動し、仮想マシン３０を操作するＧＵＩ画面の情報（以下、画面情報）を端末装置１０Ａへ送信する（ステップＳ９）。
【００３２】
この画面情報を近距離通信部１０９Ａが受信すると、制御部１０１Ａは、受信した画面情報が表す画面が表示されるようにタッチパネル１０３Ａを制御する（ステップＳ１０）。タッチパネル１０３Ａに表示されたＧＵＩ画面を操作することにより、ユーザーは、仮想マシン３０を利用することができる。
【００３３】
例えば、表示されたＧＵＩ画面において、ワードプロセッサーのプログラムを起動する操作をユーザーが行うと、制御部１０１Ａは、ユーザーが行った操作を表す情報を、近距離通信部１０９Ａを制御して仮想マシン３０へ送信する（ステップＳ１１）。仮想マシン３０は、端末装置１０Ａから送られた情報に応じてワードプロセッサーのプログラムを起動し（ステップＳ１２）、ワードプロセッサーのＧＵＩの画面情報を、通信部２０５を制御して端末装置１０Ａへ送信する（ステップＳ１３）。制御部１０１Ａは、この画面情報を近距離通信部１０９Ａが受信すると、受信した画面情報が表すＧＵＩ画面が表示されるようにタッチパネル１０３Ａを制御する（ステップＳ１４）。
【００３４】
表示されたＧＵＩ画面において、サーバー装置２０に記憶されている文書ファイルを開く操作をユーザーが行うと、制御部１０１Ａは、ユーザーが行った操作を表す情報を、近距離通信部１０９Ａを制御して仮想マシン３０へ送信する（ステップＳ１５）。仮想マシン３０は、端末装置１０Ａから送られた情報に応じて文書ファイルを開き（ステップＳ１６）、開いた文書ファイルが表す文書の画面情報を、通信部２０５を制御して端末装置１０Ａへ送信する（ステップＳ１７）。制御部１０１Ａは、この画面情報を近距離通信部１０９Ａが受信すると、受信した画面情報が表す画面が表示されるようにタッチパネル１０３Ａを制御する（ステップＳ１８）。
【００３５】
ユーザーは、表示された文書を外部装置４０で印刷する場合、まずBluetoothデバイスの検索を指示する操作を端末装置１０Ａにおいて行う。制御部１０１Ａは、この操作が行われると、近距離通信部１０９Ａを制御し、Bluetoothデバイスの検索を行う（ステップＳ１９）。
【００３６】
図８は、検索により外部装置４０を見つけたときに端末装置１０Ａが表示する画面の一例を示した図である。この画面において、ユーザーが、外部装置４０である「プリンタ」の部分をタップする操作を行うと、制御部１０１Ａは、図９に示したフローチャートの処理を実行する。
【００３７】
まず、制御部１０１Ａは、外部装置４０のＢＤアドレスを取得し（ステップＳＡ１、図１０：ステップＳ３０）、近距離通信部１０９Ａを制御して、ＢＤアドレスリストＬ１を要求するリスト要求をサーバー装置２０へ送信する（ステップＳＡ２、ステップＳ３１）。
【００３８】
このリスト要求を通信部２０５が受信すると、仮想マシン３０は、図１１に示した処理を実行する。まず、仮想マシン３０は、予め仮想マシン３０に付与されているＢＤアドレスを記憶部２０２から取得する（ステップＳＢ１、ステップＳ３２）。次に仮想マシン３０は、仮想マシン３０を使用しているユーザーに対応したＢＤアドレスリストＬ１を記憶部２０２から取得する（ステップＳＢ２、ステップＳ３３）。制御部２０１は、取得した仮想マシン３０のＢＤアドレスとＢＤアドレスリストＬ１を、通信部２０５を制御して端末装置１０Ａへ送信する（ステップＳＢ３、ステップＳ３４）。
【００３９】
この仮想マシン３０のＢＤアドレスとＢＤアドレスリストＬ１を通信部１０５Ａが受信すると（ステップＳＡ３）、制御部１０１Ａは、受信した仮想マシン３０のＢＤアドレスを記憶部１０２Ｂに書き込む（ステップＳＡ４、ステップＳ３５）。また、制御部１０１Ａは、接続先テーブルＴＢ１を更新する（ステップＳＡ５、ステップＳ３６）。具体的には、制御部１０１Ａは、受信したＢＤアドレスリストＬ１に含まれているＢＤアドレスのうち、接続先テーブルＴＢ１に格納されていないＢＤアドレスを新たに接続先テーブルＴＢ１に格納する。ここで、制御部１０１Ａは、新たにレコードを作成してＢＤアドレスを接続先テーブルＴＢ１に格納する場合には、接続先が仮想マシンであることを表す情報をリンク先フィールドに格納する。
【００４０】
次に制御部１０１Ａは、接続先テーブルＴＢ１において、ステップＳＡ１で取得した外部装置４０のＢＤアドレスが接続先テーブルＴＢ１に格納されているか判断する（ステップＳＡ６）。制御部１０１Ａは、ステップＳＡ１で取得したＢＤアドレスが接続先テーブルＴＢ１にない場合、外部装置４０を使用する装置の設定や外部装置４０との接続の切断を行う画面が表示されるようにタッチパネル１０３Ａを制御する（ステップＳＡ７、ステップＳ３７）。
【００４１】
図１３は、外部装置４０を使用する装置の設定や外部装置４０との接続の切断を行う画面の一例を示した図である。制御部１０１Ａは、外部装置４０を使用する装置を選択する操作がタッチパネル１０３Ａにおいて行われると、ユーザーが選択した装置を判断する（ステップＳＡ８、ステップＳ３８）。ユーザーは、仮想マシン３０が外部装置４０を使用する場合、「仮想マシンに接続」の部分をタップする。制御部１０１Ａは、「仮想マシンに接続」の部分がタップされると（ステップＳＡ８でＹＥＳ）、ステップＳＡ１で取得したＢＤアドレスを含み、外部装置４０の使用を要求する使用要求をサーバー装置２０へ送信する（ステップＳＡ９、ステップＳ３９）。制御部１０１Ａは、使用要求を送信した後、外部装置４０を使用する装置を仮想マシン３０に設定する（ステップＳＡ１０、ステップＳ４０）。また、制御部１０１Ａは、外部装置４０と接続する（ステップＳＡ１１、ステップＳ４１）。
【００４２】
この使用要求を通信部２０５が受信すると、仮想マシン３０は、受信した使用要求に含まれている外部装置４０のＢＤアドレスが、ＢＤアドレスリストＬ１に格納されているか判断する（図１２：ステップＳＣ１）。仮想マシン３０は、受信した使用要求に含まれている外部装置４０のＢＤアドレスが、ＢＤアドレスリストＬ１に格納されていない場合には（ステップＳＣ１でＮＯ）、受信した使用要求に含まれている外部装置４０のＢＤアドレスをＢＤアドレスリストＬ１に格納する（ステップＳＣ２、ステップＳＣ４２）。これにより、仮想マシン３０が外部装置４０を使用する設定となる。次に制御部２０１は、使用要求に含まれているＢＤアドレスの外部装置４０を使用する状態に移行する（ステップＳＣ３、ステップＳ４３）。
【００４３】
サーバー装置２０において、仮想マシン３０が外部装置４０を使用する状態となり、外部装置４０と接続した端末装置１０Ａにおいて、外部装置４０を使用する装置が仮想マシン３０に設定されると、仮想マシン３０が外部装置４０を利用可能な状態となる。仮想マシン３０が外部装置４０を使用する状態で、仮想マシン３０が開いている文書ファイルの文書を印刷する操作をユーザーが行うと、制御部１０１Ａは、ユーザーが行った操作を表す情報を、近距離通信部１０９Ａを制御して仮想マシン３０へ送信する（ステップＳ４４）。仮想マシン３０は、端末装置１０Ａから送られた情報に応じて、仮想マシン３０が開いている文書を表す情報と、印刷を要求する印刷要求を、通信部２０５を制御して端末装置１０Ａへ送信する（ステップＳ４５）。
【００４４】
この印刷要求を近距離通信部１０９Ａが受信すると、制御部１０１Ａは、受信した印刷要求を、近距離通信部１０９Ａを制御して外部装置４０へ送信する（ステップＳ４６）。外部装置４０は、端末装置１０Ａから送信された印刷要求を受信すると、受信した印刷要求に含まれている情報に基づいて、当該情報が表す文書の画像を用紙に形成して出力する（ステップＳ４７）。
【００４５】
ユーザーは、仮想マシン３０の利用を終了する場合、仮想マシン３０の使用を終了する操作をタッチパネル１０３Ａにおいて行う。この操作が行われると、制御部１０１Ａは、仮想マシン３０を終了させる終了指示を、近距離通信部１０９Ａを制御して仮想マシン３０へ送信する（ステップＳ４８）。また、制御部１０１Ａは、通信部１０５Ａを制御して外部装置４０との接続を切断する（ステップＳ４９）。仮想マシン３０は、通信部２０５が終了指示を受信すると、自身をシャットダウンする（ステップＳ５０）。
【００４６】
次に、上述した動作の後、ユーザーが、端末装置１０Ａに替えて端末装置１０Ｂで仮想マシン３０を操作する場合の動作例について説明する。
ユーザーは、端末装置１０Ａに替えて端末装置１０Ｂから仮想マシン３０を操作する場合、クライアントアプリを起動する操作をタッチパネル１０３Ｂにおいて行う。クライアントアプリを起動する操作を行った後、ユーザー認証が行われ、仮想マシン３０を操作するＧＵＩ画面が端末装置１０Ｂに表示されるまでの動作は、端末装置１０Ａをユーザーが用いたときの動作と同じであるため、その説明を省略する。
【００４７】
端末装置１０Ｂにおいて、仮想マシンを操作するＧＵＩ画面が表示された後、表示された画面において、表計算のプログラムを起動する操作をユーザーが行うと、制御部１０１Ａは、ユーザーが行った操作を表す情報を、近距離通信部１０９Ａを制御して仮想マシン３０へ送信する（図１４：ステップＳ７０）。仮想マシン３０は、端末装置１０Ａから送られた情報に応じて表計算のプログラムを起動し（ステップＳ７１）、表計算のＧＵＩの画面情報を、通信部２０５を制御して端末装置１０Ｂへ送信する（ステップＳ７２）。制御部１０１Ｂは、この画面情報を近距離通信部１０９Ｂが受信すると、受信した画面情報が表すＧＵＩ画面が表示されるようにタッチパネル１０３Ｂを制御する（ステップＳ７３）。
【００４８】
表示された画面において、サーバー装置２０に記憶されている表計算ファイルを開く操作を行うと、制御部１０１Ｂは、ユーザーが行った操作を表す情報を、近距離通信部１０９Ｂを制御して仮想マシン３０へ送信する（ステップＳ７４）。仮想マシン３０は、端末装置１０Ｂから送られた情報に応じて表計算ファイルを開き（ステップＳ７５）、開いた表計算ファイルが表す表の画面情報を、通信部２０５を制御して端末装置１０Ｂへ送信する（ステップＳ７６）。制御部１０１Ｂは、この画面情報を近距離通信部１０９Ｂが受信すると、受信した画面情報が表す画面が表示されるようにタッチパネル１０３Ｂを制御する（ステップＳ７６）。
【００４９】
ユーザーは、表示された文書を外部装置４０で印刷する場合、まずBluetoothデバイスの検索を指示する操作を端末装置１０Ｂにおいて行う。制御部１０１Ａは、この操作が行われると、近距離通信部１０９Ａを制御し、Bluetoothデバイスの検索を行う（ステップＳ７８）。
【００５０】
検索の結果、図８の画面が表示された後、ユーザーが、外部装置４０である「プリンタ」の部分をタップする操作を行うと、制御部１０１Ｂは、図９に示したフローチャートの処理を実行する。
【００５１】
まず、制御部１０１Ｂは、外部装置４０のＢＤアドレスを取得し（ステップＳＡ１、ステップＳ７９）、近距離通信部１０９Ｂを制御して、ＢＤアドレスリストＬ１を要求するリスト要求をサーバー装置２０へ送信する（ステップＳＡ２、ステップＳ８０）。
【００５２】
このリスト要求を通信部２０５が受信すると、仮想マシン３０は、図１１に示した処理を実行する。まず、仮想マシン３０は、予め仮想マシン３０に付与されているＢＤアドレスを記憶部２０２から取得する（ステップＳＢ１、ステップＳ８１）。次に仮想マシン３０は、仮想マシン３０を使用しているユーザーに対応したＢＤアドレスリストＬ１を記憶部２０２から取得する（ステップＳＢ２、ステップＳ８２）。制御部２０１は、取得した仮想マシン３０のＢＤアドレスとＢＤアドレスリストＬ１を、通信部２０５を制御して端末装置１０Ｂへ送信する（ステップＳＢ３、ステップＳ８３）。上述したように、ステップＳ４２の動作により外部装置４０のＢＤアドレスがＢＤアドレスリストＬ１に格納されているため、ここで送信されるＢＤアドレスリストＬ１には、外部装置４０のＢＤアドレスが含まれている。
【００５３】
この仮想マシン３０のＢＤアドレスとＢＤアドレスリストＬ１を通信部１０５Ｂが受信すると（ステップＳＡ３）、制御部１０１Ｂは、受信した仮想マシン３０のＢＤアドレスを記憶部１０２Ｂに書き込む（ステップＳＡ４、ステップＳ８４）。また、制御部１０１Ｂは、接続先テーブルＴＢ１を更新する（ステップＳＡ５、ステップＳ８５）。ここで、受信したＢＤアドレスリストＬ１に含まれているＢＤアドレスのうち、外部装置４０のＢＤアドレスは、接続先テーブルＴＢ１に格納されていないため、制御部１０１Ｂは、外部装置４０のＢＤアドレスを新たに接続先テーブルＴＢ１のレコードに格納し、リンク先フィールドに、接続先が仮想マシンであることを表す情報を格納する。なお、制御部１０１Ｂは、既に接続先テーブルＴＢ１にＢＤアドレスが格納されているレコードについては、更新を行わない。
【００５４】
次に制御部１０１Ｂは、接続先テーブルＴＢ１において、ステップＳＡ１で取得した外部装置４０のＢＤアドレスが接続先テーブルＴＢ１にあるか判断する（ステップＳＡ６）。上述したステップＳＡ５で外部装置４０のＢＤアドレスが接続先テーブルＴＢ１に格納されたため、制御部１０１Ｂは、取得した外部装置４０のＢＤアドレスが接続先テーブルＴＢ１にあると判断する（ステップＳＡ６でＹＥＳ）。
【００５５】
制御部１０１Ｂは、取得した外部装置４０のＢＤアドレスが接続先テーブルＴＢ１にある場合、外部装置４０のＢＤアドレスが格納されているレコードのリンク先フィールドの内容を判断する（ステップＳＡ１２）。ここで、接続先テーブルＴＢ１においては、上述したように、外部装置４０のＢＤアドレスが格納されているレコードにおいて、接続先が仮想マシンであることを表す情報がリンク先フィールドに格納されているため、制御部１０１Ｂは、ステップＳＡ１２でＹＥＳと判断する。制御部１０１Ｂは、ステップＳＡ１２でＹＥＳと判断すると、ステップＳＡ１で取得したＢＤアドレスを含む使用要求をサーバー装置２０へ送信する（ステップＳＡ９、ステップＳ８６）。制御部１０１Ｂは、使用要求を送信した後、外部装置４０を使用する装置を仮想マシンに設定する（ステップＳＡ１０、ステップＳ８７）。また、制御部１０１Ｂは、外部装置４０と接続する（ステップＳＡ１１、ステップＳ８８）。
【００５６】
サーバー装置２０においては、使用要求を通信部２０５が受信すると、仮想マシン３０は、受信した使用要求に含まれている外部装置４０のＢＤアドレスが、ＢＤアドレスリストＬ１に格納されているか判断する（ステップＳＣ１）。仮想マシン３０は、受信した使用要求に含まれている外部装置４０のＢＤアドレスが、ＢＤアドレスリストＬ１に格納されている場合には（ステップＳＣ１でＹＥＳ）、使用要求に含まれているＢＤアドレスの外部装置４０を使用する状態に移行する（ステップＳＣ３、ステップＳ８９）。
【００５７】
サーバー装置２０において、仮想マシン３０が外部装置４０を使用する状態となり、外部装置４０と接続した端末装置１０Ｂにおいて、外部装置４０を使用する装置が仮想マシン３０に設定されると、仮想マシン３０が外部装置４０を利用可能な状態となる。仮想マシン３０が外部装置４０を使用する状態で、仮想マシン３０が開いている表計算ファイルの表を印刷する操作をユーザーが行うと、制御部１０１Ｂは、ユーザーが行った操作を表す情報を、近距離通信部１０９Ｂを制御して仮想マシン３０へ送信する（ステップＳ９０）。仮想マシン３０は、端末装置１０Ｂから送られた情報に応じて、仮想マシンが開いている表計算ファイルの表を表す情報と、印刷を要求する印刷要求を、通信部２０５を制御して端末装置１０Ｂへ送信する（ステップＳ９１）。
【００５８】
この印刷要求を近距離通信部１０９Ｂが受信すると、制御部１０１Ｂは、受信した印刷要求を、近距離通信部１０９Ｂを制御して外部装置４０へ送信する（ステップＳ９２）。外部装置４０は、端末装置１０Ｂから送信された印刷要求を受信すると、受信した印刷要求に含まれている情報に基づいて、当該情報が表す表の画像を用紙に形成して出力する（ステップＳ９３）。
【００５９】
ユーザーは、外部装置４０を使用する装置を端末装置１０Ｂに設定する場合や外部装置４０と端末装置１０Ｂとの接続を切断する場合には、Bluetoothデバイスの検索で見つかった外部装置４０の一覧の画面を表示させる操作をタッチパネル１０３Ｂにおいて行う。制御部１０１Ｂは、この操作が行われると、検索で見つけた外部装置４０の一覧（図８）が表示されるように、タッチパネル１０３Ｂを制御する。ユーザーは、外部装置４０を使用する装置を変更する場合、「プリンタ」の部分をタップする。制御部１０１Ａは、「プリンタ」の部分がタップされると、外部装置４０を使用する装置の設定や外部装置４０との接続の切断を行う画面（図１３）が表示されるようにタッチパネル１０３Ｂを制御する。
【００６０】
この画面において、ユーザーが、「切断」の部分をタップする操作を行うと（ステップＳＡ１５でＹＥＳ）、制御部１０１Ｂは、近距離通信部１０９Ｂを制御し、外部装置４０との接続を切断する（ステップＳＡ１６）。ユーザーは、端末装置１０Ｂが外部装置４０を使用する場合、「端末に接続」の部分をタップする。制御部１０１Ｂは、「端末に接続」の部分がタップされると（ステップＳＡ１４でＹＥＳ）、外部装置４０を使用する装置を自装置に設定するため（ステップＳＡ１３）、接続先テーブルＴＢ１を更新する。具体的には、制御部１０１Ｂは、接続先テーブルＴＢ１で外部装置４０のＢＤアドレスが格納されているレコードについて、接続先が自装置であることを表す情報をリンク先フィールドに格納する。
次に制御部１０１Ｂは、外部装置４０から取得したＢＤアドレスを含み、外部装置４０の使用停止を要求する停止要求をサーバー装置２０へ送信する。制御部１０１Ｂは、停止要求を送信した後、外部装置４０を使用する装置を自装置に設定する。仮想マシン３０は、送信された停止要求に応じて、外部装置４０の使用を停止する。
【００６１】
［変形例］
以上、本発明の実施形態について説明したが、本発明は上述した実施形態に限定されることなく、他の様々な形態で実施可能である。例えば、上述の実施形態を以下のように変形して本発明を実施してもよい。なお、上述した実施形態および以下の変形例は、各々を組み合わせてもよい。
【００６２】
本発明においては、端末装置１０Ａ、１０Ｂは、仮想マシン３０との接続を切断した場合、外部装置４０を使用する状態に自動的に移行してもよい。この場合、接続先テーブルＴＢ１のリンク先フィールドについて、接続先が自装置であることを表す情報を格納しないようにしてもよい。また、端末装置１０Ａ、１０Ｂは、自身が外部装置４０を使用しているときに、仮想マシン３０に接続した場合、仮想マシン３０が外部装置４０を使用する状態に自動的に移行するようにしてもよい。
【００６３】
本発明においては、端末装置１０Ａ（１０Ｂ）においては、接続可能な外部装置４０毎に、外部装置４０が検索されたときに行う動作を予め設定しておく構成としてもよい。
例えば、仮想マシン３０に接続しているときに行う動作の選択肢として、「仮想マシンに自動的に接続」、「端末に自動的に接続」、「接続を保留する」の３つをメニュー画面で表示し、ユーザーに選択させる。ユーザーが「仮想マシンに自動的に接続」を選択した場合、端末装置１０Ａ（１０Ｂ）が外部装置４０を見つけると、端末装置１０Ａ（１０Ｂ）及び仮想マシン３０は、自動的に仮想マシン３０が外部装置４０を利用可能な状態にする。また、ユーザーが「端末に自動的に接続」を選択した場合、端末装置１０Ａ（１０Ｂ）が外部装置４０を見つけると、端末装置１０Ａ（１０Ｂ）は、自動的に端末装置１０Ａ（１０Ｂ）が外部装置４０を利用可能な状態にする。また、ユーザーが「接続を保留する」を選択した場合は、外部装置４０と端末装置１０Ａ（１０Ｂ）との接続を保留する。
また、仮想マシン３０に接続していないときに行う動作の選択肢として、「端末に自動的に接続」、「接続を保留する」の２つをメニュー画面で表示し、ユーザーに選択させる。ユーザーが「端末に自動的に接続」を選択した場合、端末装置１０Ａ（１０Ｂ）が外部装置４０を見つけると、端末装置１０Ａ（１０Ｂ）は、自動的に外部装置４０を利用可能な状態にする。また、ユーザーが「接続を保留する」を選択した場合は、外部装置４０と端末装置１０Ａ（１０Ｂ）との接続を保留する。
【００６４】
本発明においては、仮想マシン３０とペアリングする外部装置４０は、マイクロフォンであってもよい。仮想マシン３０とペアリングされた装置がマイクロフォンである場合に、端末装置１０Ａに電話の着信があった場合、電話の開始から終了までは、外部装置４０とペアリングする装置を端末装置１０Ａにしてもよい。
【００６５】
本発明においては、端末装置１０Ａ（１０Ｂ）が移動体通信網を介して仮想マシン３０と接続した場合には、外部装置４０と仮想マシン３０とのペアリングを行わないようにしてもよい。
【００６６】
外部装置４０は、Bluetoothの規格に従った通信で端末装置１０Ａ、１０Ｂに接続される構成に限定されるものではない。例えば、無線ＬＡＮの規格に従った通信で端末装置１０Ａ、１０Ｂに接続される構成であってもよい。また、外部装置４０は、無線通信で端末装置１０Ａ、１０Ｂに接続される構成に限定されるものではなく、有線のケーブルで端末装置１０Ａ、１０Ｂに接続される構成であってもよい。
【００６７】
本発明に係る各装置のプログラムは、磁気記録媒体（磁気テープ、磁気ディスク（ＨＤＤ（Hard Disk Drive）、ＦＤ（Flexible Disk））など）、光記録媒体（光ディスクなど）、光磁気記録媒体、半導体メモリーなどのコンピュータ読取り可能な記録媒体に記憶した状態で提供し、インストールしてもよい。また、通信回線を介してプログラムをダウンロードしてインストールしてもよい。
【符号の説明】
【００６８】
１…情報処理システム、２…通信回線、１０Ａ、１０Ｂ…端末装置、２０…サーバー装置、３０…仮想マシン、４０…外部装置、１０１…制御部、１０２…記憶部、１０３…タッチパネル、１０５…通信部、１０７…音声処理部、１０９…近距離通信部、１５１…選択部、１５２…設定部、１５３…要求部、２０１…制御部、２０２…記憶部、２０５…通信部、３５１…リスト送信部、３５２…外部装置制御部
【図１】
2017027385.tif 000003
【図２】
2017027385.tif 000004
【図３】
2017027385.tif 000005
【図４】
2017027385.tif 000006
【図５】
2017027385.tif 000007
【図６】
2017027385.tif 000008
【図７】
2017027385.tif 000009
【図８】
2017027385.tif 000010
【図９】
2017027385.tif 000011
【図１０】
2017027385.tif 000012
【図１１】
2017027385.tif 000013
【図１２】
2017027385.tif 000014
【図１３】
2017027385.tif 000015
【図１４】
2017027385.tif 000016