(57)【要約】【課題】ネットワークデバイスを、その知識がなくとも使いこなす。【解決手段】コンピュータ１３は、画像入出力装置１２−１及び画像入出力装置１２−２からスタブドライバ６１０，６１２を獲得し（Ｓ１６０１，Ｓ１６０２）、スタブドライバ６１０を画像入出力装置１２−１に送信する（Ｓ１６０５）。画像入出力装置１２−１は、受信したプリンタのスタブドライバ６１０を実行して画像入出力装置１２−２を駆動し、読み込んだデータを送信して印刷させる。【選択図】図１６
2006197582.tif 000002
【特許請求の範囲】
【請求項１】
外部情報処理装置と、周辺装置とにネットワークを介して接続された情報処理装置において、
前記外部情報処理装置から要求を受けることなく、前記周辺装置を制御するためのデバイスドライバの配信待ち状態となり、前記外部情報処理装置からのデバイスドライバの配信に応じて、前記外部情報処理装置が配信したドライバを取得する取得手段と、
前記取得手段が取得したデバイスドライバを実行可能な状態として準備するよう前記情報処理装置を制御する制御手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記外部情報処理装置がデバイスドライバを配信後、前記デバイスドライバの準備ができるのに応答して、前記デバイスドライバを駆動し、前記周辺装置を駆動する駆動手段を更に備えることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記周辺装置は印刷装置であって、前記デバイスドライバはプリンタドライバであることを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記情報処理装置は画像入力装置であり、画像情報を入力するための入力手段をさらに備え、
プリンタドライバを駆動して前記印刷装置を制御することにより、前記制御手段は、前記入力手段により入力された画像情報を前記印刷装置に印刷するよう制御することを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記取得手段は、前記外部情報処理装置からデバイスドライバを受信するための受信プログラムを、前記外部情報処理装置によりリモートプロシジャーコールを用いて遠隔的に呼び出されて、前記外部情報処理装置が配信したドライバを取得することを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
外部情報処理装置と周辺装置とにネットワークを介して接続された情報処理装置における情報処理方法であって、
前記外部情報処理装置から要求を受けることなく、前記周辺装置を制御するためのデバイスドライバの配信待ち状態となり、前記外部情報処理装置からのデバイスドライバの配信に応じて、前記外部情報処理装置が配信したドライバを取得する取得工程と、
前記取得工程で取得したデバイスドライバを実行可能な状態として準備するよう前記情報処理装置を制御する制御工程と
を備えることを特徴とする情報処理方法。
【請求項７】
前記外部情報処理装置がデバイスドライバを配信後、前記デバイスドライバの準備ができるのに応答して、前記デバイスドライバを駆動し、前記周辺装置を駆動する駆動工程を更に備えることを特徴とする請求項６に記載の情報処理方法。
【請求項８】
前記周辺装置は印刷装置であって、前記デバイスドライバはプリンタドライバであることを特徴とする請求項６又は７に記載の情報処理方法。
【請求項９】
前記情報処理装置は画像入力装置であり、画像情報を入力するための入力工程をさらに備え、
プリンタドライバを駆動して前記印刷装置を制御することにより、前記制御工程は、前記入力工程により入力された画像情報を前記印刷装置に印刷するよう制御することを特徴とする請求項８に記載の情報処理方法。
【請求項１０】
前記取得工程では、前記外部情報処理装置からデバイスドライバを受信するための受信プログラムを、前記外部情報処理装置によりリモートプロシジャーコールを用いて遠隔的に呼び出されて、前記外部情報処理装置が配信したドライバを取得することを特徴とする請求項６乃至９のいずれか１項に記載の情報処理方法。
【請求項１１】
外部情報処理装置と、周辺装置とにネットワークを介して接続されたコンピュータにより実行可能なプログラムであって、
前記外部情報処理装置から要求を受けることなく、前記周辺装置を制御するためのデバイスドライバの配信待ち状態となり、前記我部情報処理装置からのデバイスドライバの配信に応じて、前記外部情報処理装置が配信したドライバを取得する取得手段と、
前記取得手段が取得したデバイスドライバを実行可能な状態として準備するよう前記情報処理装置を制御する制御手段と
してコンピュータを機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えばドライバを外部装置から受信して実行可能とできる情報処理装置及び方法及びプログラムに関する。
【背景技術】
【０００２】
イメージスキャナやデジタルカメラ、ファクシミリ受信装置等の入力装置とプリンタやファクシミリ送信装置等の出力装置などの単機能装置を互いにネットワーク接続し、これら単機能装置の機能を組み合わせた複合機能を提供する分散型の文書処理システムの開発研究が盛んに行なわれている。また、単一の匡体内に複数の上記単機能装置の機能を統合したいわゆるマルチファンクションプロダクト（ＭＦＰ）においても同様に、その内部の単機能を切り出して、ネットワークを介し他の装置の機能と組み合わせることで種々の複合機能を適宜柔軟に実現することが求められ、分散型文書処理システムの開発研究が盛んに行なわれている。
【０００３】
ネットワークに分散した情報処理装置間に跨った機能の提供を容易にするためのプログラミングモデルとしてリモートプロシージャコール（ＲＰＣ）や分散オブジェクトの技術が広く知られている。分散オブジェクトは、オブジェクト指向のソフトウェアモデルを分散システムに拡張したものであり、あるネットワークノード上のオブジェクトが同一ノード上のオブジェクトの操作を呼び出す手順と同等の手順によって（透過に）他のネットワークノード上のオブジェクトの操作の呼び出しを可能とするものである。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
分散オブジェクト技術を用いて、分散オブジェクト環境対応画像入出力装置のスキャンサービスやＰＤＬプリントサービス、そしてプリントサービスを利用するために、それぞれの分散オブジェクト環境対応画像入出力装置からスタブドライバをダウンロードすることができる。
【０００５】
しかしながらこのためには、ネットワーク１１上にあらかじめ分散オブジェクト環境対応画像入出力装置が存在していることをクライアントコンピュータを利用するユーザーは知っていなければならない。
【０００６】
本発明は上記の問題を解決するためになされたものであり、クライアントコンピュータを利用するユーザーがネットワークの構成を知らなくても、自分の利用したい周辺機器のサービスに対応したドライバをダウンロードできる情報処理装置及び方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本発明は次のような構成からなる。すなわち、外部情報処理装置と、周辺装置とにネットワークを介して接続された情報処理装置において、前記外部情報処理装置から要求を受けることなく、前記周辺装置を制御するためのデバイスドライバの配信待ち状態となり、前記外部情報処理装置からのデバイスドライバの配信に応じて、前記外部情報処理装置が配信したドライバを取得する取得手段と、前記取得手段が取得したデバイスドライバを実行可能な状態として準備するよう前記情報処理装置を制御する制御手段とを備えることを特徴とする。
【発明の効果】
【０００８】
本発明によれば、デバイスの機能を一元的に管理でき、システムやデバイスに関する知識が無い利用者であっても、デバイスを利用することができる。
【発明を実施するための最良の形態】
【０００９】
［第１実施形態］
図１は本発明の第１の実施形態であるネットワークシステムを示す図である。同図において、ネットワーク１１にはＪａｖａ（登録商標）やＣＯＲＢＡといった分散オブジェクト環境に対応している２台の画像入出力装置１２−１、１２−２とクライアントコンピュータ１３、サービスドライバサーバコンピュータ１４が接続されている。分散オブジェクト環境対応画像入出力装置１２−１と１２−２はそれぞれのデータをネットワーク１１を介して転送することができる。また、クライアントコンピュータ１３から分散オブジェクト環境対応画像入出力装置１２−１と１２−２をそれぞれ遠隔操作を行うことができるようになっている。
【００１０】
サービスドライバサーバコンピュータ１４はクライアントコンピュータ１３から分散オブジェクト環境対応画像入出力装置１２を遠隔操作するために必要なサービスドライバが登録されている。
【００１１】
＜画像入出力装置の構成＞
図２は図１の分散オブジェクト環境対応画像入出力装置１２−１，１２−２の構成を示すブロック図である。
【００１２】
同図において、リーダ部１は原稿の画像を読み取り、原稿画像に応じた画像データを画像入出力制御部３へ出力する。プリンタ部２は画像入出力制御部３からの画像データに応じた画像を記録紙上に記録する。画像入出力制御部３はリーダ部１およびプリンタ部２に接続されており、ファクシミリ部４、ストレージ部５、コンピュータインターフェイス部７、ＲＩＰ（Ｒａｓｔｅｒ Ｉｍａｇｅ Ｐｒｏｃｅｓｓｏｒ）部８、操作部９、コア部１０などからなる。
【００１３】
ファクシミリ部４は電話回線を介して受信した圧縮画像データを伸長して、伸長された画像データをコア部１０へ転送し、又、コア部１０から転送された画像データを圧縮して、圧縮された圧縮画像データを電話回線を介して送信する。送受信する画像データは、ストレージ部５に接続されたハードディスク６中に一時的に保存することができる。
【００１４】
ストレージ部５にはハードディスク６が接続されており、ストレージ部５はコア部１０から転送された画像データを圧縮し、その画像データを検索するためのＩＤ番号とともにハードディスク６に記憶させる。又、ストレージ部５はコア部１０を介して転送されたコードデータに基づいてハードディスク６に記憶されている圧縮画像データを検索し、検索された圧縮画像データを読み出して伸長し、伸長された画像データをコア部１０へ転送する。コンピュータインターフェイス部７は、ネットワーク１１とコア部１０の間のインターフェイスであり、クライアントコンピュータ１３や他の分散オブジェクト環境対応画像入出力装置１２とのデータのやり取りを行う。
【００１５】
ＲＩＰ部８はネットワーク１１から転送された画像を表すコードデータ（ＰＤＬ）をプリンタ部２で記録できる画像データに展開するものである。
【００１６】
操作部９はタッチパネルディスプレイとハードキーを備え、ユーザーインターフェースにより、本分散オブジェクト環境対応画像入出力装置への動作指示や動作設定等を行うものである。
【００１７】
コア部１０については後述するが、コア部１０はリーダ部１、プリンタ部２、ファクシミリ部４、ストレージ部５、コンピュータインターフェイス部７、ＲＩＰ部８、操作部９のそれぞれの間のデータの流れを制御するものである。
【００１８】
図３はリーダ部１及びプリンタ部２の断面図である。リーダ部１の原稿給送装置１０１は原稿を先頭順に１枚ずつプラテンガラス１０２上へ給送し、原稿の読み取り動作終了後、プラテンガラス１０２上の原稿を排出するものである。原稿がプラテンガラス１０２上に搬送されると、ランプ１０３を点灯し、そしてスキャナユニット１０４の移動を開始させて、原稿を露光走査する。この時の原稿からの反射光は、ミラー１０５、１０６、１０７、及びレンズ１０８によってＣＣＤイメージセンサ（以下ＣＣＤという）１０９へ導かれる。このように、走査された原稿の画像はＣＣＤ１０９によって読み取られる。ＣＣＤ１０９から出力される画像データは、所定の処理が施された後、画像入出力制御部３のコア部１０へ転送される。
【００１９】
プリンタ部２のレーザドライバ２２１はレーザ発光部２０１を駆動するものであり、画像入出力制御部３のコア部１０から出力された画像データに応じたレーザ光をレーザ発光部２０１に発光させる。このレーザ光は感光ドラム２０２に照射され、感光ドラム２０２にはレーザ光に応じた潜像が形成される。この感光ドラム２０２の潜像の部分には現像器２０３によって現像剤が付着される。そして、レーザ光の照射開始と同期したタイミングで、カセット２０４及びカセット２０５のいずれかから記録紙を給紙して転写部２０６へ搬送し、感光ドラム２０２に付着された現像剤を記録紙に転写する。現像剤の乗った記録紙は定着部２０７に搬送され、定着部２０７の熱と圧力により現像剤は記像紙に定着される。定着部２０７を通過した記録紙は排出ローラ２０８によって排出され、フィニッシャー２２０は排出された記録紙を束ねて記録紙の仕分けをしたり、仕分けされた記録紙のステイプルを行う。また、両面記録が設定されている場合は、排出ローラ２０８のところまで記録紙を搬送した後、排出ローラ２０８の回転方向を逆転させ、フラッパ２０９によって再給紙搬送路２１０へ導く。再給紙搬送路２１０へ導かれた記録紙は上述したタイミングで転写部２０６へ給紙される。
【００２０】
図４はコア部１０のブロック図である。リーダ部１からの画像データはインターフェース１２２を介して、データ処理部１２１へ転送される。データ処理部１２１は画像の回転処理や変倍処理などの画像処理や画像データの圧縮、伸長を行うものであり、内部にＡ４／Ｌｅｔｔｅｒサイズ相当の画像データ複数ページ分のページメモリを有する。リーダ部１からデータ処理部１２１へ転送された画像データは、ページメモリに一時的に記憶された後、圧縮されてインターフェイス１２０を介してストレージ部５へ転送される。また、コンピュータインターフェイス部７を介して入力された画像を表すコードデータ（ＰＤＬ）は、インターフェース１２０を介してデータ処理部１２１に転送された後ＲＩＰ部８へ転送されて画像データに展開され、この画像データはデータ処理部１２１に転送された後、ページメモリに一時的に記憶された後、圧縮されてストレージ部５へ転送される。ファクシミリ部４からの画像データは、データ処理部１２１へ転送された後、ページメモリに一時的に記憶された後、圧縮されてストレージ部５へ転送される。また、ストレージ部５からの画像データは、データ処理部１２１へ転送された後、伸長されてページメモリに一時的に記憶された後、プリンタ部２やファクシミリ部４、コンピュータインターフェイス部７へ転送される。尚、前述したデータ処理部１２１へ各種画像データを入力し、ページメモリに一時的に記憶した後、ストレージ部５へ画像データを転送する前に、プリンタ部２やファクシミリ部４、コンピュータインダーフェイス部７へ転送することも内部のセレクタを切り替えて転送することができる。
【００２１】
ＣＰＵ１２３は、メモリ１２４に記憶されている制御プログラム、及び操作部９から転送された制御コマンドに従ってこのような制御を行う。また、メモリ１２４はＣＰＵ１２３の作業領域としても使われる。このように、コア部１０を中心に、データ処理部１２１およびストレージ部５を介して、原稿画像の読み取り、画像のプリント、画像の送受信、画像の保存、コンピュータからのデータの入出力などの機能を複合させた処理を行うことが可能である。
【００２２】
＜ジョブ制御＞
次に、本実施例に係る分散オブジェクト環境対応画像入出力装置におけるジョブ制御について、図５を用いて説明する。図５はジョブ制御の単位を論理的に示したものである。ジョブ制御の単位は複数ページを含む画像データひとまとまりに対する入力および出力処理である。これにより制御されるジョブは画像入力ジョブと画像出力ジョブに大別される。画像入力ジョブはリーダー部で読み取った画像データを順次ストレージ部５へ記録する画像入力ジョブ４１１、ＲＩＰ部で展開された画像データを順次ストレージ部５へ記録する画像入力ジョブ４１２、ファクシミリ部で受信された画像データを順次ストレージ部５へ記録する画像入力ジョブ４１３、コンピュータインターフェース部から入力された画像データを順次ストレージ部５へ記録する画像入力ジョブ４１４にさらに分類される。また、画像出力ジョブは、ストレージ部５から読み出した画像データを順次プリンタ部へ出力する画像出力ジョブ４０１、ストレージ部５から読み出した画像データを順次ファクシミリ部へ出力する画像出力ジョブ４０３、ストレージ部５から読み出した画像データを順次コンピュータインターフェース部へ出力する画像出力ジョブ４０４に分類される。
【００２３】
図６は、複数のジョブを組み合わせた単位（以下セッションと呼ぶ）の一例を示したものである。コピーセッション５０１は、画像入力ジョブ４１１と画像出力ジョブ４０１を組み合わせてセッションとして制御する。ＰＤＬプリントセッション５０２は、画像入力ジョブ４１２と画像出力ジョブ４０１を組み合わせてセッションとして制御するものである。ファクシミリ受信セッション５０３は、画像入力ジョブ４１３と画像出力ジョブ４０１を組み合わせてセッションとして制御する。プリンタセッション５０４は、画像入力ジョブ４１４と画像出力ジョブ４０１を組み合わせてセッションとして制御する。ファクシミリ送信セッション５０５は、画像入力ジョブ４１１と画像出力ジョブ４０３を組み合わせてセッションとして制御する。スキャンセッション５０６は、画像入力ジョブ４１１と画像出力ジョブ４０４を組み合わせてセッションとして制御する。ＦＡＸモデム受信セッション５０７は、画像入力ジョブ４１３と画像出力ジョブ４０４を組み合わせてセッションとして制御する。ＦＡＸモデム送信セッション５０８は、画像入力ジョブ４１４と画像出力ジョブ４０３を組み合わせてセッションとして制御する。尚、セッションは１つ以上のジョブを含む制御単位であり、例えば画像入力ジョブ４１２を１セッションとして扱ったり、また、画像出力ジョブ４０１をセッションとして扱ったり、画像入力ジョブ４１２と画像出力ジョブ４０１と、画像出力ジョブ４０３を組み合わせて１セッションとして扱っても良い。
【００２４】
図７はコンピュータインターフェース部７のブロック図である。コンピュータインターフェース部７には各セッションに対応するサービスドライバ群６０１が登録されている。ここではコンピュータインターフェース部６がデータの転送経路となる画像入力ジョブ４１４、あるいは画像出力ジョブ４０４を含むセッションが対象となる。また、例外的にＲＩＰ部８からの画像入力ジョブ４１２はＲＩＰ部８へＰＤＬデータが転送する経路としてコンピュータインターフェース部７が含まれるので、画像入力ジョブ４１２が含まれるセッションも対象となる。つまり図６におけるセッションにおいて、ＰＤＬプリントセッション５０２、プリンタセッション５０４、スキャンセッション５０６、ＦＡＸモデム受信セッション５０７、ＦＡＸモデム送信セッション５０８が対象となり、それぞれ対応するＰＤＬプリントサービスドライバ６０２、プリンタサービスドライバ６０３、スキャンサービスドライバ６０４、ＦＡＸモデム受信サービスドライバ６０５、ＦＡＸモデム送信サービスドライバ６０６らのサービスドライバがコンピュータインターフェース部７に登録されている。さらにサービスドライバはスケルトンサービスドライバとスタブサービスドライバとに分けられる。例えばＰＤＬプリントサービスドライバ６０２においては、ＰＤＬプリントサービススケルトンドライバ６０７とＰＤＬプリントサービススタブドライバ６０８に分けられる。他のサービスドライバも同様にプリンタサービススケルトンドライバ６０９とプリンタサービススタブドライバ６１０、スキャンサービススケルトンドライバ６１１とスキャンサービススタブドライバ６１２、ＦＡＸモデム受信サービススケルトンドライバ６１３とＦＡＸモデム受信サービススタブドライバ６１４、ＦＡＸモデム送信サービススケルトンドライバ６１５とＦＡＸモデム送信サービススタブドライバのようにスケルトンドライバとスタブドライバが一組となって構成されている。
【００２５】
図１１を用いてスケルトンドライバとスタブドライバの関係を示す。これらスケルトンドライバ、スタブドライバの関係は、すでに分散オブジェクト環境のリモートプロシージャコールとして、公知の技術としてさまざまな場面で利用されている。例えば、Ｊａｖａ（登録商標）言語のＲＭＩやＣＯＲＢＡのＯＲＢなどである。スケルトンドライバ、スタブドライバの例としてＰＤＬプリントサービススケルトンドライバ６０７とＰＤＬプリントサービススタブドライバ６０８を用いて説明する。ＰＤＬプリントサービススケルトンドライバ６０７はそのサービスを提供する分散オブジェクト環境対応画像入出力装置１２に留まるソフトウェア部品である。それに対しＰＤＬプリントスタブドライバ６０８は、そのサービスを利用したい装置（ここではクライアントコンピュータ１３）から呼ばれて実行される。
【００２６】
ＰＤＬプリントサービススケルトンドライバ６０７に「印刷」というサービス２００１がある場合、そのサービスを呼ぶためのインターフェース２００２をＰＤＬプリントサービススタブドライバ６０８は持っている。
【００２７】
分散オブジェクト環境対応画像入出力装置１２の「印刷」というサービスを利用したいクライアントコンピュータ１３はＰＤＬプリントサービススタブドライバ６０８のインターフェース２００２を呼ぶことによって、ＰＤＬプリントサービススケルトンドライバ６０７のある分散オブジェクト環境対応画像入出力装置１２に印刷を行うことが可能となる。
【００２８】
＜リモートプリント手順＞
図８を用いて本実施形態に関わるクライアントコンピュータ１３から分散オブジェクト環境対応画像入出力装置１２へＰＤＬプリントを行なう手順を説明する。クライアントコンピュータ１３から分散オブジェクト環境対応画像入出力装置１２へＰＤＬプリントを行うには、クライアントコンピュータ１３は分散オブジェクト環境対応画像入出力装置１２からコンピュータインターフェース部７に登録されているサービスドライバ群６０１のうち、ＰＤＬプリントサービスドライバ６０２のＰＤＬプリントサービススタブドライバ６０８をダウンロードする必要がある。クライアントコンピュータ１３には仮想マシン８０１が備わっている。ＰＤＬプリントサービススタブドライバ６０８はこの仮想マシン８０１上で動作する中間言語（たとえばＪａｖａ（登録商標）言語）で記述されており、クライアントコンピュータ１３のＣＰＵやオペレーティングシステムを問わずに動作可能である。
【００２９】
ＰＤＬプリントサービススタブドライバ６０８の構造は図９に示すようにユーザーインターフェース部９０１とプログラムインターフェース部９０２の２つに分けることができる。ユーザーインターフェース部９０１はユーザーがＰＤＬプリントサービスをどのように使いたいか、例えば出力する用紙のサイズや、部数などといったサービスとの対話部分を担当するプログラムである。これらユーザーインターフェース部９０１の一例を図１０に示す。プログラムインターフェース部９０２はＰＤＬプリントサービススケルトンドライバ６０７とのリモートプロシージャコールのインターフェースである。プログラムインターフェースを呼び出すと、それに対応するＰＤＬプリントサービススケルトンドライバ６０７のインターフェースが呼び出される。プログラムインターフェース部９０２には最低限のインターフェースとして受信（ｐｕｌｌ）９０３、送信（ｐｕｓｈ）９０４の２つが必要である。
【００３０】
まず、クライアントコンピュータ１３から分散オブジェクト環境対応画像入出力装置１２へＰＤＬプリントを行なう手順を図１２のイベントトレース図を用いて説明する。
【００３１】
ステップ（Ｓ１２０１）では、クライアントコンピュータ１３が分散オブジェクト環境対応画像入出力装置１２に対してＰＤＬプリントを行うために、ＰＤＬプリントサービススタブドライバ６０８を分散オブジェクト環境対応画像入出力装置１２に要求する。
【００３２】
ステップ（Ｓ１２０２）では、分散オブジェクト環境対応画像入出力装置１２がクライアントコンピュータ１３からの要求（Ｓ１２０１）に応え、ＰＤＬプリントサービススタブドライバ６０８をクライアントコンピュータ１３に渡す。
【００３３】
ステップ（Ｓ１２０３）では、分散オブジェクト環境対応画像入出力装置１２のプリント命令を呼び出す。
【００３４】
ステップ（Ｓ１２０４）では，ドキュメントの実データが転送され，データがプリントアウトされる。
【００３５】
＜リモートスキャン手順＞
次に図１３のように分散オブジェクト環境対応画像入出力装置１２のスキャンサービスを利用し、クライアントコンピュータ１３に画像データを取り込む場合を説明する。クライアントコンピュータ１３は分散オブジェクト環境対応画像入出力装置１２のスキャンサービスを利用するために、スキャンサービススタブドライバ６１２を分散オブジェクト環境対応画像入出力装置１２から取り込む。実際の動作の流れを図１４を用いて説明する。
【００３６】
ステップ（Ｓ１４０１）では、クライアントコンピュータ１３が分散オブジェクト環境対応画像入出力装置１２に対してスキャンを行うために、スキャンサービススタブドライバ６１２を分散オブジェクト環境対応画像入出力装置１２に要求する。
【００３７】
ステップ（Ｓ１４０２）では、分散オブジェクト環境対応画像入出力装置１２がクライアントコンピュータ１３からの要求（Ｓ１４０１）に応え、スキャンサービススタブドライバ６１２をクライアントコンピュータ１３に渡す。
【００３８】
ステップ（Ｓ１４０３）では、分散オブジェクト環境対応画像入出力装置１２のスキャン命令を呼び出す。
【００３９】
ステップ（Ｓ１４０４）では、分散オブジェクト環境対応画像入出力装置１２がクライアントコンピュータ１３からの要求（Ｓ１４０３）に応え、スキャンした実データがクライアント側へ転送される。
【００４０】
＜リモートコピー手順（１）＞
次に、図１５に示したような構成において、分散オブジェクト環境対応画像入出力装置１２−１により原稿画像をスキャンし、分散オブジェクト環境対応画像入出力装置１２−２によりそれを印刷させるリモートコピーの手順を説明する。
【００４１】
図１５のようにネットワーク１１上に分散オブジェクト環境対応画像入出力装置１２が２台（それぞれ分散オブジェクト環境対応画像入出力装置１２−１、分散オブジェクト環境対応画像入出力装置１２−２とする）、クライアントコンピュータ１３が接続されている。クライアントコンピュータ１３は、分散オブジェクト環境対応画像入出力装置１２−１のスキャンサービスを利用し、そして分散オブジェクト環境対応画像入出力装置１２−のプリントサービスを利用し、分散オブジェクト環境対応画像入出力装置１２−１から分散オブジェクト環境対応画像入出力装置１２−２へのリモートコピーを行なう。クライアントコンピュータ１３は分散オブジェクト環境対応画像入出力装置１２−１のスキャンサービスを利用するために、スキャンサービススタブドライバ６１２を分散オブジェクト環境対応画像入出力装置１２−１から取り込む。また分散オブジェクト環境対応画像入出力装置１２−２のプリントサービスを利用するためにプリントサービススタブドライバ６１０を分散オブジェクト環境対応画像入出力装置１２−２から取り込む。実際の動作の流れを図１６を用いて説明する。
【００４２】
ステップ（Ｓ１６０１）では、クライアントコンピュータ１３が分散オブジェクト環境対応画像入出力装置１２−１に対してスキャンを行うために、スキャンサービススタブドライバ６１２を分散オブジェクト環境対応画像入出力装置１２−１に要求する。
【００４３】
ステップ（Ｓ１６０２）では、分散オブジェクト環境対応画像入出力装置１２−１がクライアントコンピュータ１３からの要求（Ｓ１６０１）に応え、スキャンサービススタブドライバ６１２をクライアントコンピュータ１３に渡す。
【００４４】
ステップ（Ｓ１６０３）では、クライアントコンピュータ１３が分散オブジェクト環境対応画像入出力装置１２−２に対してプリントを行なうために、プリントサービススタブドライバ６１０を分散オブジェクト環境対応画像入出力装置１２−２に要求する。
【００４５】
ステップ（Ｓ１６０４）では、分散オブジェクト環境対応画像入出力装置１２−２がクライアントコンピュータ１３からの要求（Ｓ１６０３）に応え、スキャンサービススタブドライバ６１０をクライアントコンピュータ１３に渡す。
【００４６】
ステップ（Ｓ１６０５）では、クライアントコンピュータ１３が分散オブジェクト環境対応画像入出力装置１２−１に書き込み先である画像入力装置１２−２のスタブドライバを渡す。
【００４７】
ステップ（Ｓ１６０６）では、画像入出力装置１２−１が自身のｓｃａｎメソッドを起動してドキュメントデータを読み込んだ後、画像入出力装置１２−２の書き込みメソッドを呼び出す。
【００４８】
ステップ（Ｓ１６０７）では、画像入出力装置１２−１から画像入出力装置１２−２へ、実際にデータを転送する。このデータが画像入出力装置１２−２により印刷出力される。
【００４９】
＜リモートコピー手順（２）＞
また、他のリモートコピーの手順として次のような例を説明する。この例でも、図１５に示したような構成において、分散オブジェクト環境対応画像入出力装置１２−１により原稿画像をスキャンし、分散オブジェクト環境対応画像入出力装置１２−２によりそれを印刷させる。実際の動作の流れを図２１を用いて説明する。
【００５０】
ステップ（Ｓ２１０１）では、クライアントコンピュータ１３が分散オブジェクト環境対応画像入出力装置１２−１に対してスキャンを行うために、スキャンサービススタブドライバ６１２を分散オブジェクト環境対応画像入出力装置１２−１に要求する。
【００５１】
ステップ（Ｓ２１０２）では、分散オブジェクト環境対応画像入出力装置１２−１がクライアントコンピュータ１３からの要求（Ｓ２１０１）に応え、スキャンサービススタブドライバ６１２をクライアントコンピュータ１３に渡す。
【００５２】
ステップ（Ｓ２１０３）では、クライアントコンピュータ１３が分散オブジェクト環境対応画像入出力装置１２−２に対してプリントを行なうために、プリントサービススタブドライバ６１０を分散オブジェクト環境対応画像入出力装置１２−２に要求する。
【００５３】
ステップ（Ｓ２１０４）では、分散オブジェクト環境対応画像入出力装置１２−２がクライアントコンピュータ１３からの要求（Ｓ２１０３）に応え、スキャンサービススタブドライバ６１０をクライアントコンピュータ１３に渡す。
【００５４】
ステップ（Ｓ２１０５）では、クライアントコンピュータ１３が分散オブジェクト環境対応画像入出力装置１２−２に読み込み先である画像入力装置１２−１のスタブドライバを渡す。
【００５５】
ステップ（Ｓ２１０６）では、分散オブジェクト環境対応画像入出力装置１２−２が自身のｐｒｉｎｔメソッドを起動し、その中で分散オブジェクト環境対応画像入出力装置１２−１の読み込みメソッドを呼び出す。
【００５６】
ステップ（Ｓ２１０７）では、分散オブジェクト環境対応画像入出力装置１２−１が分散オブジェクト環境対応画像入出力装置１２−２からの読込みメソッドの呼出し要求（Ｓ２１０６）に応えてドキュメントをスキャンし、読み込んだドキュメントの実データを転送する。
【００５７】
画像入出力装置１２−２は、画像入出力装置１２−１から受信したデータを印刷する。
【００５８】
以上のようにして、スタブドライバを仲介するホストコンピュータが有するのではなく、文書データのリード及びライトを行う装置のいずれかに相手装置のスタブドライバを持たせ、そのスタブドライバによって相手装置を制御してデータのリードあるいはライトを行わせる。こすることにより、仲介するホストコンピュータコンピュータは、文書データの送受信から解放され、資源の消費を節約でき、ホストコンピュータで実行される処理が、仲介による負荷によって遅滞したり、あるいは実行できない状態となったりする事態を防止できる。
【００５９】
また、特に同一ＭＦＰが提供する文書入力処理のためのオブジェクトと文書出力処理のためのオブジェクトとがクライアントアプリケーションによって組み合わせられる場合には、文書データ転送のためのネットワーク資源を全く利用せずに済む。しかもこれを、クライアントアプリケーションおよび文書入力と文書出力の各オブジェクトからは透過にすることで、分散オブジェクトによる組み合わせの柔軟性や拡張性などを損ねずに達成できる。
【００６０】
［第２実施形態］
図１２のＳ１２０１、図１４のＳ１４０１、図１６のＳ１６０１、Ｓ１６０３、あるいは図２１のＳ２１０１、Ｓ２１０３において、分散オブジェクト環境対応画像入出力装置１２のスキャンサービスやＰＤＬプリントサービス、そしてプリントサービスを利用するために、それぞれの分散オブジェクト環境対応画像入出力装置１２からスタブドライバをダウンロードしていた。しかし、第１実施形態の方法ではネットワーク１１上にあらかじめ分散オブジェクト環境対応画像入出力装置１２が存在していることをクライアントコンピュータ１３を利用するユーザーは知っていなければならない。
【００６１】
そこで、クライアントコンピュータ１３を利用するユーザーがネットワーク１１の構成を知らなくても、自分の利用したい周辺機器のサービスに対応したスタブドライバをダウンロードできる仕組みを図１７を用いて説明する。図１５の構成と異なり、ネットワーク上にはドライバサーバー１４が存在している。まず、ネットワークに接続された分散オブジェクト環境対応画像入出力装置１２−１と１２−２はスタブドライバ群６１７−１、６１７−２をそれぞれドライバサーバー１４に登録する。
【００６２】
ドライバサーバ１４内では、登録されたスタブドライバは、図１８に示すスタブドライバ管理テーブル１８０１に、登録された日時とサービスの内容と周辺機器名で管理されている。クライアントコンピュータ１３は「プリントサービスを受けたい」「スキャンサービスを受けたい」という要求がある場合には、まずドライバサーバ１４の管理テーブル１８０１をクライアントコンピュータ１３は見て、どのようなサービスが登録されているのかを確認し、自分が要求するサービスをドライバサーバ１４からダウンロードする。
【００６３】
図１９に周辺機器からスタブドライバをドライバサーバ１４へアップロードするまでの過程と、図２０にドライバサーバ１４からクライアントコンピュータ１３へドライバをダウンロードするまでの過程を図示する。
【００６４】
図１９において、まず分散オブジェクト環境対応画像入出力装置１２がネットワーク１１に接続された瞬間に、ネットワーク１１上に対してドライバサーバーが存在するかどうかのブロードキャストパケットを投げる（１）。そのパケットを受け取ったドライバサーバ１４は、分散オブジェクト環境対応画像入出力装置１２に対して、ドライバサーバ１４の存在を通知する（２）。その後、分散オブジェクト環境対応画像入出力装置１２は発見したドライバサーバ１４に対してドライバ６１７を登録する（３）。このようにして、ドライバサーバに１４に管理テーブル１８０１が作成され格納される。
【００６５】
また、周辺機器が有するデバイスがネットワーク１１から切り離されたときも同様にして、デバイスの切り離しにより機能しなくなったドライバをサーバ１４に通知する。サーバはこれを受信して管理テーブルを更新する。また、周辺機器そのものがネットワークから切り離された場合には、定期的にネットワーク上に流されるデータが途絶えたことをもってその周辺機器がネットワークから切り離されたものと判定し、その周辺機器が備えるデバイスのスタブドライバを使用不能として管理テーブル１８０１に登録する。
【００６６】
図２０において、クライアントコンピュータ１３が分散オブジェクト環境対応画像入出力装置１２を利用する場合、まずドライバサーバ１４に対して、どのようなサービスに対応しているドライバが存在しているかどうか検索する（１）。そしてクライアントコンピュータ１３が必要だと思われるドライバをドライバサーバーからダウンロードし（２）、目的のサービスを提供する分散オブジェクト環境対応画像入出力装置１２と通信を行う（３）。なお、このステップ（１）と（２）においては、クライアントが管理テーブル１８０１をサーバ１４からダウンロードしてその内容を検索し、必要なドライバプログラムをサーバ１４に要求するという手順であっても良いし、クライアントが必要なデバイスの識別子（周辺機器名）と必要なサービス内容とをサーバ１４に送信し、サーバ１４が条件に適合するスタブドライバを管理テーブル１８から検索してクライアントに送信しても良い。
【００６７】
以上のようにして、ネットワークに接続されたデバイスのスタブドライバをドライバサーバの管理テーブルにより一元的に管理することにより、この管理テーブルを参照することで使用可能なスタブドライバを知ることができ、ユーザがネットワーク資源に関してドライバサーバ１４以外の知識が無くても、ネットワーク資源を利用することができる。
【００６８】
［他の実施形態］
なお、本発明は、複数の機器（例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機、ファクシミリ装置など）に適用してもよい。
【００６９】
また、本発明の目的は、前述した実施形態の機能を実現する、図１６あるいは図２１の手順を各装置において実行するためのソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはCPUやMPU）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成される。
【００７０】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【００７１】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【図面の簡単な説明】
【００７２】
【図１】本発明の実施例のネットワーク構成の図である。
【図２】本発明の実施例の分散オブジェクト環境対応画像入出力装置のブロック図である。
【図３】リーダ部及びプリンタ部の断面図である。
【図４】コア部のブロック図である。
【図５】画像入力ジョブと画像出力ジョブのブロック図である。
【図６】セッションの構成例を示す図である。
【図７】コンピュータインターフェース部の構成を示す図である。
【図８】実施例１のネットワークの構成を示す図である
【図９】スタブドライバの構成を示す図である。
【図１０】スタブドライバのユーザーインターフェースの例を示す図である。
【図１１】スケルトンドライバとスタブドライバの関係を示す図である。
【図１２】リモートプリントのイベントトレース図である。
【図１３】ネットワークの構成を示す図である。
【図１４】リモートスキャンのイベントトレース図である。
【図１５】ネットワークを示す図である。
【図１６】リモートコピーのイベントトレース図（１）である。
【図１７】画像入出力装置内のスタブドライバの取得法を示す図である。
【図１８】ドライバサーバー内の管理テーブルの構成を示す図である。
【図１９】ドライバサーバーに周辺機器がドライバを登録する方法を示した図である。
【図２０】クライアントコンピュータがドライバサーバーよりドライバを取得する方法を示した図である。
【図２１】リモートコピーのイベントトレース図（２）である。
【符号の説明】
【００７３】
１ リーダ部
２ プリンタ部
３ 画像入出力制御部
４ ファクシミリ部
５ ストレージ部
７ コンピュータインターフェイス部
８ ＲＩＰ部
９ 操作部
１０ コア部
１１ ネットワーク
１２−１ 分散オブジェクト環境対応画像入出力装置１
１２−２ 分散オブジェクト環境対応画像入出力装置２
１３ クライアントコンピュータ
１４ ドライバサーバー
６０１ サービスドライバ
６０７，６０９，６１１，６１３，６１５ サービススケルトンドライバ
６０８，６１０，６１２，６１４，６１６ サービススタブドライバ
６１７ サービススケルトンドライバ群
【図１】
2006197582.tif 000003
【図２】
2006197582.tif 000004
【図３】
2006197582.tif 000005
【図４】
2006197582.tif 000006
【図５】
2006197582.tif 000007
【図６】
2006197582.tif 000008
【図７】
2006197582.tif 000009
【図８】
2006197582.tif 000010
【図９】
2006197582.tif 000011
【図１０】
2006197582.tif 000012
【図１１】
2006197582.tif 000013
【図１２】
2006197582.tif 000014
【図１３】
2006197582.tif 000015
【図１４】
2006197582.tif 000016
【図１５】
2006197582.tif 000017
【図１６】
2006197582.tif 000018
【図１７】
2006197582.tif 000019
【図１８】
2006197582.tif 000020
【図１９】
2006197582.tif 000021
【図２０】
2006197582.tif 000022
【図２１】
2006197582.tif 000023