(57)【特許請求の範囲】
【請求項１】
シンクライアント端末とデータの送受信を行う通信部と、
前記シンクライアント端末によって実行される複数のアプリケーションを有するユーザ環境部と、
前記シンクライアント端末と前記通信部との間の通信状態を監視する監視部と、
前記監視部によって前記シンクライアント端末との間の通信が実行されていないことが検出された場合、前記複数のアプリケーション毎に、予め定められた制御を実行するアプリケーション制御部と、を備えるシンクライアントサーバ。
【請求項２】
前記監視部は、
前記シンクライアント端末と前記通信部との間のセッションが確立されているか否か及び前記シンクライアント端末と前記通信部との間においてデータの送受信が行われているか否かの少なくとも一方を監視する、請求項１記載のシンクライアントサーバ。
【請求項３】
前記アプリケーション制御部は、
前記シンクライアント端末によって少なくとも１つのアプリケーションが起動されている状態において、前記監視部によって、前記シンクライアント端末との間の通信が実行されていないことが検出された場合、前記起動されているアプリケーションについて予め定められた制御内容を実行する、請求項１又は２記載のシンクライアントサーバ。
【請求項４】
前記複数のアプリケーション毎に、前記監視部によって、前記シンクライアント端末との間の通信が実行されていないことが検出された場合の制御内容が関連付けられている制御内容管理部をさらに備える、請求項１乃至３のいずれか１項に記載のシンクライアントサーバ。
【請求項５】
前記制御内容管理部は、
前記監視部によって前記シンクライアント端末との間の通信が実行されていないことが検出された場合、前記複数のアプリケーション毎に、それぞれのアプリケーションを一時停止するか又は継続動作するかを関連付けて管理する、請求項４記載のシンクライアントサーバ。
【請求項６】
前記通信部は、
複数のシンクライアント端末とデータの送受信を行い、
前記ユーザ環境部は、
前記複数のシンクライアント端末毎に、前記それぞれのシンクライアント端末によって実行される複数のアプリケーションを有する、請求項１乃至５のいずれか１項に記載のシンクライアントサーバ。
【請求項７】
前記監視部は、
前記複数のシンクライアント端末の中から、通信が行われていないシンクライアント端末を抽出し、
前記アプリケーション制御部は、
前記抽出されたシンクライアント端末において起動された少なくとも１つのアプリケーションについて予め定められた制御を実行する請求項６記載のシンクライアントサーバ。
【請求項８】
前記制御内容管理部は、
前記ユーザ環境部において管理されている複数のアプリケーション毎に、前記監視部によって、前記シンクライアント端末との間の通信が再開されたことが検出された場合の制御内容を関連付けて管理する、請求項４又は５に記載のシンクライアントサーバ。
【請求項９】
シンクライアント端末によって実行される複数のアプリケーションを有するシンクライアントサーバにおけるアプリケーション制御方法であって、
前記シンクライアント端末と前記シンクライアントサーバとの間の通信状態を監視し、
前記通信状態の監視において、前記シンクライアント端末と前記シンクライアントサーバとの間の通信が実行されていないことが検出された場合、前記複数のアプリケーション毎に、予め定められた制御を実行する、アプリケーション制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はシンクライアントサーバ及びアプリケーション制御方法に関し、特にシンクライアント端末との間の通信状態に応じてアプリケーションを制御するシンクライアントサーバ及びアプリケーション制御方法に関する。
【背景技術】
【０００２】
近年、インターネットを用いた通信において、ユーザが使用する端末に保存されている情報が流出することを防止するために、シンクライアントシステムを用いた通信が行われている。シンクライアントシステムは、仮想化技術を利用し、シンクライアントサーバ上に、複数のユーザ環境を収容する。ユーザが使用するシンクライアント端末は、シンクライアントサーバ上に割り当てられたユーザ環境を用いて、シンクライアントサーバ上においてアプリケーションを実行する。シンクライアント端末は、アプリケーションの実行結果をシンクライアントサーバから受け取る。シンクライアント端末は、ＲＤＰ（Remote Desktop Protocol）等のプロトコルを実装している。このようなシンクライアントシステムを、画面転送型シンクライアントシステムと称する。複数のユーザがシンクライアントサーバを共有して処理を実行するため、シンクライアントサーバは、複数のユーザ環境を有する。そのため、シンクライアントサーバに搭載されたＣＰＵ、メモリ、ネットワーク帯域等のリソースは、複数のユーザに共有して用いられる。
【０００３】
特許文献１には、シンクライアントサーバが再起動することにより、アプリケーションが強制終了された場合の処理について開示されている。具体的には、シンクライアントサーバが再起動した後に、ワープロソフト等のアプリケーションを起動した場合、アプリケーションの作業状態を、アプリケーションが強制終了される前の状態に復元させるシステムについて開示している。
【０００４】
特許文献２には、シンクライアントシステムにおいて、シンクライアント端末とシンクライアントサーバ間のセッションを、利用者と端末をキーとして管理する処理について開示されている。これにより、利用者とシンクライアント端末との組み合わせにより予め接続先を設定することができるため、利用者は、特別な設定を行うことなくシンクライアントサーバにアクセスすることができる。また、シンクライアントサーバのＯＳに不具合が発生した際に、利用者の操作に応じて、シンクライアントサーバのＯＳを再起動させることができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−１６９７９７号公報
【特許文献２】特開２００７−３３４６８６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、シンクライアントシステムは、シンクライアント端末とシンクライアントサーバとの間のセッションが中断された場合においても、シンクライアントサーバ上のアプリケーションが継続動作する。そのため、シンクライアント端末を操作するユーザは、セッションが中断されている間のアプリケーションの動作を認識することができないという問題がある。例えば、シンクライアント端末が、シンクライアントサーバの動画再生アプリケーションを起動して動画を閲覧している場合、シンクライアント端末とシンクライアントサーバとの間のセッションが切断された後も、シンクライアントサーバ上の動画再生アプリケーションは継続して動作する。シンクライアント端末が動画を視聴することができない間にも、動画は再生されているため、シンクライアント端末とシンクライアントサーバとのセッションが再度接続された場合、シンクライアント端末は、セッションが切断される前に視聴していた場面まで巻き戻して視聴する必要がある。
【０００７】
特許文献１には、シンクライアントサーバの再起動に伴うシンクライアント端末とシンクライアントサーバ間のセッションが切断された場合の処理について記載されているが、シンクライアントサーバが動作している状態において、シンクライアント端末とシンクライアントサーバ間のセッションが切断された場合に生じる上述した問題に関する処理については、なんら開示されていない。
【０００８】
本発明はこのような問題を解決するために、シンクライアント端末とシンクライアントサーバとの間の通信状態と、シンクライアントサーバ上のアプリケーションの処理を連携させることができるシンクライアントサーバシンクライアントサーバ及びアプリケーション制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の第１の態様にかかるシンクライアントサーバは、シンクライアント端末とデータの送受信を行う通信部と、前記シンクライアント端末によって実行される複数のアプリケーションを有するユーザ環境部と、前記シンクライアント端末と前記通信部との間の通信状態を監視する監視部と、前記監視部によって前記シンクライアント端末との間の通信が実行されていないことが検出された場合、前記複数のアプリケーション毎に、予め定められた制御を実行するアプリケーション制御部と、を備えるものである。
【００１０】
本発明の第２の態様にかかるアプリケーション制御方法は、シンクライアント端末によって実行される複数のアプリケーションを有するシンクライアントサーバにおけるアプリケーション制御方法であって、前記シンクライアント端末と前記シンクライアントサーバとの間の通信状態を監視し、前記通信状態の監視において、前記シンクライアント端末と前記シンクライアントサーバとの間の通信が実行されていないことが検出された場合、前記複数のアプリケーション毎に、予め定められた制御を実行するものである。
【発明の効果】
【００１１】
本発明により、シンクライアント端末とシンクライアントサーバとの間の通信状態と、シンクライアントサーバ上のアプリケーションの処理を連携させることができるシンクライアントサーバ及びアプリケーション制御方法を提供することができる。
【図面の簡単な説明】
【００１２】
【図１】実施の形態１にかかるシンクライアントサーバの構成図である。
【図２】実施の形態１にかかるシンクライアントサーバの詳細な構成図である。
【図３】実施の形態１にかかるセッション識別テーブルを示す図である。
【図４】実施の形態１にかかるユーザ識別テーブルを示す図である。
【図５】実施の形態１にかかる制御内容テーブルを示す図である。
【図６】実施の形態１にかかる制御結果格納ＤＢを示す図である。
【図７】実施の形態１にかかるユーザ環境部の構成図である。
【図８】実施の形態１にかかる監視部における処理の流れを示す図である。
【図９】実施の形態１にかかるＡＰＬ状態管理部における処理の流れを示す図である。
【図１０】実施の形態１にかかるＡＰＬ制御部における処理の流れを示す図である。
【図１１】実施の形態１にかかる制御部における処理の流れを示す図である。
【図１２】実施の形態１にかかる制御部における処理の流れを示す図である。
【図１３】実施の形態１にかかる制御部における処理の流れを示す図である。
【発明を実施するための形態】
【００１３】
（実施の形態１）
以下、図面を参照して本発明の実施の形態について説明する。図１を用いて本発明の実施の形態１にかかるシンクライアントサーバ１０の構成例について説明する。シンクライアントサーバ１０は、ユーザ環境部１１と、通信部１５と、監視部１６と、アプリケーション（ＡＰＬ）制御部１７と、を備えている。また、ユーザ環境部１１は、ＡＰＬ１２〜１４を有している。
【００１４】
通信部１５は、シンクライアント端末５０とデータの送受信を行う。通信部１５とシンクライアント端末５０とは、インターネット回線を介してデータの送受信を行う。シンクライアント端末５０とインターネット回線とは、有線又は無線回線を用いて接続される。また、通信部１５とインターネット回線とも、有線又は無線回線を用いて接続される。シンクライアント端末５０は、有線又は無線通信機能を有する装置であり、パーソナルコンピュータ又は携帯電話端末等であってもよい。
【００１５】
ユーザ環境部１１は、シンクライアント端末５０によって実行される複数のＡＰＬ１２〜１４を管理している。シンクライアント端末５０は、ユーザ環境部１１が有するＡＰＬ１２〜１４を実行し、その実行結果を通信部１５及びインターネット回線を介して受け取る。つまり、ユーザ環境部１１は、シンクライアント端末５０の端末操作によって実行されたＡＰＬの実行結果に関する画面データをシンクライアント端末５０へ送信する。シンクライアント端末５０は、シンクライアントサーバ１０から受け取った画面データをシンクライアント端末５０上の液晶ディスプレイ等の表示部（図示せず）へ出力する。
【００１６】
監視部１６は、シンクライアント端末５０と通信部１５との間の通信状態を監視する。監視部１６は、通信状態として、シンクライアント端末５０と通信部１５との間において通信を実行する際に設定されるセッションが正常に設定されているか又は切断されているか、を監視する。もしくは、監視部１６は、通信状態として、通信部１５とシンクライアント端末５０との間においてデータの送受信が行われているか否かを監視する。
【００１７】
ＡＰＬ制御部１７は、監視部１６によって、シンクライアント端末５０と通信部１５との間の通信が実行されていないことが検出された場合、ＡＰＬ１２〜１４毎に、予め定められた制御を実行する。通信が実行されていない状態とは、例えば、シンクライアント端末５０と通信部１５との間のセッションが切断されていたり、シンクライアント端末５０と通信部１５との間において、一定期間データの送受信が行われていない状態である。
【００１８】
予め定められた制御とは、例えば、シンクライアント端末５０と通信部１５との間の通信が実行されていないことが検出された場合、ＡＰＬ１２は、一時停止し、ＡＰＬ１３は継続して動作させる等である。ユーザ環境部１１が有するＡＰＬ毎に、シンクライアント端末５０と通信部１５との間の通信が実行されていないことが検出された場合の制御内容が定められている。
【００１９】
以上説明したように、図１にかかるシンクライアントサーバを用いることにより、シンクライアント端末５０とシンクライアントサーバ１０との間の通信が実行されているか否かを検出することができる。さらに、シンクライアント端末５０とシンクライアントサーバ１０との間の通信が実行されていない場合、ユーザ環境部１１が有するＡＰＬ毎に、予め定められた制御を実行することができる。これより、シンクライアントサーバ１０が動作している際に、シンクライアント端末５０とシンクライアントサーバ１０との間の通信が実行されなくなったことと、ユーザ環境部１１におけるＡＰＬ制御を連携させることができる。
【００２０】
続いて、図２を用いて本発明の実施の形態１にかかるシンクライアントサーバ１０の詳細な構成例について説明する。シンクライアントサーバ１０は、ユーザ環境部１１＿１〜１１＿ｎと、監視部１６と、ＡＰＬ制御部１７と、通信制御ＩＦ２１と、送信部２２と、受信部２３と、制御部２４と、ＡＰＬ状態管理部２５と、セッション識別テーブル２６と、ユーザ識別テーブル２７と、制御結果格納ＤＢ２８と、制御内容テーブル２９と、を備えている。図１と同様の構成要素は同一の番号を付する。また、図１と同様の構成要素については、詳細な説明を省略する。また、ＡＰＬ制御部１７、制御部２４及びＡＰＬ状態管理部２５は、ＣＰＵ（Central Processing Unit）又はＭＰＵ（Micro Processing Unit）等により構成される。また、セッション識別テーブル２６、ユーザ識別テーブル２７、制御結果格納ＤＢ２８及び制御内容テーブル２９は、シンクライアントサーバ１０内のメモリ等により構成される。
【００２１】
通信制御ＩＦ２１は、図１の通信部１５に相当する。通信制御ＩＦ２１は、シンクライアント端末５０とインターネット回線等を介して通信を行う。通信制御ＩＦ２１は、インターネット回線と、イーサネット（登録商標）や、無線ＬＡＮ等を用いて接続される。また、シンクライアント端末５０も同様に、インターネット回線と、イーサネット（登録商標）や、無線ＬＡＮ等を用いて接続される。通信制御ＩＦ２１は、シンクライアント端末５０から受信したデータを、監視部１６を経由して受信部２３へ出力する。また、通信制御ＩＦ２１は、シンクライアント端末５０へ送信するデータを、送信部２２から監視部１６を経由して受け取り、シンクライアント端末５０へ送信する。
【００２２】
監視部１６は、通信制御ＩＦ２１とシンクライアント端末５０との間のセッションが確立されているか否かを監視する。監視部１６は、定期的に通信制御ＩＦ２１へアクセスし、セッションが確立しているか否かを監視してもよい。もしくは、監視部１６は、通信制御ＩＦ２１を介してシンクライアント端末５０へデータを送信し、これに対する応答信号を受信できるか否かにより、セッションが確立しているか否かを監視してもよい。また、監視部１６は、一定期間内に通信制御ＩＦ２１から受信部２３に対してデータが出力されるか否かを判定し、シンクライアント端末５０から通信制御ＩＦ２１に対するデータ送信が行われているか否かを監視してもよい。もしくは、監視部１６は、送信部２２から通信制御ＩＦ２１に対してデータが出力されるか否かを判定し、通信制御ＩＦ２１からシンクライアント端末５０に対するデータ送信が行われているか否かを監視してもよい。
【００２３】
監視部１６は、シンクライアント端末５０と通信制御ＩＦ２１との間のセッションが確立されていないことを検出、つまり、セッションが切断されていることを検出した場合、又は、シンクライアント端末５０と通信制御ＩＦ２１との間においてデータの送受信が行われていないことを検出した場合、セッション識別テーブル２６を用いて、シンクライアント端末５０を識別するユーザＩＤを特定する。
【００２４】
ここで、図３を用いて、セッション識別テーブル２６の構成について説明する。セッション識別テーブル２６は、セッション番号とユーザＩＤとを関連付けて管理している。例えば、セッション１により接続されているシンクライアント端末は、ユーザＩＤが「１１１１」であり、セッション２により接続されているシンクライアント端末は、ユーザＩＤが「２２２２」であり、セッション３により接続されているシンクライアント端末は、ユーザＩＤが「３３３３」である。
【００２５】
図２に戻り、監視部１６は、切断されているセッション番号又はデータの送受信が行われていないセッション番号に関連付けられているユーザＩＤを特定する。監視部１６は、特定したユーザＩＤ及び特定したユーザＩＤの状態が「未利用」に遷移したことを示す識別子を、制御部２４へ出力する。監視部１６は、送信部２２又は２３を介して特定したユーザＩＤ等を制御部２４へ出力してもよいし、直接制御部２４へ出力してもよい。また、セッションの切断等を検出した場合、シンクライアント端末５０を操作するユーザは、シンクライアントシステムを利用していないものと想定される。そのため、監視部１６は、特定したユーザＩＤの状態を「未利用」として、制御部２４へ出力する。
【００２６】
制御部２４は、監視部１６から受け取ったユーザＩＤと、ユーザ識別テーブル２７とを用いて、シンクライアント端末５０に割り当てられているユーザ環境部を特定する。ここで、図４を用いて、ユーザ識別テーブル２７の構成について説明する。ユーザ識別テーブル２７は、ユーザＩＤと、ユーザ環境ＩＤとを関連付けて管理している。ユーザ環境ＩＤは、それぞれのシンクライアント端末に割り当てられているユーザ環境部を識別するＩＤである。図４においては、ユーザＩＤ「１１１１」に対応するユーザ環境ＩＤは１であり、ユーザＩＤ「２２２２」に対応するユーザ環境ＩＤは２である。ここで、ユーザ環境ＩＤ「１」は、ユーザ環境部１１＿１に割り当てられている識別子であり、ユーザ環境ＩＤ「２」は、ユーザ環境部１１＿２に割り当てられている識別子であるとする。
【００２７】
図２に戻り、制御部２４は、特定したユーザ環境ＩＤを、ＡＰＬ状態管理部２５へ出力する。ＡＰＬ状態管理部２５は、制御部から出力されたユーザ環境ＩＤに対応するユーザ環境部において動作中ＡＰＬの検出を行う。つまり、シンクライアント端末５０の端末操作により起動されているＡＰＬの検出を行う。ＡＰＬ状態管理部２５は、動作中のＡＰＬを検出した場合、検出したＡＰＬのＡＰＬ ＩＤを制御部２４へ出力する。ＡＰＬ ＩＤは、アプリケーションを識別するために用いられる識別子である。
【００２８】
制御部２４は、ＡＰＬ状態管理部２５から出力されたＡＰＬ ＩＤと、制御内容テーブル２９を用いて、ＡＰＬ ＩＤに対応するＡＰＬの制御内容を特定する。ここで、図５を用いて、制御内容テーブル２９の構成について説明する。制御内容テーブル２９は、ＡＰＬ ＩＤと、シンクライアント端末５０がシンクライアントシステムの未利用時又は利用再開時の制御内容と、を関連付けて管理している。
【００２９】
例えば、ＡＰＬ ＩＤ＃１は、動画視聴に用いられるアプリケーションである。シンクライアント端末５０が、シンクライアントシステムを利用していない場合、動画視聴に用いられるアプリケーションは、一時停止されるように制御される。また、シンクライアント端末５０が、シンクライアントシステムの利用を再開した場合、アプリケーションは、動作が再開される。Ｗｅｂブラウザの閲覧に用いられるＡＰＬ ＩＤ＃２及び音楽再生に用いられるＡＰＬ ＩＤ＃３も同様である。また、シンクライアント端末５０が、シンクライアントシステムを利用していない場合、メールの送受信及びメールの閲覧等に用いられるＡＰＬ ＩＤ＃４のアプリケーションの動作は、継続される。つまり、ＡＰＬ ＩＤ＃４のアプリケーションは、シンクライアント端末５０がシンクライアントシステムを利用しているか否かにかかわらず、動作が変更されない。ワープロ機能、表計算機能等を備えるＡＰＬ ＩＤ＃５のオフィスツールアプリケーションも同様である。
【００３０】
図２に戻り、制御部２４は、ＡＰＬ状態管理部２５から動作中のＡＰＬ ＩＤに関する情報を受け取る。さらに、制御部２４は、監視部１６から、シンクライアント端末５０がシンクライアントシステムを利用しているか否かに関する情報を受け取る。これより、制御部２４は、ＡＰＬ状態管理部２５から受け取った動作中のＡＰＬ ＩＤについて、シンクライアント端末５０がシンクライアントシステムを利用していない場合のＡＰＬの制御内容を特定する。制御部２４は、ユーザ環境ＩＤ、ＡＰＬ ＩＤ及びＡＰＬの制御内容をＡＰＬ制御部１７へ出力する。
【００３１】
ＡＰＬ制御部１７は、ＡＰＬの制御内容に基づいて、ユーザ環境ＩＤ及びＡＰＬ ＩＤにおいて特定されるＡＰＬを制御する。ＡＰＬ制御部１７は、制御結果を制御部２４へ出力する。ここで、制御部２４は、ＡＰＬ制御部１７から受け取った制御結果を制御結果格納ＤＢ２８へ書き込む。図６を用いて、制御結果格納ＤＢ２８の構成について説明する。
【００３２】
図６における制御結果格納ＤＢ２８は、ユーザ環境ＩＤと、制御対象ＡＰＬ ＩＤとを関連付けて管理している。制御対象ＡＰＬ ＩＤは、シンクライアントシステムの未利用により、一時停止等されたアプリケーションのＡＰＬ ＩＤである。本図においては、ユーザ環境ＩＤ＃１のＡＰＬ ＩＤ＃１〜３のアプリケーションが、シンクライアントシステムの未利用により、一時停止等の制御が行われたことを示している。また、ユーザ環境ＩＤ＃２のＡＰＬ ＩＤ＃２及び＃３のアプリケーションも、同様に制御されたことを示している。
【００３３】
続いて、シンクライアント端末５０が、シンクライアントシステムの利用を再開した場合の動作について説明する。図２における監視部１６は、通信制御ＩＦ２１を監視し、通信制御ＩＦ２１とシンクライアント端末５０との間のセッションが再接続されたことを検出する。もしくは、監視部１６は、通信制御ＩＦ２１から受信部２３に対して出力されるデータを検出することにより、シンクライアント端末５０から通信制御ＩＦ２１に対するデータ送信が行われていると判定してもよい。また、監視部１６は、送信部２２から通信制御ＩＦ２１に対して出力されるデータを検出することにより、通信制御ＩＦ２１からシンクライアント端末５０に対するデータ送信が行われていると判定してもよい。
【００３４】
監視部１６は、セッションの再接続又はデータ送受信を検出した場合、セッション識別テーブル２６を用いて、再接続等されたセッションを介してデータの送受信を行うシンクライアント端末５０のユーザＩＤを特定する。制御部２４は、監視部１６において特定されたユーザＩＤ及びユーザ識別テーブル２７を用いて、当該ユーザＩＤに関連付けられているユーザ環境ＩＤを特定する。さらに、制御部２４は、特定されたユーザ環境ＩＤ及び制御結果格納ＤＢ２８を用いて、制御対象となるＡＰＬ ＩＤを受け取る。制御対象となるＡＰＬ ＩＤは、ユーザ環境ＩＤに関連付けられているＡＰＬ ＩＤである。ここで、制御部２４は、制御内容テーブル２９を用いて、制御対象となるＡＰＬ ＩＤの利用再開時における制御内容を特定し、ＡＰＬ制御部１７へ出力する。ＡＰＬ制御部１７は、受け取った制御内容に応じて、アプリケーションを制御する。
【００３５】
続いて、図７を用いて本発明の実施の形態１にかかるユーザ環境部１１＿１〜１１＿ｎの構成例について説明する。なお、ユーザ環境部１１＿１とユーザ環境部１１＿ｎとは、同一の構成であるため、ユーザ環境部１１＿１の構成例について説明する。
【００３６】
ユーザ環境部１１＿１は、ＡＰＬ１２〜１４と、ゲストＯＳ３１と、ＡＰＬ状態取得Ｉ／Ｆ３２と、ＡＰＬ制御Ｉ／Ｆ３３とを備えている。ゲストＯＳ３１は、一般的なＯＳと同様に、ＡＰＬ１２〜１４等において共通に用いられる機能を提供する。また、ゲストＯＳ３１は、ユーザ環境部１１＿１に割り当てられているメモリやＣＰＵ等の資源を管理する。ＡＰＬ状態取得Ｉ／Ｆ３２は、ＡＰＬ状態管理部２５から出力されるユーザ環境ＩＤに応じて、動作中もしくは起動中のＡＰＬに関する情報をＡＰＬ状態管理部２５へ出力する。また、ＡＰＬ制御Ｉ／Ｆ３３は、ＡＰＬ制御部１７から出力されるＡＰＬ ＩＤ及びＡＰＬ制御内容に応じて、ＡＰＬ１２〜１４のうち対象となるＡＰＬを制御する。
【００３７】
続いて、図８を用いて本発明の実施の形態１にかかる監視部１６における処理の流れについて説明する。はじめに、監視部１６は、通信制御ＩＦ２１の監視を行う（Ｓ１１）。監視部１６は、通信制御ＩＦ２１とシンクライアント端末５０との間のセッションが確立しているか否か、又は、通信制御ＩＦ２１とシンクライアント端末５０との間においてデータの送受信が行われているか否か等を監視する。
【００３８】
次に、監視部１６は、通信制御ＩＦ２１とシンクライアント端末５０との間において、非通信状態を検出したか否かについて判定する（Ｓ１２）。非通信状態とは、通信制御ＩＦ２１とシンクライアント端末５０との間のセッションが確立されていない状態、又は、通信制御ＩＦ２１とシンクライアント端末５０との間においてデータの送受信が行われていない状態等である。
【００３９】
ステップＳ１２において、監視部１６は、通信制御ＩＦ２１とシンクライアント端末５０との間の非通信状態を検出した場合、非通信状態となっているシンクライアント端末５０のユーザＩＤを特定する（Ｓ１３）。監視部１６は、セッション識別テーブル２６において、切断状態となっているセッションＩＤ、又は、データの送受信が行われていないセッションＩＤに関連付けられて記憶されているユーザＩＤを抽出することにより、ユーザＩＤを特定する。
【００４０】
次に、監視部１６は、特定したユーザＩＤに対応するシンクライアント端末５０の状態が、シンクライアントシステム未利用に遷移したことを制御部２４へ通知する（Ｓ１４）。
【００４１】
ここで、ステップＳ１２において、監視部１６が、通信制御ＩＦ２１とシンクライアント端末５０との間の非通信状態を検出しなかった場合、つまり、通信制御ＩＦ２１とシンクライアント端末５０との間において正常に通信が行われていることを検出した場合、通信が再開されたか否かを検出する（Ｓ１５）。通信再開は、切断されていたセッションが接続されたこと、もしくは、一定時間データの送受信が行われていなかったセッションにおいて、データの送受信が行われたこと、を確認することにより検出される。
【００４２】
ステップＳ１５において、監視部１６は、通信制御ＩＦ２１とシンクライアント端末５０との間の通信再開を検出した場合、通信が再開されたシンクライアント端末５０のユーザＩＤを特定する（Ｓ１６）。監視部１６は、セッション識別テーブル２６において、切断状態から接続状態となったセッションのセッションＩＤ、又は、データの送受信が行われていない状態からデータの送受信が行われたセッションのセッションＩＤに関連付けられて記憶されているユーザＩＤを抽出することにより、ユーザＩＤを特定する。
【００４３】
次に、監視部１６は、特定したユーザＩＤに対応するシンクライアント端末５０の状態が、シンクライアントシステムの利用再開に遷移したことを制御部２４へ通知する。ステップＳ１５において、監視部１６によって通信再開が検出されなかった場合、ステップＳ１１の処理に戻る。
【００４４】
続いて、図９を用いて本発明の実施の形態１にかかるＡＰＬ状態管理部２５における処理の流れについて説明する。はじめに、ＡＰＬ状態管理部２５は、制御部２４からユーザ環境ＩＤを受け取る（Ｓ２１）。次に、ＡＰＬ状態管理部２５は、制御部２４から受け取ったユーザ環境ＩＤに対応するユーザ環境部における、動作中もしくは起動中ＡＰＬの有無を判定する（Ｓ２２）。ＡＰＬ状態管理部２５は、動作中もしくは起動中ＡＰＬが有ると判定した場合、制御部２４に対して、動作中もしくは起動中ＡＰＬのＡＰＬ ＩＤを通知する（Ｓ２３）。ステップＳ２２において、ＡＰＬ状態管理部２５は、動作中もしくは起動中ＡＰＬが無いと判定した場合、処理を終了する。
【００４５】
続いて、図１０を用いて本発明の実施の形態１にかかるＡＰＬ制御部１７の処理の流れについて説明する。はじめに、ＡＰＬ制御部１７は、制御部２４からユーザ環境ＩＤ、ＡＰＬ ＩＤ及びＡＰＬ制御内容を受け取る（Ｓ３１）。次に、ＡＰＬ制御部１７は、ユーザ環境ＩＤに基づいて、ＡＰＬ制御の対象となるユーザ環境部を選択する（Ｓ３２）。次に、ＡＰＬ制御部１７は、受け取ったＡＰＬ ＩＤ及びＡＰＬ制御内容に従い、対象となるＡＰＬを制御する（Ｓ３３）。
【００４６】
次に、ＡＰＬ制御部１７は、制御対象となるＡＰＬが他に存在するか否かを判定する。（Ｓ３４）。ＡＰＬ制御部１７は、制御対象となるＡＰＬが存在しないと判定した場合、ＡＰＬの制御結果を制御部２４へ通知する（Ｓ３５）。ステップＳ３４において、制御対象となるＡＰＬが存在する場合、ステップＳ３３の処理を繰り返す。
【００４７】
続いて、図１１及び図１２を用いて、本発明の実施の形態１にかかる制御部２４の処理の流れについて説明する。はじめに、制御部２４は、監視部１６からシンクライアント端末５０の状態識別子を受け取る（Ｓ４１）。状態識別子とは、シンクライアント端末５０がシンクライアントシステムを未利用の状態に遷移したか、又は、利用再開の状態に遷移したかを示す識別子である。
【００４８】
次に、制御部２４は、ユーザ識別テーブル２７を用いて、ユーザＩＤに関連付けられているユーザ環境ＩＤを抽出する（Ｓ４２）。次に、制御部２４は、監視部１６から受け取った状態識別子が、未利用状態を示しているか、利用再開状態を示しているかを判定する（Ｓ４３）。制御部２４は、状態識別子が未利用状態を示していると判定した場合、ＡＰＬ状態管理部２５へユーザ環境ＩＤを出力する（Ｓ４４）。これにより、ＡＰＬ状態管理部２５は、ユーザ環境ＩＤに対応付けられているユーザ環境部における起動中ＡＰＬ ＩＤを制御部２４へ通知する。また、ステップＳ４３において、制御部２４は、状態識別子が利用再開状態を示していると判定した場合、制御結果格納ＤＢ２８を用いて、ユーザ環境ＩＤに関連付けられている制御対象のＡＰＬ ＩＤを抽出する（Ｓ４５）。
【００４９】
制御部２４は、制御対象のＡＰＬ ＩＤの有無を判定する（Ｓ４６）。制御対象のＡＰＬ ＩＤが無いと判定された場合、制御部２４は、処理を終了する。ステップＳ４６において、制御対象のＡＰＬ ＩＤが有ると判定された場合、制御部２４は、図１２にかかる処理を実行する。
【００５０】
続いて、図１２を用いて、図１１のステップＳ４６において、制御対象のＡＰＬ ＩＤが有ると判定された場合の制御部２４の処理の流れについて説明する。はじめに、制御部２４は、制御内容テーブル２９を用いて、制御対象ＡＰＬ ＩＤの、利用再開時における制御内容を抽出する（Ｓ４７）。次に、制御部２４は、制御対象ＡＰＬ ＩＤの制御内容が、「なにもしない」か否かを判定する（Ｓ４８）。又は、制御部２４は、制御対象ＡＰＬ ＩＤの制御内容が、「一時停止」か否かを判定してもよい。ステップＳ４８において、制御対象ＡＰＬ ＩＤの制御内容が「なにもしない」と判定された場合、制御部２４は処理を終了する。ステップＳ４８において、制御内容ＡＰＬ ＩＤの制御内容が「なにもしない」以外の場合、つまり「一時停止」等である場合、制御内容をＡＰＬ制御部１７へ通知する（Ｓ４９）。また、制御部２４は、制御内容とともに、ユーザ環境ＩＤ及び制御対象のＡＰＬ ＩＤも併せてＡＰＬ制御部１７へ通知する。これにより、ＡＰＬ制御部１７は、制御部２４から通知された制御内容に従い、制御対象のＡＰＬ ＩＤを制御する。
【００５１】
続いて、図１３を用いて、ＡＰＬ状態管理部２５へユーザ環境ＩＤを通知した後（図１１におけるステップＳ４４の後）の制御部２４の処理の流れについて説明する。はじめに、制御部２４は、ＡＰＬ状態管理部２５から、通知したユーザ環境ＩＤに対応するユーザ環境部において起動中ＡＰＬのＡＰＬ ＩＤを取得する（Ｓ５１）。次に、制御部２４は、制御内容テーブル２９を用いて、制御対象ＡＰＬ ＩＤの、未利用時における制御内容を抽出する（Ｓ５２）。次に、制御部２４は、制御対象ＡＰＬ ＩＤの制御内容が、「なにもしない」か否かを判定する（Ｓ５３）。又は、制御部２４は、制御対象ＡＰＬ ＩＤの制御内容が、「一時停止」か否かを判定してもよい。ステップＳ５３において、制御対象ＡＰＬ ＩＤの制御内容が「なにもしない」と判定された場合、制御部２４は処理を終了する。ステップＳ４８において、制御内容ＡＰＬ ＩＤの制御内容が「なにもしない」以外の場合、つまり「一時停止」等である場合、制御内容をＡＰＬ制御部１７へ通知する（Ｓ５３）。また、制御部２４は、制御内容とともに、ユーザ環境ＩＤ及び制御対象のＡＰＬ ＩＤも併せてＡＰＬ制御部１７へ通知する。これにより、ＡＰＬ制御部１７は、制御部２４から通知された制御内容に従い、制御対象のＡＰＬ ＩＤを制御する。
【００５２】
以上説明したように、本発明の実施の形態１にかかるシンクライアントサーバを用いることにより、シンクライアント端末５０を利用するユーザが、シンクライアントシステムを利用していないと判断された場合、起動中のＡＰＬ毎に一時停止等の制御を行うことができる。具体的には、ユーザがシンクライアントシステムを利用していない場合に、継続動作することが不適切であると考えられるアプリケーションについては、一時停止することができる。そのため、ユーザにより、シンクライアントシステムの利用再開と同時に一時停止したＡＰＬを再開することにより、動画や音楽再生などのＡＰＬにおいては、巻き戻し操作等が不要であることから、シンクライアントシステムを利用するユーザの利便性向上に繋がる。
【００５３】
また、ユーザがシンクライアントシステムを利用していない場合に、起動中のＡＰＬを一時停止させることにより、不要なリソースの消費を防止することができる。つまり、不要なＡＰＬを継続動作させておくことにより、シンクライアントサーバのリソースを共有する他のユーザの動作速度等に影響を与えることを防止することができる。
【００５４】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
【符号の説明】
【００５５】
１０  シンクライアントサーバ
１１  ユーザ環境部
１１＿１〜１１＿ｎ  ユーザ環境部
１２〜１４  ＡＰＬ
１５  通信部
１６  監視部
１７  ＡＰＬ制御部
２１  通信制御ＩＦ
２２  送信部
２３  受信部
２４  制御部
２５  ＡＰＬ状態管理部
２６  セッション識別テーブル
２７  ユーザ識別テーブル
２８  制御結果格納ＤＢ
２９  制御内容テーブル
３１  ゲストＯＳ
３２  ＡＰＬ状態取得Ｉ／Ｆ
３３  ＡＰＬ制御Ｉ／Ｆ
５０  シンクライアント端末
【図１】
0005640759.tif 000002
【図２】
0005640759.tif 000003
【図３】
0005640759.tif 000004
【図４】
0005640759.tif 000005
【図５】
0005640759.tif 000006
【図６】
0005640759.tif 000007
【図７】
0005640759.tif 000008
【図８】
0005640759.tif 000009
【図９】
0005640759.tif 000010
【図１０】
0005640759.tif 000011
【図１１】
0005640759.tif 000012
【図１２】
0005640759.tif 000013
【図１３】
0005640759.tif 000014