(57)【要約】      （修正有）【課題】機器情報を要求されたデバイスが立ち上がっていない場合でもタイムアウトしない画像形成装置、画像形成装置のデータ処理方法、プログラム及びプログラムが記憶された記憶媒体を提供すること。【解決手段】ネットワークを介して接続されたコンピュータよりコマンドを受信するデータ受信部３２と、データ受信部３２により受信したコマンドを処理するコマンド処理部２２と、コマンド処理部２２が取得した機器情報をコンピュータに送信するデータ送信部３３とを有する画像形成装置において、コマンド処理部２２は、コマンド処理部２２が機器情報を取得するデバイスの立ち上がり完了を待たずに、コマンドを解釈するコマンド解釈部２１にコマンドの解釈を要求する、ことを特徴とする。【選択図】図５
2007203529.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して接続されたコンピュータよりコマンドを受信するデータ受信部と、前記データ受信部により受信した前記コマンドを処理するコマンド処理部と、前記コマンド処理部が取得した機器情報を前記コンピュータに送信するデータ送信部とを有する画像形成装置において、
前記コマンド処理部は、前記コマンド処理部が前記機器情報を取得するデバイスの立ち上がり完了を待たずに、前記コマンドを解釈するコマンド解釈部に前記コマンドの解釈を要求する、
ことを特徴とする画像形成装置。
【請求項２】
前記コマンド処理部は、前記コマンド解釈部から前記コマンドの解釈結果を受け取る前に、前記デバイスを制御するデバイス制御部に前記デバイスの立ち上げを依頼する、
ことを特徴とする請求項１記載の画像形成装置。
【請求項３】
前記コマンド解釈部は、前記コマンドに対応づけて前記デバイスを登録したデバイステーブル、を有し、
前記コマンド解釈部は、前記デバイステーブルを参照して前記コマンドに対応づけられた前記デバイスを抽出し、
前記コマンド処理部は、前記デバイスを制御する前記デバイス制御部に、前記コマンド解釈部により抽出された前記デバイスの立ち上げを要求する、
ことを特徴とする請求項１記載の画像形成装置。
【請求項４】
ネットワークを介して接続されたコンピュータよりコマンドを受信するデータ受信部と、前記データ受信部により受信した前記コマンドを処理するコマンド処理部と、前記コマンド処理部が取得した機器情報を前記コンピュータに送信するデータ送信部とを有する画像形成装置において、
前記コマンド処理部が前記機器情報を取得するデバイスが前記ネットワークに接続されている場合、
前記コマンド処理部は、前記デバイスにアクセスする前に、前記コマンドを解釈するコマンド解釈部に前記コマンドの解釈を要求する、
ことを特徴とする画像形成装置。
【請求項５】
複数の前記デバイスが前記ネットワークに接続されている場合、
前記コマンド処理部は、前記デバイスを制御するデバイス制御部に第１の前記デバイスへのアクセスを依頼し、
前記デバイス制御部が第１の前記デバイスと所定時間以上アクセスできない場合、前記デバイス制御部は第２の前記デバイスへのアクセスを依頼する、
ことを特徴とする請求項４記載の画像形成装置。
【請求項６】
前記デバイスが有する前記機器情報をキャッシュするキャッシュ手段を有し、
前記デバイス制御部は、前記デバイスがスリープモードに入る場合、又は、所定時間毎に、前記機器情報を前記キャッシュ手段にキャッシュする、
ことを特徴とする請求項１ないし５いずれか記載の画像形成装置。
【請求項７】
前記コマンド処理部は、前記機器情報を前記キャッシュ手段から取得する、
ことを特徴とする請求項６記載の画像形成装置。
【請求項８】
前記機器情報を前記キャッシュ手段から取得するか否かを規定したキャッシュ使用可否判定テーブルを有し、
前記コマンド処理部は、前記キャッシュ使用可否判定テーブルを参照して前記機器情報を前記キャッシュ手段から取得するか前記デバイスから取得するかを判定する、
ことを特徴とする請求項７記載の画像形成装置。
【請求項９】
前記キャッシュ使用可否判定テーブルは、前記デバイスに固有の前記機器情報を前記キャッシュ手段から取得するように規定している、
ことを特徴とする請求項８記載の画像形成装置。
【請求項１０】
前記キャッシュ使用可否判定テーブルは、前記機器情報を直ちに取得する必要のある前記コマンドの発信元を規定している、
ことを特徴とする請求項８記載の画像形成装置。
【請求項１１】
前記キャッシュ使用可否判定テーブルは、前記機器情報を直ちに取得する必要のある前記コマンドを規定している、
ことを特徴とする請求項８記載の画像形成装置。
【請求項１２】
前記キャッシュ使用可否判定テーブルは、正確な前記機器情報を取得する必要のある前記コマンドの発信元を規定している、
ことを特徴とする請求項８記載の画像形成装置。
【請求項１３】
前記キャッシュ使用可否判定テーブルは、正確な前記機器情報を取得する必要のある前記コマンドを規定している、
ことを特徴とする請求項８記載の画像形成装置。
【請求項１４】
前記キャッシュ使用可否判定テーブルは、正確な前記機器情報を直ちに取得する必要のある前記コマンドの発信元を規定し、
前記コマンドの発信元が、前記キャッシュ使用可否判定テーブルに規定されている場合であって、待ち時間が経過しても前記デバイスから前記機器情報が取得できない場合、
前記コマンド処理部は、前記機器情報を前記キャッシュ手段から取得する、
ことを特徴とする請求項８記載の画像形成装置。
【請求項１５】
前記キャッシュ使用可否判定テーブルは、正確な前記機器情報を直ちに取得する必要のある前記コマンドを規定し、
前記コマンドが、前記キャッシュ使用可否判定テーブルに規定されている場合であって、待ち時間が経過しても前記デバイスから前記機器情報が取得できない場合、
前記コマンド処理部は、前記機器情報を前記キャッシュ手段から取得する、
ことを特徴とする請求項８記載の画像形成装置。
【請求項１６】
前記待ち時間は、ユーザにより設定可能であることを特徴とする請求項１４又は１５記載の画像形成装置。
【請求項１７】
ネットワークを介して接続されたコンピュータよりコマンドを受信するデータ受信部と、前記データ受信部により受信した前記コマンドを処理するコマンド処理部と、前記コマンド処理部が取得した機器情報を前記コンピュータに送信するデータ送信部とを有する画像形成装置のデータ処理方法において、
前記コマンド処理部は、前記コマンド処理部が前記機器情報を取得するデバイスの立ち上がり完了を待たずに、前記コマンドを解釈するコマンド解釈部に前記コマンドの解釈を要求する、
ことを特徴とするデータ処理方法。
【請求項１８】
ネットワークを介して接続された第１のコンピュータよりコマンドを受信するステップと、
前記コマンドに基づき取得される前記機器情報を有するデバイスの立ち上がり完了を待たずに、前記コマンドの解釈を要求するステップと、
前記コマンドの解釈結果に応じた処理をするステップと、
前記処理の結果が取得された前記機器情報を前記第１のコンピュータに送信するステップと、
を第２のコンピュータに実行させるためのプログラム。
【請求項１９】
請求項１８記載のプログラムが記憶されたコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置、画像形成装置のデータ処理方法及びプログラムに関し、特にネットワーク介して接続されたコンピュータから送信されるコマンドを処理する画像形成装置、画像形成装置のデータ処理方法及びプログラムに関する。
【背景技術】
【０００２】
図１は、ネットワーク１３を介して接続された画像形成装置１２とコンピュータ１１とからなる印刷システムの構成図を示す。コンピュータ１１はＣＰＵ、記憶装置、補助記憶装置、ドライブ装置、表示装置、及び、通信装置等を有する周知のコンピュータである。また、画像形成装置１２は、少なくともプリンタ機能を有するものであるが、ファクシミリ、スキャナ装置などの機能を有する複合機であってもよい。
【０００３】
図１のような印刷システムでは、画像形成装置１２を用いて印刷する以外にも、コンピュータ１１が画像形成装置１２から情報を取得したり操作する場合がある。コンピュータ１１は画像形成装置１２に搭載された用紙トレイのサイズを取得したり画像形成装置１２に環境変数を設定することができる（例えば、特許文献１参照。）。
【０００４】
特許文献１記載の画像形成装置は、コンピュータ１１からの要求に応じて、出力単価情報 、装置の機能、能力等に関する情報 および装置内の情報 を示すプリンタ状態をコンピュータ１１へ送信する。コンピュータ１１は複数の画像形成装置１２からかかるプリンタ状態の情報を取得し、プリントコストの低い画像形成装置１２に印刷を依頼することができる。
【特許文献１】特開２００１−２２９００１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、画像形成装置１２は印刷データや設定情報等を保持するために種々のデバイス（ハードディスク装置（以下、ＨＤＤという）等）を備えることが多い。通常、デバイスは動作を継続しているが、いわゆる省エネモードのように一定期間ユーザが操作しないような場合は動作を停止して、消費電力の削減を図っている。
【０００６】
図２はデバイスを備える画像形成装置において、指定された機器情報をデバイスから取得するシーケンス図を示す。図２において画像形成装置１２は、コンピュータ１１から送信されたコマンドを処理するコマンド処理部２２、コマンドを解釈するコマンド解釈部２１、及び、デバイスを制御するデバイス制御部２３を有する。
【０００７】
コマンド処理部２２がコンピュータ１１からコマンドを受信すると（Ｓ１）、コマンド処理部２２は機器情報を有するデバイスをデバイス制御部２３に通知する。デバイス制御部２３は指定された機器情報を有するデバイスが立ち上がっていない場合、デバイスを立ち上げる（Ｓ２）。デバイス制御部２３はＨＤＤを立ち上げ、数秒から十数秒経過後にＨＤＤが立ち上がるとＨＤＤの立ち上がりをコマンド処理部２２へ通知する（Ｓ３）。コマンド処理部２２はコマンド解釈部２１へコマンドの解釈を要求することで（Ｓ４）、コマンドを受け付けることになる。
【０００８】
コマンド解釈部２１は、コマンドを解釈し解釈結果に応じたコマンド処理要求をコマンド処理部２２へ送出する（Ｓ５）。そして、コマンド処理部２２は、コマンド処理要求に応じて機器情報をＨＤＤから取得する（コマンドに応じた処理を行う）。
【０００９】
しかしながら、図２のようなシーケンスでは、コマンド処理部２２がコンピュータ１１からコマンドを受信してから、コマンド解釈部２１がコマンド解釈要求されるまで数秒から十数秒程度経過してしまうため、コマンド処理部２２又はコマンド解釈部２１がタイムアウトしてしまうという問題があった。
【００１０】
本発明は、上記問題に鑑み、機器情報を要求されたデバイスが立ち上がっていない場合でもタイムアウトしない画像形成装置、画像形成装置のデータ処理方法、プログラム及びプログラムが記憶された記憶媒体を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記課題を解決するため本発明は、ネットワークを介して接続されたコンピュータよりコマンドを受信するデータ受信部と、データ受信部により受信したコマンドを処理するコマンド処理部と、コマンド処理部が取得した機器情報をコンピュータに送信するデータ送信部とを有する画像形成装置において、コマンド処理部は、コマンド処理部が機器情報を取得するデバイスの立ち上がり完了を待たずに、コマンドを解釈するコマンド解釈部にコマンドの解釈を要求する、ことを特徴とする。
【００１２】
本発明によれば、デバイスが立ち上がっていない場合、該デバイスの立ち上がり完了を待たずにコマンドの解釈を要求することで、機器情報を要求されたデバイスが立ち上がっていない場合でもタイムアウトを防止できる。
【００１３】
また、本発明の画像形成装置の一形態において、コマンド処理部は、コマンド解釈部からコマンドの解釈結果を受け取る前に、デバイスを制御するデバイス制御部にデバイスの立ち上げを依頼する、ことを特徴とする。
【００１４】
本発明によれば、コマンドにデバイスが対応づけられる前にデバイスの立ち上げが開始されるので、そのデバイスの機器情報を取得することになった場合に、データ処理の開始までにかかる時間を短縮できる。
【００１５】
また、本発明の画像形成装置の一形態において、コマンド解釈部は、コマンドに対応づけてデバイスを登録したデバイステーブル、を有し、コマンド解釈部は、デバイステーブルを参照してコマンドに対応づけられたデバイスを抽出し、コマンド処理部は、デバイスを制御するデバイス制御部に、コマンド解釈部により抽出されたデバイスの立ち上げを要求する、ことを特徴とする。
【００１６】
本発明によれば、コマンドに対応づけられたデバイスのみをスリープモードから復帰させ（立ち上げ）るので、不必要にデバイスを立ち上げることがなく、消費電力を低減できる。
【００１７】
また、本発明は、ネットワークを介して接続されたコンピュータよりコマンドを受信するデータ受信部と、データ受信部により受信したコマンドを処理するコマンド処理部と、コマンド処理部が取得した機器情報をコンピュータに送信するデータ送信部とを有する画像形成装置において、コマンド処理部が機器情報を取得するデバイスがネットワークに接続されている場合、コマンド処理部は、デバイスにアクセスする前に、コマンドを解釈するコマンド解釈部にコマンドの解釈を要求することを特徴とする。
【００１８】
本発明によれば、デバイスがネットワークを介して接続されている場合に、デバイスまでのアクセスが混雑していても、アクセスを待たずにデバイスに対する処理要求を受け付けるので、タイムアウトを防止できる。
【００１９】
また、本発明の画像形成装置の一形態において、複数のデバイスがネットワークに接続されている場合、コマンド処理部は、デバイスを制御するデバイス制御部に第１のデバイスへのアクセスを依頼し、デバイス制御部が第１のデバイスと所定時間以上アクセスできない場合、デバイス制御部は第２のデバイスへのアクセスを依頼する、ことを特徴とする。
【００２０】
本発明によれば、ネットワークに接続されたデバイスにアクセスが困難な場合、別のデバイスにアクセスできるため、機器情報を取得するまでの時間を短縮できる。
【００２１】
また、本発明の画像形成装置の一形態において、デバイスが有する機器情報をキャッシュするキャッシュ手段を有し、データ処理部は、デバイスがスリープモードに入る場合、又は、所定時間毎に、機器情報をキャッシュ手段にキャッシュする、ことを特徴とする。
【００２２】
本発明によれば、スリープモードに入る直前に機器情報がキャッシュでき、また、スリープモードに入らない場合でも所定時間毎に機器情報をキャッシュできる。
【００２３】
また、本発明の画像形成装置の一形態において、コマンド解釈部は、コマンドにより取得される機器情報をキャッシュ手段から取得する、ことを特徴とする。
【００２４】
本発明によればデバイスが休止状態でもキャッシュ手段から機器情報を取得でき、タイムアウトすることがない。
【００２５】
また、本発明の画像形成装置の一形態において、機器情報をキャッシュ手段から取得するか否かを規定したキャッシュ使用可否判定テーブルを有し、コマンド処理部は、キャッシュ使用可否判定テーブルを参照して機器情報をキャッシュ手段から取得するかデバイスから取得するかを判定する、ことを特徴とする。
【００２６】
本発明によれば、キャッシュ使用可否判定テーブルによりキャッシュ手段又はデバイスのいずれから情報を取得すべきが適切に判断できる。
【００２７】
また、本発明の画像形成装置の一形態において、キャッシュ使用可否判定テーブルは、該デバイスに固有の機器情報をキャッシュ手段から取得するように規定している、ことを特徴とする。
【００２８】
本発明によれば、デバイスからすぐに機器情報を取得できない状態であっても、固有の情報であれば変化しないのでキャッシュ手段から機器情報を取得でき、タイムアウトを防止できる。
【００２９】
また、本発明の画像形成装置の一形態において、キャッシュ使用可否判定テーブルは、機器情報を直ちに取得する必要のあるコマンドの発信元を規定している、ことを特徴とする。
【００３０】
本発明によれば、コマンドの発信元が直ちに機器情報を取得する必要がある場合には、キャッシュ手段から機器情報を取得し、それ以外はその都度デバイスから取得した機器情報を返すので、コマンドの発信元別に機器情報を取得する手段を変化させることができる。
【００３１】
また、本発明の画像形成装置の一形態において、キャッシュ使用可否判定テーブルは、機器情報を直ちに取得する必要のある前記コマンドを規定している、ことを特徴とする。
【００３２】
本発明によれば、コマンドが直ちに機器情報を取得する必要がある場合には、キャッシュ手段から機器情報を取得し、それ以外はその都度デバイスから取得した機器情報を返すので、コマンド別に機器情報を取得する手段を変化させることができる。
【００３３】
また、本発明の画像形成装置の一形態において、キャッシュ使用可否判定テーブルは、正確な機器情報を取得する必要のあるコマンドの発信元を規定している、ことを特徴とする。
【００３４】
本発明によれば、コマンドの発信元が正確な機器情報を取得する必要がある場合には、デバイス手段から機器情報を取得し、それ以外はキャッシュ手段から取得した機器情報を返すので、コマンドの発信元別に機器情報を取得する手段を変化させることができる。
【００３５】
また、本発明の画像形成装置の一形態において、キャッシュ使用可否判定テーブルは、正確な機器情報を取得する必要のあるコマンドを規定していることを特徴とする。
【００３６】
本発明によれば、コマンドが正確な機器情報を取得する必要がある場合には、デバイス手段から機器情報を取得し、それ以外はキャッシュ手段から取得した機器情報を返すので、コマンド別に機器情報を取得する手段を変化させることができる。
【００３７】
また、本発明の画像形成装置の一形態において、キャッシュ使用可否判定テーブルは、正確な機器情報を直ちに取得する必要のあるコマンドの発信元を規定し、コマンドの発信元が、キャッシュ使用可否判定テーブルに規定されている場合であって、待ち時間が経過してもデバイスから機器情報が取得できない場合、コマンド解釈部は機器情報をキャッシュ手段から取得することを特徴とする。
【００３８】
本発明によれば、コマンドの発信元が正確な情報を直ちに取得する必要がある場合には、デバイスから機器情報の取得を試みるが、すぐに機器情報を取得できない場合、キャッシュ手段から機器情報を返すことができるので、コマンドの発信元別に機器情報を取得する手段を変化させることができる。
【００３９】
また、本発明の画像形成装置の一形態において、キャッシュ使用可否判定テーブルは、正確な機器情報を直ちに取得する必要のあるコマンドを規定し、コマンドが、キャッシュ使用可否判定テーブルに規定されている場合であって、待ち時間が経過してもデバイスから機器情報が取得できない場合、コマンド解釈部は機器情報をキャッシュ手段から取得することを特徴とする。
【００４０】
本発明によれば、コマンドが正確な情報を直ちに取得する必要がある場合には、デバイスから機器情報の取得を試みるが、すぐに機器情報を取得できない場合、キャッシュ手段から機器情報を返すことができるので、コマンド別に機器情報を取得する手段を変化させることができる。
【００４１】
また、本発明の画像形成装置の一形態において、待ち時間は、ユーザにより設定可能で  あることを特徴とする。
【００４２】
本発明によれば、キャッシュ手段から機器情報を返すか、デバイスから機器情報を返すかを判断する基準となる待ち時間をユーザの好みで設定可能となる。
【発明の効果】
【００４３】
機器情報を要求されたデバイスが立ち上がっていない場合でもタイムアウトしない画像形成装置、画像形成装置のデータ処理方法、プログラム及びプログラムが記憶された記憶媒体を提供できる。
【発明を実施するための最良の形態】
【００４４】
以下、本発明を実施するための最良の形態を、図面を参照しながら実施例を挙げて説明する。図３は、本実施の形態の画像形成装置１２のハードウェア構成を示すブロック図である。画像形成装置１２は、操作パネル１０１、コントローラ１０２及びエンジン部１０３を有するように構成される。
【００４５】
コントローラ１０２は、ホストＩ／Ｆ１１１、ＲＯＭ１１２、ＨＤＤ１１３、パネルＩ／Ｆ１１４、ＣＰＵ１１５、ＲＡＭ１１６、ＮＶ−ＲＡＭ（Non−volatile RAM）１１７、エンジンＩ／Ｆ１１８及びオプションＲＡＭ１１９を有する。
【００４６】
ＲＯＭ１１２にはＣＰＵ１１５が実行するプログラムが予め格納されており、ＣＰＵ１１５は電源オンされるとプログラムをロードして、以降はＣＰＵ１１５によりコントローラ１０２は制御される。後述するようにＲＯＭ１１２には、ＣＰＵ１１５により各種の機能を実現するためのプログラムが格納されている。
【００４７】
ＲＡＭ１１６、オプションＲＡＭ１１９はプログラムを実行するためのワークメモリであり、ＣＰＵ１１５の指示を受け印刷データや原稿をスキャンした場合には画像データを一時的に保存する。
【００４８】
ＮＶ−ＲＡＭ１１７は不揮発メモリであり、画像形成装置固有の情報、例えば、コピー枚数のカウンタ値、製造番号、管理人の認証情報等が格納されている。
【００４９】
ＨＤＤ１１３は磁性体を塗布または蒸着した金属のディスクをモータで回転させて磁気ヘッドを近づけてデータを読み書きする磁気記憶装置である。ＨＤＤ１１３には画像データを蓄積したり、ファイルが格納されている。
【００５０】
操作パネル１０１は、操作のためのボタンやタッチパネル、機器状態表示のためのインジケーター（ＬＥＤやＬＣＤ等の表示器）、液晶などの表示部、スピーカー等、ユーザとのマンマシンインターフェース部である。操作パネル１０１は、コントローラ１０２のパネルＩ／Ｆ１１４と接続されており、ユーザが操作パネル１０１を操作すると、パネルＩ／Ｆ１１４はユーザの操作内容を判別し、操作内容に応じた制御信号をＣＰＵ１１５送出する。
【００５１】
また、コントローラ１０２は、ネットワークに接続されたコンピュータ１１から印刷するための印刷データを受信するホストＩ／Ｆ１１１を有する。ホストＩ／Ｆ１１１は、例えば、イーサネット(登録商標）対応のＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ Ｃａｒｄ）を介しコンピュータ１１と接続される。なお、コンピュータ１１との接続はローカル接続であってもよく、また、有線、無線の別を問わない。
【００５２】
エンジン部１０３は印刷データを画像として形成する画像形成部である。エンジン部１０３はエンジンＩ／Ｆ１１８に接続される。エンジンＩ／Ｆ１１８は、コンピュータ１１から送信された印刷データをエンジン部１０３に送出し、エンジン部１０３は、レーザービームを用いた電子写真プロセスを使って、感光ドラム等にトナー画像として形成し用紙に転写し、定着装置により熱と圧力により定着して出力する。なお、エンジン部１０３の画像形成方法は、ＬＥＤ方式、インクジェット方式等、どのような方式であってもよい。  なお、エンジン部１０３は、印刷に関するエンジンだけでなく、スキャナに関するエンジン、ファクシミリに関するエンジンを有していてもよい。
【００５３】
なお、画像形成装置１２は、リムーバブルメディア５を装着するためのメディアＩ／Ｆ（不図示）を有し、ＳＤカード、ＭＭＣ（マルチメディアカード）等のリムーバブルメディア（不揮発性記録媒体）を装着可能である。
【００５４】
図４は画像形成装置１２の機能構成図を示す。図４の各機能はＣＰＵ１１５がプログラムを実行して実現するものであり、データ送信部３３、データ受信部３２、データ処理部３４、デバイス制御部３５を有するように構成される。データ受信部３２はコンピュータ１１から送信された印刷データやコマンドを受信してデータ処理部３４へ送出するものである。データ処理部３４はコマンド解釈部２１及びコマンド処理部２２を有する。
【００５５】
コマンド処理部２２は、コンピュータ１１から送信されたコマンドを処理する。コマンドの処理とは、印刷の実行や画像形成装置１２のデバイス３６から指定された機器情報を取得することをいう。
【００５６】
コマンド処理部２２は、データ受信部３２からコマンドを受信しコマンドを取り出すと、コマンドの解釈をコマンド解釈部２１に要求する。このコマンド解釈要求により、画像形成装置１２がコマンドを受け付けたこととなる。
【００５７】
コマンド解釈部２１はコマンドを解釈する。コマンド解釈部２１が解釈するコマンドは例えばＰＪＬ（Printer Job Language）であり、ＰＪＬのコマンドが登録されたコマンドテーブルがＲＯＭ１１２が格納されている。コマンド解釈部２１は、コマンドの解釈の結果、コマンドの処理にデバイス３６が必要であればデバイス３６の種別やその内容をコマンド処理部２２にコマンド処理要求として送出する。
【００５８】
コマンド処理部２２は、コマンド解釈部２１からコマンド処理要求を受け取ると、デバイス制御部２３にデバイス３６の制御を要求する。デバイス３６の制御とは、例えば、デバイス３６から指定された機器情報を取得することをいう。
【００５９】
コマンド処理部２２は、デバイス制御部２３から機器情報を受け取りデータ送信部３３に送出する。データ送信部３３がコンピュータ１１に機器情報を送信するとコマンドに基づく処理が終了する。
【００６０】
デバイス３６は例えば、ＨＤＤ１１３、リムーバブルメディア、ＲＡＭ１１６、エンジンボード(給紙トレイ、排紙トレイ、トナーカートリッジを含む)等である。また、コンピュータから受信するコマンドは、印刷、機器情報の取得コマンド等である。機器情報の取得コマンドでは、プリンタ名称、ソフトウェアバージョン、用紙残量、サポート用紙サイズ・種類、排紙先の状態(印刷された紙があるかないか、満杯状態か等)、トナー残量、フォント、などがコマンドにより指定される。
【００６１】
デバイス制御部３５は、コマンドに応じてこれらのデバイス３６の初期化、デバイス３６からの機器情報の抽出などを行う。画像形成装置１２が省エネモードになるとデバイス３６はスリープモードに入る場合がある、例えばＨＤＤ１１３では回転速度を停止したり、ＲＡＭ１１６ではリフレッシュレートを下げる。スリープモードの状態のデバイスを使用した処理が必要になるとデバイス制御部２３はデバイス３６の全て又は一部を立ち上げる。
【００６２】
画像形成装置１２の各機能を実現するプログラムは、はじめからプリンタに備えるＲＯＭ１１２、ＮＶ−ＲＡＭ１１７あるいはＨＤＤ１１３等の記憶手段に格納されているか、記録媒体１２０であるＣＤ−ＲＯＭあるいはフレキシブルディスク，ＳＲＡＭ，ＥＥＰＲＯＭ，メモリカード等の不揮発性記録媒体（メモリ）に記録して提供される。なお、コンピュータ１１からネットワーク１３を介してダウンロードしてもよい。記録媒体１２０に記憶されたプログラムは、ドライブ装置やカードリーダ（不図示）により画像形成装置１２に読み込まれる。
【００６３】
記録媒体１２０に記録されたプログラムは画像形成装置１２にインストールされＣＰＵ１１３に実行されることにより、実施例において後述する各手順を画像形成装置１２に実行させることができる。
【実施例１】
【００６４】
以上の構成を用いて、画像形成装置１２がコンピュータ１１から送信されたコマンドを処理する流れについて説明する。本実施例の画像形成装置１２は、デバイス３６の立ち上げが必要な場合でもタイムアウトを生じさせないでコマンドの処理を行う。
【００６５】
タイムアウトを生じさせないコマンドの処理について、図５のシーケンス図に基づき説明する。
【００６６】
コンピュータ１１からコマンドを含むデータをデータ受信部３２が受信し、データ受信部３２からコマンド受信通知がコマンド処理部２２に送出される（Ｓ１１）。なおデータとはコマンドや印刷データなどを含む意味であるが、本実施の形態では単にコマンドと称す。コマンド処理部２２は、コマンド受信通知を受けるとヘッダ等を取り除きコマンドを抽出する。
【００６７】
ついで、コマンド処理部２２はデバイス制御部２３にデバイス３６の立ち上げを依頼する（Ｓ１２）。すなわち、デバイス３６を使用する処理か否か又は立ち上げの必要なデバイスか否かを判定する前に、デバイス３６の立ち上げが開始される（Ｓ１７）。
【００６８】
ついで、コマンド処理部２２は、コマンド解釈要求をコマンド解釈部２１に送出する（Ｓ１３）。コマンド解釈部２１がコマンド解釈要求を通知されるとコマンドが受け付けられたことになる。したがって、デバイス３６の立ち上げを待たずにコマンド解釈部２１にコマンド解釈要求が送出されるのでタイムアウトが検出されることがない。
【００６９】
ついで、コマンド解釈部２１は、コマンド解釈要求のあったコマンドを解釈する（Ｓ１４）。コマンドの解釈とは、コマンドの内容及び対象となるデバイス３６を解析すること、また、デバイス３６がスリープモードになりうるかどうかを解析するものである。
【００７０】
図６は、コマンド解釈部２１がコマンドを解釈した結果に応じて、コマンド処理部２２が処理を行う概念を示す一例である。すなわち、コマンド処理部２２はコマンドに応じて処理１〜ｎまでの処理を行うことができる。
【００７１】
コマンド解釈部２１は、コマンドとデバイス３６の対応付けを図７に示すコマンドとデバイス３６を対応づけたデバイステーブルを参照して行う。図７では、一例として「フォント取得コマンド」がＨＤＤ１１３に、「用紙残量取得コマンド」が給紙トレイに対応づけられている。デバイステーブルはＲＯＭ１１２やＮＶ−ＲＡＭ１１７に格納されている。なお、コマンドがデバイス３６を必要としないものである場合、デバイス３６は対応づけられない。
【００７２】
また、デバイス３６を使用する処理であっても、デバイス３６がスリープモードに入らない場合は立ち上げる必要がない。図８はデバイス毎にスリープモードになりうるかどうかを対応づけたデバイス立ち上げテーブルの一例を示す。図８ではスリープモードになりうるデバイス３６を「Ｔｒｕｅ」、スリープモードにならないデバイス３６を「Ｆａｌｓｅ」とした。したがって、「Ｔｒｕｅ」のデバイス３６から機器情報を取得するコマンドの場合、コマンド解釈部２１はデバイス３６が立ち上がるまで処理を待機することとなる。
【００７３】
図５に戻り、コマンド解釈部２１は図７のデバイステーブル及び図８のデバイス立ち上げテーブルの一例を参照し、当該コマンドの処理に「デバイスが必要かつスリープモードになりうるか？」を判定する。判定結果はＮＶ−ＲＡＭ１１７に記憶される。
【００７４】
ついで、コマンド解釈部２１はコマンド処理要求をコマンド処理部２２に送出する（Ｓ１５）。コマンド処理要求は、コマンドの解釈結果に応じて種々の内容になる。本実施例のコマンドは、ＨＤＤ１１３から機器情報を取得するものである。
【００７５】
コマンド処理部２２は、ＨＤＤが立ち上がっているか否かを判定し（Ｓ１６）、立ち上がっていればコマンドの処理を行う。この場合、ＨＤＤ１１３から情報取得を試みるがＨＤＤ１１３から立ち上がり完了通知が受信されないので、機器情報の取得に失敗した旨の情報取得の結果通知をコマンド解釈部２１へ送出する（Ｓ１８）。
【００７６】
コマンド解釈部２１とコマンド処理部２２の間では、ＨＤＤ１１３が立ち上がるまでコマンド処理要求と情報取得の結果通知の応答を繰り返す（Ｓ１５’、Ｓ１８’）。すなわち、コマンド解釈部２１は、ＨＤＤ１１３が立ち上がるまでコマンド処理部２２に立ち上がったか否かを問い合わせる。
【００７７】
そして、ＨＤＤ１３３が立ち上がると、コマンド処理部２２がデバイス制御部２３からＨＤＤ１３３の立ち上がりを通知される（Ｓ２０）。コマンド処理部２２は、ＨＤＤ１１３が立ち上がったことを記憶する（Ｓ２１）。
【００７８】
コマンド処理部２２は、ＨＤＤ１３３の立ち上がりの通知があった以降にコマンド解釈部２１からコマンド処理要求があると（Ｓ１５）、コマンドに応じた処理を実行する。本実施例ではＨＤＤ１１３から機器情報を取得するコマンドであるので、デバイス制御部２３に機器情報の取得を要求する（Ｓ２２）。デバイス制御部２３は、例えば、ＨＤＤ１１３からフォントを取得し（Ｓ２３）、取得した機器情報をコマンド処理部２２へ送出する（Ｓ２４）。
【００７９】
ついで、コマンド処理部２２は、取得した機器情報と共に取得に成功した旨の結果通知をコマンド解釈部２１へ送出する（Ｓ２５）。コマンド解釈部２１は、コマンドの処理結果及び取得した機器情報をデータ送信部３３へ送出する（Ｓ２６）。データ送信部３３はＨＤＤ１１３から取得した機器情報をコンピュータ１１へ送信する。なお、コマンド解釈部２１は、所定の後処理を実行して図５のシーケンスに基づく処理が終了する。
【００８０】
以上のように本実施例のコマンド処理では、デバイス３６（図５ではＨＤＤ１１３）の立ち上がりを待たずにコマンド処理部２２がコマンド解釈部２１に処理要求を送出するので、タイムアウトすることがない。また、デバイス３６を使用しない場合やデバイス３６の立ち上げが必要ない場合はコマンド受信後早急に処理がなされるので、どのコマンドでもデバイス３６の立ち上がり時間を一律に待機するような処理の遅延も回避されている。
【００８１】
続いて、コマンド解釈部２１、コマンド処理部２２及びデバイス制御部２３のそれぞれの処理手順を図９〜１２のフローチャート図に基づき説明する。なお、図５と図９〜１２において、同一ステップには同じ符号を付した。
【００８２】
図９は、コマンド解釈部２１の処理手順を示すフローチャート図である。まず、コマンド解釈部２１は、コマンド処理部２２からコマンド解釈要求を受け取る（Ｓ１３）。そして、コマンド解釈部２１はコマンドを解釈する（Ｓ１４）。
【００８３】
コマンド解釈部２１は、コマンドの解釈結果及び図８のデバイステーブルに基づき、コマンドの処理にデバイス（この場合はＨＤＤ）が必要か否かを判定する（Ｓ１４）。判定の結果、コマンド処理にＨＤＤ１１３が必要な場合、コマンド処理にＨＤＤ１１３が必要であることをＮＶ−ＲＡＭ１１７に記憶する（Ｓ１４）。
【００８４】
ついで、コマンド解釈部２１は、コマンドの処理をコマンド処理部２２に要求する（Ｓ１５）。コマンド解釈部２１は、情報取得の結果通知を受け取る（Ｓ１８）。そして、コマンド処理にＨＤＤ１１３が必要か否かを再度判定し（Ｓ１９）、コマンド処理にＨＤＤ１１３が必要な場合、ＨＤＤ１１３から機器情報を取得できたか否か判定する（Ｓ１９）。
【００８５】
機器情報が取得できない場合、コマンド処理の要求（Ｓ１５）とコマンド処理結果の受け取り（Ｓ１８）を繰り返す。
【００８６】
コマンド処理にＨＤＤ１１３が必要ない場合、又は、ＨＤＤ１１３から機器情報を取得できた場合、コマンド解釈部２１はコマンド処理結果の送信をデータ送信部３３に要求する（Ｓ２６）。ついで、コマンド解釈部２１は、後処理としてＮＶ−ＲＡＭ１１７に記憶した、コマンド処理にＨＤＤ１１３が必要であるとの記憶内容を破棄する（Ｓ２７）。
【００８７】
図１０は、デバイスの立ち上げが必要な場合のコマンド処理部２２の処理手順を示すフローチャート図である。まず、コマンド処理部２２は、データ受信部３２からコマンド受信通知を受け取る（Ｓ１１）。ついで、コマンド処理部２２はデバイス制御部２３にデバイス３６（ＨＤＤ）の立ち上げを要求する（Ｓ１２）。そして、コマンド処理部２２は、コマンド解釈要求をコマンド解釈部２１に要求する（Ｓ１３）。
【００８８】
コマンド処理部２２は、コマンド解釈部２１からコマンド処理要求を受け取る（Ｓ１５）。コマンド処理部２２は、ＨＤＤ１１３が立ち上がっているか否かを判定する（Ｓ１６）。ＨＤＤ１１３が立ち上がっていない場合（Ｓ１６のＮｏ）、ＨＤＤ１１３が立ち上がっておらず情報取得に失敗したことをコマンド処理結果としてコマンド解釈部２１に通知する（Ｓ１８）。コマンド処理部２２は、ＨＤＤ１１３が立ち上がるまで情報取得の結果通知をコマンド解釈部２１に送出する。
【００８９】
コマンド処理部２２は、デバイス制御部２３からＨＤＤ１１３の立ち上がり完了通知を受け取ると、ＨＤＤ１１３が立ち上がったと判定する（Ｓ１６のＹｅｓ）。コマンド処理部２２は、ＨＤＤ１１３が立ち上がったことを記憶する（Ｓ２１）。そして、コマンド処理部２２はデバイス制御部２３に情報取得を要求する（Ｓ２２）。デバイス制御部２３から機器情報を通知されると、情報取得に成功したこと、及び、取得した機器情報をコマンド解釈部２１に送出する（Ｓ２５）。
【００９０】
図１１は、デバイスの立ち上げが必要ない場合のコマンド処理部２２の処理手順を示すフローチャート図である。
【００９１】
コマンド処理部２２は、データ受信部３２からコマンド受信通知を受け取る（Ｓ１１）。ついで、コマンド処理部２２はデバイス制御部２３に機器情報の取得を要求する（Ｓ２２）。デバイス制御部２３から機器情報を受け取ると（Ｓ２４）、取得した機器情報をコマンド解釈部２１に送出する（Ｓ２５）。
【００９２】
図１２は、デバイス制御部２３の処理手順を示すフローチャート図である。コマンドの処理にＨＤＤ１１３の立ち上げが必要な場合、まず、デバイス制御部２３はＨＤＤ１１３の立ち上げ要求を受け取る（Ｓ１２）。ついで、デバイス制御部２３は、ＨＤＤ１１３を立ち上げを開始する（Ｓ１７）。そして、ＨＤＤ１１３が立ち上がるとＨＤＤ１１３が立ち上がったことをコマンド処理部２２に通知する（Ｓ２０）。
【００９３】
ついで、デバイス制御部２３はコマンド処理部２２から情報取得要求を受け取る（Ｓ２２）。なお、コマンドの処理にＨＤＤ１１３の立ち上げが必要でない場合、ステップＳ１２のＨＤＤ１１３の立ち上げ要求を受け取らずに、デバイス制御部２３はコマンド処理部２２から情報取得要求を受け取る（Ｓ２２）。
【００９４】
デバイス制御部２３は、ＨＤＤ１１３から機器情報（例えばフォント）を取得し、コマンド処理部２２に取得した機器情報を通知する（Ｓ２４）。
【００９５】
以上のようにして、画像形成装置がタイムアウトを生じさせずにコマンドを処理することができる。
【００９６】
ところで、図５、図９〜１２の処理ではコマンド解釈の要求（Ｓ１３）の前にデバイス３６を立ち上げたが、デバイス３６の立ち上げはコマンド解釈の後でもよい。
【００９７】
図１３は、図１０のフローチャート図においてコマンド解釈の後にデバイス３６を立ち上げるフローチャート図の一例を示す。なお、図１３において図１０と同一ステップには同一の符号を付した。
【００９８】
図１３では、コマンド処理部２２がコマンド受信通知をうけると（Ｓ１１）、コマンド処理部２２はコマンド解釈部２１にコマンド解釈要求を送出する（Ｓ１３）。
【００９９】
コマンド解釈部２１がコマンドを解釈すると共に、必要なデバイス３６を特定し、また、デバイス３６がスリープモードになりうるかどうかを解析する。コマンド処理部２２はコマンド処理要求を受け取ると（Ｓ１５）、コマンド処理部２２は、当該コマンドの処理に「デバイスが必要かつスリープモードになりうるか？」を判定する（Ｓ３０）。
【０１００】
コマンドの処理にデバイス３６が必要でなくかつスリープモードにならない場合（Ｓ３０のＮｏ）、コマンド処理部２２はデバイス制御部２３に情報取得を要求する（Ｓ２２）。デバイス制御部２３から機器情報を通知されると（Ｓ２４）、情報取得に成功したこと、及び、取得した機器情報をコマンド解釈部２１に送出する（Ｓ２５）。
【０１０１】
コマンドの処理にデバイス３６が必要か又はスリープモードになる場合（Ｓ３０のＮｏ）、コマンド処理部２２は、デバイス制御部２３にデバイス３６（ＨＤＤ）の立ち上げを要求する（Ｓ１２）。
【０１０２】
ついで、コマンド処理部２２は、ＨＤＤ１１３が立ち上がっているか否かを判定する（Ｓ１６）。ＨＤＤ１１３が立ち上がっていない場合（Ｓ１６のＮｏ）、ＨＤＤ１１３が立ち上がっておらず情報取得に失敗したことをコマンド処理結果としてコマンド解釈部２１に通知する（Ｓ１８）。コマンド処理部２２は、ＨＤＤ１１３が立ち上がるまで情報取得の結果通知をコマンド解釈部２１に送出する。
【０１０３】
コマンド処理部２２は、デバイス制御部２３からＨＤＤ１１３の立ち上がり完了通知を受け取ると、ＨＤＤ１１３が立ち上がったと判定する（Ｓ１６のＹｅｓ）。コマンド処理部２２は、ＨＤＤ１１３が立ち上がったことを記憶する（Ｓ２１）。そして、コマンド処理部２２はデバイス制御部２３に情報取得を要求する（Ｓ２２）。デバイス制御部２３から機器情報を通知されると（Ｓ２４）、情報取得に成功したこと、及び、取得した機器情報をコマンド解釈部２１に送出する（Ｓ２５）。
【０１０４】
したがって、図１３の処理では、デバイス３６の立ち上げが必要な場合のみにデバイス３６を立ち上げるので、デバイス３６を使用しないコマンドではデバイス３６を立ち上げることがなくなり、消費電力を低減できる。なお、コマンド解釈部２１の処理手順は図９と同様であり、デバイス制御部２３の処理手順は図１２と同様であるので説明は省略する。
【実施例２】
【０１０５】
実施例１では画像形成装置１２が有するＨＤＤ１１３をデバイス３６としたが、本実施例ではネットワークにＨＤＤ１１３が接続されている場合について説明する。図１４は、ネットワーク１３を介して画像形成装置１２、コンピュータ１１及びＨＤＤ１１３とが接続された印刷システムの構成図を示す。図１４はＨＤＤ１１３がネットワーク１３に接続されている点で図１と異なる。なお、ハードウェア構成を示すブロック図は図３と機能構成図は図４と同様である。
【０１０６】
図１４の構成では、デバイス（ＨＤＤ１１３）と画像形成装置１２との通信が滞っている場合がある。このような場合、受信したコマンドに応じた処理を行なう際に、デバイス３６を使用すると判定された場合は、デバイス３６との通信が復帰するまで待機し、デバイス３６が不要な場合は、デバイス３６との通信が復帰することを待たずに処理を開始する。
【０１０７】
図１５はネットワーク１３に接続されたデバイス３６を使用して、コマンド処理部２２がコマンドを処理するフローチャート図を示す。
【０１０８】
まず、コマンド処理部２２は、データ受信部３２からコマンド受信通知を受け取る。（Ｓ３１）。
【０１０９】
ついで、コマンド処理部２２はデバイス制御部２３にデバイス３６へのアクセスを要求する（Ｓ３２）。すなわち、ネットワーク１３に接続されたデバイス３６を使用する処理か否か又は立ち上げの必要なデバイス３６か否かを判定する前に、デバイス３６へのアクセスが開始される。
【０１１０】
そして、コマンド処理部２２は、コマンド解釈要求をコマンド解釈部２１に送出する（Ｓ３３）。したがって、デバイス３６を使用するか否かにかかわらずコマンド解釈部２１にコマンド解釈要求が送出されるのでタイムアウトが検出されることがない。
【０１１１】
ついで、コマンド解釈部２１は、コマンド解釈要求のあったコマンドを解析する。図１６は本実施例のデバイステーブルを示す。図１６では、「フォント取得コマンド」に「外付けＨＤＤ」が、「用紙残量取得コマンド」に「給紙トレイ」が、「トナー残量取得コマンド」に「トナー」が登録されている。
【０１１２】
なお、ネットワーク１３に接続されたデバイス３６は通常、スリープモードになることがないので本実施例ではデバイス立ち上げテーブルは格納されていないが、実施例１と同様にデバイス立ち上げテーブルに基づき判定してもよい。
【０１１３】
コマンド解釈部２１は、コマンドとデバイス３６の対応付けをデバイステーブルを参照して行う。
【０１１４】
図１５に戻り、コマンド解釈部２１のコマンドの解釈結果に応じて、コマンド処理部２２は当該コマンドの処理にネットワーク１３に接続されたデバイス３６が必要か否かを判定する（Ｓ３４）。
【０１１５】
そして、デバイス３６が必要でない場合（Ｓ３４のＮｏ）、コマンド処理部２２はデバイス制御部２３に情報取得を要求する（Ｓ３８）。デバイス制御部２３から機器情報を通知されると（Ｓ３９）、情報取得に成功したこと、及び、取得した機器情報をコマンド解釈部２１に送出する（Ｓ４０）。
【０１１６】
デバイス３６が必要であった場合（Ｓ３４のＹｅｓ）、コマンド処理部２２はネットワークを介して接続されたデバイス３６へのアクセス状況をチェックする（Ｓ３５）。アクセスが完了しない場合（Ｓ３５のＮｏ）、デバイス３６が立ち上がっておらず情報取得に失敗したことを情報取得の結果としてコマンド解釈部２１に通知する（Ｓ３６）。コマンド処理部２２は、デバイス３６が立ち上がるまで情報取得の結果通知をコマンド解釈部２１に送出する。
【０１１７】
コマンド処理部２２は、デバイス制御部２３からデバイス３６へのアクセス通知を受け取ると、デバイスにアクセスできた（デバイス３６が立ち上がった）と判定する（Ｓ３５のＹｅｓ）。コマンド処理部２２は、デバイス３６が立ち上がったことを記憶する（Ｓ３７）。そして、コマンド処理部２２はデバイス制御部２３に情報取得を要求する（Ｓ３８）。デバイス制御部２３から機器情報を通知されると（Ｓ３９）、情報取得に成功したこと、及び、取得した機器情報をコマンド解釈部２１に送出する（Ｓ４０）。
【０１１８】
以上のように、本実施例によれば、ネットワーク１３に接続されたデバイス３６を使用した処理であっても、タイムアウトを防止してコマンド処理できる。なお、図１５では、ネットワークに接続されたデバイス３６を使用するか否かを判定する前にアクセスを開始したが、ネットワークに接続されたデバイス３６を使用すると判定された後にデバイス３６へのアクセスを開始してもよい。
【実施例３】
【０１１９】
本実施例ではネットワーク１３に複数のデバイス３６が接続されている場合について説明する。図１７は、ネットワーク１３を介して画像形成装置１２、コンピュータ１１及びＨＤＤ１１３Ａ〜Ｃとが接続された印刷システムの構成図を示す。図１７は複数のＨＤＤ１１３Ａ〜Ｃがネットワーク１３に接続されている点で図１４と異なる。なお、ハードウェア構成を示すブロック図は図３と機能構成図は図４と同様である。
【０１２０】
ＨＤＤ１１３Ａ〜Ｃには同じ機器情報が格納されている。このため、図１７の構成によれば、ＨＤＤ１１３Ａ〜Ｃのいずれかと画像形成装置１２との通信が滞っている場合があっても、通信の滞っていないＨＤＤ１１３Ａ〜Ｃのいずれかにアクセスすることで早期の処理が可能となる。
【０１２１】
図１８はネットワーク１３に接続された複数のデバイス３６を使用して、コマンド処理部２２がコマンド処理するフローチャート図を示す。なお、図１８において図１５と同一ステップには同一の符号を付した。
【０１２２】
まず、コマンド処理部２２は、データ受信部３２からコマンド受信通知を受け取る。（Ｓ３１）。
【０１２３】
ついで、コマンド処理部２２はデバイス制御部２３にデバイス３６へのアクセスを要求する（Ｓ３２）。すなわち、ネットワーク１３に接続されたデバイス３６を使用する処理か否か又は立ち上げの必要なデバイス３６か否かを判定する前に、デバイス３６へのアクセスが開始される。
【０１２４】
そして、コマンド処理部２２は、コマンド解釈要求をコマンド解釈部２１に送出する（Ｓ３３）。したがって、デバイス３６を使用するか否かにかかわらずコマンド解釈部２１にコマンド解釈要求が送出されるのでタイムアウトが検出されることがない。
【０１２５】
ついで、コマンド解釈部２１は、コマンド解釈要求のあったコマンドを解析する。なお、コマンド解釈部２１が参照するコマンドテーブルは図１６と同様である。
【０１２６】
コマンド解釈部２１のコマンドの解釈結果に応じて、コマンド処理部２２は当該コマンドの処理にネットワーク１３に接続されたデバイス３６が必要か否かを判定する（Ｓ３４）。
【０１２７】
そして、デバイス３６が必要でない場合（Ｓ３４のＮｏ）、コマンド処理部２２はデバイス制御部２３に情報取得を要求する（Ｓ３８）。デバイス制御部２３から機器情報を通知されると（Ｓ３９）、情報取得に成功したこと、及び、取得した機器情報をコマンド解釈部２１に送出する（Ｓ４０）。
【０１２８】
デバイス３６が必要であった場合（Ｓ３４のＹｅｓ）、コマンド処理部２２はネットワークを介して接続されたデバイス３６へのアクセス状況をチェックする（Ｓ３５）。アクセスが完了しない場合（Ｓ３５のＮｏ）、デバイス３６が立ち上がっておらず情報取得に失敗したことを情報取得の結果としてコマンド解釈部２１に通知する（Ｓ３６）。
【０１２９】
ついで、コマンド処理部２２はデバイス３６へのアクセス回数が所定数ｎより大きいか否か、すなわち、予め定められた回数チェックを行ったか否かを判定する（Ｓ４１）。アクセス回数によりアクセス完了までの時間が検出できることとなり、回線が混雑しているか否かの判定の目安となる。
【０１３０】
チェック回数が所定以下の場合（Ｓ４１のＮｏ）、アクセスチェックを繰り返すと共に（Ｓ３５）、デバイス３６が立ち上がっておらず情報取得に失敗したことを情報取得の結果としてコマンド解釈部２１に通知する（Ｓ３６）。そして、コマンド処理部２２は、デバイス３６が立ち上がるまで情報取得の結果通知をコマンド解釈部２１に送出する。
【０１３１】
アクセスのチェック回数がｎより大きい場合（Ｓ４１のＹｅｓ）、コマンド処理部２２はアクセスするデバイス３６の変更をデバイス制御部２３に要求する（Ｓ４２）。
【０１３２】
ステップＳ３５に戻り、コマンド処理部２２は変更されたデバイス３６のアクセス状況をチェックし（Ｓ３５）、デバイス３６へアクセスできたか否かを同様に判定する。
【０１３３】
コマンド処理部２２は、デバイス制御部２３からデバイス３６へのアクセス通知を受け取ると、デバイスにアクセスできた（デバイス３６が立ち上がった）と判定する（Ｓ３５のＹｅｓ）。コマンド処理部２２は、デバイス３６が立ち上がったことを記憶する（Ｓ３７）。そして、コマンド処理部２２はデバイス制御部２３に情報取得を要求する（Ｓ３８）。デバイス制御部２３から機器情報を通知されると（Ｓ３９）、情報取得に成功したこと、及び、取得した機器情報をコマンド解釈部２１に送出する（Ｓ４０）。
【０１３４】
以上のように、本実施例では、ネットワーク１３に接続されたデバイス３６を使用した処理であっても、タイムアウトを防止してコマンド処理できる。ネットワーク１３に接続された複数のデバイス３６からアクセスが混雑していないデバイス３６を選択できるため、早期の処理が可能となる。
【実施例４】
【０１３５】
実施例１〜３ではデバイス３６から直接、コマンドの処理に必要な機器情報を取得したが、コマンドの処理に必要な機器情報はキャッシュしておいてもよい。キャッシュしておけば、デバイス３６を立ち上げる時間、待機することやネットワーク１３を介してアクセスすることなく、コマンド処理に必要な機器情報をキャッシュから取得できる。
【０１３６】
本実施例の構成は図１，図１４又は図１７のいずれでもよい。すなわち、画像形成装置１２がデバイス３６を保持していてもよいし、ネットワーク１３に単数又は複数のデバイス３６が接続されていてもよい。本実施例では、画像形成装置１２がデバイス３６を有する図１の構成に基づき説明する。
【０１３７】
図１９（ａ）はデバイス制御部２３が機器情報をキャッシュする処理のフローチャート図を示す。デバイス３６がスリープモードに入ることは、タイマや画像形成装置の制御により検出できるものであるため、スリープモードに入る直前にデバイス３６の機器情報をキャッシュすればよい。
【０１３８】
デバイス制御部２３は、デバイス３６をスリープモード状態に制御する場合、状態変化通知をコマンド処理部２２に通知する（Ｓ５１）。これにより、コマンド処理部２２は当該デバイスがスリープモードに入ったことを検出する。
【０１３９】
ついで、デバイス制御部２３はデバイス３６に格納されている機器情報を抽出し、機器情報をキャッシュする。キャッシュする記憶装置は、ＲＡＭ１１６、オプションＲＡＭ１１９又はＮＶ−ＲＡＭ１１７等である。
【０１４０】
キャッシュするとデバイス制御部２３は当該デバイス３６をスリープモードに移行する（Ｓ５３）。したがって、機器情報がキャッシュされている場合、キャッシュから機器情報を取得することで画像形成装置１２はタイムアウトすることなくコマンドの処理が可能になる。
【０１４１】
図１９（ｂ）はデバイス制御部２３が機器情報をキャッシュする処理の別の形態のフローチャート図を示す。図１９（ｂ）はデバイス３６がスリープモードに入るか否かにかかわらず、機器情報をキャッシュしておく制御を示す。
【０１４２】
デバイス制御部２３はデバイス３６にアクセスを終了した直後から時間の計測を開始する（Ｓ５５）。そして、一定時間が経過したか否かを判定し（Ｓ５６）、一定時間が経過すると、デバイス制御部２３がデバイス３６から機器情報を抽出しＲＡＭ１１６等にキャッシュする（Ｓ５７）。
【０１４３】
図１９（ｂ）のようにキャッシュすることで、一定時間毎に最新の機器情報がキャッシュされることとなり、デバイス３６へアクセスする機会を低減できる。
【０１４４】
図１９（ａ）又は（ｂ）のいずれの場合でも、全ての機器情報をキャッシュしておいてもよいし、一部の機器情報をキャッシュしておいてもよい。本実施例では、一部の機器情報がキャッシュされるものとする。
【０１４５】
図２０は機器情報がキャッシュされている場合にコマンド処理部２２がコマンド処理を行うフローチャート図の一例を示す。
【０１４６】
まず、コマンド処理部２２は、データ受信部３２からコマンド受信通知を受け取る（Ｓ６１）。ついで、コマンド処理部２２は、キャッシュされている機器情報に基づきコマンドを処理するか否かを判定する（Ｓ６２）。ステップＳ６２の判定は、コマンドに対応づけてキャッシュの機器情報を返すか否かを規定したキャッシュ使用可否判定テーブルを使用する。
【０１４７】
図２１は、キャッシュ使用可否判定テーブルの一例を示す。図２１のキャッシュ使用可否判定テーブルでは、「Ｆａｌｓｅ」がデバイス３６から直接機器情報を返すことを、「Ｔｒｕｅ」がキャッシュから機器情報を返すことを示す。キャッシュ使用可否判定テーブルは、例えばＮＶ−ＲＡＭ１１７に格納されている。したがって、コマンド処理部２２は、「フォント取得」コマンドであればデバイス３６から機器情報を取得し、「用紙残量取得」コマンドであればキャッシュから機器情報を取得する。
【０１４８】
キャッシュ使用可否判定テーブルは、例えば容量の少ない機器情報をキャッシュしておくなど予め固定されていてもよいし、デバイス３６の機器情報とキャッシュされた機器情報との整合性が保証されている場合に「Ｔｒｕｅ」と設定することとしてもよい。キャッシュ手段の更新は、デバイス制御部２３がデバイスにアクセスする度に行うことが好適である。例えば、古いキャッシュ情報（アクセスのないデバイス）はキャッシュ手段から排除され、新しいキャッシュ情報がキャッシュ手段に格納される（ＬＲＵ（Least  Least  Recently  Us））。
【０１４９】
キャッシュから機器情報を取得する場合（Ｓ６２のＹｅｓ）、コマンド処理部２２はデバイス制御部２３に情報取得を要求する（Ｓ６８）。デバイス制御部２３はキャッシュから機器情報を取得しコマンド処理部２２に機器情報を通知する（Ｓ６９）。また、コマンド処理部２２は、情報取得に成功したこと、及び、取得した機器情報をコマンド解釈部２１に送出する（Ｓ７０）。このように、キャッシュしてある機器情報を使用できる場合、デバイス３６がスリープモードに入っていてもタイムアウトすることがない。
【０１５０】
キャッシュから機器情報を取得しない場合（Ｓ６２のＮｏ）、コマンド処理部２２はデバイス制御部２３にデバイス３６（例えばＨＤＤ）の立ち上げを要求する（Ｓ６３）。すなわち、デバイス３６を使用する処理か否か又は立ち上げの必要なデバイス３６か否かを判定する前に、デバイス３６の立ち上げが開始される。
【０１５１】
コマンド処理部２２は、コマンド解釈要求をコマンド解釈部２１に要求する（Ｓ６４）。コマンド解釈部２１は、コマンド処理に必要なデバイスとそのデバイスがスリープモードになりうるか否かを解釈する。コマンド処理部２２は、コマンド解釈部２１からコマンド処理要求を受け取る（Ｓ６５）。
【０１５２】
ついで、コマンド処理部２２は、コマンドの処理にデバイス３６が必要かつスリープモードになるか否かを判定する（Ｓ６６）。デバイス３６が必要でないか又はスリープモードにならない場合（Ｓ６６のＮｏ）、コマンド処理部２２はデバイス制御部２３に情報取得を要求する（Ｓ６８）。デバイス制御部２３はキャッシュから機器情報を取得しコマンド処理部２２に機器情報を通知する（Ｓ６９）。また、コマンド処理部２２は、情報取得に成功したこと、及び、取得した機器情報をコマンド解釈部２１に送出する（Ｓ７０）。
【０１５３】
デバイス３６が必要でかつスリープモードになりうる場合（Ｓ６６のＹｅｓ）、コマンド解釈部２１はデバイス３６（ＨＤＤ）が立ち上がったか否かを判定する（Ｓ６７）。
【０１５４】
立ち上がっていない場合（Ｓ６７のＮｏ），コマンド解釈部２１は立ち上がるまでチェックを繰り返す。立ち上がった場合（Ｓ６７のＹｅｓ）、コマンド処理部２２はデバイス制御部２３に情報取得を要求する（Ｓ６８）。デバイス制御部２３はＨＤＤからから機器情報を取得しコマンド処理部２２に機器情報を通知する（Ｓ６９）。また、コマンド処理部２２は、情報取得に成功したこと、及び、取得した機器情報をコマンド解釈部２１に送出する（Ｓ７０）。
【０１５５】
本実施例によれば、キャッシュされた機器情報を使用してコマンド処理を行う場合にはタイムアウトすることがなく、デバイス３６の機器情報を使用してコマンド処理を行う場合には立ち上がりを待たずにコマンド解釈部２１に処理要求を送出するのでタイムアウトすることがない。
【実施例５】
【０１５６】
実施例４ではコマンドに対応づけてキャッシュの機器情報を返すか否かを規定したキャッシュ使用可否判定テーブルに基づきキャッシュの機器情報を使用するか否かを判定したが、本実施例ではコマンドに指定された機器情報が不変か否かに基づきキャッシュされた機器情報を使用するか否かを判定する。なお、本実施例の印刷システムの構成は実施例４と同様である。
【０１５７】
図２２は機器情報がキャッシュされている場合にコマンド処理部２２がコマンド処理を行うフローチャート図の一例を示す。
【０１５８】
まず、コマンド処理部２２は、データ受信部３２からコマンド受信通知を受け取る（Ｓ７１）。ついで、コマンド処理部２２は、コマンドが使用する機器情報が不変か否かに基づき、キャッシュされている情報から機器情報を取得するか否かを判定する（Ｓ７２）。
【０１５９】
図２３は、キャッシュの機器情報を返すか否かを規定した本実施例のキャッシュ使用可否判定テーブルを示す。図２３には画像形成装置１２において不変な機器情報がキャッシュから取得する機器情報として登録されている。不変な機器情報とは、用紙残量のように変化するものでなく、機器名称やファームウェアのバージョンなど、少なくとも一度電源を入れたら変更されない機器情報である。図２３では、一例として「機器名称取得」コマンドと「バージョン取得」コマンドが規定されている。
【０１６０】
以降の処理は図２０と同様である。
不変な機器情報を取得する場合（Ｓ７２のＹｅｓ）、コマンド処理部２２はデバイス制御部２３に情報取得を要求する（Ｓ６８）。デバイス制御部２３はキャッシュから機器情報を取得しコマンド処理部２２に機器情報を通知する（Ｓ６９）。また、コマンド処理部２２は、情報取得に成功したこと、及び、取得した機器情報をコマンド解釈部２１に送出する（Ｓ７０）。このように、キャッシュしてある機器情報を使用できる場合、デバイス３６がスリープモードに入っていてもタイムアウトすることがない。
【０１６１】
不変な機器情報を取得しない場合（Ｓ７２のＮｏ）、コマンド処理部２２はデバイス制御部２３にデバイス３６（例えばＨＤＤ）の立ち上げを要求する（Ｓ６３）。すなわち、デバイス３６を使用する処理か否か又は立ち上げの必要なデバイス３６か否かを判定する前に、デバイス３６の立ち上げが開始される。
【０１６２】
コマンド処理部２２は、コマンド解釈要求をコマンド解釈部２１に要求する（Ｓ６４）。コマンド解釈部２１は、コマンド処理に必要なデバイスとそのデバイスがスリープモードになりうるか否かを解釈する。コマンド処理部２２は、コマンド解釈部２１からコマンド処理要求を受け取る（Ｓ６５）。
【０１６３】
ついで、コマンド処理部２２は、コマンドの処理にデバイス３６が必要かつスリープモードになるか否かを判定する（Ｓ６６）。デバイス３６が必要でないか又はスリープモードにならない場合（Ｓ６６のＮｏ）、コマンド処理部２２はデバイス制御部２３に情報取得を要求する（Ｓ６８）。デバイス制御部２３はキャッシュから機器情報を取得しコマンド処理部２２に機器情報を通知する（Ｓ６９）。また、コマンド処理部２２は、情報取得に成功したこと、及び、取得した機器情報をコマンド解釈部２１に送出する（Ｓ７０）。
【０１６４】
デバイス３６が必要でかつスリープモードになりうる場合（Ｓ６６のＹｅｓ）、コマンド解釈部２１はデバイス３６（ＨＤＤ）が立ち上がったか否かを判定する（Ｓ６７）。
【０１６５】
立ち上がっていない場合（Ｓ６７のＮｏ），コマンド解釈部２１は立ち上がるまでチェックを繰り返す。立ち上がった場合（Ｓ６７のＹｅｓ）、コマンド処理部２２はデバイス制御部２３に情報取得を要求する（Ｓ６８）。デバイス制御部２３はＨＤＤからから機器情報を取得しコマンド処理部２２に機器情報を通知する（Ｓ６９）。また、コマンド処理部２２は、情報取得に成功したこと、及び、取得した機器情報をコマンド解釈部２１に送出する（Ｓ７０）。
【０１６６】
本実施例によれば、不変な機器情報を取得する場合にはキャッシュされた機器情報を取得するためタイムアウトすることがなく、デバイス３６の機器情報を使用してコマンド処理を行う場合には立ち上がりを待たずにコマンド解釈部２１に処理要求を送出するのでタイムアウトすることがない。
【実施例６】
【０１６７】
実施例５ではコマンドが使用する機器情報が不変か否かに基づきキャッシュの機器情報を使用するか否かを判定したが、本実施例ではコマンドの発信元に基づきキャッシュされた機器情報を使用するか否かを判定する。なお、本実施例の印刷システムの構成は実施例４と同様である。
【０１６８】
図２４は機器情報がキャッシュされている場合にコマンド処理部２２がコマンド処理を行うフローチャート図の一例を示す。
【０１６９】
まず、コマンド処理部２２は、データ受信部３２からコマンド受信通知を受け取る（Ｓ８１）。ついで、コマンド処理部２２は、コマンドの発信元のコンピュータ１１が直ちにコマンド処理による機器情報を取得する必要のある発信元か否かを判定する（Ｓ８２）。
【０１７０】
図２５は、ただちに機器情報を取得する発信元を記録した本実施例のキャッシュ使用可否判定テーブルを示す。図２５にはＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレスが登録されている。図２５のＩＰアドレスは、コマンド処理を発した場合、可能な限り直ちに機器情報を取得するコマンドの発信元として登録されている。したがって、図２５に示すように、「１３３．１３９．ａａａ．ａａａ」等からコマンドが送信されると直ちに機器情報を送信するためキャッシュされている機器情報を使用する。なお、ＩＰアドレスはコンピュータから送信されるコマンドのヘッダに含まれている。
【０１７１】
以降の処理は図２０と同様である。
ただちに機器情報の取得を要求する発信元からコマンドを受信した場合（Ｓ８２のＹｅｓ）、コマンド処理部２２はデバイス制御部２３に情報取得を要求する（Ｓ６８）。デバイス制御部２３はキャッシュから機器情報を取得しコマンド処理部２２に機器情報を通知する（Ｓ６９）。また、コマンド処理部２２は、情報取得に成功したこと、及び、取得した機器情報をコマンド解釈部２１に送出する（Ｓ７０）。このように、キャッシュしてある機器情報を使用できる場合、デバイス３６がスリープモードに入っていてもタイムアウトすることがない。
【０１７２】
ただちに機器情報の取得を要求する発信元からコマンドを受信しない場合（Ｓ８２のＮｏ）、コマンド処理部２２はデバイス制御部２３にデバイス３６（例えばＨＤＤ）の立ち上げを要求する（Ｓ６３）。すなわち、デバイス３６を使用する処理か否か又は立ち上げの必要なデバイス３６か否かを判定する前に、デバイス３６の立ち上げが開始される。
【０１７３】
コマンド処理部２２は、コマンド解釈要求をコマンド解釈部２１に要求する（Ｓ６４）。コマンド解釈部２１は、コマンド処理に必要なデバイスとそのデバイスがスリープモードになりうるか否かを解釈する。コマンド処理部２２は、コマンド解釈部２１からコマンド処理要求を受け取る（Ｓ６５）。
【０１７４】
ついで、コマンド処理部２２は、コマンドの処理にデバイス３６が必要かつスリープモードになるか否かを判定する（Ｓ６６）。デバイス３６が必要でないか又はスリープモードにならない場合（Ｓ６６のＮｏ）、コマンド処理部２２はデバイス制御部２３に情報取得を要求する（Ｓ６８）。デバイス制御部２３はキャッシュから機器情報を取得しコマンド処理部２２に機器情報を通知する（Ｓ６９）。また、コマンド処理部２２は、情報取得に成功したこと、及び、取得した機器情報をコマンド解釈部２１に送出する（Ｓ７０）。
【０１７５】
デバイス３６が必要でかつスリープモードになりうる場合（Ｓ６６のＹｅｓ）、コマンド解釈部２１はデバイス３６（ＨＤＤ）が立ち上がったか否かを判定する（Ｓ６７）。
【０１７６】
立ち上がっていない場合（Ｓ６７のＮｏ），コマンド解釈部２１は立ち上がるまでチェックを繰り返す。立ち上がった場合（Ｓ６７のＹｅｓ）、コマンド処理部２２はデバイス制御部２３に情報取得を要求する（Ｓ６８）。デバイス制御部２３はＨＤＤからから機器情報を取得しコマンド処理部２２に機器情報を通知する（Ｓ６９）。また、コマンド処理部２２は、情報取得に成功したこと、及び、取得した機器情報をコマンド解釈部２１に送出する（Ｓ７０）。
【０１７７】
本実施例によれば、コマンドの発信元に基づきキャッシュの機器情報を使用するか否かを判定して、キャッシュの機器情報を使用する場合にはデバイス３６を立ち上げる必要がないので、タイムアウトを防止できる。また、デバイス３６の機器情報を使用してコマンド処理を行う場合には立ち上がりを待たずにコマンド解釈部２１に処理要求を送出するのでタイムアウトすることがない。
【実施例７】
【０１７８】
実施例６ではコマンドの発信元に基づきキャッシュされた機器情報を使用するか否かを判定したが、本実施例では直ちに機器情報を取得するコマンドか否かに基づきャッシュされた機器情報を使用するか否かを判定する。なお、本実施例の印刷システムの構成は実施例４と同様である。
【０１７９】
図２６は機器情報がキャッシュされている場合にコマンド処理部２２がコマンド処理を行うフローチャート図の一例を示す。
【０１８０】
まず、コマンド処理部２２は、データ受信部３２からコマンド受信通知を受け取る（Ｓ９１）。ついで、コマンド処理部２２は、直ちに機器情報を取得するコマンドか否かを判定する（Ｓ９２）。
【０１８１】
図２７は、直ちに機器情報を取得するコマンドを記録した本実施例のキャッシュ使用可否判定テーブルを示す。図２７には、直ちに機器情報を取得するコマンドとして「機器名称の取得」、「バージョン情報」等が登録されている。図２７のコマンドは、不変な機器情報を取得するもののうちから、緊急性の高い機器情報として登録されるものである。したがって、図２７に示すように、コンピュータ１１から「機器名称の取得」コマンドが送信された場合、画像形成装置１２は直ちに機器情報を送信するためキャッシュされている機器情報を使用する。
【０１８２】
以降の処理は図２０と同様である。
直ちに機器情報を取得する必要のあるコマンドの場合（Ｓ９２のＹｅｓ）、コマンド処理部２２はデバイス制御部２３に情報取得を要求する（Ｓ６８）。デバイス制御部２３はキャッシュから機器情報を取得しコマンド処理部２２に機器情報を通知する（Ｓ６９）。また、コマンド処理部２２は、情報取得に成功したこと、及び、取得した機器情報をコマンド解釈部２１に送出する（Ｓ７０）。このように、キャッシュしてある機器情報を使用できる場合、デバイス３６がスリープモードに入っていてもタイムアウトすることがない。
【０１８３】
直ちに機器情報を取得する必要のあるコマンドでない場合（Ｓ９２のＮｏ）、コマンド処理部２２はデバイス制御部２３にデバイス３６（例えばＨＤＤ）の立ち上げを要求する（Ｓ６３）。すなわち、デバイス３６を使用する処理か否か又は立ち上げの必要なデバイス３６か否かを判定する前に、デバイス３６の立ち上げが開始される。
【０１８４】
コマンド処理部２２は、コマンド解釈要求をコマンド解釈部２１に要求する（Ｓ６４）。コマンド解釈部２１は、コマンド処理に必要なデバイスとそのデバイスがスリープモードになりうるか否かを解釈する。コマンド処理部２２は、コマンド解釈部２１からコマンド処理要求を受け取る（Ｓ６５）。
【０１８５】
ついで、コマンド処理部２２は、コマンドの処理にデバイス３６が必要かつスリープモードになるか否かを判定する（Ｓ６６）。デバイス３６が必要でないか又はスリープモードにならない場合（Ｓ６６のＮｏ）、コマンド処理部２２はデバイス制御部２３に情報取得を要求する（Ｓ６８）。デバイス制御部２３はキャッシュから機器情報を取得しコマンド処理部２２に機器情報を通知する（Ｓ６９）。また、コマンド処理部２２は、情報取得に成功したこと、及び、取得した機器情報をコマンド解釈部２１に送出する（Ｓ７０）。
【０１８６】
デバイス３６が必要でかつスリープモードになりうる場合（Ｓ６６のＹｅｓ）、コマンド解釈部２１はデバイス３６（ＨＤＤ）が立ち上がったか否かを判定する（Ｓ６７）。
【０１８７】
立ち上がっていない場合（Ｓ６７のＮｏ），コマンド解釈部２１は立ち上がるまでチェックを繰り返す。立ち上がった場合（Ｓ６７のＹｅｓ）、コマンド処理部２２はデバイス制御部２３に情報取得を要求する（Ｓ６８）。デバイス制御部２３はＨＤＤからから機器情報を取得しコマンド処理部２２に機器情報を通知する（Ｓ６９）。また、コマンド処理部２２は、情報取得に成功したこと、及び、取得した機器情報をコマンド解釈部２１に送出する（Ｓ７０）。
【０１８８】
本実施例によれば、コマンドに基づきキャッシュの機器情報を使用するか否かを判定して、キャッシュの機器情報を使用する場合にはデバイス３６を立ち上げる必要がないので、タイムアウトを防止できる。また、デバイス３６の機器情報を使用してコマンド処理を行う場合には立ち上がりを待たずにコマンド解釈部２１に処理要求を送出するのでタイムアウトすることがない。
【実施例８】
【０１８９】
実施例６ではコマンドの発信元に基づきキャッシュされた機器情報を使用するか否かを判定したが、本実施例ではコマンドの発信元が正確な機器情報を取得する必要のあるコマンドの発信元か否かに基づきャッシュされた機器情報を使用するか否かを判定する。なお、本実施例の印刷システムの構成は実施例４と同様である。
【０１９０】
図２８は機器情報がキャッシュされている場合にコマンド処理部２２がコマンド処理を行うフローチャート図の一例を示す。
【０１９１】
まず、コマンド処理部２２は、データ受信部３２からコマンド受信通知を受け取る（Ｓ１０１）。ついで、コマンド処理部２２は、コマンドの発信元のコンピュータ１１が正確な機器情報を取得する必要のある発信元か否かを判定する（Ｓ１０２）。
【０１９２】
図２９は正確な機器情報を取得する必要のある発信元を記録した本実施例のキャッシュ使用可否判定テーブルを示す。図２９には、正確な機器情報を取得する必要のある発信元としてＩＰアドレスが登録されている。したがって、図２９に示すように、「１３３．１３９．ａａａ．ｂｂｂ」等からコマンドが送信されると、正確な機器情報を送信するためデバイス３６から直接取得した機器情報を使用する。
【０１９３】
以降の処理は図２０と同様である。
正確な機器情報を取得する必要のある発信元からコマンドを受信した場合（Ｓ１０２のＹｅｓ）、コマンド処理部２２はデバイス制御部２３に情報取得を要求する（Ｓ６８）。デバイス制御部２３はキャッシュから機器情報を取得しコマンド処理部２２に機器情報を通知する（Ｓ６９）。また、コマンド処理部２２は、情報取得に成功したこと、及び、取得した機器情報をコマンド解釈部２１に送出する（Ｓ７０）。このように、キャッシュしてある機器情報を使用できる場合、デバイス３６がスリープモードに入っていてもタイムアウトすることがない。
【０１９４】
正確な機器情報を取得する必要のある発信元からコマンドを受信していない場合（Ｓ１０２のＮｏ）、コマンド処理部２２はデバイス制御部２３にデバイス３６（例えばＨＤＤ）の立ち上げを要求する（Ｓ６３）。すなわち、デバイス３６を使用する処理か否か又は立ち上げの必要なデバイス３６か否かを判定する前に、デバイス３６の立ち上げが開始される。
【０１９５】
コマンド処理部２２は、コマンド解釈要求をコマンド解釈部２１に要求する（Ｓ６４）。コマンド解釈部２１は、コマンド処理に必要なデバイスとそのデバイスがスリープモードになりうるか否かを解釈する。コマンド処理部２２は、コマンド解釈部２１からコマンド処理要求を受け取る（Ｓ６５）。
【０１９６】
ついで、コマンド処理部２２は、コマンドの処理にデバイス３６が必要かつスリープモードになるか否かを判定する（Ｓ６６）。デバイス３６が必要でないか又はスリープモードにならない場合（Ｓ６６のＮｏ）、コマンド処理部２２はデバイス制御部２３に情報取得を要求する（Ｓ６８）。デバイス制御部２３はキャッシュから機器情報を取得しコマンド処理部２２に機器情報を通知する（Ｓ６９）。また、コマンド処理部２２は、情報取得に成功したこと、及び、取得した機器情報をコマンド解釈部２１に送出する（Ｓ７０）。
【０１９７】
デバイス３６が必要でかつスリープモードになりうる場合（Ｓ６６のＹｅｓ）、コマンド解釈部２１はデバイス３６（ＨＤＤ）が立ち上がったか否かを判定する（Ｓ６７）。
【０１９８】
立ち上がっていない場合（Ｓ６７のＮｏ），コマンド解釈部２１は立ち上がるまでチェックを繰り返す。立ち上がった場合（Ｓ６７のＹｅｓ）、コマンド処理部２２はデバイス制御部２３に情報取得を要求する（Ｓ６８）。デバイス制御部２３はＨＤＤからから機器情報を取得しコマンド処理部２２に機器情報を通知する（Ｓ６９）。また、コマンド処理部２２は、情報取得に成功したこと、及び、取得した機器情報をコマンド解釈部２１に送出する（Ｓ７０）。
【０１９９】
本実施例によれば、コマンドの発信元に基づき、それほど正確な機器情報を必要としないコマンドの発信元であれば、キャッシュの機器情報を使用するためデバイス３６を立ち上げる必要がないので、タイムアウトを防止できる。また、正確な機器情報を必要とするコマンドの発信元の場合デバイス３６の機器情報を使用してコマンド処理を行うが、立ち上がりを待たずにコマンド解釈部２１に処理要求を送出するのでタイムアウトすることがない。
【実施例９】
【０２００】
実施例８ではコマンドの発信元が正確な機器情報を取得する必要のあるコマンドの発信元か否かに基づきキャッシュされた機器情報を使用するか否かを判定したが、本実施例ではコマンドが正確な機器情報を必要とするコマンドか否かに基づきキャッシュされた機器情報を使用するか否かを判定する。なお、本実施例の印刷システムの構成は実施例４と同様である。
【０２０１】
図３０は機器情報がキャッシュされている場合にコマンド処理部２２がコマンド処理を行うフローチャート図の一例を示す。
【０２０２】
まず、コマンド処理部２２は、データ受信部３２からコマンド受信通知を受け取る（Ｓ１１１）。ついで、コマンド処理部２２は、コマンドが正確な機器情報を取得する必要のあるコマンドか否かを判定する（Ｓ１１２）。
【０２０３】
図３１は、正確な機器情報を必要とするコマンドを記録した本実施例のキャッシュ使用可否判定テーブルを示す。図３１には、正確な機器情報を取得する必要のあるコマンドとして「用紙サイズ情報取得」、「用紙種類情報取得」等のコマンドが登録されている。したがって、図３１に示すように、「用紙サイズ情報取得」のコマンドが送信されると、正確な機器情報を送信するためデバイス３６から直接取得した機器情報を使用する。
【０２０４】
以降の処理は図２０と同様である。
コマンドが正確な機器情報を取得する必要でないコマンドの場合（Ｓ１１２のＮｏ）、コマンド処理部２２はデバイス制御部２３に情報取得を要求する（Ｓ６８）。デバイス制御部２３はキャッシュから機器情報を取得しコマンド処理部２２に機器情報を通知する（Ｓ６９）。また、コマンド処理部２２は、情報取得に成功したこと、及び、取得した機器情報をコマンド解釈部２１に送出する（Ｓ７０）。このように、キャッシュしてある機器情報を使用できる場合、デバイス３６がスリープモードに入っていてもタイムアウトすることがない。
【０２０５】
コマンドが正確な機器情報を取得する必要のあるコマンドでない場合（Ｓ１１２のＹｅｓ）、コマンド処理部２２はデバイス制御部２３にデバイス３６（例えばＨＤＤ）の立ち上げを要求する（Ｓ６３）。すなわち、デバイス３６を使用する処理か否か又は立ち上げの必要なデバイス３６か否かを判定する前に、デバイス３６の立ち上げが開始される。
【０２０６】
コマンド処理部２２は、コマンド解釈要求をコマンド解釈部２１に要求する（Ｓ６４）。コマンド解釈部２１は、コマンド処理に必要なデバイスとそのデバイスがスリープモードになりうるか否かを解釈する。コマンド処理部２２は、コマンド解釈部２１からコマンド処理要求を受け取る（Ｓ６５）。
【０２０７】
ついで、コマンド処理部２２は、コマンドの処理にデバイス３６が必要かつスリープモードになるか否かを判定する（Ｓ６６）。デバイス３６が必要でないか又はスリープモードにならない場合（Ｓ６６のＮｏ）、コマンド処理部２２はデバイス制御部２３に情報取得を要求する（Ｓ６８）。デバイス制御部２３はキャッシュから機器情報を取得しコマンド処理部２２に機器情報を通知する（Ｓ６９）。また、コマンド処理部２２は、情報取得に成功したこと、及び、取得した機器情報をコマンド解釈部２１に送出する（Ｓ７０）。
【０２０８】
デバイス３６が必要でかつスリープモードになりうる場合（Ｓ６６のＹｅｓ）、コマンド解釈部２１はデバイス３６（ＨＤＤ）が立ち上がったか否かを判定する（Ｓ６７）。
【０２０９】
立ち上がっていない場合（Ｓ６７のＮｏ），コマンド解釈部２１は立ち上がるまでチェックを繰り返す。立ち上がった場合（Ｓ６７のＹｅｓ）、コマンド処理部２２はデバイス制御部２３に情報取得を要求する（Ｓ６８）。デバイス制御部２３はＨＤＤからから機器情報を取得しコマンド処理部２２に機器情報を通知する（Ｓ６９）。また、コマンド処理部２２は、情報取得に成功したこと、及び、取得した機器情報をコマンド解釈部２１に送出する（Ｓ７０）。
【０２１０】
本実施例によれば、コマンドに基づき、それほど正確な機器情報を必要としないコマンドであればキャッシュの機器情報を使用するためデバイス３６を立ち上げる必要がないので、タイムアウトを防止できる。また、正確な機器情報を必要とするコマンドの場合デバイス３６の機器情報を使用してコマンド処理を行うが、立ち上がりを待たずにコマンド解釈部２１に処理要求を送出するのでタイムアウトすることがない。
【実施例１０】
【０２１１】
実施例９ではコマンドが正確な機器情報を必要とするコマンドか否かに基づきキャッシュされた機器情報を使用するか否かを判定したが、本実施例ではコマンドの発信元が正確な機器情報を直ちに取得する必要のある発信元か否かに基づきキャッシュされた機器情報を使用するか否かを判定する。なお、本実施例の印刷システムの構成は実施例４と同様である。
【０２１２】
図３２は機器情報がキャッシュされている場合にコマンド処理部２２がコマンド処理を行うフローチャート図の一例を示す。図３２のフローチャート図は、コマンド処理部２２からコマンド解釈部２１への処理要求がない点で実施例１〜９と異なる。
【０２１３】
まず、コマンド処理部２２は、データ受信部３２からコマンド受信通知を受け取る（Ｓ１２１）。ついで、コマンド処理部２２は、コマンドの発信元が正確な機器情報を直ちに取得する必要のある発信元か否かを判定する（Ｓ１２２）。
【０２１４】
図３３（ａ）は、発信元が正確な機器情報を直ちに取得する必要のある発信元を記録した本実施例のキャッシュ使用可否判定テーブルを示す。図３３（ａ）には、正確な機器情報を直ちに取得する必要のある発信元としてＩＰアドレスが登録されている。したがって、図３３（ａ）に示すように、「１３３．１３９．ａａａ．ｃｃｃ」からコマンドが送信されると、正確な機器情報を直ちに送信するため、一定時間内にデバイス３６又はキャッシュから取得した機器情報を使用して発信元に機器情報を送信する。
【０２１５】
コマンドの発信元が正確な機器情報を直ちに取得する必要のある発信元でない場合（Ｓ１２２のＮｏ）、コマンド処理部２２はデバイス制御部２３に情報取得を要求する（Ｓ１２９）。デバイス制御部２３はキャッシュから機器情報を取得しコマンド処理部２２に機器情報を通知する（Ｓ１３０）。また、コマンド処理部２２は、情報取得に成功したこと、及び、取得した機器情報をコマンド解釈部２１に送出する（Ｓ１３１）。このように、キャッシュしてある機器情報を使用できる場合、デバイス３６がスリープモードに入っていてもタイムアウトすることがない。
【０２１６】
正確な機器情報を直ちに取得する必要のある発信元の場合（Ｓ１２２のＹｅｓ）、コマンド処理部２２はデバイス制御部２３にデバイス３６（例えばＨＤＤ）の立ち上げを要求する（Ｓ１２３）。すなわち、デバイス３６を使用する処理か否か又は立ち上げの必要なデバイス３６か否かを判定する前に、デバイス３６の立ち上げが開始される。
【０２１７】
ついで、コマンド処理部２２は、コマンド解釈要求をコマンド解釈部２１に要求する（Ｓ１２４）。コマンド解釈部２１は、コマンド処理に必要なデバイスとそのデバイスがスリープモードになりうるか否かを解釈する。コマンド処理部２２は、コマンド解釈部２１からコマンド処理要求を受け取る（Ｓ１２５）。
【０２１８】
ついで、コマンド処理部２２は、コマンドの処理にデバイス３６が必要かつスリープモードになるか否かを判定する（Ｓ１２６）。デバイス３６が必要でないか又はスリープモードにならない場合（Ｓ１２６のＮｏ）、コマンド処理部２２はデバイス制御部２３に情報取得を要求する（Ｓ１２９）。デバイス制御部２３はキャッシュから機器情報を取得しコマンド処理部２２に機器情報を通知する（Ｓ１３０）。また、コマンド処理部２２は、情報取得に成功したこと、及び、取得した機器情報をコマンド解釈部２１に送出する（Ｓ１３１）。
【０２１９】
デバイス３６が必要でかつスリープモードになりうる場合（Ｓ１２６のＹｅｓ）、コマンド解釈部２１はデバイス３６（ＨＤＤ）が立ち上がったか否かを判定する（Ｓ１２７）。
【０２２０】
ＨＤＤが立ち上がっていない場合（Ｓ１２７のＮｏ）、コマンド処理部２２はコマンド受信通知から予め定めた一定時間が経過したか否かを判定する（Ｓ１２８）。一定時間とは、コマンド解釈部２１がタイムアウトしない時間内であって、さらに、「直ちに」を満たす程度の時間である。一定時間が経過していない場合（Ｓ１２８のＹｅｓ）、デバイス３６が立ち上がったか否かの判定を繰り返す（Ｓ１２７）。
【０２２１】
一定時間が経過した場合（Ｓ１２８のＮｏ）、コマンド処理部２２は、デバイス制御部２３に情報取得を要求する（Ｓ１２９）。デバイス制御部２３はキャッシュから機器情報を取得しコマンド処理部２２に機器情報を通知する（Ｓ１３０）。また、コマンド処理部２２は、情報取得に成功したこと、及び、取得した機器情報をコマンド解釈部２１に送出する（Ｓ１３１）。
【０２２２】
すなわち、本実施例では発信元が直ちに機器情報を取得するため、一定時間が経過したらデバイス３６の立ち上がりを待たずに、キャッシュから機器情報を取得する。これにより、「直ちに」の要求を満たすと共に、タイムアウトを防止できる。
【０２２３】
本実施例によれば、コマンドの発信元が正確な機器情報を直ちに取得する発信元である場合、デバイス３６から機器情報の取得を試みるが、一定時間内にデバイス３６が立ち上がらない場合はキャッシュから機器情報を取得するので、タイムアウトを防止できる。
【０２２４】
ところで、本実施例ではデバイス３６の立ち上がりを待つ時間を一定時間としたが、デバイス３６の立ち上がりを待つ時間をコマンドの発信元毎に変えてもよい。図３３（ｂ）は発信元に対応づけて、デバイス３６の立ち上がりを待つ時間を登録したキャッシュ使用可否判定テーブルを示す。図３３（ｂ）のようなキャッシュ使用可否判定テーブルであれば、発信元に応じてデバイス３６の立ち上がりを待つ時間を変更できる。
【０２２５】
図３３（ｂ）のキャッシュ使用可否判定テーブルは、予めＮＶ−ＲＡＭ１１７等に格納されていてもよいし、ユーザにより設定されてもよい。ユーザは操作パネル１０１や画像形成装置１２からコンピュータ１１に提供されるＷｅｂアプリにより、キャッシュ使用可否判定テーブルの立ち上がりを待ち時間を設定できる。
【０２２６】
なお、ユーザが好みの待ち時間を設定する場合には、タイムアウトを防止するため、所定のタイミングで（例えば、Ｓ１２２とＳ１２３の間）コマンド処理部２２からコマンド解釈部２１へ処理要求を送る処理を行うことが好適である。
【実施例１１】
【０２２７】
実施例１０ではコマンドの発信元が正確な機器情報を直ちに取得する必要のある発信元か否かに基づきキャッシュされた機器情報を使用するか否かを判定したが、本実施例ではコマンドが正確な機器情報を直ちに取得する必要のあるコマンドか否かに基づきキャッシュされた機器情報を使用するか否かを判定する。なお、本実施例の印刷システムの構成は実施例４と同様である。
【０２２８】
図３４は機器情報がキャッシュされている場合にコマンド処理部２２がコマンド処理を行うフローチャート図の一例を示す。図３４のフローチャート図において、図３２と同一ステップには同一の符号を付した。
【０２２９】
まず、コマンド処理部２２は、データ受信部３２からコマンド受信通知を受け取る（Ｓ１３１）。ついで、コマンド処理部２２は、コマンドの発信元が正確な機器情報を直ちに取得する必要のある発信元か否かを判定する（Ｓ１３２）。
【０２３０】
図３５（ａ）は、正確な機器情報を直ちに取得する必要のあるコマンドを記録した本実施例のキャッシュ使用可否判定テーブルを示す。図３５（ａ）には、正確な機器情報を直ちに取得する必要のあるコマンドとして「用紙残量取得」や「トナー残量取得」等が登録されている。したがって、図３５（ａ）に示すように、「用紙残量取得」のコマンドが送信されると、正確な機器情報を直ちに送信するため、一定時間内にデバイス３６又はキャッシュから取得した機器情報を使用して発信元に機器情報を送信する。
【０２３１】
コマンドが正確な機器情報を直ちに取得する必要のあるコマンドでない場合（Ｓ１２２のＮｏ）、コマンド処理部２２はデバイス制御部２３に情報取得を要求する（Ｓ１２９）。デバイス制御部２３はキャッシュから機器情報を取得しコマンド処理部２２に機器情報を通知する（Ｓ１３０）。また、コマンド処理部２２は、情報取得に成功したこと、及び、取得した機器情報をコマンド解釈部２１に送出する（Ｓ１３１）。このように、キャッシュしてある機器情報を使用できる場合、デバイス３６がスリープモードに入っていてもタイムアウトすることがない。
【０２３２】
コマンドが正確な機器情報を直ちに取得する必要のあるコマンドの場合（Ｓ１３２のＹｅｓ）、コマンド処理部２２はデバイス制御部２３にデバイス３６（例えばＨＤＤ）の立ち上げを要求する（Ｓ１２３）。すなわち、デバイス３６を使用する処理か否か又は立ち上げの必要なデバイス３６か否かを判定する前に、デバイス３６の立ち上げが開始される。
【０２３３】
ついで、コマンド処理部２２は、コマンド解釈要求をコマンド解釈部２１に要求する（Ｓ１２４）。コマンド解釈部２１は、コマンド処理に必要なデバイスとそのデバイスがスリープモードになりうるか否かを解釈する。コマンド処理部２２は、コマンド解釈部２１からコマンド処理要求を受け取る（Ｓ１２５）。
【０２３４】
ついで、コマンド処理部２２は、コマンドの処理にデバイス３６が必要かつスリープモードになるか否かを判定する（Ｓ１２６）。デバイス３６が必要でないか又はスリープモードにならない場合（Ｓ１２６のＮｏ）、コマンド処理部２２はデバイス制御部２３に情報取得を要求する（Ｓ１２９）。デバイス制御部２３はキャッシュから機器情報を取得しコマンド処理部２２に機器情報を通知する（Ｓ１３０）。また、コマンド処理部２２は、情報取得に成功したこと、及び、取得した機器情報をコマンド解釈部２１に送出する（Ｓ１３１）。
【０２３５】
デバイス３６が必要でかつスリープモードになりうる場合（Ｓ１２６のＹｅｓ）、コマンド解釈部２１はデバイス３６（ＨＤＤ）が立ち上がったか否かを判定する（Ｓ１２７）。
【０２３６】
ＨＤＤが立ち上がっていない場合（Ｓ１２７のＮｏ）、コマンド処理部２２はコマンド受信通知から予め定めた一定時間が経過したか否かを判定する（Ｓ１２８）。一定時間とは、コマンド解釈部２１がタイムアウトしない時間内であって、さらに、「直ちに」を満たす程度の時間である。一定時間が経過していない場合（Ｓ１２８のＹｅｓ）、デバイス３６が立ち上がったか否かの判定を繰り返す（Ｓ１２７）。
【０２３７】
一定時間が経過した場合（Ｓ１２８のＮｏ）、コマンド処理部２２は、デバイス制御部２３に情報取得を要求する（Ｓ１２９）。デバイス制御部２３はキャッシュから機器情報を取得しコマンド処理部２２に機器情報を通知する（Ｓ１３０）。また、コマンド処理部２２は、情報取得に成功したこと、及び、取得した機器情報をコマンド解釈部２１に送出する（Ｓ１３１）。
【０２３８】
すなわち、本実施例では発信元が直ちに機器情報を取得するため、一定時間が経過したらデバイス３６の立ち上がりを待たずに、キャッシュから機器情報を取得する。これにより、「直ちに」の要求を満たすと共に、タイムアウトを防止できる。
【０２３９】
本実施例によれば、コマンドが正確な機器情報を直ちに取得するコマンドである場合デバイス３６から機器情報の取得を試みるが、一定時間内にデバイス３６が立ち上がらない場合はキャッシュから機器情報を取得するので、タイムアウトを防止できる。
【０２４０】
ところで、本実施例ではデバイス３６の立ち上がりを待つ時間を一定時間としたが、デバイス３６の立ち上がりを待つ時間をコマンド毎に変えてもよい。図３５（ｂ）はコマンドに対応づけて、デバイス３６の立ち上がりを待つ時間を登録したキャッシュ使用可否判定テーブルを示す。図３５（ｂ）のようなキャッシュ使用可否判定テーブルであれば、コマンドに応じてデバイス３６の立ち上がりを待つ時間を変更できる。
【０２４１】
図３５（ｂ）のキャッシュ使用可否判定テーブルは、予めＮＶ−ＲＡＭ１１７等に格納されていてもよいし、ユーザにより設定されてもよい。ユーザは操作パネル１０１や画像形成装置１２からコンピュータ１１に提供されるＷｅｂアプリにより、キャッシュ使用可否判定テーブルの立ち上がりを待ち時間を設定できる。
【０２４２】
なお、ユーザが好みの待ち時間を設定する場合には、所定のタイミングで（例えば、Ｓ１２２とＳ１２３の間）コマンド処理部２２からコマンド解釈部２１への処理要求を送る処理を行うことが好適である。
【０２４３】
以上説明したように、本実施の形態の画像形成装置１２は、機器情報を要求されたデバイスが立ち上がっていない場合でもタイムアウトすることがない。
【図面の簡単な説明】
【０２４４】
【図１】ネットワークを介して接続された画像形成装置とコンピュータとからなる印刷システムの構成図である。
【図２】コマンドに指定された機器情報をデバイスから取得するシーケンス図である。
【図３】画像形成装置のハードウェア構成を示すブロック図である。
【図４】画像形成装置の機能構成図である。
【図５】画像形成装置がタイムアウトを生じさせずにコマンドを処理する制御のシーケンス図である。
【図６】コマンド解釈部がコマンドを解釈した結果に応じて、コマンド処理部が処理を行う概念を示す一例である。
【図７】デバイステーブルの一例である。
【図８】デバイス立ち上げテーブルの一例である。
【図９】コマンド解釈部の処理手順を示すフローチャート図である。
【図１０】デバイスの立ち上げが必要な場合のコマンド処理部の処理手順を示すフローチャート図である。
【図１１】デバイスの立ち上げが必要ない場合のコマンド処理部の処理手順を示すフローチャート図である。
【図１２】デバイス制御部の処理手順を示すフローチャート図である。
【図１３】コマンド解釈の後にデバイス３６を立ち上げるコマンド処理部の処理手順を示すフローチャート図の一例を示す。
【図１４】ネットワークを介して画像形成装置、コンピュータ及びＨＤＤとが接続された印刷システムの構成図である。
【図１５】コマンド処理部２２がネットワークに接続されたデバイスから情報を取得する処理手順のフローチャート図である。
【図１６】実施例２のデバイステーブルの一例である
【図１７】実施例３の印刷システムの構成図である。
【図１８】コマンド処理部がネットワークに接続された複数のデバイスから情報を取得する処理手順のフローチャート図である。
【図１９】デバイス制御部が機器情報をキャッシュする処理のフローチャート図である。
【図２０】実施例４における機器情報がキャッシュされている場合にコマンド処理部がコマンドを処理する制御のフローチャート図である。
【図２１】実施例４におけるキャッシュ使用可否判定テーブルの一例である。
【図２２】実施例５におけるコマンド処理部がコマンドを処理する制御のフローチャート図である。
【図２３】実施例５におけるキャッシュ使用可否判定テーブルである。
【図２４】実施例６におけるコマンド処理部がコマンドを処理する制御のフローチャート図である。
【図２５】実施例６におけるキャッシュ使用可否判定テーブルである。
【図２６】実施例７におけるコマンド処理部がコマンドを処理する制御のフローチャート図である。
【図２７】実施例７におけるキャッシュ使用可否判定テーブルである。
【図２８】実施例８におけるコマンド処理部がコマンドを処理する制御のフローチャート図である。
【図２９】実施例８におけるキャッシュ使用可否判定テーブルである。
【図３０】実施例９におけるコマンド処理部がコマンドを処理する制御のフローチャート図である。
【図３１】実施例９におけるキャッシュ使用可否判定テーブルである。
【図３２】実施例１０におけるコマンド処理部がコマンドを処理する制御のフローチャート図である。
【図３３】実施例１０におけるキャッシュ使用可否判定テーブルである。
【図３４】実施例１１におけるコマンド処理部がコマンドを処理する制御のフローチャート図である。
【図３５】実施例１１におけるキャッシュ使用可否判定テーブルである。
【符号の説明】
【０２４５】
１１    コンピュータ
１２    画像形成装置
１３    ネットワーク
２１    コマンド解釈部
２２    コマンド処理部
２３    デバイス制御部
３２    データ受信部
３３    データ送信部
３４    データ処理部
３６    デバイス
【図１】
2007203529.tif 000003
【図２】
2007203529.tif 000004
【図３】
2007203529.tif 000005
【図４】
2007203529.tif 000006
【図５】
2007203529.tif 000007
【図６】
2007203529.tif 000008
【図７】
2007203529.tif 000009
【図８】
2007203529.tif 000010
【図９】
2007203529.tif 000011
【図１０】
2007203529.tif 000012
【図１１】
2007203529.tif 000013
【図１２】
2007203529.tif 000014
【図１３】
2007203529.tif 000015
【図１４】
2007203529.tif 000016
【図１５】
2007203529.tif 000017
【図１６】
2007203529.tif 000018
【図１７】
2007203529.tif 000019
【図１８】
2007203529.tif 000020
【図１９】
2007203529.tif 000021
【図２０】
2007203529.tif 000022
【図２１】
2007203529.tif 000023
【図２２】
2007203529.tif 000024
【図２３】
2007203529.tif 000025
【図２４】
2007203529.tif 000026
【図２５】
2007203529.tif 000027
【図２６】
2007203529.tif 000028
【図２７】
2007203529.tif 000029
【図２８】
2007203529.tif 000030
【図２９】
2007203529.tif 000031
【図３０】
2007203529.tif 000032
【図３１】
2007203529.tif 000033
【図３２】
2007203529.tif 000034
【図３３】
2007203529.tif 000035
【図３４】
2007203529.tif 000036
【図３５】
2007203529.tif 000037