(57)【要約】【課題】利用中の端末内ウインドウや、音声データ等のＩ／Ｏリソースを、Ｉ／Ｏ機能を含む環境全体を転送することなく、異なる端末で継続して利用可能とする。【解決手段】端末１は、Ｉ／Ｏリソース識別子や、ＧＵＩウインドウのサイズ等のリソース情報と、セッション情報とをデータベース５に保存する。端末切り替えの何らかのトリガがあると、リソース情報収集機能４は、切り替えのために追加取得する必要のあるデータ等をＩ／Ｏ機能８から取得し、全データを端末２に転送する。端末２のリソース再現機能１３は、受信したＩ／Ｏリソース関連情報を元にリソース情報、セッション情報をＩ／Ｏ機能１５に対して設定して再現する。端末２は、リソース情報、セッション情報を参照して、リソースＩＤや、セッション固有のパラメータを古い遷移元と新たな遷移先との二系統の間で書き換える。【選択図】図１
2010049341.tif 000002
【特許請求の範囲】
【請求項１】
第１の端末と第２の端末との間で、いずれかの端末で利用中のＩ／Ｏリソースを、他方の端末で継続して利用する入出力端末切替システムであって、
第１の端末及び前記第２の端末は、各々、
Ｉ／Ｏリソースとの直接のインタフェースを通してＩ／Ｏの実行を行うＩ／Ｏ機能と、
前記Ｉ／Ｏ機能により実行されているＩ／Ｏに対するＩ／Ｏリソース関連情報を収集するリソース情報収集手段と、
いずれかの端末で端末切り替えのトリガがあると、前記Ｉ／Ｏリソース関連情報を他方の端末に転送する転送手段と、
取得したＩ／Ｏリソース関連情報の内容通りに再現するリソース再現手段と、
Ｉ／Ｏ処理要求を中継し、Ｉ／Ｏ処理要求に記載されたＩ／Ｏリソースに関する識別情報を、入出力の遷移前の古いものと遷移先の新しいものの二系統の間で書き換えるＩＤ変換手段と
を備えることを特徴とする入出力端末切替システム。
【請求項２】
前記第１の端末と前記第２の端末との間で双方向のルーティングを設定する端末間ルーティング設定手段と、
前記端末間ルーティング設定手段により設定されたルーティングを介して、前記第１の端末と前記第２の端末とのうち、入出力の遷移先の端末から遷移元の端末で実行されるプログラム主体となるプロセスを利用するプロセス利用手段と
を備えることを特徴とする請求項１記載の入出力端末切替システム。
【請求項３】
前記第１の端末及び前記第２の端末の内部でのルーティングを設定する内部ルーティング設定手段と、
前記内部ルーティング設定手段により設定されたルーティングを介して、前記第１の端末と前記第２の端末とのうち、入出力の遷移先の端末の内部で実行されるプログラム主体となるプロセスを利用するプロセス利用手段と
を備えることを特徴とする請求項１記載の入出力端末切替システム。
【請求項４】
前記第１の端末と前記第２の端末との間で双方向のルーティングを設定する端末間ルーティング設定手段と、
前記端末間ルーティング設定手段により設定されたルーティングを介して、前記第１の端末と前記第２の端末とのうち、入出力の遷移元の端末から遷移先の端末で実行されるプログラム主体となるプロセスを利用するプロセス利用手段と
を備えることを特徴とする請求項１記載の入出力端末切替システム。
【請求項５】
前記リソース情報収集手段は、端末切り替えのために追加取得する必要のあるデータを、前記Ｉ／Ｏ機能に直接接続して取得することを特徴とする請求項１乃至４のいずれかに記載の入出力端末切替システム。
【請求項６】
前記リソース情報収集手段は、前記Ｉ／Ｏ処理要求を中継し、前記Ｉ／Ｏリソース関連情報を抽出してデータベース化することを特徴とする請求項１乃至４のいずれかに記載の入出力端末切替システム。
【請求項７】
利用中のＩ／Ｏリソースを遷移先の端末で継続して利用させる端末であって、
Ｉ／Ｏリソースとの直接のインタフェースを通してＩ／Ｏの実行を行うＩ／Ｏ機能と、
前記Ｉ／Ｏ機能により実行されているＩ／Ｏに対するＩ／Ｏリソース関連情報を収集するリソース情報収集手段と、
端末切り替えのトリガがあると、前記Ｉ／Ｏリソース関連情報を他方の端末に転送する転送手段と
を備えることを特徴とする端末。
【請求項８】
遷移元の端末で利用中のＩ／Ｏリソースを継続して利用する端末であって、
前記遷移元の端末から取得したＩ／Ｏリソース関連情報の内容通りに再現するリソース再現手段と、
Ｉ／Ｏ処理要求を中継し、Ｉ／Ｏ処理要求に記載されたＩ／Ｏリソースに関する識別情報を、入出力の遷移前の古いものと遷移先の新しいものの二系統の間で書き換えるＩＤ変換手段と
を備えることを特徴とする端末。
【請求項９】
遷移元の端末で利用中のＩ／Ｏリソースを、遷移先の端末で継続して利用する入出力端末切替方法であって、
遷移元の端末でＩ／Ｏリソース関連情報を収集するステップと、
遷移元の端末で端末切り替えのトリガがあると、前記Ｉ／Ｏリソース関連情報を遷移先の端末に転送するステップと、
前記遷移先の端末で前記Ｉ／Ｏリソース関連情報の内容通りにＩ／Ｏリソースを再現するステップと、
前記入出力の遷移先の端末でＩ／Ｏ処理要求を中継し、Ｉ／Ｏ処理要求に記載されたＩ／Ｏリソースに関する識別情報を、入出力の遷移前の古いものと遷移先の新しいものの二系統の間で書き換えるステップと、
前記遷移先の端末で、前記変換されたＩ／Ｏリソースに関する識別情報に基づいて、前記Ｉ／Ｏリソースとの直接のインタフェースを通してＩ／Ｏの実行を行うステップと
を含むことを特徴とする入出力端末切替方法。
【請求項１０】
遷移元の端末で利用中のＩ／Ｏリソースを、遷移先の端末で継続して利用する際に各端末を制御するコンピュータに、
遷移元の端末でＩ／Ｏリソース関連情報を収集するステップと、
遷移元の端末で端末切り替えのトリガがあると、前記Ｉ／Ｏリソース関連情報を遷移先の端末に転送するステップと、
前記遷移先の端末で前記Ｉ／Ｏリソース関連情報の内容通りにＩ／Ｏリソースを再現するステップと、
前記入出力の遷移先の端末でＩ／Ｏ処理要求を中継し、Ｉ／Ｏ処理要求に記載されたＩ／Ｏリソースに関する識別情報を、入出力の遷移前の古いものと遷移先の新しいものの二系統の間で書き換えるステップと、
前記遷移先の端末で、前記変換されたＩ／Ｏリソースに関する識別情報に基づいて、前記Ｉ／Ｏリソースとの直接のインタフェースを通してＩ／Ｏの実行を行うステップと
を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザが利用しているサービスを他の端末で継続利用するサービス端末切り替えの手法に関し、特に、Ｉ／Ｏ（入出力）機能を実行する端末を切り替える入出力端末切替システム、入出力端末切替方法、端末、及びプログラムに関する。
【背景技術】
【０００２】
従来、利用中の端末内ウインドウや、音声データ等のＩ／Ｏリソースを、異なる端末で継続して利用するための技術として、両方の端末にＪＡＶＡ（登録商標）や、ＶＭｗａｒｅ（登録商標）等のプラットフォームを搭載してＩ／Ｏ機能自体を転送する技術が知られている。
【０００３】
関連技術としては、通信サービスを他の装置で継続利用するための手法であり、ネットワーク側に機能追加せず、クライアント、サーバ共に既存を含めた任意の通信サービスを遷移できる技術が提案されている。
【０００４】
また、他の関連技術としては、異なるＧＵＩ（Graphical User Interface）上に開発されたアプリケーションを同一ディスプレイ画面上に同時表示する技術が提案されている（例えば、特許文献１参照）。
【０００５】
なお、ユーザのキーボードや、マウス等による入力を、ディスプレイ上にグラフィカルに表示するシステムとしては、ＵＮＩＸ（登録商標）系ＯＳ（Operating System）で使われているＸ  Ｗｉｎｄｏｗ（登録商標）システムや、Ｗｉｎｄｏｗｓ（登録商標）ＯＳで使われているＧＤＩ（Graphic Device Interface）ベースのＧＵＩがある。
【特許文献１】特開平０５−１１９５８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した関連技術には、ＪＡＶＡ（登録商標）や、ＶＭｗａｒｅ等のプラットフォームを搭載する場合には、Ｉ／Ｏ機能を含む環境全体を転送するような大掛かりな実装が必要となる。また、Ｉ／Ｏ機能自体を転送しない場合には、転送前後でＩ／ＯリソースのＩＤ（識別子）を保存する必要があるが、遷移元と遷移先との間でＩＤがバッティングしてしまう可能性があるために実現できないという問題がある。
【０００７】
特に、上述した他の関連技術（特許文献１）では、ＯＳ中のＧＵＩ表示を一括処理するＩ／Ｏ機能自体に改造が必要である。また、そもそも同一端末内処理を想定しており、端末間のＩ／ＯリソースＩＤの調整には言及していない。
【０００８】
本発明は、このような事情を考慮してなされたものであり、その目的は、利用中の端末内ウインドウや、音声データ等のＩ／Ｏリソースを、Ｉ／Ｏ機能を含む環境全体を転送することなく、異なる端末で継続して利用することができる入出力端末切替システム、入出力端末切替方法、端末、及びプログラムを提供することにある。
【課題を解決するための手段】
【０００９】
上述した課題を解決するために、本発明は、第１の端末と第２の端末との間で、いずれかの端末で利用中のＩ／Ｏリソースを、他方の端末で継続して利用する入出力端末切替システムであって、第１の端末及び前記第２の端末は、各々、Ｉ／Ｏリソースとの直接のインタフェースを通してＩ／Ｏの実行を行うＩ／Ｏ機能と、前記Ｉ／Ｏ機能により実行されているＩ／Ｏに対するＩ／Ｏリソース関連情報を収集するリソース情報収集手段と、いずれかの端末で端末切り替えのトリガがあると、前記Ｉ／Ｏリソース関連情報を他方の端末に転送する転送手段と、取得したＩ／Ｏリソース関連情報の内容通りに再現するリソース再現手段と、Ｉ／Ｏ処理要求を中継し、Ｉ／Ｏ処理要求に記載されたＩ／Ｏリソースに関する識別情報を、入出力の遷移前の古いものと遷移先の新しいものの二系統の間で書き換えるＩＤ変換手段とを備えることを特徴とする入出力端末切替システムである。
【００１０】
本発明は、上記の発明において、前記第１の端末と前記第２の端末との間で双方向のルーティングを設定する端末間ルーティング設定手段と、前記端末間ルーティング設定手段により設定されたルーティングを介して、前記第１の端末と前記第２の端末とのうち、入出力の遷移先の端末から遷移元の端末で実行されるプログラム主体となるプロセスを利用するプロセス利用手段とを備えることを特徴とする。
【００１１】
本発明は、上記の発明において、前記第１の端末及び前記第２の端末の内部でのルーティングを設定する内部ルーティング設定手段と、前記内部ルーティング設定手段により設定されたルーティングを介して、前記第１の端末と前記第２の端末とのうち、入出力の遷移先の端末の内部で実行されるプログラム主体となるプロセスを利用するプロセス利用手段とを備えることを特徴とする。
【００１２】
本発明は、上記の発明において、前記第１の端末と前記第２の端末との間で双方向のルーティングを設定する端末間ルーティング設定手段と、前記端末間ルーティング設定手段により設定されたルーティングを介して、前記第１の端末と前記第２の端末とのうち、入出力の遷移元の端末から遷移先の端末で実行されるプログラム主体となるプロセスを利用するプロセス利用手段とを備えることを特徴とする。
【００１３】
本発明は、上記の発明において、前記リソース情報収集手段は、端末切り替えのために追加取得する必要のあるデータを、前記Ｉ／Ｏ機能に直接接続して取得することを特徴とする。
【００１４】
本発明は、上記の発明において、前記リソース情報収集手段は、前記Ｉ／Ｏ処理要求を中継し、前記Ｉ／Ｏリソース関連情報を抽出してデータベース化することを特徴とする。
【００１５】
また、上述した課題を解決するために、本発明は、利用中のＩ／Ｏリソースを遷移先の端末で継続して利用させる端末であって、Ｉ／Ｏリソースとの直接のインタフェースを通してＩ／Ｏの実行を行うＩ／Ｏ機能と、前記Ｉ／Ｏ機能により実行されているＩ／Ｏに対するＩ／Ｏリソース関連情報を収集するリソース情報収集手段と、端末切り替えのトリガがあると、前記Ｉ／Ｏリソース関連情報を他方の端末に転送する転送手段とを備えることを特徴とする端末である。
【００１６】
また、上述した課題を解決するために、本発明は、遷移元の端末で利用中のＩ／Ｏリソースを継続して利用する端末であって、前記遷移元の端末から取得したＩ／Ｏリソース関連情報の内容通りに再現するリソース再現手段と、Ｉ／Ｏ処理要求を中継し、Ｉ／Ｏ処理要求に記載されたＩ／Ｏリソースに関する識別情報を、入出力の遷移前の古いものと遷移先の新しいものの二系統の間で書き換えるＩＤ変換手段とを備えることを特徴とする端末である。
【００１７】
また、上述した課題を解決するために、本発明は、遷移元の端末で利用中のＩ／Ｏリソースを、遷移先の端末で継続して利用する入出力端末切替方法であって、遷移元の端末でＩ／Ｏリソース関連情報を収集するステップと、遷移元の端末で端末切り替えのトリガがあると、前記Ｉ／Ｏリソース関連情報を遷移先の端末に転送するステップと、前記遷移先の端末で前記Ｉ／Ｏリソース関連情報の内容通りにＩ／Ｏリソースを再現するステップと、前記入出力の遷移先の端末でＩ／Ｏ処理要求を中継し、Ｉ／Ｏ処理要求に記載されたＩ／Ｏリソースに関する識別情報を、入出力の遷移前の古いものと遷移先の新しいものの二系統の間で書き換えるステップと、前記遷移先の端末で、前記変換されたＩ／Ｏリソースに関する識別情報に基づいて、前記Ｉ／Ｏリソースとの直接のインタフェースを通してＩ／Ｏの実行を行うステップとを含むことを特徴とする入出力端末切替方法である。
【００１８】
また、上述した課題を解決するために、本発明は、遷移元の端末で利用中のＩ／Ｏリソースを、遷移先の端末で継続して利用する際に各端末を制御するコンピュータに、遷移元の端末でＩ／Ｏリソース関連情報を収集するステップと、遷移元の端末で端末切り替えのトリガがあると、前記Ｉ／Ｏリソース関連情報を遷移先の端末に転送するステップと、前記遷移先の端末で前記Ｉ／Ｏリソース関連情報の内容通りにＩ／Ｏリソースを再現するステップと、前記入出力の遷移先の端末でＩ／Ｏ処理要求を中継し、Ｉ／Ｏ処理要求に記載されたＩ／Ｏリソースに関する識別情報を、入出力の遷移前の古いものと遷移先の新しいものの二系統の間で書き換えるステップと、前記遷移先の端末で、前記変換されたＩ／Ｏリソースに関する識別情報に基づいて、前記Ｉ／Ｏリソースとの直接のインタフェースを通してＩ／Ｏの実行を行うステップとを実行させることを特徴とするプログラムである。
【発明の効果】
【００１９】
この発明によれば、遷移元の端末でＩ／Ｏリソース関連情報を収集し、端末切り替えのトリガがあると、収集したＩ／Ｏリソース関連情報を遷移先の端末に転送し、遷移先の端末で、Ｉ／Ｏリソース関連情報の内容通りにＩ／Ｏリソースを再現し、Ｉ／Ｏ処理要求を中継し、Ｉ／Ｏ処理要求に記載されたＩ／Ｏリソースに関するＩＤを、入出力の遷移前の古いものと遷移先の新しいものの二系統の間で書き換え、書き換えられたＩ／Ｏリソースに関するＩＤに基づいて、Ｉ／Ｏリソースとの直接のインタフェースを通してＩ／Ｏの実行を行うようにしたので、利用中の端末内ウインドウや、音声データ等のＩ／Ｏリソースを、Ｉ／Ｏ機能を含む環境全体を転送することなく、異なる端末で継続して利用することができる。
【発明を実施するための最良の形態】
【００２０】
以下、本発明の一実施形態を、図面を参照して説明する。
【００２１】
Ａ．第１実施形態
図１は、本発明の第１実施形態による入出力端末切替システムの構成を示すブロック図である。図１において、端末１（Ａ）及び端末２（Ｂ）は、ディスプレイ、スピーカ、ボタン、キーボード、マウス等のうちの幾つかのＩ／Ｏ機器を備えた端末である。端末１及び端末２は、各々、ＩＤ変換機能３、１０、リソース情報収集機能４、１１、データベース５、１２、リソース再現機能６、１３、端末間通信機能７、１４からなる中継機能１７、１８と、Ｉ／Ｏ機能８、１５、Ｉ／Ｏリソース９、１６から構成される。各機能ブロック間では、データ通信等でプログラム命令や、データなどが授受される。なお、これらの機能セットは、入出力端末切り替えを双方向で実現するために、端末１及び端末２で同じものとしている。したがって、片方向の切り替えの際には、動作説明で後述するように、一方の端末中で、このうちの幾つかの機能が実行されない。
【００２２】
次に、本第１実施形態による入出力端末切替システムの動作について説明する。
図２は、本第１実施形態による入出力端末切替システムの動作を説明するためのシーケンス図である。本第１実施形態では、ユーザが端末１のディスプレイ、キーボード等のＩ／Ｏ機能８を使ったサービスを利用していて、急遽、端末２のＩ／Ｏ機能１５に切り替えてサービスを継続することになった場合を想定する。
【００２３】
端末１において、中継機能１７内のリソース情報収集機能４は、Ｉ／Ｏ処理の要求を中継し、その履歴を保存することで、Ｉ／Ｏリソース識別子や、ＧＵＩウインドウのサイズ等のリソース情報と、Ｉ／Ｏ機能８への接続を識別するためのセッション情報といった大きく２つの情報群を抽出して、データベース５に保存する（ステップＳａ１）。
【００２４】
ここで、端末切り替えの何らかのトリガ（ユーザの指定等）があると（ステップＳａ２）、リソース情報収集機能４は、切り替えのために追加取得する必要のある最新画像データ等をＩ／Ｏ機能８に直接アクセスして取得する（ステップＳａ３）。また、追加データをデータベース５に追加した上で、全データをＩ／Ｏリソース関連情報として、それぞれの端末１、２の端末間通信機能７、１４を経由して、端末２の中継機能１８内のリソース情報収集機能１１に転送し、データベース１２に登録する（ステップＳａ４）。端末２のリソース再現機能１３は、Ｉ／Ｏ機能１５との間で新たなセッションを構築し、受信したＩ／Ｏリソース関連情報を元にリソース情報、セッション情報をＩ／Ｏ機能１５に対して設定する（ステップＳａ５）。
【００２５】
ここで、端末２において、ＩＤ変換機能１０が何らかの切り替え完了の通知を受けると（ステップＳａ６）、データベース１２中のリソース情報、セッション情報を参照して、これ以降にＩＤ変換機能１０を経由する全てのＩ／Ｏ処理要求に記載されているリソースＩＤや、セッション固有のパラメータを古い遷移元と新たな遷移先との二系統の間で書き換える処理を開始する（ステップＳａ７）。すなわち、図１に示すように、旧リソースＩＤ：旧パラメータ＝ＡＡ：ａａの組と、新リソースＩＤ：新パラメータ＝ＢＢ：ｂｂの組との間で変換を行う。
【００２６】
このようにして、ユーザは、端末２のＩ／Ｏ機能１５に切り替えてサービスを継続することができる。なお、再び、端末１のＩ／Ｏ機能８に戻してサービスを継続したい場合には、上記記述中の「端末１」と「端末２」を入れ替えた内容（図の数字表記は異なる）で同様の処理を行えばよい。
【００２７】
Ｂ．第２実施形態
次に、本発明の第２実施形態について説明する。
図３は、本第２実施形態による入出力端末切替システムの構成を示すブロック図である。本第２実施形態は、図１に示す構成をベースとし、ユーザが利用するサービスのプロセスが遷移しない場合のシステム構成である。図３において、端末５１（Ａ）及び端末５２（Ｂ）は、ディスプレイ、スピーカ、ボタン、キーボード、マウス等のうちの幾つかのＩ／Ｏ機器を備えた端末である。端末５１及び端末５２は、各々、ＩＤ変換機能５５、６２、リソース情報収集機能５６、６３、データベース５７、６４、リソース再現機能５８、６５、端末間通信機能５９、６６からなる中継機能５３、５４と、プロセス６９、Ｉ／Ｏ機能６０、６７、Ｉ／Ｏリソース６１、６８から構成される。各機能ブロック間では、データ通信等でプログラム命令や、データなどが授受される。なお、これらの機能セットは、入出力端末切り替えを双方向で実現するために端末５１及び端末５２で同じものとしている。したがって、片方向の切り替えの際には、後述する動作の説明でするように、一方の端末中で、このうちの幾つかの機能が実行されない。
【００２８】
本第２実施形態では、ユーザが端末５１のディスプレイ、キーボード等のＩ／Ｏ機能６０を使ってサービスアプリケーションのプロセス６９を利用していて、急遽、端末５２のＩ／Ｏ機能６７に切り替えてサービスを継続することなった場合を想定する。この場合、端末５１の処理性能は、十分なため、プロセス６９の実行端末を切り替えないで、端末５１、５２中に、プロセスの接続先が直接Ｉ／Ｏ機能６０、６７とならないよう、ｐｒｏｘｙとして中継する中継機能５３、５４を設置する。
【００２９】
次に、本第２実施形態による入出力端末切替システムの動作について説明する。
図４は、本第２実施形態による入出力端末切替システムの動作を説明するためのシーケンス図である。端末５１において、中継機能５３内のリソース情報収集機能５６は、Ｉ／Ｏ処理の要求を中継し、その履歴を保存することで、Ｉ／Ｏリソース識別子や、ＧＵＩウインドウのサイズ等のリソース情報と、Ｉ／Ｏ機能６０への接続を識別するためのセッション情報といった大きく２つの情報群を抽出して、データベース５７に保存する（ステップＳｂ１）。
【００３０】
ここで、プロセス６９を停止して端末切り替えのトリガをかけると（ステップＳｂ２）、端末５１のリソース情報収集機能５６は、切り替えのために追加取得する必要のある最新画像データ等を、Ｉ／Ｏ機能６０に直接アクセスして取得する（ステップＳｂ３）。また、追加データをデータベース５７に追加した上で、全データをＩ／Ｏリソース関連情報として、それぞれの端末５１、５２の端末間通信機能５９、６６を経由して、端末５２の中継機能５４内のリソース情報収集機能６３に転送し、データベース６４に登録する（ステップＳｂ４）。端末５２のリソース再現機能６５は、Ｉ／Ｏ機能６７との間で新たなセッションを構築し、受信したＩ／Ｏリソース関連情報を元にリソース情報、セッション情報をＩ／Ｏ機能６７に対して設定する（ステップＳｂ５）。
【００３１】
ここで、端末５２中の端末間通信機能６６は、端末５１中のプロセス６９と接続するため、端末５１中の端末間通信機能５９と通信し、これ以降の全てのＩ／Ｏ処理要求は、端末間通信機能５９と端末間通信機能６６のいずれか一方、または両方を経由するようになる。端末間通信機能５９、６６は、Ｉ／Ｏ処理要求を受信すると、それぞれの端末内のデータベース５７、６４中のセッション情報を参照して、入出力端末切り替えを行おうとしているセッションに該当する場合に、Ｉ／Ｏ機能６７−端末間通信機能６６−端末間通信機能５９−プロセス６９の経路で双方向にルーティングできるよう設定する（ステップＳｂ６）。
【００３２】
ここで、端末５１でプロセス６９を再開し（ステップＳｂ７）、上記ルーティング設定の完了をＩＤ変換機能６２が検知すると、端末５２は、データベース６４中のリソース情報、セッション情報を参照して、これ以降にＩＤ変換機能６２を経由する全てのＩ／Ｏ処理要求に記載されているリソースＩＤや、セッション固有のパラメータを、古い遷移元と新たな遷移先との二系統の間で書き換える処理を開始する（ステップＳｂ８）。すなわち、図３に示すように、旧リソースＩＤ：旧パラメータ＝ＡＡ：ａａの組と、新リソースＩＤ：新パラメータ＝ＢＢ：ｂｂの組の間で変換を行う。
【００３３】
このようにして、ユーザは、Ｉ／Ｏ機能６７−端末間通信機能６６−端末間通信機能５９−プロセス６９の経路で接続し、端末５２のＩ／Ｏ機能６７に切り替えてサービスを継続することができる（ステップＳｂ９）。なお、再び、端末５１のＩ／Ｏ機能６０に戻してサービスを継続したい場合には、上記記述中の「端末５１」と「端末５２」を入れ替えた内容（図の数字表記は異なる）で同様の処理を行えばよい。
【００３４】
Ｃ．第３実施形態
次に、本発明の第３実施形態について説明する。
図５は、本第３実施形態による入出力端末切替システムの構成を示すブロック図である。本第３実施形態は、図１に示す構成をベースとし、ユーザが利用するサービスのプロセスを遷移する場合のシステム構成である。図５において、端末１０１（Ａ）及び端末１０２（Ｂ）は、ディスプレイ、スピーカ、ボタン、キーボード、マウス等のうちの幾つかのＩ／Ｏ機器を備えた端末である。該端末１０１（Ａ）及び端末１０２（Ｂ）は、各々、ＩＤ変換機能１０５、１１２、リソース情報収集機能１０６、１１３、データベース１０７、１１４、リソース再現機能１０８、１１５、端末間通信機能１０９、１１６からなる中継機能１０３、１０４と、プロセス１１９、１２０、サービスＨＯ機能１２１、１２２、Ｉ／Ｏ機能１１０、１１７、Ｉ／Ｏリソース１１１、１１８から構成される。各機能ブロック間では、データ通信等でプログラム命令や、データなどが授受される。なお、これらの機能セットは、入出力端末切り替えを双方向で実現するために端末１０１及び端末１０２で同じものとしている。したがって、片方向の切り替えの際には、後述する動作の説明でするように、一方の端末中で、このうちの幾つかの機能が実行されない。
【００３５】
本第３実施形態では、ユーザが端末１０１のディスプレイ、キーボード等のＩ／Ｏ機能１１０を使ってサービスアプリケーションのプロセス１１９を利用していて、急遽、端末１０２のＩ／Ｏ機能１１７に切り替えてサービスを継続することになり、端末１０１の処理性能が不十分なため、プロセス１１９の実行端末を切り替える場合を想定する。この場合、端末１０１、１０２中に、プロセスの接続先が直接Ｉ／Ｏ機能１１０、１１７とならないよう、ｐｒｏｘｙとして中継する中継機能１０３、１０４を設置する。
【００３６】
次に、本第３実施形態による入出力端末切替システムの動作について説明する。
図６は、本第３実施形態による入出力端末切替システムの動作を説明するためのシーケンス図である。端末１０１において、中継機能１０３内のリソース情報収集機能１０６は、Ｉ／Ｏ処理の要求を中継し、その履歴を保存することで、Ｉ／Ｏリソース識別子や、ＧＵＩウインドウのサイズ等のリソース情報と、Ｉ／Ｏ機能１１０への接続を識別するためのセッション情報といった大きく２つの情報群を抽出して、データベース１０７に保存する（ステップＳｃ１）。
【００３７】
ここで、プロセス１１９を停止して端末切り替えのトリガをかけると（ステップＳｃ２）、端末１０１のリソース情報収集機能１０６は、切り替えのために追加取得する必要のある最新画像データ等をＩ／Ｏ機能１１０に直接アクセスして取得する（ステップＳｃ３）。また、追加データをデータベース１０７に追加した上で、全データをＩ／Ｏリソース関連情報として、それぞれの端末１０１、１０２の端末間通信機能１０９、１１６を経由して、端末１０２の中継機能１０４内のリソース情報収集機能１１３に転送し、データベース１１４に登録する（ステップＳｃ４）。端末１０２のリソース再現機能１１５は、Ｉ／Ｏ機能１１７との間で新たなセッションを構築し、受信したＩ／Ｏリソース関連情報を元にリソース情報、セッション情報をＩ／Ｏ機能１１７に対して設定する（ステップＳｃ５）。
【００３８】
ここで、実行中のプロセス１１９（遷移先ではプロセス１２０）は、サービスＨＯ機能１２１、１２２と連携し、端末１０１から端末１０２へプロセス遷移する（ステップＳｃ６）。サービスハンドオーバに適用する技術は、関連技術で規定される技術の他、ＪＡＶＡ（登録商標）や、ＶＭｗａｒｅのプロセスマイグレーション等、何でも良く限定しない。
【００３９】
ここで、端末１０２中の端末間通信機能１１６は、上記サービスＨＯによって外部のプロセスと接続する必要がなくなっているため、端末内部のルーティング設定を行う（ステップＳｃ７）。すなわち、端末間通信機能１１６がＩ／Ｏ処理要求を受信すると、データベース１１４中のセッション情報を参照して、入出力端末切り替えを行おうとしているセッションに該当する場合に、Ｉ／Ｏ機能１１７−端末間通信機能１１６−プロセス１２０の経路で双方向にルーティングできるよう設定する。
【００４０】
ここで、プロセス１２０を再開し（ステップＳｃ８）、上記ルーティング設定の完了をＩＤ変換機能１１２が検知すると、データベース１１４中のリソース情報、セッション情報を参照して、これ以降にＩＤ変換機能１１２を経由する全てのＩ／Ｏ処理要求に記載されているリソースＩＤや、セッション固有のパラメータを、古い遷移元と新たな遷移先との二系統の間で書き換える処理を開始する（ステップＳｃ９）。すなわち、図５に示すように、旧リソースＩＤ：旧パラメータ＝ＡＡ：ａａの組と、新リソースＩＤ：新パラメータ＝ＢＢ：ｂｂの組の間で変換を行う。
【００４１】
このようにして、ユーザは、Ｉ／Ｏ機能１１７−端末間通信機能１１６−プロセス１２０の経路で接続し、端末１０２のＩ／Ｏ機能１１７に切り替えてサービスを継続することができる（ステップＳｃ１０）。なお、再び、端末１０１のＩ／Ｏ機能１１０に戻してサービスを継続したい場合には、上記記述中の「端末１０１」と「端末１０２」を入れ替えた内容（図の数字表記は異なる）で同様の処理を行う。
【００４２】
Ｄ．第４実施形態
次に、本発明の第４実施形態について説明する。
本第４実施形態では、ユーザが利用するサービスのプロセスを遷移するが、入出力を切り替えない場合について説明する。なお、本第４実施形態による入出力端末切替システムは、図５に示す構成と同じであるので説明を省略する。本第４実施形態では、ユーザが端末Ａ１０１のディスプレイ、キーボード等のＩ／Ｏ機能１１０を使ってサービスアプリケーションのプロセス１１９を利用していて、急遽、処理性能が不十分なためプロセス１１９の実行端末を切り替える一方、入出力は端末Ａ１０１のままでサービスを継続する場合を想定する。この場合、端末１０１、１０２中に、プロセスの接続先が、直接、Ｉ／Ｏ機能１１０、１１７とならないよう、ｐｒｏｘｙとして中継する中継機能１０３、１０４を設置する。
【００４３】
図７は、本第４実施形態による入出力端末切替システムの動作を説明するためのシーケンス図である。端末１０１において、中継機能１０３内のリソース情報収集機能１０６は、Ｉ／Ｏ処理の要求を中継し、その履歴を保存することで、Ｉ／Ｏリソース識別子や、ＧＵＩウインドウのサイズ等のリソース情報と、Ｉ／Ｏ機能１１０への接続を識別するためのセッション情報といった大きく２つの情報群を抽出して、データベース１０７に保存する（ステップＳｄ１）。
【００４４】
ここで、プロセス１１９を停止して端末切り替えのトリガをかけると（ステップＳｄ２）、端末１０１のリソース情報収集機能１０６は、切り替えのために追加取得する必要のある最新画像データ等をＩ／Ｏ機能１１０に直接アクセスして取得する（ステップＳｄ３）。また、追加データをデータベース１０７に追加した上で、全データをＩ／Ｏリソース関連情報として、それぞれの端末１０１、１０２の端末間通信機能１０９、１１６を経由して、端末１０２の中継機能１０４内のリソース情報収集機能１１３に転送し、データベース１１４に登録する（ステップＳｄ４）。端末１０２のリソース再現機能１１５は、Ｉ／Ｏ機能１１７との間で新たなセッションを構築し、受信したＩ／Ｏリソース関連情報を元にリソース情報、セッション情報をＩ／Ｏ機能１１７に対して設定する（ステップＳｄ５）。
【００４５】
ここで、実行中のプロセス１１９（遷移先ではプロセス１２０）は、サービスＨＯ機能１２１、１２２と連携し、端末１０１から端末１０２へプロセス遷移する（ステップＳｄ６）。サービスハンドオーバに適用する技術は、関連技術で規定される技術の他、ＪＡＶＡ（登録商標）や、ＶＭｗａｒｅのプロセスマイグレーション等、何でも良く限定しない。
【００４６】
ここで、端末１０２中のプロセス１２０は、入出力を端末１０１のままでサービス継続するため、端末１０１中のＩ／Ｏ機能１１０と接続する。このため、端末１０２中の端末間通信機能１１６は、端末１０１中の端末間通信機能１０９と通信し、これ以降の全てのＩ／Ｏ処理要求は、端末間通信機能１０９と端末間通信機能１１６のいずれか一方、または両方を経由するようになる。端末間通信機能１０９、１１６は、Ｉ／Ｏ処理要求を受信すると、それぞれの端末内のデータベース１０７、１１４中のセッション情報を参照して、端末切り替えを行おうとしているセッションに該当する場合に、Ｉ／Ｏ機能１１０−端末間通信機能１０９−端末間通信機能１１６−プロセス１２０の経路で双方向にルーティングできるよう設定する（ステップＳｄ７）。
【００４７】
ここで、プロセス１２０を再開し（ステップＳｄ８）、上記ルーティング設定の完了をＩＤ変換機能１１２が検知すると、データベース１１４中のリソース情報、セッション情報を参照して、これ以降にＩＤ変換機能１１２を経由する全てのＩ／Ｏ処理要求に記載されているリソースＩＤや、セッション固有のパラメータを、古い遷移元と新たな遷移先との二系統の間で書き換える処理を開始する（ステップＳｄ９）。すなわち、図５に示すように、旧リソースＩＤ：旧パラメータ＝ＡＡ：ａａの組と、新リソースＩＤ：新パラメータ＝ＢＢ：ｂｂの組との間で変換を行う。
【００４８】
このようにして、ユーザは、Ｉ／Ｏ機能１１０−端末間通信機能１０９−端末間通信機能１１６−プロセス１２０の経路で接続し、端末１０２にプロセス実行を切り替えてサービスを継続することができる（ステップＳｄ１０）。なお、再び、端末１０１にプロセス実行を戻してサービスを継続したい場合には、上記記述中の「端末１０１」と「端末１０２」を入れ替えた内容（図の数字表記は異なる）で同様の処理を行う。
【００４９】
Ｅ．他の実施形態
次に、本発明の他の実施形態について説明する。
上述した第２実施形態では、プロセス遷移しない場合に、図３に示す構成で、ＩＤ変換機能６２にて、Ｉ／Ｏリソース６１、６８に関するＩＤを遷移元、遷移先二系統の間で変換する処理を行うが、これらは遷移先の機能ブロックにて実行している。これは、遷移元のＩＤ変換機能５５にて実行するよう変更しても良い。
【００５０】
また、上述した第１乃至第４実施形態では、Ｉ／Ｏ処理のセッション毎に入出力端末を切り替える方式となっているので、個々の端末の性能情報に基づいて、映像は端末１、５１、１０１で扱い、音声は端末２、５２、１０２で扱うといったように、入出力を複数の端末の組み合わせで実行することも可能である。
【００５１】
Ｆ．実施例
次に、上述した第２実施形態、第３実施形態において、Ｘ  Ｗｉｎｄｏｗシステム上の入出力遷移の例について、図８、図９を参照して説明する。
【００５２】
Ｆ−１．第１実施例
図８は、上述した第２実施形態（図３の構成）において、Ｘ  Ｗｉｎｄｏｗシステム上の入出力を遷移する場合について説明するブロック図である。ユーザは、Ｘ  Ｗｉｎｄｏｗシステムベースの端末２２１（Ａ）を使っている。今、ユーザがディスプレイ、キーボード等の入出力機器を制御するＸサーバ２３０を用いて、Ｘクライアント２３９に相当するサービスアプリケーションのプロセスを利用しており、急遽、端末２２２（Ｂ）のＸサーバ２３７に切り替えてサービスを継続することになった場合を想定し、端末２２１の処理性能は十分なため、Ｘクライアント２３９の実行端末は切り替えないとする。そこで、端末２２１、２２２中に、プロセスの接続先が直接、Ｘサーバ２３０、２３７とならないよう、ｐｒｏｘｙとして中継する中継機能２２３、２２４を設置し、環境変数の指定等でプロセスの接続先を中継機能２２３、２２４としておく。
【００５３】
まず、端末２２１において、中継機能２２３内のリソース情報収集機能２２６は、Ｉ／Ｏ処理の要求を中継し、その履歴を保存することで、Ｉ／Ｏリソース識別子や、ＧＵＩウインドウのサイズ等のリソース情報と、Ｘサーバ２３０への接続を識別するためのセッション情報といった大きく２つの情報群を抽出して、データベース２２７に保存する。
【００５４】
ここで、Ｘクライアント２３９を停止して端末切り替えのトリガをかけると、リソース情報収集機能２２６は、切り替えのために追加取得する必要のある最新画像データ等をＸサーバ２３０に直接アクセスして取得する。また、追加データをデータベース２２７に追加した上で、全データをＩ／Ｏリソース関連情報としてそれぞれの端末の端末間通信機能２２９、２３６を経由して端末Ｂ２２２の中継機能２２４内のリソース情報収集機能２３３に転送し、データベース２３４に登録する。リソース再現機能２３５は、Ｘサーバ２３７との間で新たなセッションを構築し、受信したＩ／Ｏリソース関連情報を元にリソース情報、セッション情報をＸサーバ２３７に対して設定する。
【００５５】
ここで、端末２２２中の端末間通信機能２３６は、端末２２１中のＸクライアント２３９と接続するため、端末２２１中の端末間通信機能２２９と通信し、これ以降の全てのＩ／Ｏ処理要求は、端末間通信機能２２９と端末間通信機能２３６のいずれか一方、または両方を経由するようになる。端末間通信機能２２９、２３６は、Ｉ／Ｏ処理要求を受信すると、それぞれの端末２２１、２２３内のデータベース２２７、２３４中のセッション情報を参照して、入出力端末切り替えを行おうとしているセッションに該当する場合に、Ｘサーバ２３７−端末間通信機能２３６−端末間通信機能２２９−Ｘクライアント２３９の経路で双方向にルーティングできるよう設定する。
【００５６】
ここで、Ｘクライアント２３９を再開し、上記ルーティング設定の完了をＩＤ変換機能２３２が検知すると、データベース２３４中のリソース情報、セッション情報を参照して、これ以降にＩＤ変換機能２３２を経由する全てのＩ／Ｏ処理要求に記載されているリソースＩＤや、セッション固有のシーケンスナンバー（＃）を、古い遷移元と新たな遷移先との二系統の間で書き換える処理を開始する。すなわち、図８に示すように、旧リソースＩＤ：旧シーケンス＃＝０ｘ０３ｃ１：０ｘ００３６の組と、新リソースＩＤ：新シーケンス＃＝０ｘ０４ｄ０：０ｘ０００１の組との間で変換を行う。
【００５７】
このようにして、ユーザは、Ｘサーバ２３７−端末間通信機能２３６−端末間通信機能２２９−Ｘクライアント２３９の経路で接続し、端末２２２のＸサーバ２３７に切り替えてサービスを継続することができる。
【００５８】
なお、再び、端末２２１のＸサーバ２３０に戻してサービスを継続したい場合には、上記記述中の「端末２２１」と「端末２２２」を入れ替えた内容（図の数字表記は異なる）で同様の処理を行えばよい。
【００５９】
Ｆ−２．第２実施例
図９は、上述した第３実施形態（図５の構成）において、Ｘ  Ｗｉｎｄｏｗシステム上の入出力を遷移する場合について説明するブロック図である。ユーザは、Ｘ  Ｗｉｎｄｏｗシステムベースの端末２７１（Ａ）を使っている。今、ユーザがディスプレイ、キーボード等の入出力機器を制御するＸサーバ２８０を用いて、Ｘクライアント２８９に相当するサービスアプリケーションのプロセスを利用しており、急遽、端末２７２（Ｂ）のＸサーバ２８７に切り替えてサービスを継続することになった場合を想定し、端末２７１の処理性能が不十分なため、Ｘクライアント２８９の実行端末を切り替えるとする。そこで、端末２７１、２７２中に、プロセスの接続先が直接、Ｘサーバ２８０、２８７とならないよう、ｐｒｏｘｙとして中継する中継機能２７３、２７４を設置し、環境変数の指定等でプロセスの接続先を中継機能２７３、２７４としておく。
【００６０】
まず、端末２７１において、中継機能２７３内のリソース情報収集機能２７６は、Ｉ／Ｏ処理の要求を中継し、その履歴を保存することで、Ｉ／Ｏリソース識別子や、ＧＵＩウインドウのサイズ等のリソース情報と、Ｘサーバ２８０への接続を識別するためのセッション情報といった大きく２つの情報群を抽出して、データベース２７７に保存する。
【００６１】
ここで、Ｘクライアント２８９を停止して端末切り替えのトリガをかけると、リソース情報収集機能２７６は、切り替えのために追加取得する必要のある最新画像データ等をＸサーバ２８０に直接アクセスして取得する。また、追加データをデータベース２７７に追加した上で、全データをＩ／Ｏリソース関連情報として、それぞれの端末２７１、２７２の端末間通信機能２７９、２８６を経由して、端末２７２の中継機能２７４内のリソース情報収集機能２８３に転送し、データベース２８４に登録する。リソース再現機能２８５は、Ｘサーバ２８７との間で新たなセッションを構築し、受信したＩ／Ｏリソース関連情報を元にリソース情報、セッション情報をＸサーバ２８７に対して設定する。
【００６２】
ここで、実行中のＸクライアント２８９（遷移先ではＸクライアント２９０）は、サービスＨＯ機能２９１、２９２と連携し、端末２７１から端末２７２へプロセス遷移する。サービスハンドオーバに適用する技術は、関連技術で規定される技術の他、ＪＡＶＡ（登録商標）や、ＶＭｗａｒｅのプロセスマイグレーション等、何でも良く限定しない。
【００６３】
ここで、端末２７２中の端末間通信機能２８６は、上記サービスＨＯによって外部のプロセスと接続する必要がなくなっているため、端末内部のルーティング設定を行う。すなわち、端末２７２の端末間通信機能２８６がＩ／Ｏ処理要求を受信すると、データベース２８４中のセッション情報を参照して、入出力端末切り替えを行おうとしているセッションに該当する場合に、Ｘサーバ２８７−端末間通信機能２８６−Ｘクライアント２９０の経路で双方向にルーティングできるよう設定する。
【００６４】
ここで、プロセス２９０を再開し、上記ルーティング設定の完了をＩＤ変換機能２８２が検知すると、データベース２８４中のリソース情報、セッション情報を参照して、これ以降にＩＤ変換機能２８２を経由する全てのＩ／Ｏ処理要求に記載されているリソースＩＤや、セッション固有のシーケンスナンバー（＃）を、古い遷移元と新たな遷移先との二系統の間で書き換える処理を開始する。すなわち、図９に示すように、旧リソースＩＤ：旧シーケンス＃＝０ｘ０３ｃ１：０ｘ００３６の組と、新リソースＩＤ：新シーケンス＃＝０ｘ０４ｄ０：０ｘ０００１の組との間で変換を行う。
【００６５】
このようにして、ユーザは、Ｘサーバ２８７−端末間通信機能２８６−Ｘクライアント２９０の経路で接続し、端末２７２のＸサーバ２８７に切り替えてサービスを継続することができる。
【００６６】
なお、再び、端末２７１のＸサーバ２８０に戻してサービスを継続したい場合には、上記記述中の「端末２７１」と「端末２７２」を入れ替えた内容（図の数字表記は異なる）で同様の処理を行う。
【００６７】
上述した第１乃至第４実施形態によれば、ユーザが利用中の端末内ウインドウや、音声データ等のＩ／Ｏリソースを、異なる端末で継続利用する際に、Ｉ／Ｏ機能を含む環境全体を転送することなく実現できる。また、既存のＯＳが持つ機能を改造することなく実現できる。さらに、端末の処理性能に応じて、プロセス実行端末と入出力実行端末との遷移を全ての組み合わせ（（端末Ａ：端末Ｂ）＝（プロセス：入出力）、（なし：プロセス、入出力）、（入出力：プロセス））で実行可能である。
【図面の簡単な説明】
【００６８】
【図１】本発明の第１実施形態による入出力端末切替システムの構成を示すブロック図である。
【図２】本第１実施形態による入出力端末切替システムの動作を説明するためのシーケンス図である。
【図３】本第２実施形態による入出力端末切替システムの構成を示すブロック図である。
【図４】本第２実施形態による入出力端末切替システムの動作を説明するためのシーケンス図である。
【図５】本第３実施形態による入出力端末切替システムの構成を示すブロック図である。
【図６】本第３実施形態による入出力端末切替システムの動作を説明するためのシーケンス図である。
【図７】本第４実施形態による入出力端末切替システムの動作を説明するためのシーケンス図である。
【図８】第２実施形態（図３の構成）において、Ｘ  Ｗｉｎｄｏｗ上の入出力を遷移する場合について説明するブロック図である。
【図９】第３実施形態（図５の構成）において、Ｘ  Ｗｉｎｄｏｗ上の入出力を遷移する場合について説明するブロック図である。
【符号の説明】
【００６９】
１、２  端末
３、１０  ＩＤ変換機能
４、１１  リソース情報収集機能
５、１２  データベース
６、１３  リソース再現機能
７、１４  端末間通信機能
８、１５  Ｉ／Ｏ機能
９、１６  Ｉ／Ｏリソース
１７、１８  中継機能
５１、５２  端末
５３、５４  中継機能
５５、６２  ＩＤ変換機能
５６、６３  リソース情報収集機能
５７、６４  データベース
５８、６５  リソース再現機能
５９、６６  端末間通信機能
６０、６７  Ｉ／Ｏ機能
６１、６８  Ｉ／Ｏリソース
６９  プロセス
１０１、１０２  端末
１０３、１０４  中継機能
１０５、１１２  ＩＤ変換機能
１０６、１１３  リソース情報収集機能
１０７、１１４  データベース
１０８、１１５  リソース再現機能
１０９、１１６  端末間通信機能
１１０、１１７  Ｉ／Ｏ機能
１１１、１１８  Ｉ／Ｏリソース
１１９、１２０  プロセス
１２１、１２２  サービスＨＯ機能
２２１、２２２  端末
２２３、２２４  中継機能
２２５、２３２  ＩＤ変換機能
２２６、２３３  リソース情報収集機能
２２７、２３４  データベース
２２８、２３５  リソース再現機能
２２９、２３６  端末間通信機能
２３０、２３７  Ｘサーバ
２３１、２３８  Ｉ／Ｏリソース
２３９  Ｘクライアント
２７１、２７２  端末
２７３、２７４  中継機能
２７５、２８２  ＩＤ変換機能
２７６、２８３  リソース情報収集機能
２７７、２８４  データベース
２７８、２８５  リソース再現機能
２７９、２８６  端末間通信機能
２８０、２８７  Ｘサーバ
２８１、２８８  Ｉ／Ｏリソース
２８９、２９０  Ｘクライアント
２９１、２９２  サービスＨＯ機能
【図１】
2010049341.tif 000003
【図２】
2010049341.tif 000004
【図３】
2010049341.tif 000005
【図４】
2010049341.tif 000006
【図５】
2010049341.tif 000007
【図６】
2010049341.tif 000008
【図７】
2010049341.tif 000009
【図８】
2010049341.tif 000010
【図９】
2010049341.tif 000011