(57)【要約】【課題】内部デバイスを使ってネットワーク上の情報処理装置を遠隔操作できるデバイス制御装置を提供する。【解決手段】デバイス制御装置２０は内部デバイス４０を仮想化制御するデバイスとして識別するための仮想デバイス識別情報２０４を情報処理装置１０に送り、デバイス制御装置２０は、仮想デバイス識別情報２０４に応じて情報処理装置１０が内部デバイス４０を仮想化制御して当該内部デバイス４０との間で行われる、ＵＳＢデータを用いたデータ通信を中継し、さらに、中継されるＵＳＢデータを、内部デバイス４０とのデータ通信で用いられる第１のデータ形式と、情報処理装置１０とのデータ通信で用いられる第２のデータ形式とに変換する。【選択図】図１
2014102817.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して情報処理装置に接続されたデバイス制御装置であって、
前記デバイス制御装置が具備する所定の機能を当該デバイス制御装置に接続された内部デバイスとして識別させるための仮想デバイス識別情報を記憶する識別情報記憶手段と、
前記仮想デバイス識別情報を前記情報処理装置に送信する識別情報送信手段と、
前記情報処理装置が前記仮想デバイス識別情報に応じて識別した前記内部デバイスを、当該情報処理装置からの制御要求に従って制御する際、前記内部デバイスと前記デバイス制御装置との間のデータ通信は第１のデータ形式に変換し、前記情報処理装置と前記デバイス制御装置との間のデータ通信は第２のデータ形式に変換して制御する仮想化制御手段と、
を有することを特徴とするデバイス制御装置。
【請求項２】
前記デバイス制御装置において所定の接続操作が行われると、前記識別情報送信手段は、前記所定の接続操作に応じて前記仮想デバイス識別情報を前記情報処理装置に送信することを特徴とする請求項１に記載のデバイス制御装置。
【請求項３】
前記デバイス制御装置において所定の終了操作が行われると、前記仮想化制御手段は、前記内部デバイスの制御を終了することを特徴とする請求項２に記載のデバイス制御装置。
【請求項４】
前記デバイス制御装置にデバイスが接続された場合、
前記識別情報送信手段は、さらに、当該デバイスから送られてくる個体識別情報を前記情報処理装置に送信し、
前記仮想化制御手段は、さらに、前記情報処理装置が前記個体識別情報に応じて識別した前記デバイスを、当該情報処理装置からの制御要求に従って制御することを特徴とする請求項１乃至３のいずれか１項に記載のデバイス制御装置。
【請求項５】
情報処理装置と、請求項１乃至４のいずれか１項に記載のデバイス制御装置と、を備えることを特徴とするデバイス制御システム。
【請求項６】
ネットワークを介して情報処理装置に接続されたデバイス制御装置の制御方法であって、
前記デバイス制御装置には、前記デバイス制御装置が具備する所定の機能を当該デバイス制御装置に接続された内部デバイスとして識別させるための仮想デバイス識別情報を記憶する識別情報記憶手段が備えられ、
前記仮想デバイス識別情報を前記情報処理装置に送信する識別情報送信ステップと、
前記情報処理装置が前記仮想デバイス識別情報に応じて識別した前記内部デバイスを、当該情報処理装置からの制御要求に従って制御する際、前記内部デバイスと前記デバイス制御装置との間のデータ通信は第１のデータ形式に変換し、前記情報処理装置と前記デバイス制御装置との間のデータ通信は第２のデータ形式に変換して制御する仮想化制御ステップと、
を有することを特徴とする制御方法。
【請求項７】
前記デバイス制御装置において所定の接続操作が行われると、前記識別情報送信ステップでは、前記所定の接続操作に応じて前記仮想デバイス識別情報を前記情報処理装置に送信することを特徴とする請求項６に記載の制御方法。
【請求項８】
前記デバイス制御装置において所定の終了操作が行われると、前記仮想化制御ステップでは、前記内部デバイスの制御を終了することを特徴とする請求項７に記載の制御方法。
【請求項９】
前記デバイス制御装置にデバイスが接続された場合、
前記識別情報送信ステップでは、さらに、当該デバイスから送られてくる個体識別情報を前記情報処理装置に送信し、
前記仮想化制御ステップでは、さらに、前記情報処理装置が前記個体識別情報に応じて識別した前記デバイスを、当該情報処理装置からの制御要求に従って制御することを特徴とする請求項６乃至８のいずれか１項に記載の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介して接続された情報処理装置から送られる各種要求を処理するためのデバイス制御装置、その制御方法、及びデバイス制御システムに関する。
【背景技術】
【０００２】
近年、ネットワークの普及により、プリンタ、ストレージ、及びスキャナ等のデバイスを、ネットワーク上の情報処理装置であるクライアントＰＣがデバイスサーバを介して共有デバイスとして利用することが行われ、その実現方法がいくつか提案されている。
【０００３】
例えば、本出願人は、デバイスサーバがデバイスサーバ自身にローカル接続されたデバイスの動作状態の変化を監視して、デバイスの状態変化を検知すると状態変化の検知結果を示す情報をクライアントＰＣに通知し、この検知結果を示す情報により、クライアントＰＣは必要に応じてデバイスがローカル接続されたものと認識して、デバイスの制御（以下、「仮想化制御」と呼ぶ。）を行うデバイス制御システムを提案している（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】国際公開第２０１１／０５５８３１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、出願人自らが先に提案した特許文献１に記載のデバイス制御システムにおいて、例えば、プリンタや複合機等のデバイスに具備されている操作パネル（キーボード、テンキー等）からネットワーク上のクライアントＰＣを遠隔操作して印刷やスキャンを実行させたい場合がある。
【０００６】
そこで、本発明は、デバイスが備えている入力装置（キーボードやテンキー等）や表示装置（以下、「内部デバイス」と呼ぶ）を使ってネットワーク上のクライアントＰＣ（情報処理装置）を遠隔操作できるデバイス制御装置、その制御方法、及びデバイス制御システムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記の目的を達成するため、本発明によるデバイス制御装置は、ネットワークを介して情報処理装置に接続されたデバイス制御装置であって、前記デバイス制御装置が具備する所定の機能を当該デバイス制御装置に接続された内部デバイスとして識別させるための仮想デバイス識別情報を記憶する識別情報記憶手段と、前記仮想デバイス識別情報を前記情報処理装置に送信する識別情報送信手段と、前記情報処理装置が前記仮想デバイス識別情報に応じて識別した前記内部デバイスを、当該情報処理装置からの制御要求に従って制御する際、前記内部デバイスと前記デバイス制御装置との間のデータ通信は第１のデータ形式に変換し、前記情報処理装置と前記デバイス制御装置との間のデータ通信は第２のデータ形式に変換して制御する仮想化制御手段と、を有することを特徴とする。
【０００８】
本発明によるデバイス制御システムは、情報処理装置と、上記のデバイス制御装置と、を備えることを特徴とする。
【０００９】
本発明による制御方法は、ネットワークを介して情報処理装置に接続されたデバイス制御装置の制御方法であって、前記デバイス制御装置には、前記デバイス制御装置が具備する所定の機能を当該デバイス制御装置に接続された内部デバイスとして識別させるための仮想デバイス識別情報を記憶する識別情報記憶手段が備えられ、前記仮想デバイス識別情報を前記情報処理装置に送信する識別情報送信ステップと、前記情報処理装置が前記仮想デバイス識別情報に応じて識別した前記内部デバイスを、当該情報処理装置からの制御要求に従って制御する際、前記内部デバイスと前記デバイス制御装置との間のデータ通信は第１のデータ形式に変換し、前記情報処理装置と前記デバイス制御装置との間のデータ通信は第２のデータ形式に変換して制御する仮想化制御ステップと、を有することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、デバイス制御装置が具備する所定の機能である内部デバイスをネットワークを介して情報処理装置から仮想化制御する際に、内部デバイスと当該デバイス制御装置との間のデータ通信は第１のデータ形式に変換し、情報処理装置と当該デバイス制御装置との間のデータ通信は第２のデータ形式に変換するため、内部デバイスを使ってネットワーク上の情報処理装置を操作することが可能になる。
【図面の簡単な説明】
【００１１】
【図１】本発明の第１の実施の形態に係るデバイス制御システムの一例の構成を概略的に示すブロック図である。
【図２】図１に示す仮想デバイス識別情報の一例を示す図である。
【図３】図１に示すデバイス制御システムにおいて情報処理装置がデバイス制御装置に備えられた内部デバイスを仮想化制御する際の動作を説明するためのシーケンス図である。
【図４】図１に示す表示装置に表示される操作画面の一例を示す図である。
【図５】図１に示すデバイス制御システムにおいて情報処理装置がデバイス制御装置に接続された外部デバイスを仮想化制御する際の動作を説明するためのシーケンス図である。
【図６】図１に示す情報処理装置によって行われる処理を説明するためのフローチャートである。
【図７】図１に示すデバイス制御装置によって行われる外部デバイスに係る処理を説明するためのフローチャートである。
【図８】図１に示すデバイス制御装置で行われる内部デバイスに係る処理を説明するためのフローチャートである。
【図９】本発明の第２の実施の形態によるデバイス制御システムの一例の構成を概略的に示すブロック図である。
【図１０】図９に示すデバイス制御システムにおいて記憶装置及びタッチパネルを情報処理装置から仮想化制御する際の処理を説明するためのシーケンス図である。
【図１１】図９に示すデバイス制御装置のタッチパネルに表示される操作画面の一例を示す図である。
【図１２】図９に示すタッチパネルに情報処理装置で起動したアプリケーションの画面が表示された状態の一例を示す図である。
【図１３】図９に示すタッチパネルに表示される暗号情報入力画面の一例を示す図である。
【図１４】図９に示すデバイス制御システムにおいて記憶装置及びタッチパネルを情報処理装置から仮想化制御し、ＭＦＰが備えるプリンタ及びスキャナを使用する際の処理を説明するためのシーケンス図である。
【発明を実施するための形態】
【００１２】
以下、本発明の実施の形態によるデバイス制御システムの一例について図面を参照して説明する。
【００１３】
[第１の実施の形態]
図１は、本発明の第１の実施の形態に係るデバイス制御システムの一例の構成を概略的に示すブロック図である。
【００１４】
図示のデバイス制御システムにおいては、情報処理装置１０がローカルエリアネットワーク（ＬＡＮ）を介してデバイス制御装置２０に接続されている。ＬＡＮは有線回線又は無線回線で構成される。そして、デバイス制御装置２０には、例えば、通信インターフェース（例えば、ＵＳＢ又はＨＤＭＩ（登録商標））によって外部デバイス３０がローカル接続されている。
【００１５】
情報処理装置１０は、ユーザによって利用されるパーソナルコンピュータ（ＰＣ）等の装置であって、情報処理装置１０にはデバイス制御装置２０に接続された外部デバイス３０及びデバイス制御装置２０に備えられた内部デバイス４０を制御するためのデバイスドライバ１０２がインストールされている。このデバイスドライバ１０２は、一般に製造会社によって提供されるソフトウェアであって、情報処理装置１０は各デバイスに対応したデバイスドライバ１０２によって上記の内部デバイス４０及び外部デバイス３０を制御することができる。
【００１６】
なお、デバイス制御装置２０には、情報処理装置１０において、デバイス制御装置２０に接続された外部デバイス３０及びデバイス制御装置２０に備えられた内部デバイス４０を、これらのデバイス３０，４０が当該情報処理装置１０へ直接的に接続（ローカル接続）されている際と同様に使用可能とする機能が備えられている。
【００１７】
前述のように、外部デバイス３０はデバイス制御装置２０にＵＳＢインターフェースによって外付けで接続されている。また、内部デバイス４０は内部バス２０６でデバイス制御装置２０の各ハードウェアへ接続されている。
【００１８】
なお、図１に示すデバイス制御システムにおいては、情報処理装置１０、デバイス制御装置２０、及び外部デバイス３０がそれぞれ１つのみ示されているが、情報処理装置１０、デバイス制御装置２０、及び外部デバイス３０の台数は図示の例に限定されるものではない。また、デバイス制御装置２０は、例えば、プリンタ又は複合機等のオフィス機器であるが、デバイス制御装置２０はオフィス機器に限定されるものではなく、様々な組込み装置、携帯電話機、又はモバイル端末機器であってもよい。
【００１９】
外部デバイス３０が備える通信インターフェースは、ＵＳＢ又はＨＤＭＩに限定されるものではない。また、図示の例では、内部デバイス４０は入力装置２０８及び表示装置２１０を備えているが、入力装置２０８として表示装置２１０に備えられたタッチパネルを用いるようにしてもよい。
【００２０】
さらに、デバイス制御装置２０に外部デバイス３０を接続せず、デバイス制御システムを情報処理装置１０及びデバイス制御装置２０のみで構成するようにしてもよい。
【００２１】
図１には示されていないが、情報処理装置１０は、ハードウェア構成として、ＣＰＵ、入力部、表示部、メモリ、通信部、及び記憶部等を備え、これらハードウェアは内部バスで相互に接続されている。
【００２２】
ＣＰＵは情報処理装置１０全体の制御を司る。入力部は、例えば、キーボード及びマウスを備えている。表示部として、例えば、液晶モニタが用いられる。メモリはＲＡＭ及びＲＯＭ等である。
【００２３】
通信部はＬＡＮに接続するためのインターフェースであって、デバイス制御装置２０とデータ送受信を行う。これにより、情報処理装置１０はデバイス制御装置２０にローカル接続された外部デバイス３０やデバイス制御装置２０に備えられた内部デバイス４０とデータ送受信することが可能となる。
【００２４】
記憶部１１には、ソフトウェアであるオペレーティングシステム（以下「ＯＳ」と呼ぶ：図示せず）、通信制御部１０４、仮想化制御部１０３、デバイスドライバ１０２、及びアプリケーション１０１が記憶されるとともに、他の機能に係るソフトウェアが記憶されている。なお、これらソフトウェアはメモリに読み出されて、ＣＰＵの制御に従い動作する。
【００２５】
アプリケーション１０１は、デバイスドライバ１０２に対してデータ入出力要求を指示することにより、外部デバイス３０及び内部デバイス４０を制御するためのソフトウェアである。
【００２６】
デバイスドライバ１０２は、ＯＳ又はアプリケーション１０１からのデータ入出力要求を、外部デバイス３０及び内部デバイス４０に応じたデータ形式のデータ（以下「制御コマンド」と呼ぶ）に変換して、当該制御コマンドを仮想化制御部１０３に送る。さらに、デバイスドライバ１０２は制御コマンドに対する応答をアプリケーション１０１に通知する。
【００２７】
仮想化制御部１０３は、デバイスドライバ１０２から送られた制御コマンド（つまり、データ入出力要求）をＵＳＢデータ形式に準拠したパケットデータ（以下「ＵＳＢデータ」と呼ぶ）に変換する。また、仮想化制御部１０３は通信制御部１０４から送られてくるＵＳＢデータを制御コマンドと同様のデータ形式に変換してデバイスドライバ１０２に送る。
【００２８】
さらに、仮想化制御部１０３は外部デバイス３０及び内部デバイス４０に対するデータ送受信要求に対して、外部デバイス３０及び内部デバイス４０が情報処理装置１０に直接的に接続（ローカル接続）されている際と同様の振る舞いをシミュレートする機能（以下「仮想化制御機能」と呼ぶ）を備えている。この仮想化制御機能により、情報処理装置１０は外部デバイス３０及び内部デバイス４０の接続状態が、これらのデバイス３０，４０をローカル接続した場合と同一の状態であると認識してデータの送受信を行うことができる。
【００２９】
通信制御部１０４は、仮想化制御部１０３から送られるＵＳＢデータとＬＡＮを介してデバイス制御装置２０と通信する際のネットワークパケットとの変換処理を行って、デバイス制御装置２０と情報処理装置１０の間でデータ送受信の制御を行う。また、通信制御部１０４は仮想化制御部１０３を介してアプリケーション１０１又はデバイスドライバ１０２から送られるデータ送受信要求に応じて、デバイス制御装置２０と情報処理装置１０の間のセッションの開始及び切断の制御を行う。
【００３０】
デバイス制御装置２０は、例えば、プリンタ又は複合機等の周辺機器であって、ハードウェア構成として、ＣＰＵ、メモリ、通信部、及び記憶部（ともに図示せず）等を備えるとともに、内部デバイス４０を備えている。図示の例では、内部デバイス４０（入出力デバイス）はユーザインターフェースとして用いられる入力装置２０８及び表示装置２１０を備えている。入力装置２０８及び表示装置２１０はそれぞれ入力インターフェース（Ｉ／Ｆ）２０７及びディスプレイＩ／Ｆ２０９によって内部バス２０６に接続されている。
【００３１】
ＣＰＵはデバイス制御装置２０全体の制御を司る。入力装置２０８は、例えば、キーボード、テンキー及びマウス等の入力機器若しくはこれらの機能をソフトウェアで実現したソフトウェアキーボード等である。表示装置２１０としては、例えば、液晶モニタが用いられる。メモリはＲＡＭ及びＲＯＭ等である。
【００３２】
通信部はＬＡＮに接続するためのインターフェースであって、情報処理装置１０とデータ送受信を行う。
【００３３】
記憶部には、ソフトウェアであるＯＳ（図示せず）、通信制御部２０１及び仮想化制御部２０２が記憶されるとともに、他の機能に係るソフトウェアが記憶されている。なお、これらソフトウェアはメモリに読み出されて、ＣＰＵの制御に従い動作する。
【００３４】
通信制御部２０１は、情報処理装置１０との間で行われる入出力データ等の送受信を制御する。仮想化制御部２０２は、デバイス制御装置２０に接続された外部デバイス３０及びデバイス制御装置２０に備えられた内部デバイス４０があたかも情報処理装置１０にローカル接続されているかのように情報処理装置１０へ認識させて制御できるようにするため、情報処理装置１０の仮想化制御部１０３からの制御要求に従って（連動して）外部デバイス３０及び内部デバイス４０の制御を行う。
【００３５】
仮想デバイス制御部２０３は、仮想デバイス識別情報２０４及びデータ形式変換処理部２０５を備えている。さらに、仮想デバイス制御部２０３は、デバイス制御装置２０に備えられた内部デバイス４０を仮想的なＵＳＢデバイスに切り替えるユーザインターフェース等の切替部（例えば、後述の図４参照）を備えている。
【００３６】
仮想デバイス識別情報２０４は、情報処理装置１０に内部デバイス４０を外部デバイス３０と同様に認識させるために用いられる。通常、内部デバイス４０である入力装置２０８及び表示装置２１０は、外部デバイス３０の個体識別情報に相当する情報を有していないので、情報処理装置１０は内部デバイス４０を認識することができない。
【００３７】
そこで、本実施の形態では、個体識別情報に相当する仮想デバイス識別情報２０４を入力装置２０８及び表示装置２１０の各々に割り当てて、情報処理装置１０に入力装置２０８及び表示装置２１０を外部デバイス３０と同様のＵＳＢデバイスとして認識させる。ここでは、ＵＳＢデバイスのデータ構造を定義する構成情報（以下「ＵＳＢディスクリプタ」と呼ぶ）を疑似的に作成したものを仮想デバイス識別情報２０４とする。仮想デバイス識別情報２０４は、仮想デバイス制御部２０３に予め記憶されたものであるが、仮想デバイス制御部２０３によって生成するようにしてもよい。
【００３８】
図２は、図１に示す仮想デバイス識別情報２０４の一例を示す図であり、仮想デバイス識別情報２０４はＵＳＢディスクリプタからなる。
【００３９】
入力装置２０８はキーボード及びマウスに対応し、表示装置２１０はディスプレイに対応している。これらキーボード、マウス、及びディスプレイをＵＳＢデバイスとして認識させるために、キーボード、マウス、及びディスプレイのそれぞれへ疑似的なＵＳＢディスクリプタ（つまり、仮想デバイス識別情報）を割り当てている。
【００４０】
図２に示す疑似的なＵＳＢディスクリプタは、ベンダーＩＤ、プロダクトＩＤ、シリアル番号、クラス、サブクラス、プロトコル、及びインターフェースから構成されている。
【００４１】
ベンダーＩＤは、各企業や製造会社毎に割り当てられる識別情報であり、プロダクトＩＤは、ベンダーＩＤを持つ企業や会社が各製品や機種毎に重複しないよう割り振るコードである。本実施の形態では、デバイス制御装置２０に割り当てられているベンダーＩＤ及びプロダクトＩＤが用いられる。
【００４２】
また、クラス、サブクラス、プロトコル、及びインターフェースは、キーボード、マウス、及びディスプレイ等デバイスの種類に応じてＵＳＢ規格で規定されている情報である。そして、ベンダーＩＤ及びプロダクトＩＤと、クラス、サブクラス、プロトコル、及びインターフェースとを関連付けた疑似的なＵＳＢディスクリプタが作成されて、仮想デバイス制御部２０３が仮想デバイス識別情報２０４として保持（記憶）する。  
【００４３】
ここで、入力装置２０８に対してユーザ操作等によって内部デバイス４０への接続を開始させるための接続操作が行われると、仮想デバイス制御部２０３は仮想デバイス識別情報２０４を仮想化制御部２０２に送る。一方、終了操作が行われると、仮想化制御部２０２は内部デバイス４０の仮想化制御を終了する。
【００４４】
データ形式変換処理部２０５は、仮想化制御部２０２から送られるＵＳＢデータ形式に準拠したパケットデータ（ＵＳＢデータ）と内部デバイス４０で処理可能なデータ形式のデータとの変換処理を行って、内部デバイス４０と接続された入力Ｉ／Ｆ２０７及びディスプレイＩ／Ｆ２０９と、情報処理装置１０との間のデータの送受信を可能にしている。
【００４５】
本実施の形態において、仮想デバイス制御部２０３は、キーボード及びマウス等の入力装置２０８に係る仮想デバイス識別情報２０４として、ＨＩＤクラスを識別したＵＳＢディスクリプタを仮想化制御部２０２に送る。また、データ形式変換処理部２０５は、入力装置２０８から入力された入力データをＨＩＤクラスのＵＳＢデータに変換し、入力Ｉ／Ｆ２０７を介して仮想化制御部２０２に送る。
【００４６】
さらに、仮想デバイス制御部２０３は、ディスプレイ等の表示装置２１０に係る仮想デバイス識別情報２０４として、ベンダー固有情報（ベンダークラス）を識別したＵＳＢディスクリプタを仮想化制御部２０２に送る。また、データ形式変換処理部２０５は、仮想化制御部２０２から送られるＵＳＢデータを表示装置２１０のデータ形式に変換して、ディスプレイＩ／Ｆ２０９を介して表示装置２１０に送る。
【００４７】
例えば、デバイス制御装置２０に備えられたタッチパネルからネットワーク上の情報処理装置１０を遠隔操作する際には、タッチパネルからの切り替え操作に応じて上述したような仮想デバイス識別情報２０４がネットワーク上の情報処理装置１０へ送られ、内部デバイス４０であるタッチパネルの制御（つまり、キーボード入力及びディスプレイ出力）がネットワーク上の情報処理装置１０からの仮想化制御に切り替わる。これにより、デバイス制御装置２０に備えられたタッチパネルからネットワーク上の情報処理装置１０を遠隔操作することができるようになる。
【００４８】
前述のように、内部デバイス４０は、入力装置２０８及び表示装置２１０等の入出力装置であって、入力装置２０８及び表示装置２１０はそれぞれ入力Ｉ／Ｆ２０７及びディスプレイＩ／Ｆ２０９を介して内部バス２０６に接続される。入力装置２０８は、キーボード、マウス、及びテンキー等からの入力を処理し、デバイス制御装置２０の操作の際に用いられる。
【００４９】
表示装置２１０には、例えば、液晶ディスプレイが用いられる。表示装置２１０はタッチパネルを備えるようにしてもよく、この場合には、表示装置２１０は入力部としての機能を備えることになる。内部バス２０６は、デバイス制御装置２０の各ブロックを相互に接続して各種のデータの送受信を行うとともに、電力を供給する。
【００５０】
外部デバイス３０は、例えば、キーボード、マウス、及びテンキー等の入力装置、ＣＲＴ又は液晶ディスプレイ等の表示装置、ＵＳＢメモリ等の記憶装置等であり、外部デバイス３０はデバイス制御装置２０にＵＳＢインターフェース等の通信Ｉ／Ｆ３０２によって接続される。
【００５１】
図３は、図１に示すデバイス制御システムにおいて情報処理装置１０がデバイス制御装置２０に備えられた内部デバイス４０を仮想化制御する際の動作を説明するためのシーケンス図である。
【００５２】
まず、デバイス制御装置２０からユーザ操作によって内部デバイス４０の仮想化制御を開始させる。
【００５３】
具体的には、ユーザは所定の操作によって表示装置２１０に操作画面を表示させ、入力装置２０８を操作（接続操作）して内部デバイス４０との接続を開始させる（ステップＳ１０１）。
【００５４】
図４は、表示装置２１０である操作パネルに表示される仮想化制御の開始、終了を指示する操作画面の一例を示す図である。
【００５５】
図４において、操作パネル４００やテンキー４１０でユーザが所定の操作を実行すると操作パネル４００上に操作画面が表示される。操作画面は、内部デバイス４０の仮想化制御の開始を指示する接続ボタン４０１、終了を指示する終了ボタン４０２、情報処理装置１０からの画面データを表示する画面表示領域４０３から構成される。
【００５６】
接続ボタン４０１をユーザが押下すると、情報処理装置１０による内部デバイス４０の仮想化制御が開始される。一方、終了ボタン４０２をユーザが押下すると、情報処理装置１０による内部デバイス４０の仮想化制御を終了させ、デバイス制御装置２０の操作パネル４００が通常の表示状態に切り替わる。画面表示領域４０３には、情報処理装置１０から送られてくる画面データが表示される。なお、この画面データは、データ形式変換処理部２０５によって画面表示領域４０３で表示できるデータ形式に変換されたものである。
【００５７】
図３のシーケンスの説明に戻り、ユーザが操作パネル４００の操作画面に表示される接続ボタン４０１を押下げると、仮想デバイス制御部２０３は、仮想化制御部２０２に入力装置２０８及び表示装置２１０の仮想デバイス識別情報２０４を送信して接続を通知する（識別情報送信：ステップＳ１０２）。続いて、仮想化制御部２０２は、情報処理装置１０に入力装置２０８及び表示装置２１０が接続された旨を通知する（ステップＳ１０３）。
【００５８】
情報処理装置１０は、仮想化制御部２０２及び仮想デバイス制御部２０３を介して入力装置２０８の仮想化制御を開始して、仮想化制御部２０２とデータ送受信（データ通信）を実行する（ステップＳ１０４）。そして、仮想化制御部２０２は仮想デバイス制御部２０３とデータ送受信を開始する（ステップＳ１０５）。
【００５９】
続いて、仮想デバイス制御部２０３は、入力Ｉ／Ｆ２０７を介して受信した入力データをＵＳＢデータ（第２のデータ形式）に変換して仮想化制御部２０２に送信する（ステップＳ１０６）。そして、入力装置２０８は、情報処理装置１０に対して入力待ち状態となる（ステップＳ１０７）。
【００６０】
情報処理装置１０は、仮想化制御部２０２及び仮想デバイス制御部２０３を介して表示装置２１０の仮想化制御を開始して、仮想化制御部２０２とデータ送受信を開始する（ステップＳ１０８）。そして、仮想化制御部２０２は仮想デバイス制御部２０３とデータ送受信を開始する（ステップＳ１０９）。
【００６１】
仮想デバイス制御部２０３のデータ形式変換処理部２０５は、仮想化制御部２０２から送られるＵＳＢデータを表示装置２１０のデータ形式（第１のデータ形式）に変換して、ディスプレイＩ／Ｆ２０９を介してデータ送受信を開始する（ステップＳ１１０）。そして、表示装置２１０は、情報処理装置１０から送られてくる画面データに応じた画面を表示する（ステップＳ１１１）。このように、仮想化制御部２０２及び仮想デバイス制御部２０３は内部デバイス４０と情報処理装置１０とのデータ通信を中継することになる。
【００６２】
仮想化制御が開始されると、図４の操作パネル４００の画面表示領域４０３に、情報処理装置１０から送られてくる画像データ（例えば、情報処理装置１０に接続された液晶モニタに表示される画像）が表示される。また、テンキー４１０等を操作することにより、情報処理装置１０に対して当該情報処理装置１０のキーボードやテンキーと同様の入力操作を行うことができる。
【００６３】
ユーザは、情報処理装置１０による内部デバイス４０の仮想化制御を終了させる場合、図４に示す操作パネル４００に表示されている終了ボタン４０２を押下する。（ステップＳ１１２）。これにより、仮想デバイス制御部２０３は、仮想化制御部２０２に制御終了を通知して、入力装置２０８及び表示装置２１０とのデータ送受信を終了する（ステップＳ１１３）。続いて、仮想化制御部２０２は、情報処理装置１０に内部デバイス４０の制御が終了された旨（終了通知）を通知する（ステップＳ１１４）。これにより、情報処理装置１０による内部デバイス４０の仮想化制御が終了し、デバイス制御装置２０の操作パネル４００が通常の表示状態に切り替わる。
【００６４】
図５は、図１に示すデバイス制御システムにおいて情報処理装置１０がデバイス制御装置２０に接続された外部デバイス３０を仮想化制御する際の動作を説明するためのシーケンス図である。
【００６５】
図示の例では、デバイス制御装置２０に外部デバイス３０をＵＳＢインターフェース等の通信Ｉ／Ｆ３０２で接続することによって仮想化制御が開始される。
【００６６】
まず、ユーザは外部デバイス３０をデバイス制御装置２０に接続する。これにより、外部デバイス３０の個体識別情報３０１がデバイス制御装置２０に送信されて外部デバイス３０が接続された旨が通知される（ステップＳ２０１）。
【００６７】
仮想化制御部２０２は、情報処理装置１０に対して外部デバイス３０が接続された旨を通知する（ステップＳ２０２）。当該通知により、情報処理装置１０は、仮想化制御部２０２を介して外部デバイス３０の仮想化制御を開始して、仮想化制御部２０２とデータ送受信を開始する（ステップＳ２０３）。
【００６８】
そして、仮想化制御部２０２は、外部デバイス３０と通信Ｉ／Ｆ３０２を介して（つまり、第３のデータ形式で）データ送受信を開始する（ステップＳ２０４）。次いで、デバイス制御装置２０を介して情報処理装置１０と外部デバイス３０との間のデータ送受信が完了した後、ユーザ操作等により、外部デバイス３０をデバイス制御装置２０から切断する（ステップＳ２０５）。デバイス制御装置２０の仮想化制御部２０２は、この切断を検知すると、情報処理装置１０に外部デバイス３０が切断された旨を通知する（ステップＳ２０６）。この通知によって情報処理装置１０による外部デバイス３０の仮想化制御が終了する。
【００６９】
図６は、図１に示す情報処理装置１０によって行われる仮想化制御処理を説明するためのフローチャートである。
【００７０】
情報処理装置１０では、デバイス接続の通知検出処理においてデバイス制御装置２０からデバイス接続の通知があるか否かを判定する（ステップＳ３０２）。デバイス接続の通知がないと（ステップＳ３０２において、ＮＯ）、情報処理装置１０は待機する。
【００７１】
一方、デバイス接続の通知があると（ステップＳ３０２において、ＹＥＳ）、情報処理装置１０はデバイス制御装置２０と仮想化制御を開始する（ステップＳ３０３）。そして、情報処理装置１０はデバイス制御装置２０とデータ送受信を開始する（ステップＳ３０４）。
【００７２】
続いて、情報処理装置１０は、デバイスの切断若しくは制御終了の検出処理において、デバイスの切断、若しくは制御終了の通知を受けたか否かを判定する（ステップＳ３０５）。デバイス接続中であれば（ステップＳ３０５において、ＮＯ）、情報処理装置１０はステップＳ３０４の処理に戻ってデバイス制御装置２０とのデータ送受信を継続する。
【００７３】
一方、デバイスの切断、若しくは制御終了の通知を受けると（ステップＳ３０５において、ＹＥＳ）、デバイス制御装置２０との仮想化制御を終了する（ステップＳ３０６）。そして、再びステップＳ３０２に戻ってデバイス接続の通知検出処理を再開する。
【００７４】
図７は、図１に示すデバイス制御装置２０によって行われる外部デバイス３０の仮想化制御に係る処理を説明するためのフローチャートである。
【００７５】
デバイス制御装置２０では、外部デバイス接続の通知検出処理において外部デバイス３０が接続されたか否かを検知する（ステップＳ４０２）。外部デバイス３０の接続が検知されないと（ステップＳ４０２において、ＮＯ）、デバイス制御装置２０は当該接続が検知されるまで待機する。
【００７６】
一方、外部デバイス３０の接続を検知すると（ステップＳ４０２において、ＹＥＳ）、デバイス制御装置２０は情報処理装置１０に外部デバイス３０が接続された旨を通知する（ステップＳ４０３）。そして、デバイス制御装置２０は、情報処理装置１０による外部デバイス３０の仮想化制御が開始されると（ステップＳ４０４）、情報処理装置１０と外部デバイス３０との間におけるデータ送受信を開始（中継）する（ステップＳ４０５）。
【００７７】
続いて、デバイス制御装置２０は、外部デバイス切断の検出処理において、外部デバイス３０が切断されたか否かを検知する（ステップＳ４０６）。外部デバイス３０が接続中であれば（ステップＳ４０６において、ＮＯ）、デバイス制御装置２０はステップＳ４０５の処理に戻って情報処理装置１０と外部デバイス３０とのデータ送受信を継続する。
【００７８】
一方、外部デバイス３０の切断を検知すると（ステップＳ４０６において、ＹＥＳ）、デバイス制御装置２０は情報処理装置１０で仮想化制御している外部デバイス３０との間のデータ送受信（中継）を終了して（ステップＳ４０７）、情報処理装置１０に対して外部デバイス３０が切断された旨を通知し、外部デバイス３０の仮想化制御を終了する（ステップＳ４０８）。そして、デバイス制御装置２０は、再びステップＳ４０２に戻って外部デバイス接続の検出処理を再開する。
【００７９】
図８は、図１に示すデバイス制御装置２０で行われる内部デバイス４０の仮想化制御に係る処理を説明するためのフローチャートであり、図４を参照しながら説明する。
【００８０】
まず、デバイス制御装置２０は、ユーザ操作により、図４で例示した操作画面を表示装置２１０の操作パネル４００に表示して、ユーザの入力を待つ（ステップＳ５０２）。そして、デバイス制御装置２０は、内部デバイスの接続検知処理によってユーザが接続ボタン４０１の押下等によって内部デバイス４０の接続を行ったか否かを判定する（ステップＳ５０３）。
【００８１】
内部デバイス４０の接続を検知しないと（ステップＳ５０３において、ＮＯ）、デバイス制御装置２０はステップＳ５０２の処理に戻って待機する。一方、図４で例示した接続ボタン４０１の押下等により内部デバイス４０の接続を検知すると（ステップＳ５０３において、ＹＥＳ）、デバイス制御装置２０は情報処理装置１０に内部デバイス４０が接続された旨を通知する（ステップＳ５０４）。そして、デバイス制御装置２０は情報処理装置１０と仮想化制御を開始する（ステップＳ５０５）。仮想化制御が開始されると、情報処理装置１０と内部デバイス４０の間でデータ通信が実行される。
【００８２】
続いて、デバイス制御装置２０のデータ形式変換処理部２０５は、情報処理装置１０に関する入出力データを受信すると、内部デバイス４０のデータ形式に変換して（ステップＳ５０６）、入力Ｉ／Ｆ２０７及びディスプレイＩ／Ｆ２０９を介して内部デバイス４０とのデータ送受信を開始する（ステップＳ５０７）。
【００８３】
次に、デバイス制御装置２０は、内部デバイスの制御終了検出処理によって内部デバイス４０の制御が終了されたか否かを検知する（ステップＳ５０８）。内部デバイス４０の制御終了を検知しないと、つまり、内部デバイス４０が接続中であると（ステップＳ５０８において、ＮＯ）、デバイス制御装置２０はステップＳ５０６の処理に戻って、データ形式の変換処理を継続する。
【００８４】
一方、図４で例示した終了ボタン４０２の押下等による内部デバイス４０の制御終了を検知すると（ステップＳ５０８において、ＹＥＳ）、デバイス制御装置２０は情報処理装置１０で仮想化制御している内部デバイス４０との間のデータ送受信（中継）を終了して（ステップＳ５０９）、情報処理装置１０に内部デバイス４０の制御が終了された旨を通知する（ステップＳ５１０）。これにより情報処理装置１０による内部デバイス４０の仮想化制御が終了し、デバイス制御装置２０の操作パネル４００が通常の表示状態に切り替わる。
【００８５】
上述のように、本発明の第１の実施の形態では、情報処理装置１０はデバイス制御装置２０に備えられた内部デバイス４０を仮想化制御し、デバイスドライバ１０２を用いて内部デバイス４０が当該情報処理装置１０へ直接的に接続（ローカル接続）された場合と同様の振る舞いを仮想化制御部１０３によってシミュレートすることができるので、ユーザはデバイス制御装置２０に備えられた内部デバイス４０（例えば、キーボード、テンキー、及びディスプレイ）を用いて情報処理装置１０を利用することができる。
【００８６】
また、外部デバイス３０及びデバイス制御装置２０に備えられた内部デバイス４０に係るデバイスドライバ１０２を情報処理装置１０側に導入しているため、デバイス制御装置２０においては、外部デバイス３０及びデバイス制御装置２０に備えられた内部デバイス４０に係るデバイスドライバを導入する必要がなくなる。
【００８７】
[第２の実施の形態]
続いて、本発明の第２の実施の形態によるデバイス制御システムの一例について説明する。
【００８８】
図９は、本発明の第２の実施の形態によるデバイス制御システムの一例の構成を概略的に示すブロック図である。なお、図１に示すデバイス制御システムと同一の構成要素については同一の参照番号を付して説明を省略する。
【００８９】
図９に示すデバイス制御システムにおいては、情報処理装置１０はＬＡＮを介して複合機（ＭＦＰ）５０に接続され、ＭＦＰ５０にはＵＳＢによって記憶装置６０が接続される。ＭＦＰ５０は内部デバイスとしてタッチパネル５０１を有しており、このタッチパネル５０１は入力Ｉ／Ｆ２０７及びディスプレイＩ／Ｆ２０９によって内部バス２０６に接続される。
【００９０】
図示の例では、ＭＦＰ５０はプリンタ５０２、スキャナ５０３、及びＦＡＸ５０４を備えている。また、記憶装置６０は、暗号情報記憶部６０２、暗号データ部６０３、復号化モジュール６０４、及び通信Ｉ／Ｆ３０２を有し、後述する媒体識別情報６０１が設定されている。
【００９１】
本実施の形態において、ＭＦＰ５０は図１で説明した入力装置２０８及び表示装置２１０の機能を兼ね備えたタッチパネル５０１を有している。入力装置２０８に相当する機能は入力Ｉ／Ｆ２０７、表示装置２１０に相当する機能はディスプレイＩ／Ｆ２０９を介して内部バス２０６に接続され、ＣＰＵの制御に従い動作する。本実施の形態では、このタッチパネル５０１を情報処理装置１０によって仮想化制御することにより、タッチパネル５０１による情報処理装置１０の遠隔操作を実現している。また、ＭＦＰ５０に接続した記憶装置６０を情報処理装置１０によって仮想化制御して、ＭＦＰ５０のタッチパネル５０１から情報処理装置１０を遠隔操作して記憶装置６０の暗号化を解除する。そして、ＭＦＰ５０のスキャナ機能と連携して読み込んだ画像データを暗号化して、記憶装置６０に保存する。さらに、記憶装置６０の暗号化データをＭＦＰ５０のプリンタ機能と連携して印刷する。
【００９２】
また、情報処理装置１０のアプリケーション１０１には、記憶装置６０を使用するためのソフトウェアも含まれる。なお、情報処理装置１０は、デバイス制御装置２０から外部デバイス３０が接続された旨の通知を受信すると、当該ソフトウェアを自動的に起動するものとする（以降、説明の便宜上、当該ソフトウェアも単に「アプリケーション１０１」と呼ぶ）。
【００９３】
前述のように、記憶装置６０は、例えば、データを暗号化して記憶する暗号化機能を備えた可搬型記憶媒体（以下、「ＵＳＢメモリ」と呼ぶ）等であって、媒体識別情報６０１を備え、暗号情報記憶部６０２、暗号データ部６０３、復号化モジュール６０４、及び通信Ｉ／Ｆ３０２を有している。
【００９４】
媒体識別情報６０１として、例えば、記憶装置６０に割り当てられているベンダーＩＤ、プロダクトＩＤ、及びシリアル番号等の識別情報が用いられる。暗号情報記憶部６０２には、記憶装置６０において暗号化されたデータの復号化を行うための暗号情報が格納される。なお、暗号情報記憶部６０２では、情報処理装置１０から暗号解除要求を受けて暗号データ部６０３に対してデータの読み出し／書き込みを許可する。暗号データ部６０３は、暗号情報記憶部６０２に格納された暗号情報に基づいてデータを暗号化して記憶する。
【００９５】
復号化モジュール６０４は、情報処理装置１０の記憶部にロードされて動作するソフトウェアであり、暗号情報入力画面（後述）を情報処理装置１０に接続されている液晶モニタ等の表示装置（不図示）に表示する。さらに、復号化モジュール６０４は暗号情報入力画面に対して入力された暗号情報と情報処理装置１０に記憶されている暗号情報とを照合する。通信Ｉ／Ｆ３０２は、ＭＦＰ５０との間で行われる暗号化したデータの送受信を制御する。
【００９６】
図１０は、図９に示すデバイス制御システムにおいて記憶装置６０及びタッチパネル５０１を情報処理装置１０から仮想化制御する際の動作を説明するためのシーケンス図である。
【００９７】
ここで、ユーザの所定の操作により、操作画面がタッチパネル５０１に表示されているものとする。
【００９８】
図１１は、表示装置２１０であるタッチパネル５０１に表示される操作画面の一例を示す図である。ソフトウェアキーボード５１０以外は、図４と同等であるため説明を省略する。図１１の操作画面は、ユーザが所定の操作を実行するとタッチパネル５０１上に表示され、接続ボタン４０１、終了ボタン４０２、画面表示領域４０３、入力操作するためのソフトウェアキーボード５１０から構成される。ソフトウェアキーボード５１０は、接続ボタン４０１、終了ボタン４０２と同様にタッチパネル５０１上に表示され、物理的なキーボードやマウスと同等の入力操作が可能である。
【００９９】
ユーザは、タッチパネル５０１に表示された接続ボタン４０１押下することで、タッチパネル５０１の仮想化制御を指示する（ステップＳ６０１）。つまり、ユーザは操作画面の接続ボタン４０１を押下げて接続要求を行う。
【０１００】
上記接続要求により、仮想デバイス制御部２０３は、タッチパネル５０１に係る仮想デバイス識別情報２０４を仮想化制御部２０２に送って接続を通知する（ステップＳ６０２）。例えば、図２で説明したキーボード、マウス、ディスプレイの３つのＵＳＢディスクリプタを仮想デバイス識別情報２０４として送る。そして、仮想化制御部２０２は、情報処理装置１０にタッチパネル５０１が接続された旨を通知する（ステップＳ６０３）。
【０１０１】
情報処理装置１０は、仮想化制御部２０２を介してタッチパネル５０１の仮想化制御を開始して、仮想化制御部２０２とデータ送受信を開始する（ステップＳ６０４）。これにより、仮想化制御部２０２は、仮想デバイス制御部２０３とデータ送受信を開始する（ステップＳ６０５）。
【０１０２】
仮想デバイス制御部２０３のデータ形式変換処理部２０５は、仮想化制御部２０２から送られるＵＳＢデータをタッチパネル５０１のデータ形式に変換して、入力Ｉ／Ｆ２０７とディスプレイＩ／Ｆ２０９を介してタッチパネル５０１とのデータ送受信を開始する（ステップＳ６０６）。そして、タッチパネル５０１の画面表示領域４０３には情報処理装置１０から送られてくる画面データに応じた画面が表示され、情報処理装置１０に対する入力待ち状態となる（ステップＳ６０７）。
【０１０３】
ここで、記憶装置６０がＭＦＰ５０に接続されると（ステップＳ６０８）、記憶装置６０で保持されている媒体識別情報６０１がデバイス制御装置２０の仮想化制御部２０２に送られ、記憶装置６０の接続が通知される。そして、仮想化制御部２０２は、情報処理装置１０に記憶装置６０が接続された旨を通知する（ステップＳ６０９）。
【０１０４】
情報処理装置１０は仮想化制御部２０２を介して記憶装置６０の仮想化制御を開始して、仮想化制御部２０２とデータ送受信を開始する（ステップＳ６１０）。仮想化制御部２０２は、通信Ｉ／Ｆ３０２を介して記憶装置６０とデータ送受信を開始する（ステップＳ６１１）。
【０１０５】
デバイス制御装置２０によって記憶装置６０の仮想化制御が開始されると、情報処理装置１０のアプリケーション１０１が自動起動し、情報処理装置１０に接続されている液晶モニタ（不図示）に表示される。第１の実施の形態と同様に、この液晶モニタに表示された画面データは、デバイス制御装置２０に送られ、タッチパネル５０１に情報処理装置１０から送られてくる画像データが表示される。
【０１０６】
図１２は、デバイス制御装置２０のタッチパネル５０１に表示される画面例である。
【０１０７】
情報処理装置１０で起動したアプリケーション１０１の画面は、ＵＳＢメモリ内のファイル一覧画面４０４、選択されたファイルのプレビュー画面４０７、選択されたファイルの印刷指示するための印刷ボタン４０５とスキャンした画像をＵＳＢメモリ内に保存させるためのスキャンボタン４０６から構成され、タッチパネル５０１の画面表示領域４０３に表示される。タッチパネル５０１に表示されるソフトウェアキーボード５１０を操作することにより、キー入力、ファイル選択、印刷やスキャンの実行指示を情報処理装置１０に実行させることができる。
【０１０８】
続いて、ユーザは、タッチパネル５０１を用いて情報処理装置１０を遠隔操作して、記憶装置６０の復号化モジュール６０４（ソフトウェア）を情報処理装置１０の記憶部１１にロードさせることで、暗号情報入力画面を表示させる。これにより、デバイス制御装置２０のタッチパネル５０１の画面表示領域４０３に情報処理装置１０に表示されている暗号情報入力画面が表示される（ステップＳ６１２）。
【０１０９】
図１３は、図１１に示すタッチパネル５０１の画面表示領域４０３に表示される暗号情報入力画面の一例を示す図である。
【０１１０】
図１３に示すように、暗号情報入力画面には、復号化のための暗号情報を入力するためのテキストボックス４０８と入力完了を通知するための完了ボタン４０９が表示される。ユーザはソフトウェアキーボード５１０によって記憶装置６０に係る暗号情報をテキストボックス４０８に入力する。また、暗号情報の入力が完了した際、ユーザは完了ボタン４０９を押下げて暗号情報の入力を確定する。
【０１１１】
ユーザが暗号情報入力画面から記憶装置６０に係る暗号情報を入力すると（ステップＳ６１３）、情報処理装置１０の記憶部１１にロードされている復号化モジュール６０４は、ステップＳ６１３で入力された暗号情報と予め暗号情報記憶部６０２に記憶された暗号情報とが一致しているか否かについて照合し（ステップＳ６１４）、２つの暗号情報が互いに一致している場合に記憶装置６０に対して復号化要求を行う（ステップＳ６１５）。これにより、以降、記憶装置６０が復号化される（ステップＳ６１６）。
【０１１２】
続いて、情報処理装置１０は、記憶装置６０に対して暗号化データの読み込み要求を送信する（ステップＳ６１７）。これにより、記憶装置６０は情報処理装置１０に暗号化データの読み込み応答を送信する（ステップＳ６１８）。そして、情報処理装置１０は、記憶装置６０から読み込んだ暗号化データを選択するためのファイル一覧データを生成してＭＦＰ５０に送信し、ＭＦＰ５０では、受信したファイル一覧データをデータ形式変換処理部２０５で変換処理してタッチパネル５０１の画面表示領域４０３に表示させ（ステップＳ６１９）、タッチパネル５０１からの情報処理装置１０に対する入力待ち状態となる（ステップＳ６２０）。
【０１１３】
ここで、図１４のシーケンス図を用いて、情報処理装置１０を遠隔操作してＭＦＰ５０が備えるスキャナ５０３を使用して画像データを読み込んで記憶装置６０に記憶させ（書き出し）、記憶装置６０からこの画像データを読み出してプリンタ５０２で印刷させる動作について説明する。
【０１１４】
図１４は、図９に示すデバイス制御システムにおいて記憶装置６０及びタッチパネル５０１を情報処理装置１０から仮想化制御し、ＭＦＰ５０が備えるプリンタ５０２及びスキャナ５０３を使用する際の動作を説明するためのシーケンス図である。
【０１１５】
ここで、タッチパネル５０１には、図１２で説明したアプリケーション１０１の画面が表示されているものとする。ユーザはソフトウェアキーボード５１０によりスキャンボタン４０６を選択、つまり、押下げると（ステップＳ７０１）、情報処理装置１０は、スキャン要求を受信して画像データの読み込み動作を開始する（ステップＳ７０２）。そして、情報処理装置１０は、スキャナ５０３に画像データ読み込み要求を送信する（ステップＳ７０３）。これにより、スキャナ５０３は画像データの読み込み処理を開始する（ステップＳ７０４）。
【０１１６】
続いて、スキャナ５０３は情報処理装置１０に画像データの読み込み応答を送信する（ステップＳ７０５）。これにより、情報処理装置１０は、ステップＳ７０５で得られた画像データについて画像処理を行う（ステップＳ７０６）。情報処理装置１０は、処理済みの画像データを暗号化して、記憶装置６０に対して書き出し要求を送信する（ステップＳ７０７）。
【０１１７】
記憶装置６０は書き出し要求に応答して、情報処理装置１０に書き出し応答を送信する（ステップＳ７０８）。続いて、ユーザは情報処理装置１０の画面において印刷ボタン４０５を選択する（ステップＳ７０９）。これにより、情報処理装置１０は印刷要求を受信して、画像データに係る印刷動作を開始する（ステップＳ７１０）。
【０１１８】
続いて、情報処理装置１０は、記憶装置６０に暗号化データの読み込み要求を送信する（ステップＳ７１１）。そして、記憶装置６０は、情報処理装置１０に暗号化データの読み込み応答を送信する（ステップＳ７１２）。
【０１１９】
情報処理装置１０は、ステップＳ７１２の応答に応じた画像データを画像処理する（ステップＳ７１３）。そして、情報処理装置１０はプリンタ５０２に画像データの印刷要求を送信する（ステップＳ７１４）。これにより、プリンタ５０２は画像データ（つまり、処理済みの画像データである印刷データ）に応じて印刷を行う（ステップＳ７１５）。そして、プリンタ５０２は、情報処理装置１０に画像データの印刷応答を送信して（ステップＳ７１６）、処理を終了する。
【０１２０】
図１０のシーケンス図に戻り、ユーザ操作等により、記憶装置６０がＭＦＰ５０から切断されると（ステップＳ６２１）、デバイス制御装置２０の仮想化制御部２０２は情報処理装置１０に記憶装置６０が切断された旨を通知する（ステップＳ６２２）。また、ユーザは、タッチパネル５０１に表示されている終了ボタン４０２を押下してタッチパネル５０１の仮想化制御を終了させる（ステップＳ６２３）。
【０１２１】
続いて、仮想デバイス制御部２０３は、仮想化制御部２０２にタッチパネル５０１の仮想化制御が終了された旨を通知して、タッチパネル５０１とのデータ送受信を終了する（ステップＳ６２４）。そして、仮想化制御部２０２は情報処理装置１０にタッチパネル５０１の仮想化制御が終了した旨を通知する（ステップＳ６２５）。
【０１２２】
このように、本発明の第２の実施の形態では、ＭＦＰ５０に備えられたタッチパネル５０１とＭＦＰ５０に接続される記憶装置６０（ＵＳＢメモリ）とを情報処理装置１０で仮想化制御することで、ＭＦＰ５０が備える機能（プリンター、スキャナー、ＦＡＸ）と仮想化制御しているタッチパネル及び記憶装置とを連携して利用することができる。
【０１２３】
以上、本発明について上記各実施の形態に基づいて説明したが、本発明は、これらの実施の形態に限定されるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。
【０１２４】
例えば、上記の実施の形態の機能を制御方法として、この制御方法をデバイス制御装置に実行させるようにすればよい。また、上述の実施の形態の機能を有するプログラムを制御プログラムとして、当該制御プログラムをデバイス制御装置が備えるコンピュータに実行させるようにしてもよい。なお、制御プログラムは、例えば、コンピュータに読み取り可能な記録媒体に記録される。
【０１２５】
また、本発明は、以下の処理を実行することによっても実現される。つまり、上述した実施の形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種の記録媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【０１２６】
１０  情報処理装置
２０  デバイス制御装置
３０  外部デバイス
４０  内部デバイス
１０１  アプリケーション
１０２  デバイスドライバ
１０４，２０１  通信制御部
１０３，２０２  仮想化制御部
２０３  仮想デバイス制御部
２０４  仮想デバイス識別情報
２０５  データ形式変換処理部
２０６  内部バス
２０７  入力Ｉ／Ｆ
２０８  入力装置
２０９  ディスプレイＩ／Ｆ
２１０  表示装置
【図１】
2014102817.tif 000003
【図２】
2014102817.tif 000004
【図３】
2014102817.tif 000005
【図４】
2014102817.tif 000006
【図５】
2014102817.tif 000007
【図６】
2014102817.tif 000008
【図７】
2014102817.tif 000009
【図８】
2014102817.tif 000010
【図９】
2014102817.tif 000011
【図１０】
2014102817.tif 000012
【図１１】
2014102817.tif 000013
【図１２】
2014102817.tif 000014
【図１３】
2014102817.tif 000015
【図１４】
2014102817.tif 000016