(57)【要約】【課題】装置の持つユーザインタフェース資源を他の装置に流用させることを可能とし、かつ、本来の装置制御のためのユーザインタフェース機能の利便性も損なわないようにする。【解決手段】クライアントコンピュータ１３は装置制御に必要な情報をＬＣＤディスプレイ２４１０に表示し、タッチパネル２４０９によりユーザの装置制御意図を認識する。また、他の装置と通信を行って、他の装置から受信された要求に応じて、他の装置からのユーザインタフェース情報をユーザに提示し、タッチパネルからのユーザインタフェース情報を他の装置へ転送する。そして、ＬＣＤディスプレイ２４１０とタッチパネル２４０９を装置制御のために用いる第１のインタフェースモードと、ＬＣＤディスプレイ２４１０とタッチパネル２４０９をユーザインタフェース情報を転送する手段に結合する第２のインタフェースモードとを選択的に切り換える。【選択図】図８
2011023027.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して通信可能な複数の情報処理装置と連携する第１の情報処理装置であって、
ネットワークを介して通信可能な第２の情報処理装置の記憶部に記憶されているデータの一覧を取得する取得手段と、
前記第２の情報処理装置から前記取得手段が取得したデータの一覧を、ネットワークを介して通信可能な第３の情報処理装置の表示部に表示させる表示制御手段と、
前記第３の情報処理装置の表示部に表示されているデータの一覧の中からユーザがデータを選択し、該選択したデータに対し行われたダウンロードの操作を検出する検出手段と、
前記検出手段により検出されたダウンロードの操作に従い、前記第２の情報処理装置の記憶部に記憶されているデータをダウンロードするダウンロード手段と
を有することを特徴とする第１の情報処理装置。
【請求項２】
前記第２の情報処理装置とはＷＡＮを介して通信を行い、前記第３の情報処理装置とは前記第１の情報処理装置と同じドメインのネットワーク内で通信を行うことを特徴とする請求項１に記載の第１の情報処理装置。
【請求項３】
前記第２の情報処理装置が提供するストレージサービスを実行するためのストレージサービス実行手段であり該第２の情報処理装置が有するストレージサービス実行手段に対してストレージサービスの提供を指示するストレージサービス指示手段をさらに有し、
前記取得手段は、前記ストレージサービス指示手段を介して前記ストレージサービス実行手段に対して指示をすることによって、前記データの一覧を取得することを特徴とする請求項１又は２に記載の第１の情報処理装置。
【請求項４】
前記第３の情報処理装置が提供するＵＩサービスを実行するためのＵＩサービス実行手段であり該第３の情報処理装置が有するＵＩサービス実行手段に対してＵＩサービスの提供を指示するＵＩサービス指示手段さらに有し、
前記表示制御手段は、前記ＵＩサービス指示手段を介して前記ＵＩサービス実行手段に対して指示をすることによって、前記データの一覧を前記表示部に表示させ、
前記検出手段は、前記指示に応じて前記ＵＩサービス指示手段が前記ＵＩサービス実行手段から伝えられる情報に基づいて、前記選択したデータに対し行われたダウンロードの操作を検出することを特徴とする請求項１から３のいずれかに記載の第１の情報処理装置。
【請求項５】
ネットワークを介して通信可能な複数の情報処理装置と連携する第１の情報処理装置における情報処理方法であって、
ネットワークを介して通信可能な第２の情報処理装置の記憶部に記憶されているデータの一覧を取得する取得ステップと、
前記第２の情報処理装置から前記取得ステップにおいて取得したデータの一覧を、ネットワークを介して通信可能な第３の情報処理装置の表示部に表示させる表示制御ステップと、
前記第３の情報処理装置の表示部に表示されているデータの一覧の中からユーザがデータを選択し、該選択したデータに対し行われたダウンロードの操作を検出する検出ステップと、
前記検出ステップにより検出されたダウンロードの操作に従い、前記第２の情報処理装置の記憶部に記憶されているデータをダウンロードするダウンロードステップと
を有することを特徴とする第１の情報処理装置における情報処理方法。
【請求項６】
請求項５に記載の情報処理方法をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、分散オブジェクト環境に対応した複数の装置を有する情報処理方法に関し、分散オブジェクト環境に対応し他の装置と通信可能な情報処理装置に関する。
【背景技術】
【０００２】
近年、イメージスキャナやデジタルカメラ、ファクシミリ受信装置等の入力装置と、プリンタやファクシミリ送信装置等の出力装置などの単機能装置を互いにネットワーク接続し、これら単機能装置の機能を組み合わせた複合機能を提供する分散型の文書処理システムの開発研究が盛んに行なわれている。
【０００３】
このような複数の単機能装置の機能を単一の筐体内に統合したいわゆるＭＦＰ（multifunction product）においても、同様に、その内部の単機能を切り出し、ネットワークを介して他の装置の機能と組み合わせることにより、種々の複合機能を適宜実現することが求められ、分散型文書処理システムの開発研究が盛んに行なわれている。
【０００４】
ネットワークに分散した情報処理装置間に跨った機能の提供を容易にするためのプログラミングモデルとして、ＲＰＣ(remote procedure call)や分散オブジェクトの技術が広く知られている。分散オブジェクトはオブジェクト指向のソフトウェアモデルを分散システムに拡張したものであり、あるネットワークノード上のオブジェクトが同一ノード上のオブジェクトの操作を呼び出す手順と同等の手順によって（透過に）他のネットワークノード上のオブジェクトの操作の呼び出しを可能とするものである。
【０００５】
文書入力や文書出力を含む文書処理においても、分散オブジェクト技術を適用することで複数の機能の柔軟な連係を達成することが期待されている。純粋な計算などの情報処理の分散処理以外も視野におさめた分散オブジェクトに基づくシステムの提案は、例えばSunによるJavaの応用であるJiniやＯＭＧ（Object Management Group）によるCORBAの一環としての提案等の中に見ることができる。
【０００６】
ネットワークに接続された文書処理のための各種装置群が分散オブジェクトにより制御可能となれば、所定のインタフェースに基づくオブジェクトを提供する各種装置を可換に組み合わせる柔軟なクライアントアプリケーションを容易に記述することが可能となる。また、オブジェクトを操作するためのインタフェースを動的に問い合わせることや、あるいは、遠隔地にあり実際にサービスを提供するサーバオブジェクトとの通信を隠蔽するスタブオブジェクト（または、代理オブジェクト）を動的にダウンロードすることにより、装置の拡張等に伴う制御インタフェースの変更に対応可能なクライアントアプリケーションを容易に記述することもできる。
【０００７】
また、新しいＭＦＰではその操作性の向上のために従来よりも比較的高解像度で大きなディスプレイを備えた豊かなユーザインタフェースパネルを持つことが一般的になりつつある。
【０００８】
一方、Apple社のNewtonや3Com社のPalmシリーズに代表されるＰＤＡ（personal digital assistance）が一般にも普及し、さらに、携帯電話が情報端末としての機能の一部を果たすことも普通になってきている。また、ウェアラブルコンピュータの研究開発も盛んに行われている。一般的なユーザが手軽に持ち運べる小型軽量の情報端末によるモバイルコンピューティングは携帯端末そのものは不必要な資源を多くは持たないＴｈｉｎコンピュータであり、分散オブジェクトのような基盤技術に基づく分散アプリケーションによって外部資源をネットワーク経由で自在に組み合わせることが実現されて発展をとげるものと見込まれている。
【０００９】
たとえば、ＰＯＳ（point-of-sale）ネットワークによって高度なネットワーク帯城を持ったコンビニエンスストアに置かれたＭＦＰと、ユーザが携帯しているＰＤＡとを店内無線ＬＡＮ（local area network）で繋ぎ、ＰＤＡ上で動作する分散アプリケーションがその場でＭＦＰの分散オブジェクトサービスを動的に結び付けてプリンタやスキャナの資源を利用するシステムが容易に構想される。
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかしながら、プリントやスキャンといった装置機能を分散オブジェクト環境に提供するＭＦＰのような分散オブジェクト環境対応装置であっても、装置の持つユーザインタフェース資源を他の装置に提供する仕組みを持たなかった。
【００１１】
したがって、ＰＤＡのような携帯端末のユーザは、例えば、コンビニエンスストアに設置されたＭＦＰを前にして、目の前にある豊かなユーザインタフェース資源を尻目に、携帯端末の貧弱なユーザインタフェース資源によって携帯端末上で動作する分散アプリケーションを操作せざるをえないという問題があった。
【００１２】
本発明の目的は、このような問題点を解決し、装置の持つユーザインタフェース資源を他の装置に流用させることを可能とし、かつ、本来の装置制御のためのユーザインタフェース機能の利便性も損なわないような情報処理方法及び装置並びに情報処理システムを提供することにある。
【課題を解決するための手段】
【００１３】
本発明の一実施形態に係る情報処理装置は、ネットワークを介して通信可能な複数の情報処理装置と連携する第１の情報処理装置であって、ネットワークを介して通信可能な第２の情報処理装置の記憶部に記憶されているデータの一覧を取得する取得手段と、前記第２の情報処理装置から前記取得手段が取得したデータの一覧を、ネットワークを介して通信可能な第３の情報処理装置の表示部に表示させる表示制御手段と、前記第３の情報処理装置の表示部に表示されているデータの一覧の中からユーザがデータを選択し、該選択したデータに対し行われたダウンロードの操作を検出する検出手段と、前記検出手段により検出されたダウンロードの操作に従い、前記第２の情報処理装置の記憶部に記憶されているデータをダウンロードするダウンロード手段とを有することを特徴とする。
【発明の効果】
【００１４】
以上説明したように、本発明によれば、上記のように構成したので、分散オブジェクトに基づくネットワークシステムにおいて、装置の持つユーザインタフェース資源を他の装置に流用させることを可能とし、かつ、本来の装置制御のためのユーザインタフェース機能の利便性も損なわないようにすることができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の一実施の形態を示すブロック図である。
【図２】図１の分散オブジェクト環境対応画像入出力装置１２０１の構成を示すブロック図である。
【図３】図２のリーダ部１およびプリンタ部２の構造を示す断面図である。
【図４】図２の操作部９の外観を示す図である。
【図５】図２のコア部１０の構成を示すブロック図である。
【図６】分散オブジェクト環境対応画像入出力装置におけるジョブ制御を説明するための説明図である。
【図７】複数のジョブを組み合わせた単位の一例を示す図である。
【図８】図１のクライアントコンピュータ１３の構成の一例を示すブロック図である。
【図９】図１のルックアップサーバコンピュータ１４の構成を示すブロック図である。
【図１０】サービスオブジェクトの１つであるデータ蓄積サービスオブジェクトの構成を概念的に示す模式図である。
【図１１】サービスオブジェクトの１つであるデータ蓄積サービスオブジェクトの構成を概念的に示す模式図である。
【図１２】ルックアップサーバコンピュータ１４に周辺機器がサービス代理オブジェクトを登録する方法を説明するためのブロック図である。
【図１３】クライアントコンピュータ１３がルックアップサーバよりサービス代理オブジェクトを取得する方法を説明するためのブロック図である。
【図１４】ルックアップサーバコンピュータ１４の管理テーブルの構成を示す図である。
【図１５】クライアントソフトウェアの分散アプリケーションとしてのソフトウェア構造を概念的に示す模式図である。
【図１６】分散オブジェクト環境対応画像入出力装置の操作部に表示される装置固有の制御画面の一例を示す図である。
【図１７】クライアントソフトウェアがユーザインタフェースサービスオブジェクトを介して描画した領域を含む、画像入出力装置の操作部に表示される画面の一例を示す図である。
【図１８】クライアントソフトウェアがユーザインタフェースサービスオブジェクトを介して描画した領域の上にさらに装置固有のダイアログがオーバラップした、画像入出力装置の操作部に表示される画面の一例を示す図である。
【発明を実施するための形態】
【００１６】
以下、本発明の実施の形態を図面を参照して詳細に説明する。
【００１７】
図１は本発明の一実施の形態を示す。ネットワーク１１０１と１１０２がＷＡＮ（wide area network）を介して相互に接続してある。
【００１８】
ネットワーク１１０１は、例えば、あるコンビニエンスストアに敷設された店内ＬＡＮであり、分散オブジェクト環境対応画像入出力装置（以下、画像入出力装置という）１２０１と、ルックアップサーバコンピュータ１４と、クライアントコンピュータ１３とが常時接続してある。
【００１９】
画像入出力装置１２０１はJavaのJINIやCORBAのような分散オブジェクト環境に対応している。ルックアップサーバコンピュータ１４はクライアントコンピュータ１３から画像入出力装置１２０１を遠隔操作するために必要なサービスプロクシオブジェクトがその属性情報とともに登録してある。クライアントコンピュータ１３は顧客が携帯するＰＤＡであり、無線ＬＡＮ等によってネットワーク１１０１に一時的に接続してある。また、クライアントコンピュータ１３から画像入出力装置１２０１と、分散オブジェクト環境対応画像入出力装置（以下、画像入出力装置という）１２０２をそれぞれ遠隔操作を行えるようになっている。
【００２０】
ネットワーク１１０２は、例えば、コンビニエンスストアを訪れている顧客の職場に敷設されたＬＡＮであり、画像入出力装置１２０２が常時接続してある。
【００２１】
画像入出力装置１２０２はJavaのJINIやCORBAのような分散オブジェクト環境に対応している。
【００２２】
このように、ネットワーク１１０１と１１０２がＷＡＮ（wide area network）を介して相互に接続してあるので、画像入出力装置１２０１と１２０２はそれぞれのデータをネットワーク１１を介して転送することができる。
【００２３】
図２は図１の画像入出力装置１２０１の構成を示す。図２において、１１０１は図１と同一部分を示す。３は画像入出力制御部であり、リーダ部１およびプリンタ部２に接続してあり、ファクシミリ部４と、ストレージ部５と、コンピュータインタフェース部７と、ＲＩＰ（raster image processor）部８と、操作部９と、コア部１０とを有する。
【００２４】
リーダ部１は原稿の画像を読み取り、原稿画像に応じた画像データを画像入出力制御部３へ出力するものである。プリンタ部２は画像入出力制御部３からの画像データに応じた画像を記録紙上に記録するものである。ファクシミリ部４は電話回線を介して受信した圧縮画像データを伸長し、伸長された画像データをコア部１０へ転送し、また、コア部１０から転送された画像データを圧縮し、圧縮された圧縮画像データを電話回線を介して送信するものである。送受信する画像データは、ストレージ部５に接続されたハードディスク６に一時的に保存することができる。
【００２５】
ストレージ部５はコア部１０から転送された画像データを圧縮し、その画像データを検索するためのＩＤ番号とともにハードディスク６に記憶するものである。また、ストレージ部５はコア部１０を介して転送されたコードデータに基づいて、ハードディスク６に記憶されている圧縮画像データを検索し、検索された圧縮画像データを読み出し伸長し、伸長された画像データをコア部１０へ転送するものである。
【００２６】
コンピュータインタフェース部７はネットワーク１１０１とコア部１０の間のインタフェースであり、クライアントコンピュータ１３や画像入出力装置１２０２とのデータのやり取りを行うものである。ＲＩＰ部８はネットワーク１１０１から転送された画像を表すコードデータ（ＰＤＬ）をプリンタ部２で記録できる画像データに展開するものである。
【００２７】
図３はリーダ部１およびプリンタ部２の構造を示す。まず、リーダ部１を説明する。原稿給送装置１０１は原稿を先頭順に１枚ずつブラテンガラス１０２上へ給送し、原稿の読み取り動作終了後、プラテンガラス１０２上の原稿を排出するものである。原稿がプラテンガラス１０２上に搬送されると、ランプ１０３を点灯し、そしてスキャナユニット１０４の移動を開始させて、原稿を露光走査する。この時の原稿からの反射光は、ミラー１０５、１０６、１０７、およびレンズ１０８によってＣＣＤイメージセンサ１０９へ導かれる。このように、走査された原稿の画像はＣＣＤイメージセンサ１０９によって読み取られる。ＣＣＤイメージセンサ１０９から出力された画像データは、所定の処理が施された後、画像入出力制御部３のコア部１０へ転送される。
【００２８】
つぎに、プリンタ部２を説明する。レーザドライバ２２１はレーザ発光部２０１を駆動するものであり、画像入出力制御部３のコア部１０から出力された画像データに応じたレーザ光をレーザ発光部２０１に発光させる。レーザ発光部２０１からのレーザ光が感光ドラム２０２上で走査され、感光ドラム２０２上に潜像が形成される。感光ドラム２０２上の潜像は現像器２０３によって現像剤（トナー）が付着される。そして、レーザ光の照射開始と同期したタイミングで、カセット２０４およびカセット２０５のいずれかから記録紙を給紙して転写部２０６へ搬送し、感光ドラム２０２上のトナー像が記録紙に転写される。トナー像が転写された記録紙は定着部２０７に転送され、記録紙上のトナー像は定着部２０７の熱と圧力により定着される。定着部２０７を通過した記録紙は排出ローラ２０８によって排出され、フィニッシャ２２０は排出された記録紙を束ねて記録紙の仕分けをしたり、仕分けされた記録紙のステイブルを行う。
【００２９】
両面記録が設定されている場合は、排出ローラ２０８のところまで、記録紙が搬送された後、排出ローラ２０８の回転方向が逆転され、フラッパ２０９によって再給紙搬送路２１０へ導かれる。再給紙搬送路２１０へ導かれた記録紙は上述したタイミングで転写部２０６へ給紙される。
【００３０】
図４は図２の操作部９の外観を示す。図４において、２６０２はパネルであり、タッチパネルつきの液晶ディスプレイ２６０１と、複数のハードキーが配置してある。２６０３はＬＥＤ（light emitting diode）表示部であり、状態を表示するためのものである。２６０４は画面コントラスト調整ダイアルであり、画面コントラストを調整するためのものである。
【００３１】
操作部９はその他に図示しないブザー等を備えている。液晶ディスプレイ２６０１に表示されたボタン画像は、タッチパネルの入力座標計算と連動して、ソフトウェア的なキーとして機能する。ユーザインタフェースにより、本画像入出力装置への動作指示や動作設定等を行うものである。
【００３２】
図５は図２のコア部１０の構成を示す。図５において、１，２，４〜９は図２と同一部分を示す。コア部１０はインタフェース１２０，１２２と、データ処理部１２２と、ＣＰＵ１２３と、メモリ１２４とを有する。
【００３３】
リーダ部１からの画像データはインタフェース１２２を介して、データ処理部１２１へ転送される。データ処理部１２１は画像の回転処理や変倍処理などの画像処理や画像データの圧縮、伸長を行うものであり、内部にＡ４／Letterサイズ相当の画像データを複数ページ分ストア可能なページメモリを有する。リーダ部１からデータ処理部１２１へ転送された画像データは、ページメモリに一時的に記憶され、その後、圧縮されてインタフェース１２０を介してストレージ部５へ転送される。
【００３４】
コンピュータインタフェース部７を介して入力された画像を表すコードデータ（ＰＤＬ）は、インタフェース１２０を介してデータ処理部１２１に転送された後、ＲＩＰ部８へ転送されて画像データに展開され、得られた画像データはデータ処理部１２１に転送された後、ページメモリに一時的に記憶され、その後、圧縮されてストレージ部５へ転送される。
【００３５】
ファクシミリ部４からの画像データは、データ処理部１２１へ転送された後、ページメモリに一時的に記憶された後、圧縮されてストレージ部５へ転送される。ストレージ部５からの画像データは、データ処理部１２１へ転送された後、伸長されてページメモリに一時的に記憶され、その後、プリンタ部２やファクシミリ部４、コンピュータインタフェース部７へ転送される。ストレージ部５はコンピュータインタフェース部７を介して、画像データと非画像データの入出力を行い、外部装置に対してデータの格納機能を提供することができる。
【００３６】
なお、前述したデータ処理部１２１へ各種画像データを入力し、ページメモリに一時的に記憶した後、ストレージ部５へ画像データを転送する前に、プリンタ部２やファクシミリ部４、コンピュータインタフェース部７へ転送することも、内部のセレクタを切り換えて転送することができる。
【００３７】
ＣＰＵ１２３はメモリ１２４に記憶されている制御プログラムと、操作部９から転送された制御コマンドとに従って、このような制御を行う。メモリ１２４はＣＰＵ１２３の作業領域としても使われる。
【００３８】
このように、コア部１０を中心に、データ処理部１２１およびストレージ部５を介して、原稿画像の読み取り、画像のプリント、画像の送受信、画像の保存、コンピュータからのデータの入出力などの機能を複合させた処理を行うことが可能である。
【００３９】
次に、ジョブ制御の単位を論理的に示した図６を参照して、画像入出力装置におけるジョブ制御について説明する。ジョブ制御の単位は複数ページを含む画像データひとまとまりに対する入力および出力処理である。これにより、制御されるジョブは画像入力ジョブと画像出力ジョブに大別される。
【００４０】
画像入力ジョブはリーダ部１で読み取った画像データを順次ストレージ部５へ記録する画像入力ジョブ４１１と、ＲＩＰ部８で展開された画像データを順次ストレージ部５へ記録する画像入力ジョブ４１２と、ファクシミリ部４で受信された画像データを順次ストレージ部５へ記録する画像入力ジョブ４１３と、コンピュータインタフェース部７から入力された画像データを順次ストレージ部５へ記録する画像入力ジョブ４１４とにさらに分類される。
【００４１】
本実施の形態の分散オブジェクト環境対応画像入出力装置は、ストレージ部５を非画像データの蓄積のために利用する機能を提供し、画像入力ジョブ４１１ならびに画像出力ジョブ４１４は非画像データを扱うこともできる。
【００４２】
画像出力ジョブは、ストレージ部５から読み出した画像データを順次プリンタ部へ出力する画像出力ジョブ４０１と、ストレージ部５から読み出した画像データを順次ファクシミリ部へ出力する画像出力ジョブ４０３と、ストレージ部５から読み出した画像データを順次コンピュータインタフェース部７へ出力する画像出力ジョブ４０４とに分類される。
【００４３】
図７は複数のジョブを組み合わせた単位（以下、セッションという）の一例を示す。図７において、５０１はコピーセッションであり、画像入力ジョブ４１１と画像出力ジョブ４０１を組み合わせてセッションとして制御するものである。５０２はＰＤＬプリントセッションであり、画像入力ジョブ４１２と画像出力ジョブ４０１を組み合わせてセッションとして制御するものである。５０３はファクシミリ受信セッションであり、画像入力ジョブ４１３と画像出力ジョブ４０１を組み合わせてセッションとして制御するものである。５０４はプリンタセッションであり、画像入力ジョブ４１４と画像出力ジョブ４０１を組み合わせてセッションとして制御するものである。
【００４４】
５０５はファクシミリ送信セッションであり、画像入力ジョブ４１１と画像出力ジョブ４０３を組み合わせてセッションとして制御するものである。５０６はスキャンセッションであり、画像入力ジョブ４１１と画像出力ジョブ４０４を組み合わせてセッションとして制御するものである。５０７はＦＡＸモデム受信セッションであり、画像入力ジョブ４１３と画像出力ジョブ４０４を組み合わせてセッションとして制御するものである。５０８はＦＡＸモデム送信セッションであり、画像入力ジョブ４１４と画像出力ジョブ４０３を組み合わせてセッションとして制御するものである。
【００４５】
なお、セッションは１つ以上のジョブを含む制御単位であり、例えば画像入力ジョブ４１２を１セッションとして扱ったり、また、画像出力ジョブ４０１をセッションとして扱ったり、画像入力ジョブ４１２と画像出力ジョブ４０１と、画像出力ジョブ４０３を組み合わせて１セッションとして扱っても良い。
【００４６】
図８は図１のクライアントコンピュータ１３の構成を示す。クライアントコンピュータ１３は稼働するソフトウェアのアルゴリズムによって特徴づけられるが、そのソフトウエアの振る舞いは後述する。図８において、２４００はＰＤＡであり、ＣＰＵ２４０１と、ＲＡＭ２４０２と、ＲＯＭ２４０３と、ネットワークインタフェース２４１２と、タッチパネルコントローラ（ＴＰＣ）２４０５と、ＬＣＤＣ２４０６と、ＤＫＣ２４０７とを、システムバス２４１３を介して相互に接続してある。
【００４７】
ＣＰＵ２４０１はＲＯＭ２４０３のプログラム用ＲＯＭに記憶された文書処理プログラム等に従って図形、イメージ、文字、表（表計算等を含む）等が混在した文書処理を実行するとともに、システムバス２４１３に接続された各デバイスを総括的に制御するものである。ＲＯＭ２４０３のプログラム用ＲＯＭには、ＣＰＵ２４０１の制御プログラム等が記憶してある。ＲＡＭ２４０２はＣＰＵ２４０１の主メモリ、ワークエリア等として機能するものである。タッチパネルコントローラ２４０５はタッチパネル２４０９からの入力を制御するものである。ＬＣＤ（liquid crystal display）コントローラ２４０６はＬＣＤディスプレイ２４１０の表示を制御するものである。ディスクコントローラ２４０７は必要に応じて外部記憶装置２４１１とのアクセスを制御するものである。ネットワークインタフェース２４０８はネットワークを介して他のホストコンピュータや各入出力装置との通信制御処理を実行するものである。
【００４８】
図９は図１のルックアップサーバコンピュータ１４の構成を示す。ルックアップサーバコンピュータ１４はハードウェア的にはよく知られた汎用コンピュータの構成であればよく、それを特徴づける機能は稼働するソフトウェアのアルゴリズムによって果たされる。例えば、このソフトウェアを画像入出力装置１２０２のハードウェア上で稼働させることも可能であり、その場合は、画像入出力装置１２０２がルックアップサーバコンピュータ１４を兼ねることになる。ソフトウェアの振る舞いは後述する。
【００４９】
ルックアップサーバコンピュータ１４はＣＰＵ２５０１と、ＲＡＭ２５０２と、ＲＯＭ２５０２と、ネットワークインタフェース２５１２と、キーボードコントローラ２５０５と、ＣＲＴ（cathode ray tube）コントローラ２５０６と、ディスクコントローラ２５０７とがシステムバス２５１０を介して相互に接続してある。
【００５０】
ＣＰＵ２５０１はＲＯＭ２５０３のプログラム用ＲＯＭに記憶されたプログラム等に従って処理を実行するとともに、システムバス２５１３に接続された各デバイスを総括的に制御するものである。ＲＡＭ２５０２はＣＰＵ２５０１の主メモリ、ワークエリア等として機能するものである。キーボードコントローラ２５０５はキーボード２５０９や図示しないポインティングデバイスからのキー入力を制御するものである。ＣＲＴコントローラ２５０６はＣＲＴディスプレイ２５１０の表示を制御するものである。ディスクコントローラ２５０７はブートプログラム、種々のアプリケーション、フォントデータ、ユーザファイル、編集ファイル等を記憶するハードディスク、フロッピーディスク等の外部記憶装置２５１１とのアクセスを制御するものである。ネットワークインタフェース２５０８はネットワークを介して他のホストコンピュータや各入出力装置との通信制御処理を実行するものである。
【００５１】
次に、本実施の形態に係る分散オブジェクトシステムについて説明する。この分散オブジェクトシステムはJavaのJiniという枠組みに類似したものである。
【００５２】
コア部１０のメモリ１２４（図５）には、各セッションによって実現される装置機能をサービスとして利用するためのソフトウェア単位であるサービスオブジェクトが複数格納されている。サービスオブジェクトはＰＤＬプリント、画像プリント、画像スキャン、ファクス送信、ファクス受信、データ蓄積、装置管理、ジョブ管理、等の装置が提供するサービスのそれぞれに対応して構成されている。
【００５３】
サービスオブジェクトは、公知のオブジェクト指向技術におけるオブジェクトと呼ばれるソフトウェア構造の一種であり、クライアントに機能を提供するインタフェースと、そのインタフェースによって要求された機能を装置制御によって実現するための実装とを持つ。特に、本実施の形態に係るサービスオブジェクトは、公知の分散オブジェクト技術におけるオブジェクトの一種であり、装置にローカルなメモリ空間に配置されたクライアントソフトウェアのみならず、ネットワークを介してリモートにある外部装置（例えば、クライアントコンピュータ１３）のメモリ空間に配置されたクライアントソフトウェアからもまた、上述のインタフェースを呼び出しサービスを利用できるように構成されている。本実施の形態に係るサービスオブジェクトがクライアントにサービスを提供する構成の概略を次に説明する。
【００５４】
図１０および図１１はサービスオブジェクトの１つであるデータ蓄積サービスオブジェクトの構成を概念的に示す。
【００５５】
図１０はクライアントソフトウェアが装置内部のメモリ１２４の空間からインタフェースを利用する一般的なオブジェクト指向システムの様子を示す。データ蓄積サービスオブジェクトはクライアントが装置内部のストレージ部５を２次記憶装置として利用するためのインタフェースを提供する。インタフェースにはストレージ部５に記憶されるファイルを生成したり生成済のファイルにアクセスするための記述子を取得するためのopenと、ファイルへのアクセスの完了を宣言するcloseと、ファイルからデータを読み出すreadと、ファイルヘデータを書き込むwriteと、ファイルを消去するunlink等と、公知の一般的なファイルシステムが提供する操作の集合によって定義されるインタフェースを持つ。
【００５６】
インタフェースによって定義されたそれぞれの操作が呼び出されると、インタフェースに対応する実装を提供する制御ソフトウェアが活性化される。この結果、ＣＰＵ１２３はストレージ部５を制御して、それぞれの操作に対応する所定の機能を実現する。
【００５７】
以上はクライアントソフトウェアが装置内部のメモリ１２４の空間からインタフェースを利用する、一般的なオブジェクト指向システムの振る舞いを示している。
【００５８】
図１１に示すように、分散オブジェクトシステムであるサービスオブジェクトは、遠隔地にある他の装置（例えば、クライアントコンピュータ１３）のメモリ空間に配置されるサービス代理オブジェクトと、装置内部のメモリ空間に配置されるサービス実装オブジェクトとが分散連携して、遠隔地の装置のメモリ空間にあるクライアントソフトウェアにサービスのインタフェースを提供する。
【００５９】
データ蓄積サービス代理オブジェクトは装置内部のストレージ部５を、クライアントが２次記憶装置として利用するためのインタフェースを提供する。インタフェースにはストレージ部５に記憶されるファイルを生成したり生成済のファイルにアクセスするための記述子を取得するためのopenと、ファイルへのアクセスの完了を宣言するcloseと、ファイルからデータを読み出すreadと、ファイルヘデータを書き込むwriteと、ファイルを消去するunlink等と、上述したものと同じインタフェースを持つ。
【００６０】
遠隔地の装置のメモリ空間において、クライアントからインタフェースによって定義されたそれぞれの操作が呼び出されると、その操作呼び出し要求をネットワーク経由で装置に転送するためのソフトウェアが活性化される。遠隔装置のＣＰＵはこのソフトウェアに従って、要求された操作を識別する識別子の値や、呼び出しに引数として渡されたデータ構造を、ネットワーク経由で送信可能なバイト列に符号化する。この符号化処理はマーシャリングあるいはシリアライズ（直列化）等と呼ばれ、いくつかの技術が知られている。そして、遠隔装置のＣＰＵは、符号化したバイト列をネットワーク経由で装置に送信する。通信のためにはＯＭＧのＩＩＯＰやＳｕｎのＲＭＩ等のプロトコルが用いられる。
【００６１】
装置にローカルなメモリ空間において、一般にオブジェクト要求ブローカと呼ばれるソフトウェアが常時ネットワークからの要求データの受信を監視している。オブジェクト要求ブローカは、前述のバイト列を受信すると、それを複合化してもとのオブジェクトの操作の呼び出しとそれに引数として渡されるデータ構造を復元し、サービス実装オブジェクトの対応する操作を呼び出す。この結果、インタフェースに対応する実装を提供する制御ソフトウェアが活性化される。この結果、ＣＰＵ１２３はストレージ部５を制御して、それぞれの操作に対応する所定の機能を実現する。
【００６２】
しかし、クライアントソフトウェアは、装置のサービスを実際に実現するサービス実装オブジェクトがネットワークを介した他のメモリ空間に存在することを意識して、プログラミングする必要はない。すなわち、操作呼び出しを符号化する処理やネットワーク経由の通信処理等は、サービス代理オブジェクトが内部に隠蔽しているため、クライアントソフトウェアは自らと同じメモリ空間にサービスオブジェクトが実装されている場合と同等に、容易にサービスを利用することができる。このようにクライアントソフトウェアのプログラマに対しネットワークの透過性を提供することは、分散オブジェクト環境の重要な利点の１つである。
【００６３】
なお、以上の説明におけるサービス代理オブジェクトが行う、符号化と通信の処理は、予め定められた符号化アルゴリズムと、予め定められた通信プロトコルとに基づく処理である。すなわち、これらの処理は、個々のサービスオブジェクトでそれぞれ異なるインタフェースとは独立に厳密に定義可能である。
【００６４】
そこで、分散オブジェクト環境において提供されるコンパイラ（一般にＩＤＬコンパイラと呼ばれる）が、サービスのインタフェースを厳格に定義した記述をデータとして読み込み解釈および変換処理を行うことにより、機械的にサービス代理オブジェクトのプログラムを生成できる。システムを構築するプログラマがＩＤＬコンパイラをツールとして用いて容易にサービス代理オブジェクトのプログラムを得られることは、分散オブジェクト環境の重要な利点のもう１つである。
【００６５】
次に、図１２を説明する。図１２は周辺機器からサービス代理オブジェクトをルックアップサーバコンピュータ１４ヘアッブロードするまでの過程を示す。画像入出力装置１２０２がネットワーク１１０１に接続された瞬間に、ネットワーク１１０１上に対してルックアップサーバコンピュータが存在するかどうかのブロードキャストパケットを投げる。そして、投げられたパケットを受け取ったルックアップサーバコンピュータ１４は、画像入出力装置１２０２に対して、ルックアップサーバコンピュータ１４の存在を通知する。その後、画像入出力装置１２０２は発見したルックアップサーバコンピュータ１４に対してドライバ６１７を登録する。
【００６６】
ネットワークに接続された画像入出力装置１２０１と１２０２は、サービス代理オブジェクト群をそれぞれルックアップサーバコンピュータ１４に登録する。ルックアップサーバコンピュータ１４では、登録されたサービス代理オブジェクトが、図１４に示すように、登録された日時と、サービスの名称（周辺機器名）と、サービスの仕様と、サービスの所在地等の属性とともに管理されている。登録される属性の種類は、プリンタ、ストレージといったサービスのカテゴリごとに、Jiniコミュニティによる標準スキーマが定められている。また、サービスに固有の独自情報を属性として登録することもできる。ルックアップサーバコンピュータ１４はクライアントソフトウェアからの問い合わせに応じて、登録されているサービスの各属性を応答するように構成されている。
【００６７】
図１３を説明する。図１３はルックアップサーバコンピュータ１４からクライアントコンピュータ１３へサービス代理オブジェクトをダウンロードするまでの過程を示す。クライアントコンピュータ１３が画像入出力装置１２０２を利用する場合、まず、ルックアップサーバコンピュータ１４に対して、どのようなサービスに対応しているサービス代理オブジェクトが存在しているかどうかを検索する。そして、クライアントコンピュータ１３が所望のサービス代理オブジェクトをルックアップサーバからダウンロードし、目的のサービスを提供する画像入出力装置１２０２と通信を行う。
【００６８】
クライアントコンピュータ１３は「プリントサービスを受けたい」、「スキャンサービスを受けたい」という要求がある場合には、まず、ルックアップサーバコンピュータ１４の管理テーブル（図１４）を見て、どのようなサービスが登録されているのかを確認し、所望のサービスをルックアップサーバコンピュータ１４からダウンロードする。
【００６９】
本実施の形態に係る分散オブジェクトシステムでは、サービスはその利用権を、一定期間、クライアントに貸与（リース）するモデルを採用している。すなわち、画像入出力装置１２０２はルックアップサーバコンピュータのサービスを利用して、自らの存在をルックアップサーバに登録するが、この登録にも有効期限が設定される。登録が一旦行われた後にも、定期的に登録を繰り返さなければ、やがて失効する。この仕組みによれば、ルックアップサーバのクライアントである各種サーバがシステムダウン等によってその機能を失った際に、いつまでも無効な情報がルックアップサービスに登録され続けるという問題が軽減されることになる。
【００７０】
図１５は本実施の形態に係る分散オブジェクトシステムの分散アプリケーンョンの構成を模式的に示す。ＰＤＡであるクライアントコンピュータ１３で稼働するクライアントソフトウェアは、遠隔地に置かれた画像入出力装置１２０２の内部の記憶装置を、ストレージサービスオブジェクトによって図１１の説明と同様にアクセスする。例えば、ファイルの一覧を表示する場合、クライアントコンピュータ１３の小さな画面よりも比較的大きな画面に表示した方が利便性が高い。
【００７１】
そこで、クライアントソフトウェアは同じコンビニエンス店内ＬＡＮ１１０１に接続されたルックアップサーバコンピュータ１４によって、より高解像度なユーザインタフェースサービスを検索し、店内ＬＡＮ１１０１に接続された画像入出力装置１２０１のユーザインタフェースサービスオブジェクトを得る。クライアントソフトウェアはダウンロードしたユーザインタフェースサービス代理オブジェクトの操作を呼び出して、画像入出力装置１２０１の操作部によって、自らが必要とするグラフィカルなユーザインタフェースの表示を描画しタッチパネルからの入力を獲得する。
【００７２】
クライアントソフトウェアを実行しているユーザが店内の画像入出力装置１２０１の操作部９を見ると、そこには、例えば、図４に示すコピー制御画面のような装置に、固有の機能を制御するための画面が表示されている。ここで、ユーザがタッチパネルディスプレイ上のSpecial Featuresと記されたソフトキーを押すと、特別な機能のリストから所望の機能を選択するための画面（図１６）が表示される。
【００７３】
ここで、ユーザがUI Serviceと記されたソフトキーを押すと、図１７の画面に切り換わる。図１７は、クライアントコンピュータ１３のクライアントソフトウェアが、画像入出力装置１２０１が提供するユーザインタフェースサービスオブジェクトを経由して描画した画面である。画面にはクライアントソフトウェアがストレージサービスオブジェクトを経由して取得した画像入出力装置１２０２内部の記憶装置に蓄えられているユーザのファイル一覧が表示されている。
【００７４】
ユーザがリストの行のいずれかに触れると、タッチパネルからの入力イベントがユーザインタフェースサービスオブジェクトを経由してクライアントソフトウェアに伝えられる。クライアントソフトウェアはそのイベントを検出して、さらにユーザが触れた行に表示されているファイルの詳細情報表示と、ダウンロードと、消去と、アプリケーションの終了等の操作を選択するためのメニューが表示される。
【００７５】
クライアントソフトウェアが必要とするユーザインタフェース処理が完了すると、クライアントソフトウェアはユーザインタフェースサービスオブジェクトに対してサービスの利用の完了通知操作を呼び出す。この結果、図１７の画面は消去され、例えば、図４または図１６に示したような装置本来の画面に復帰する。
【００７６】
図１７において、画面下部の黒い帯は、クライアントソフトウェアでなく、画像入出力装置１２０１が表示しタッチパネルのイベントを監視している領域である。この領域の右側に配置されたBackと記されたボタンは、画像入出力装置１２０１の本来の操作画面に復帰するためのソフトキーである。ユーザがこのソフトキーに触れると、画像入出力装置１２０１の制御プログラムによって、いつでも、例えば、図４または図１６に示したような画面に遷移する。ユーザが、再度、図１６のUI Serviceソフトキーを押せば、図１７の画面に戻ることもできる。
【００７７】
また、この領域の左側に配置されたアイコンと、Paper Jam!のメッセージは、画像入出力装置１２０１が管理するステータス行表示であり、装置に紙詰まりが生じていることを告知し、ユーザに注意を呼び掛けている。
【００７８】
ユーザがStatusと記されたソフトキーに触れると、いつでも、装置の状態の詳細が表示される。
【００７９】
なお、本実施の形態においては、ユーザの注意を喚起させるべき事象が装置に生起したときに、ユーザインタフェースサービスがアクティブになっている場合は、装置の制御プログラムが画面下部のステータス行にアイコンとメッセージを表示する例を説明したが、この他にも、例えば、図１８に示すように、外部のクライアントがユーザインタフェースサービスによって表示している画面の上にオーバラップしたダイアログを表示するように構成してもよい。あるいは、図４に示すような装置本来の画面に強制的に遷移するように構成してもよい。またあるいは、事象の優先度に応じて、ステータス行表示と、ダイアログ表示と、強制画面遷移のいずれかを使い分けるように構成してもよい。また、ＬＥＤ２６０３やブザー等によってユーザの注意を喚起させるように構成してもよい。
【００８０】
なお、本実施の形態においては、図１６のUI Serviceソフトキーにユーザが触れることにより、操作部がユーザインタフェースサービスに制御される例を説明したが、UI Serviceが強制的に操作部の制御権を取得できるように構成し、クライアントソフトウェアがユーザインタフェースサービスオブジェクトの利用開始か、強制活性化操作を呼び出すことにより、図４等の画面から図１７の画面への遷移が自動的に行われるように構成してもよい。
【００８１】
以上説明したように、本実施の形態によれば、クライアントソフトウェアは、より豊かなユーザインタフェース資源を持つ手近の装置のユーザインタフェースサービスを利用して、ユーザにとって使いやすいユーザインタフェースを容易に提供できる。
【符号の説明】
【００８２】
１  リーダ部
２  プリンタ部
３  画像入出力制御部
４  ファクシミリ部
５  ストレージ部
７  コンピュータインタフェース部
８  ＲＩＰ部
９  操作部
１０  コア部
１４  ルックアップサーバコンピュータ
２１３  クライアントコンピュータ
１１０１，１１０２  ネットワーク
１２０１，１２０２  分散オブジェクト環境対応画像入出力装置
【図１】
2011023027.tif 000003
【図２】
2011023027.tif 000004
【図３】
2011023027.tif 000005
【図４】
2011023027.tif 000006
【図５】
2011023027.tif 000007
【図６】
2011023027.tif 000008
【図７】
2011023027.tif 000009
【図８】
2011023027.tif 000010
【図９】
2011023027.tif 000011
【図１０】
2011023027.tif 000012
【図１１】
2011023027.tif 000013
【図１２】
2011023027.tif 000014
【図１３】
2011023027.tif 000015
【図１４】
2011023027.tif 000016
【図１５】
2011023027.tif 000017
【図１６】
2011023027.tif 000018
【図１７】
2011023027.tif 000019
【図１８】
2011023027.tif 000020