(57)【要約】【課題】情報処理装置に接続されたメモリを第１の外部装置がマウントしている状態で第２の外部装置から処理要求を受けた場合、正常にメモリをアンマウントした上で第１の外部装置との通信を切断する仕組みを提供する。【解決手段】デジタル複合機はコントローラOS300を備え、メモリを接続するための手段を備える。コントローラOS300は、複合機がホストPC1と無線通信している状態でホストPC2から処理要求を受けた場合、ホストPC1がメモリをマウントしている状態か否か判断する。ホストPC1がメモリをマウントした状態の場合、ホストPC1に対しメモリカードをアンマウントするよう要求する。ホストPC1からアンマウントの指示があった場合、ホストPC1によるメモリカードのマウント状態を解除しアンマウント状態とした後、ホストPC1との無線通信接続を切断し、ホストPC2と無線通信を開始する。【選択図】図１０
2010191584.tif 000002
【特許請求の範囲】
【請求項１】
第１の外部装置及び第２の外部装置と通信可能な情報処理装置であって、
データを記憶するメモリを通信可能に接続するための接続手段と、
前記第１の外部装置と通信している状態で前記第２の外部装置から処理要求を受けた場合に、該第１の外部装置が前記メモリをマウントしているか否かを判定する判定手段と、
前記判定手段により、前記第１の外部装置が前記メモリをマウントしていると判定された場合に、前記第１の外部装置に対して前記メモリをアンマウントするよう要求する要求手段と、
前記要求手段による要求に応じて前記第１の外部装置が前記メモリをアンマウントした後に前記第１の外部装置との通信を切断し、前記第２の外部装置との通信を開始する通信制御手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
外部装置からの指示に応じて、前記メモリをマウントまたはアンマウントするメモリ制御手段を更に備えることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記通信制御手段は、前記メモリ制御手段が前記第１の外部装置からの指示に応じて前記メモリをアンマウントした後に前記第１の外部装置との通信を切断することを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記判定手段により、前記第１の外部装置が前記メモリをマウントしていないと判定された場合は、前記要求手段が前記要求を行うことなく前記通信制御手段が前記第１の外部装置との通信を切断することを特徴とする請求項１から３のいずれか１項に記載の情報処理装置。
【請求項５】
前記第１の外部装置及び前記第２の外部装置との間で無線通信を実行する通信手段と、
前記第１の外部装置または前記第２の外部装置から前記通信手段を介して処理要求を受けた場合に、該処理要求を送信した外部装置を示す識別情報を管理する管理手段と、
を更に備え、
前記通信制御手段は、前記管理手段により管理されている識別情報に基づいて、前記通信手段による前記第１の外部装置及び前記第２の外部装置との通信を制御することを特徴とする請求項１から４のいずれか１項に記載の情報処理装置。
【請求項６】
前記通信手段は、前記第１の外部装置及び前記第２の外部装置との間で無線ＵＳＢ通信を実行することを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記第１の外部装置が前記メモリをマウントしている状態において、前記接続手段は、該第１の外部装置からの指示に応じて前記メモリにデータを書き込む処理または前記メモリのデータを読み出す処理を実行することを特徴とする請求項１から６のいずれか１項に記載の情報処理装置。
【請求項８】
前記接続手段によって接続される前記メモリは、前記情報処理装置に着脱することが可能な携帯型メモリであることを特徴とする請求項１から７のいずれか１項に記載の情報処理装置。
【請求項９】
データを記憶するメモリを通信可能に接続するための接続手段を備え、第１の外部装置及び第２の外部装置と通信可能な情報処理装置の制御方法であって、
前記第１の外部装置と通信している状態で前記第２の外部装置から処理要求を受けた場合に、該第１の外部装置が前記メモリをマウントしているか否かを判定する判定工程と、
前記判定工程で、前記第１の外部装置が前記メモリをマウントしていると判定された場合に、前記第１の外部装置に対して前記メモリをアンマウントするよう要求する要求工程と、
前記要求工程での要求に応じて前記第１の外部装置が前記メモリをアンマウントした後に前記第１の外部装置との通信を切断し、前記第２の外部装置との通信を開始する通信制御工程と、
を備えることを特徴とする情報処理装置の制御方法。
【請求項１０】
請求項９に記載の情報処理装置の制御方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の外部装置と通信可能な情報処理装置、制御方法、及びプログラムに関する。
【背景技術】
【０００２】
ホストコンピュータとデバイス（プリンタ、スキャナ、デジタルカメラ等）とを接続するための通信方式の１つとして、ＵＳＢを無線化した無線ＵＳＢ（ワイヤレスＵＳＢ）が知られている。（ＵＳＢ：Universal Serial Bus）。無線ＵＳＢを用いる場合、複数のホストコンピュータと１台のデバイスとを設置し、複数のホストコンピュータが１台のデバイスを共用するような使い方ができる。
【０００３】
しかしながら、無線ＵＳＢ通信の場合、１台のデバイスが同時に複数のホストコンピュータと通信することはできない。このため、１台のホストコンピュータと１台のデバイスが１対１で通信することになる。これは、無線ＵＳＢの規格（Wireless USB Specification Rev. １.０）で定められている。
【０００４】
ホストコンピュータとデバイス（ここでは、ＭＦＰを例にして説明する）との間の通信接続を確立する処理を、図１２を用いて説明する。尚、ＭＦＰとは、デジタル複合機のことであり、複数の機能（コピー機能、プリント機能、スキャン機能、ファクシミリ機能、メモリカードリードライト機能等）を１台に集約して効率的なオフィス業務に供する装置のことをいう。
【０００５】
図１２は、無線ＵＳＢの通信接続の確立処理を説明するための図である。図示のシステムでは、無線ＵＳＢアンテナ１００１を備えるホストＰＣ１０００と、無線ＵＳＢアンテナ２００１を備えるデバイス２０００との間で、無線ＵＳＢ通信を行う。
【０００６】
ホストＰＣ１０００は、無線ＵＳＢアンテナ１００１を介してビーコン（Beacon）を送信する機能を有する。このビーコンには、図１３に示すように、ホストＰＣ１０００に固有のホストＩＤ１００２と、デバイス２０００に固有のデバイスＩＤ２００２とが記述されている。
【０００７】
ホストＰＣ１０００内のアプリケーションにより作成した印刷ジョブをデバイス２０００に送信してデバイス２０００に対し印刷処理の実行を要求する場合、ホストＰＣ１０００は、まず、ビーコンをデバイス２０００に送信する。ビーコンを受信したデバイス２０００は、通信を確立させるための接続処理を実行する。デバイス２０００は、ビーコン内のデバイスＩＤ２００２を読み、自機のデバイスＩＤと同じかどうかを確認する。デバイスＩＤが異なる場合は、自機宛てのビーコンではないと判断し、ビーコンを破棄する。
【０００８】
次に、デバイス２０００は、ビーコン内のホストＩＤ１００２を読み、アソシエーションによりデバイス２０００内に登録されているホストＩＤの１つと同じかどうかを確認する。ホストＩＤが登録されていない場合は、アソシエーション未設定のホストＰＣと判断し、ビーコンを破棄する。尚、ここで言うアソシエーションとは、無線ＵＳＢ機器を設置した時に必要な初期接続処理のことであり、購入時などに一度だけ行う。アソシエーションは、ホストＰＣとデバイスでＣＣ（Connection Context：ホストＩＤ、デバイスＩＤ、コネクション鍵から成り立つ）を共有するために行われ、識別、認証、許可の３つのフェーズがある。
【０００９】
次に、デバイス２０００は、ホストＰＣ１０００に対して接続要求を送信する。ホストＰＣ１０００は接続要求を許可すると、スプールしていた印刷データをデバイス２０００に対して送信する。印刷データの送信が終了すると、デバイス２０００を専有することを避けるために通信を切断するが、この切断の要求は、ホストＰＣ側とデバイス側の両方から送信することが可能である。
【００１０】
以上のようにして、１対１の無線ＵＳＢ通信接続の確立が行われるが、複数のホストＰＣで１台のデバイスを共用する場合は、以下の方法を用いて通信接続の確立が行われる。即ち、デバイスが複数のホストＰＣからビーコンを受信すると、受信した順番でホスト情報をリスト化し、リスト順に基づいてホストＰＣに対し接続要求を送信する。
【００１１】
２台のホストＰＣが１台のデバイスを共用する場合の具体的なシステムを図１４、図１５、図１６を用いて説明する。図１４にホストＰＣ１・１０００とホストＰＣ２・１１００からデバイス２０００にそれぞれプリントジョブ１、プリントジョブ２を送信する場合を示す。また、図１５に処理シーケンス、図１６にホストリストの一例を示す。
【００１２】
ホストＰＣ１はプリントジョブ処理要求として第１のビーコン１０００ａをデバイスに送信し（ステップＳ２０００）、これを受けたデバイスが無線通信接続を確立する（ステップＳ２００１）。ホストＰＣ１はデバイスとの無線通信接続を確立した後、プリントジョブ１の印刷データをデバイスに送信する（ステップＳ２００２）。デバイスでの印刷データの処理終了後は、ホストＰＣ１またはデバイスから無線通信接続を切断する（ステップＳ２００３）。
【００１３】
一方、ホストＰＣ２はプリントジョブ処理要求として第２のビーコン１１００ａをデバイスに送信する（ステップＳ２１００）。その際、デバイスはホストＰＣ１と無線通信を確立中である。そのため、デバイスはプリントジョブ１の処理が終了した後にホストＰＣ１との無線通信接続を切断し、ホストＰＣ２と無線通信接続を確立する（ステップＳ２１０１）。ホストＰＣ２はデバイスとの無線通信接続を確立した後、プリントジョブ２の印刷データをデバイスに送信する（ステップＳ２１０２）。デバイスでの印刷データの処理終了後は、ホストＰＣ２またはデバイスから無線通信接続を切断する（ステップＳ２１０３）。
【００１４】
上記のホストＰＣの接続順は図１６に示すホストリスト１２００に基づき制御する。ホストリスト１２００は、デバイス（プリンタ）内部のメモリに保存されており、Ｎｏ欄１２０１とホスト名欄１２０２から構成されている。デバイスは、該当するホストＰＣからビーコンを受信すると、受信した順番どおりにホスト情報をホストリスト１２００に登録する。Ｎｏ欄１２０１はビーコンを受信した順番を示すと共に接続要求を出す順番も示している。
【００１５】
尚、以上に説明したような無線ＵＳＢ通信システムに関する技術は、例えば特許文献１に示されている。
【００１６】
一方、従来ファイルシステムのマウント制御（メモリをコンピュータからアクセスできる状態にする制御）の技術が知られている。マウント制御では、デバイスに装着されたメモリカードを、デバイスと無線通信接続を確立したホストＰＣがファイルシステムとしてマウントする。ホストＰＣからメモリカードに格納されたファイルにアクセスし、メモリカードから読み出したファイルをホストＰＣに転送する構成が、デジタルカメラやデジタル複合機で実現されている。この種のデジタル複合機は、メモリカードに対するデータの読み出し／書き込みを行うメモリカードリーダライタを備えている。
【００１７】
例えば、特許文献２には、デバイスに接続されている装置の有無を判断し、接続されている装置があると判断した場合にデータ記録手段をアンマウントする（コンピュータからアクセスできない状態にする制御）ことが示されている。また、デバイスと装置との接続が解除されたか否かを判断し、接続が解除されたと判断した場合にデータ記録手段を再度マウントする。これにより、装置の接続を検知することでファイルシステムのマウント制御を可能としている。
【先行技術文献】
【特許文献】
【００１８】
【特許文献１】特開２００７−２５１８５１号公報
【特許文献２】特開２００７−６５９４５号公報
【発明の概要】
【発明が解決しようとする課題】
【００１９】
しかしながら、上記従来例におけるメモリカードリーダライタを備えるデジタル複合機（デバイス）を複数のホストＰＣで共用する構成においては以下の課題が存在する。ホストＰＣからデバイスに要求されたプリントジョブについては、デバイスにてプリントジョブ処理の終了を認識することができる。これに対し、ホストＰＣがデバイス側のメモリをマウントする必要があるメモリカードジョブの場合は、ホストＰＣがファイルシステムのアンマウントを行うまでジョブが終了しない。
【００２０】
即ち、プリントジョブと異なりメモリカードジョブの終了は該メモリカードジョブを要求したホストＰＣが制御する。そのため、デバイスは他のホストＰＣからのジョブ要求を受けたとしても、すぐに他のホストＰＣとの通信を開始することができない。なぜなら、デバイスがメモリカードジョブを実行中に強制的にホストＰＣとの通信を切断すると、ホストＰＣはファイルシステムのマウントを強制切断されエラー状態となる。場合によってはファイルの破壊を引き起こす可能性があるからである。
【００２１】
従って、実際にはホストＰＣ側のユーザがデバイス側のメモリカードにアクセスする操作を終えていたとしても、メモリカードをマウントした状態のまま放置してしまった場合、次の問題がある。即ち、デバイスが１つのホストＰＣに専有されたままとなってしまうという問題がある。
【００２２】
本発明は、情報処理装置に接続されたメモリを第１の外部装置がマウントしている状態で第２の外部装置から処理要求を受けた場合に、次の仕組みを提供することを目的とする。即ち、正常にメモリをアンマウントした上で第１の外部装置との通信を切断する仕組みを提供することを目的とする。
【課題を解決するための手段】
【００２３】
上記目的を達成するために、本発明の情報処理装置は、第１の外部装置及び第２の外部装置と通信可能な情報処理装置であって、データを記憶するメモリを通信可能に接続するための接続手段と、前記第１の外部装置と通信している状態で前記第２の外部装置から処理要求を受けた場合に、該第１の外部装置が前記メモリをマウントしているか否かを判定する判定手段と、前記判定手段により、前記第１の外部装置が前記メモリをマウントしていると判定された場合に、前記第１の外部装置に対して前記メモリをアンマウントするよう要求する要求手段と、前記要求手段による要求に応じて前記第１の外部装置が前記メモリをアンマウントした後に前記第１の外部装置との通信を切断し、前記第２の外部装置との通信を開始する通信制御手段と、を備えることを特徴とする。
【発明の効果】
【００２４】
本発明によれば、情報処理装置に接続されたメモリを第１の外部装置がマウントしている状態で第２の外部装置から処理要求を受けた場合に、次の仕組みを提供することができる。即ち、正常にメモリをアンマウントした上で第１の外部装置との通信を切断する仕組みを提供することができる。これにより、正常にメモリをアンマウントせずに通信が切断されてしまうことによるエラーの発生を回避しつつ、第１の外部装置により情報処理装置が不必要に専有されてしまうことを防止することができる。
【図面の簡単な説明】
【００２５】
【図１】デジタル複合機２０のコントローラユニットを中心とした構成を示すブロック図である。
【図２】デジタル複合機のコントローラＯＳの構成を示すブロック図である。
【図３】ホストＰＣ１０のホストコントローラを中心とした構成を示すブロック図である。
【図４】ホストＰＣのホストＯＳの構成を示すブロック図である。
【図５】メモリファイルアンマウントの仕組みを示すシーケンス図である。
【図６】デジタル複合機のメモリカードファイルシステムのマウントに関わる制御を示すシーケンス図である。
【図７】デジタル複合機からホストＰＣに対するファイルシステムアンマウント要求を発生する処理を示すシーケンス図である。
【図８】ホストＰＣのメモリカードファイルシステムのマウントに関わる制御を示すシーケンス図である。
【図９】ホストＰＣがデジタル複合機から受信したファイルシステムアンマウント要求に対する処理を示すシーケンス図である。
【図１０】デジタル複合機のメモリアンマウント処理を示すフローチャートである。
【図１１】ホストＰＣのメモリアンマウント処理を示すフローチャートである。
【図１２】無線ＵＳＢの通信接続の確立を端的に表す図である。
【図１３】ホストＩＤとデバイスＩＤを含むビーコンを示す図である。
【図１４】複数のホストＰＣと１台のデバイスから構成されるシステムにおけるビーコン受信を示す図である。
【図１５】複数のホストＰＣと１台のデバイスを共有する際の処理を示すシーケンス図である。
【図１６】デバイスに保存されるホストリストを示す図である。
【発明を実施するための形態】
【００２６】
以下、本発明の実施の形態を図面に基づいて説明する。
【００２７】
本実施の形態では、複数の外部装置により１台の情報処理装置を共用する環境において、情報処理装置に接続されたメモリカードを外部装置がファイルシステムとしてマウントするシステムについて説明する。
【００２８】
まず、本実施の形態の情報処理装置としてのデジタル複合機及び外部装置としてのホストＰＣのハードウエア構成について図１乃至図４を参照しながら詳細に説明する。
【００２９】
図１は、情報処理装置の一例であるデジタル複合機のコントローラユニットを中心とした構成を示すブロック図である。
【００３０】
図１において、デジタル複合機（ＭＦＰ）２０は、コントローラユニット２００、プリンタ部２１０、スキャナ部２２０、操作部２３０、無線ＵＳＢアンテナ２１を備えている。コントローラユニット２００は、ＣＰＵ１１０、ＲＡＭ１１１、ＲＯＭ１１２、無線通信Ｉ／Ｆ１１３、プリンタ部Ｉ／Ｆ１１４、スキャナ部Ｉ／Ｆ１１５を備えている。更に、コントローラユニット２００は、操作部Ｉ／Ｆ１１６、メモリカードＩ／Ｆ１１７、内部バス１１８を備えている。
【００３１】
プリンタ部２１０は、用紙に画像を印刷する画像出力デバイスである。スキャナ部２２０は、原稿から画像を読み取る画像入力デバイスである。操作部２３０は、デジタル複合機に対する各種設定や指示を行うための入力部、各種表示を行う表示部を備える。コントローラユニット２００は、画像情報やデバイス情報の入出力を行うためのものであり、プリンタ部２１０、スキャナ部２２０、操作部２３０と接続される。また、コントローラユニット２００は、無線通信Ｉ／Ｆ１１３、無線ＵＳＢアンテナ２１を介してホストＰＣと通信可能に無線通信により接続される。
【００３２】
ＣＰＵ１１０は、内部バス１１８を介して上記各部を制御するものであり、本発明のプログラムに基づき図１０のフローチャートに示す処理を実行する。ＲＡＭ１１１は、ＣＰＵ１１０が動作するためのシステムワークメモリ、画像データを一時記憶するための画像メモリとして用いられる。ＲＯＭ１１２には、ブートプログラム、本発明のプログラム、システムアプリケーションプログラム等が格納されている。
【００３３】
プリンタ部Ｉ／Ｆ１１４は、プリンタ部２１０と接続し、プリンタ部２１０のＣＰＵ（不図示）と通信を行うと共に、印刷対象の画像データの同期系／非同期系の変換を行う。スキャナ部Ｉ／Ｆ１１５は、スキャナ部２２０と接続し、スキャナ２２０のＣＰＵ（不図示）と通信を行うと共に、原稿から読み取った画像データの同期系／非同期系の変換を行う。操作部Ｉ／Ｆ１１６は、操作部（ユーザインタフェース）２３０とのインタフェースを司るものである。操作部Ｉ／Ｆ１１６は、操作部２３０に表示する画像データを操作部２３０に対して出力し、操作部２３０からユーザが入力した情報をＣＰＵ１１０に伝える。
【００３４】
無線通信Ｉ／Ｆ１１３は、無線ＵＳＢアンテナ２１を介しホストＰＣに接続することでホストＰＣとの間で無線ＵＳＢによる通信を行い、印刷用の画像データの入出力やデジタル複合機の制御に関わる情報の入出力を行う。メモリカードＩ／Ｆ１１７は、メモリカード２４０に画像データ等を書き込む処理或いは読み出す処理を行う。
【００３５】
メモリカード２４０（記憶媒体）は、画像データ等のファイルを格納するものであり、スキャナ部２２０で原稿から読み取った画像データの書き込みや、プリンタ部２１０で印刷する画像データの読み出しが可能である。また、メモリカード２４０は、無線ＵＳＢアンテナ２１及び無線通信Ｉ／Ｆ１１３を介してデジタル複合機に無線通信接続したホストＰＣがファイルシステムとしてマウントし、ファイル操作を行うことも可能である。尚、メモリカード２４０は、デジタル複合機に着脱可能な携帯型メモリ、デジタル複合機に内蔵されるメモリのどちらでも構わない。
【００３６】
図２は、デジタル複合機のコントローラオペレーティングシステム（以後ＯＳ）の構成を示すブロック図である。
【００３７】
図２において、コントローラＯＳ３００は、無線通信制御モジュール３１０、メモリ制御モジュール３２０から構成されている。無線通信制御モジュール３１０は、無線通信制御部３１１、ホストリスト記憶部３１２、ホストリスト管理部３１３、処理要求検知部３１４から構成されている。メモリ制御モジュール３２０は、メモリ制御部３２１、マウント状態保持部３２２、アンマウント要求部３２３から構成されている。コントローラＯＳ３００は、デジタル複合機２０のＣＰＵ１１０によりＲＡＭ１１１を用いて実行されるものであり、画像処理、プリント処理、スキャン処理、ホストＰＣとの通信制御処理等のデジタル複合機全般の制御を行う。
【００３８】
無線通信制御モジュール３１０において、無線通信制御部３１１は、無線通信Ｉ／Ｆ１１３のハードウエア制御を行う。ホストリスト記憶部３１２は、図１６に示したホストリストを記憶する。ホストリスト管理部３１３は、以下のホストリストの登録処理を行う。ホストリスト管理部３１３は、ホストＰＣからビーコンを受信すると、ホスト名をホストリスト記憶部３１２のホストリストに追加する。また、ホストリスト管理部３１３は、ホストＰＣとの無線通信接続が切断されると、ホストリストの当該ホストＰＣに対応する第１番目のホスト情報（識別情報）を削除し、第２番目以降のホスト情報（識別情報）を繰り上げる。
【００３９】
処理要求検知部３１４は、ホストリストを参照して現在接続中のホストＰＣ以外のホストＰＣからの処理要求受けを検知する。処理要求検知部３１４は、ホストリスト記憶部３１２のホストリストの第１番目のホスト情報と第２番目のホスト情報とを比較する。そして、第１番目及び第２番目のホスト情報が互いに異なるホスト情報である場合に、他のホストＰＣからの処理要求を受けたと判断する。
【００４０】
メモリ制御モジュール３２０において、メモリ制御部３２１は、メモリカードＩ／Ｆ１１７のハードウエア制御を行う。マウント状態保持部３２２は、ホストＰＣによるメモリカード２４０のマウント状態を示す情報を保持する。アンマウント要求部３２３は、ホストＰＣに対してメモリカード２４０のファイルシステムからのアンマウントを要求する。
【００４１】
図３は、外部装置の一例であるホストＰＣのホストコントローラを中心とした構成を示すブロック図である。
【００４２】
図３において、ホストＰＣ１０は、ホストコントローラ１００、ディスプレイ１０１、無線ＵＳＢアンテナ１１、キーボード、マウス（不図示）を備えている。ホストコントローラ１００は、ＣＰＵ１０２、ＲＯＭ１０３、ＲＡＭ１０４、ＨＤＤ（ハードディスクドライブ）１０５、表示制御部１０６を備えている。更に、ホストコントローラ１００は、各種ＩＯ（Input Output）Ｉ／Ｆ制御部１０７、無線通信Ｉ／Ｆ１０８、システムバス１０９を備えている。
【００４３】
ホストコントローラ１００は、ディスプレイ１０１、キーボード、マウスと接続されており、無線ＵＳＢアンテナ１１を介して無線ＵＳＢ通信の制御を行う。ＣＰＵ１０２は、システムバス１０９を介して上記各部を制御し、ホストコントローラ内部で行われる各種処理について統括的に制御すると共に、本発明のプログラムに基づき図１１のフローチャートに示す処理を実行する。ＲＯＭ１０３には、ブートプログラム、本発明のプログラムが格納されている。ＲＡＭ１０４は、ＣＰＵ１０２が動作するためのシステムワークメモリとして用いられる。
【００４４】
ＨＤＤ１０５は、システムソフトウェアや画像データを格納する。表示制御部１０６は、ディスプレイ１０１に表示する画像データをディスプレイ１０１に対して出力する。各種ＩＯ Ｉ／Ｆ１０７は、キーボードやマウスとの間のデータ入出力のインタフェースとなるものであり、有線ＵＳＢ等の制御を司る。また、各種ＩＯ Ｉ／Ｆ１０７は、ＬＡＮ等の通信網との間の通信制御を司る。無線通信Ｉ／Ｆ１０８は、ホストＰＣ外部に無線ＵＳＢ通信を行うデバイスがある場合（本実施の形態ではデジタル複合機）、無線ＵＳＢアンテナ１１を介して無線ＵＳＢ通信の制御を行う。
【００４５】
図４は、ホストＰＣのホストＯＳの構成を示すブロックである。
【００４６】
図４において、ホストＰＣ１０のホストＯＳ１５０は、ファイルシステム管理部１６０、無線通信制御モジュール１７０から構成されている。無線通信制御モジュール１７０は、無線通信制御部１７１、マウントステータス通知部１７２、アンマウント要求部１７３、ファイルシステム入出力部１７４から構成されている。ホストＯＳ１５０は、ホストＰＣ１０のＣＰＵ１０２によりＲＯＭ１０３、ＲＡＭ１０４、ＨＤＤ１０５を用いて実行されるものであり、ホストＰＣ全般の制御を行う。
【００４７】
ファイルシステム管理部１６０は、ホストＰＣのファイルシステムを管理するものであり、機器内部のＨＤＤ１０５のみならず、機器外部に接続される記憶装置をファイルシステムとして管理する。本実施の形態では、デジタル複合機が備えるメモリカード２４０をファイルシステムとして利用する場合の管理を行うことを想定している。
【００４８】
無線通信制御モジュール１７０において、無線通信制御部１７１は、無線通信Ｉ／Ｆ１０８のハードウエアの制御を行う。マウントステータス通知部１７２は、デジタル複合機に対してファイルシステムのマウント状態を通知する。アンマウント要求部１７３は、ファイルシステム管理部１６０に対してファイルシステムのアンマウント要求を発生する。ファイルシステム入出力部１７４は、デジタル複合機とファイルシステム管理部１６０との間のファイルデータの転送を行う。
【００４９】
次に、上記構成を有する本実施の形態のデジタル複合機とホストＰＣの動作について図５乃至図１１を参照しながら詳細に説明する。
【００５０】
＜デジタル複合機からホストＰＣへのメモリファイルシステムアンマウント要求＞
図５は、メモリファイルアンマウントの仕組みを示すシーケンス図である。
【００５１】
図５において、メモリカードＩ／Ｆ１１７を備えるデジタル複合機（デバイス）を複数のホストＰＣ（ホストＰＣ１（第１の外部装置）、ホストＰＣ２（第２の外部装置））が共用する場合を説明する。
【００５２】
まず、ホストＰＣ１は、ジョブ処理要求としてビーコンをデバイスに送信し（ステップＳ３０００）、これを受けたデバイスがホストＰＣ１に対して接続要求を送信し（ステップＳ３００１）、無線通信接続を確立する。ホストＰＣ１は、デバイスとの無線通信接続を確立した後、デバイスのメモリカード２４０をマウントした後（ステップＳ３００２）、ユーザからの指示応じてメモリカード２４０内のファイルを操作する（ステップＳ３００３）。
【００５３】
ここで、ホストＰＣ１がＳ３００４でメモリカード２４０のアンマウント処理を行う前に、ホストＰＣ２からジョブ処理要求を受けると（ステップＳ３１００）、デバイスは、次の要求を行う。即ち、現在接続中のホストＰＣ１に対してアンマウント処理を行うよう要求する（ステップＳ３２０１）。
【００５４】
この要求を受けたホストＰＣ１は、ファイルシステムの状態を確認し、アンマウント可能であればメモリのアンマウントを行う（ステップＳ３００４）。具体的には、例えばメモリ内のファイルを実行中か否かを判定し、ファイルを実行中でなければアンマウント可能であるものと判定する。これにより、ファイルシステムをエラー状態とすることなく、デバイスはホストＰＣ１との通信を切断することができる（ステップＳ３００５）。その後、ホストＰＣ２に対して接続要求を送信し（ステップＳ３１０１）、ホストＰＣ２からプリントデータを受信して（ステップＳ３１０２）プリントジョブを実行した後、ホストＰＣ２との通信を切断する（ステップＳ３１０３）。
【００５５】
＜ホストＰＣからのメモリカードファイルシステムマウント制御＞
図６は、デジタル複合機のメモリカードファイルシステムのマウントに関わる制御を示すシーケンス図である。
【００５６】
図６において、無線通信Ｉ／Ｆ１１３と無線通信制御モジュール３１０の処理関係をシーケンスに従い説明する。尚、本項で説明する内容は、図５で説明したメモリファイルマウント（ステップＳ３００２）とメモリファイルアンマウント（ステップＳ３００４）の処理に対応するデジタル複合機側の内部処理である。
【００５７】
デジタル複合機の無線通信Ｉ／Ｆ１１３が、ホストＰＣからのファイルシステムのマウント指示を受信する（ステップＳ４０００）。これに伴い、無線通信制御モジュール３１０から、メモリ制御モジュール３２０に対してメモリカードマウントを通知する（ステップＳ４００１）。これにより、マウント状態保持部３２２にメモリマウント状態を示す情報が保持される。
【００５８】
一方、デジタル複合機の無線通信Ｉ／Ｆ１１３が、ホストＰＣからのファイルシステムのアンマウント指示を受信する（ステップＳ４００２）。これに伴い、無線通信制御モジュール３１０から、メモリ制御モジュール３２０に対してメモリカードアンマウントを通知する（ステップＳ４００３）。これにより、マウント状態保持部３２２にメモリアンマウント状態を示す情報が保持される。
【００５９】
＜デジタル複合機からホストＰＣに対するファイルシステムアンマウント要求＞
図７は、デジタル複合機からホストＰＣに対するファイルシステムアンマウント要求を発生する処理を示すシーケンス図である。
【００６０】
図７において、無線通信Ｉ／Ｆ１１３と無線通信制御モジュール３１０の処理関係をシーケンスに従い説明する。上述した図６の通常処理と異なる特徴部分を重点に説明する。
【００６１】
デジタル複合機の無線通信Ｉ／Ｆ１１３が、他ホストＰＣからのビーコンを受信すると（ステップＳ４１０２）、処理要求検知部３１４が他ホストＰＣからの処理要求を検知する。そして、他ホストＰＣからの処理要求を受けたことがメモリ制御モジュール３２０に通知される（ステップＳ４１０３）。
【００６２】
メモリ制御モジュール３２０では、マウント状態保持部３２２がメモリマウント状態を示す情報を保持しているため、アンマウント要求部３２３がアンマウント要求を無線通信制御モジュール３１０に発行する（ステップＳ４１０４）。これに伴い、無線通信制御モジュール３１０は、無線通信制御部３１１を通じてホストアンマウント要求をホストＰＣに送信する（ステップＳ４１０５）。
【００６３】
尚、Ｓ４１００、Ｓ４１０１、Ｓ４１０６及びＳ４１０７では、それぞれ図６のＳ４０００、Ｓ４００１、Ｓ４００２及びＳ４００３に対応する処理が実行されるため説明は省略する。
【００６４】
＜デジタル複合機へのメモリカードファイルシステムマウント制御＞
図８は、ホストＰＣのメモリカードファイルシステムのマウントに関わる制御を示すシーケンス図である。
【００６５】
図８において、無線通信Ｉ／Ｆ１０８と、無線通信制御モジュール１７０、ファイルシステム管理部１６０との処理関係をシーケンスに従い説明する。尚、本項で説明する内容は、図５で説明したメモリファイルマウント（ステップＳ３００２）とメモリファイルアンマウント（ステップＳ３００４）の処理に対応するホストＰＣ側の内部処理である。
【００６６】
ホストＰＣによるファイルシステム管理部１６０のマウント指示（ステップＳ５０００）が、無線通信制御モジュール１７０に通知される。これに伴い、マウントステータス通知部１７２が、無線通信制御部１７１を介して無線通信Ｉ／Ｆ１０８からデジタル複合機にファイルシステムマウント状態を通知する（ステップＳ５００１）。
【００６７】
ホストＰＣによるファイルシステム管理部１６０のアンマウント指示（ステップＳ５００２）が、無線通信制御モジュール１７０に通知される。これに伴い、マウントステータス通知部１７２が、無線通信制御部１７１を介して無線通信Ｉ／Ｆ１０８からデジタル複合機にファイルシステムアンマウント状態を通知する（ステップＳ５００３）。
【００６８】
＜ホストＰＣがデジタル複合機から受信したファイルシステムアンマウント要求処理＞
図９は、ホストＰＣがデジタル複合機から受信したファイルシステムアンマウント要求に対する処理を示すシーケンス図である。
【００６９】
図９において、無線通信Ｉ／Ｆ１０８と、無線通信制御モジュール１７０、ファイルシステム管理部１６０との処理関係をシーケンスに従い説明する。上述した図８の通常処理と異なる特徴部分を重点に説明する。
【００７０】
ホストＰＣの無線通信制御部１７１が、無線通信Ｉ／Ｆ１０８を介してデジタル複合機からアンマウント要求を受信する（ステップＳ５１０２）。これに伴い、アンマウント要求部１７３は、ファイルシステム管理部１６０に対してファイルシステムのアンマウント要求を発生する（ステップＳ５１０３）。ファイルシステム管理部１６０は、ファイルシステムをアンマウント状態に移行させる。
【００７１】
ファイルシステムがアンマウント状態になると、ファイルシステム管理部１６０は、ファイルシステムのアンマウント指示を行う（ステップＳ５１０４）。これに伴い、マウントステータス通知部１７２は、無線通信制御部１７１を介して無線通信Ｉ／Ｆ１０８からデジタル複合機にファイルシステムアンマウント状態を通知する（ステップＳ５１０５）。尚、Ｓ５１００及びＳ５１０１は、それぞれ図８のＳ５０００及びＳ５００１に対応する処理が実行されるため説明は省略する。
【００７２】
＜デジタル複合機内部のメモリアンマウント処理＞
図１０は、デジタル複合機のメモリアンマウント処理を示すフローチャートである。本処理は、図７のステップＳ４１０３からステップＳ４１０７までのシーケンスにおいて、デジタル複合機内部での処理を示すものであり、デジタル複合機のＣＰＵ１１０の制御の下でコントローラＯＳ３００が処理を行う。
【００７３】
図１０において、デジタル複合機とホストＰＣ１とが通信している状態にあるものとする。デジタル複合機のコントローラＯＳ３００は、処理要求検知部３１４の状態を確認、即ち、新規ホストＰＣ（ホストＰＣ２）がデジタル複合機に対して処理要求を出してきたかを確認する（ステップＳ１０００）。
【００７４】
次に、コントローラＯＳ３００は、ステップＳ１０００で確認した処理要求検知部３１４の状態を判断する（ステップＳ１００１）。新規ホストＰＣ（ホストＰＣ２）からの処理要求がない場合は、ステップＳ１０００に戻る。新規ホストＰＣ（ホストＰＣ２）からの処理要求がある場合は、コントローラＯＳ３００は、マウント状態保持部３２２の状態を確認する（ステップＳ１００２）。
【００７５】
次に、コントローラＯＳ３００は、ステップＳ１００２で確認したマウント状態保持部３２２の状態を判断する（ステップＳ１００３）。ホストＰＣがメモリカード２４０をマウントしている状態でない場合は、ステップＳ１００８に進む。ホストＰＣがメモリカード２４０をマウントしている状態である場合は、コントローラＯＳ３００は、次の要求を送信する。即ち、アンマウント要求部３２３により無線通信Ｉ／Ｆ１１３を介してホストＰＣに対してアンマウントするよう要求を送信する（ステップＳ１００４）。
【００７６】
次に、コントローラＯＳ３００は、後述の図１１のステップＳ２００５でホストＰＣ１から送信されるステータスを取得する（ステップＳ１００５）。更に、コントローラＯＳ３００は、取得したステータスがホストＰＣ１からのアンマウントの指示であるか否かを判断する（ステップＳ１００６）。ホストＰＣ１からのアンマウントの指示でない場合は、ステップＳ１００５に戻る。ホストＰＣ１からのアンマウントの指示である場合は、コントローラＯＳ３００は、マウント状態保持部３２２の保持状態、即ち、ホストＰＣ１によるメモリカードのマウント状態をクリア（解除）する（ステップＳ１００７）。
【００７７】
更に、コントローラＯＳ３００は、ホストＰＣ１によるメモリカードのマウント状態をクリアしたことに伴い、ホストＰＣ１がメモリカード２４０をマウントしていない状態をコントローラＯＳ３００内に保持する。次に、コントローラＯＳ３００は、無線通信制御部３１１により、無線通信をしている状態にあったホストＰＣ１との無線通信接続を切断する（ステップＳ１００８）。これにより、本処理を終了する。この後は、新規ホストＰＣ（ホストＰＣ２）と無線通信接続を開始する。
【００７８】
＜ホストＰＣ内部のメモリアンマウント処理＞
図１１は、ホストＰＣのメモリアンマウント処理を示すフローチャートである。本処理は、図９のステップＳ５１０２からステップＳ５１０５までのシーケンスにおいて、ホストＰＣ内部での処理を示すものであり、ホストＰＣのＣＰＵ１０２の制御の下でホストＯＳ１５０が処理を行う。
【００７９】
図１１において、ホストＰＣのホストＯＳ１５０は、無線通信制御部１７１により無線通信Ｉ／Ｆ１０８を介して、図１０のステップＳ１００４でデジタル複合機から送信されたコマンドを受信する（ステップＳ２０００）。次に、ホストＯＳ１５０は、ステップＳ２０００で受信したコマンドの内容がデジタル複合機からのアンマウント要求であるか否かを判断する（ステップＳ２００１）。デジタル複合機からのアンマウント要求でない場合は、ステップＳ２０００に戻る。
【００８０】
デジタル複合機からのアンマウント要求である場合は、ホストＯＳ１５０は、アンマウント要求部１７３によりファイルシステム管理部１６０からファイルシステムの状態を取得する（ステップＳ２００２）。次に、ホストＯＳ１５０は、ステップＳ２００２で取得したファイルシステムの状態に基づき、ファイルシステムでアンマウント可能であるか否かを判断する（ステップＳ２００３）。ファイルシステムでアンマウント可能でない場合は、ステップＳ２００２に戻る。
【００８１】
ファイルシステムでアンマウント可能である場合は、ホストＯＳ１５０は、ファイルシステム入出力部１７４によりファイルシステムのアンマウント許可を行う（ステップＳ２００４）。次に、ホストＯＳ１５０は、マウントステータス通知部１７２により無線通信Ｉ／Ｆ１０８を介してデジタル複合機に対してアンマウントを指示するステータスを通知する（ステップＳ２００５）。これにより、本処理を終了する。
【００８２】
以上詳細に説明したように、本実施の形態によれば、以下の効果を奏する。デジタル複合機がホストＰＣ１と無線通信を行っている状態で、ホストＰＣ２から処理要求を受けた場合に、ホストＰＣ１でメモリカードをマウントした状態であるか否かを判断する。ホストＰＣ１でメモリカードをマウントした状態である場合、ホストＰＣ１に対してメモリカードをアンマウントするよう要求する。ホストＰＣ１からアンマウントの指示があった場合、ホストＰＣ１によるメモリカードのマウント状態を解除してアンマウント状態とした後、ホストＰＣ１との無線通信接続を切断し、ホストＰＣ２と無線通信を開始する。
【００８３】
これにより、従来のようにデジタル複合機でホストＰＣのメモリカードジョブ実行中に他のホストＰＣからの処理要求を受けた場合に、他のホストＰＣとの通信を開始できないという課題を解消することが可能となる。また、従来のようにホストＰＣのメモリカードジョブ実行中にデジタル複合機が強制的にホストＰＣとの通信を切断した場合にエラー状態となるという課題を解消することが可能となる。これにより、ホストＰＣ側でのエラーを発生することなく、通信切断処理を行うことが可能となる。また、１つのホストＰＣによるデジタル複合機の専有を避け、複数のホストＰＣによりデジタル複合機を共用することが可能となる。
【００８４】
なお、上述の説明では、他のホストＰＣからの処理要求を受けた場合に、現在接続中のホストＰＣに対してメモリのアンマウントを要求する例について説明したが、他の態様であっても構わない。即ち、例えば現在接続中のホストＰＣに代わってデバイス自体がアンマウント処理を行い、現在接続中のホストＰＣとの通信を切断するようにしてもよい。この場合、通信を切断する前に、ホストＰＣに対してメモリをアンマウントしたことを通知するようにすればなおよい。
【００８５】
また、上述の説明では、他のホストＰＣからの処理要求を受けたことに応じて現在接続中のホストＰＣに対してメモリのアンマウントを要求する例について説明したが、以下のように要求するようにしてもよい。即ち、他のホストＰＣからの処理要求受け以外のタイミングで要求するようにしてもよい。例えば、ホストＰＣからの指示でメモリ内のデータを読み出してデバイスが印刷処理を行う場合に、印刷処理の完了に応じてホストＰＣに対してメモリのアンマウントを要求するようにしてもよい。或いは、メモリ内のファイルが所定時間操作されなかった場合に、タイムアウト処理としてホストＰＣに対してメモリのアンマウントを要求するようにすることもできる。
【００８６】
〔他の実施の形態〕
本発明の目的は、以下の処理を実行することによっても達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）が記憶媒体に格納されたプログラムコードを読み出す処理である。
【００８７】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
【符号の説明】
【００８８】
１１０  ＣＰＵ
１１３  無線通信制御部
３００  コントローラＯＳ
【図１】
2010191584.tif 000003
【図２】
2010191584.tif 000004
【図３】
2010191584.tif 000005
【図４】
2010191584.tif 000006
【図５】
2010191584.tif 000007
【図６】
2010191584.tif 000008
【図７】
2010191584.tif 000009
【図８】
2010191584.tif 000010
【図９】
2010191584.tif 000011
【図１０】
2010191584.tif 000012
【図１１】
2010191584.tif 000013
【図１２】
2010191584.tif 000014
【図１３】
2010191584.tif 000015
【図１４】
2010191584.tif 000016
【図１５】
2010191584.tif 000017
【図１６】
2010191584.tif 000018