(57)【特許請求の範囲】
【請求項１】
複数のホスト機器から送信される印刷データを受信し、該印刷データに応じて出力を行う印刷装置において、
ホスト機器からパケット送信される印刷データを受信して該受信した印刷データを第一の記憶手段または前記第一の記憶手段よりもデータアクセス速度が遅い第二の記憶手段に記憶させる受信手段と、
前記第一の記憶手段または前記第二の記憶手段に記憶された印刷データに基づいてＲＩＰ処理を実行するＲＩＰ処理手段と、
ＲＩＰ処理する印刷データの優先順位の変更を受け付ける変更手段と、
を備え、
前記受信手段は、新たな印刷データの受信を開始した際に、前記第一の記憶手段に記憶された印刷データに基づいて前記ＲＩＰ処理手段がＲＩＰ処理を実行している場合には前記新たな印刷データを前記第二の記憶手段に記憶させ、前記ＲＩＰ処理手段によりＲＩＰ処理されるべき印刷データが前記第一の記憶手段に記憶されていない場合には前記新たな印刷データを前記第一の記憶手段に記憶させ、
前記第一の記憶手段に記憶された印刷データに基づいて前記ＲＩＰ処理手段がＲＩＰ処理を実行している途中であって且つ前記新たな印刷データが前記受信手段により前記第二の記憶手段に記憶されている途中に前記変更手段によりＲＩＰ処理する印刷データの優先順位の変更が受け付けられた場合には、前記受信手段は前記新たな印刷データの記憶先を前記第一の記憶手段に変更し、前記ＲＩＰ処理手段はこれまでの印刷データに基づくＲＩＰ処理を中断するとともに前記新たな印刷データに基づくＲＩＰ処理を開始することを特徴とする印刷装置。
【請求項２】
前記受信手段は、前記新たな印刷データを前記第二の記憶手段に記憶させている途中に前記第一の記憶手段に記憶された印刷データに基づいたＲＩＰ処理が終了した場合には、前記新たな印刷データにおけるその後に受信したパケットについては前記第一の記憶手段に記憶させることを特徴とする請求項１に記載の印刷装置。
【請求項３】
前記受信手段は、ホスト機器からの印刷データが複数のパケットに分割されるとともに当該パケットが他のホスト機器からの印刷データとしてのパケット列に混在するように送信されてきた場合であって、且つ、この混在するように送信されてきたパケットが前記ＲＩＰ処理手段によりＲＩＰ処理され且つ前記第一の記憶手段に記憶されている印刷データにおける残りのパケットであった場合は、この混在するように送信されてきたパケットを前記第一の記憶手段に記憶させることを特徴とする請求項１または２に記載の印刷装置。
【請求項４】
前記受信手段は、前記混在するように送信されてきたパケットを前記ＲＩＰ処理手段によるＲＩＰ処理状況に応じて前記第一の記憶手段に記憶させる場合には、前記パケット列の印刷データは前記第二の記憶手段に記憶させることを特徴とする請求項３に記載の印刷装置。
【請求項５】
複数のホスト機器から送信される印刷データを受信し、該印刷データに応じて出力を行う印刷方法において、
ホスト機器からパケット送信される印刷データを受信して該受信した印刷データを第一の記憶手段または前記第一の記憶手段よりもデータアクセス速度が遅い第二の記憶手段に記憶させる受信ステップと、
前記第一の記憶手段または前記第二の記憶手段に記憶された印刷データに基づいてＲＩＰ処理を実行するＲＩＰ処理ステップと、
ＲＩＰ処理する印刷データの優先順位の変更を受け付ける変更ステップと、
を有し、
前記受信ステップは、新たな印刷データの受信を開始した際に、前記第一の記憶手段に記憶された印刷データに基づいてＲＩＰ処理が実行されている場合には前記新たな印刷データを前記第二の記憶手段に記憶させ、ＲＩＰ処理されるべき印刷データが前記第一の記憶手段に記憶されていない場合には前記新たな印刷データを前記第一の記憶手段に記憶させ、
前記第一の記憶手段に記憶された印刷データに基づいて前記ＲＩＰ処理ステップでＲＩＰ処理を実行している途中であって且つ前記新たな印刷データが前記受信ステップで前記第二の記憶手段に記憶されている途中に前記変更ステップでＲＩＰ処理する印刷データの優先順位の変更が受け付けられた場合には、前記受信ステップで前記新たな印刷データの記憶先を前記第一の記憶手段に変更し、前記ＲＩＰ処理ステップはこれまでの印刷データに基づくＲＩＰ処理を中断するとともに前記新たな印刷データに基づくＲＩＰ処理を開始することを特徴とする印刷方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介して複数のホスト機器が接続された印刷装置に関する。
【背景技術】
【０００２】
今日、ホストコンピュータ等のホスト機器と、プリンタ装置や所謂複合機等の印刷装置がネットワークを介して接続された印刷システムが使用されている。このようなシステムにおいて、印刷装置はネットワークに接続された複数のホスト機器から印刷データを受信し、印刷処理を行っている。
【０００３】
このような印刷装置では、例えばインターフェースコントローラ（以下、Ｉ／Ｆコントローラで示す）によって、ホスト機器から受信した印刷データ（ＰＤＬ（Page Description Language））をプリンタエンジンに転送可能な形式、例えばラスタイメージデータに変換している。
【０００４】
このラスタイメージデータへの変換処理に、ＲＩＰ（Raster Image Processor）を使用するが、この処理はラスタイメージデータを生成し、リアルタイムにピクセル単位のデータを出力する処理であり、負荷が大きく、ＣＰＵの能力の大半が使用されてしまう。
【０００５】
このため、複数のホスト機器から送信される印刷データを同時に受信可能な印刷装置では、ＣＰＵがパワー不足となり、プリンタエンジンの性能に対応できない。
【０００６】
このため、同時に受信する印刷データのうち１つの印刷データに対してＲＩＰ処理を行い、他の印刷データについては受信のみを行い、この受信データは印刷装置内部の受信バッファに保持する制御を行っている。
【０００７】
また、印刷装置のＩ／Ｆコントローラでは、データ受信とＲＩＰ処理を効率よく行うため、データ受信プロセスとＲＩＰ処理プロセスを非同期で動作させ、プロセス間に受信データバッファを設け、印刷データの受け渡しを行うことも行われている。
尚、特許文献１は、画像を印刷するプリンタ装置や、画像を読み取るスキャナ装置、メモリ送信／メモリ受信を行うファクシミリ装置等の周辺機器がネットワークを介して接続されたシステムにおいて、高速性が必要で容量があまり必要でない場合にはＲＡＭを使用し、高速性よりも容量が必要な場合にはハードディスクを使用し、上記周辺機器間のデータ授受を行うシステムを開示する。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開平１１−３３１５３０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、受信バッファとしてＲＡＭを使用する場合、データアクセスのスピードには優れているが、印刷装置内の利用可能なＲＡＭ容量は印刷データサイズに比べて十分ではなく、データを保持しきれない問題がある。
【００１０】
また、受信データバッファとしてハードディスクを用いる場合、利用可能な記憶容量は印刷データサイズと比べて十分に大きいが、データアクセスのスピードが遅く、印刷速度が劣化する問題がある。
【００１１】
そこで、本発明はＣＰＵの負荷を軽減しつつ、効率よい印刷処理を行う印刷装置を提供するものである。
【課題を解決するための手段】
【００１２】
上記課題は本発明によれば、複数のホスト機器から送信される印刷データを受信し、該印刷データに応じて出力を行う印刷装置において、ホスト機器からパケット送信される印刷データを受信して該受信した印刷データを第一の記憶手段または前記第一の記憶手段よりもデータアクセス速度が遅い第二の記憶手段に記憶させる受信手段と、前記第一の記憶手段または前記第二の記憶手段に記憶された印刷データに基づいてＲＩＰ処理を実行するＲＩＰ処理手段とを備え、前記受信手段は、新たな印刷データの受信を開始した際に、前記第一の記憶手段に記憶された印刷データに基づいて前記ＲＩＰ処理手段がＲＩＰ処理を実行している場合には前記新たな印刷データを前記第二の記憶手段に記憶させ、前記ＲＩＰ処理手段によりＲＩＰ処理されるべき印刷データが前記第一の記憶手段に記憶されていない場合には前記新たな印刷データを前記第一の記憶手段に記憶させることを特徴とする印刷装置を提供することによって達成できる。
【発明の効果】
【００１３】
本発明によれば、ＣＰＵの負荷を軽減しつつ、効率よく印刷処理を行う印刷装置を提供することができる。
【図面の簡単な説明】
【００１４】
【図１】実施形態１のプリンタ装置のシステム構成を示す図である。
【図２】複数のホストコンピュータから出力される印刷データを同時受信する場合を説明する図である。
【図３】実施形態１における状態テーブルのデータ構成を示す図である。
【図４】実施形態１における印刷処理動作を説明する際の状態テーブルのデータ構成を示す図である。
【図５】実施形態１における受信部の処理動作を説明するフローチャートである。
【図６】実施形態１における制御部の処理動作を説明するフローチャートである。
【図７】実施形態１におけるＲＩＰ部の処理動作を説明するフローチャートである。
【図８】実施形態２のプリンタ装置のシステム構成を示す図である。
【図９】実施形態２における状態テーブルのデータ構成を示す図である。
【図１０】実施形態２における印刷処理動作を説明する際の状態テーブルのデータ構成を示す図である。
【図１１】実施形態２における受信部の処理動作を説明するフローチャートである。
【図１２】実施形態２における制御部の処理動作を説明するフローチャートである。
【図１３】実施形態２における制御部の処理動作を説明するフローチャートである。
【図１４】実施形態２におけるＲＩＰ部の処理動作を説明するフローチャートである。
【図１５】実施形態２における受信データのバッファ切換え通知後の状態テーブルのデータ構成を示す図である。
【図１６】実施形態３のプリンタ装置のシステム構成を示す図である。
【図１７】実施形態３における状態テーブルのデータ構成を示す図である。
【図１８】実施形態３における印刷処理動作を説明する際の状態テーブルのデータ構成を示す図である。
【図１９】実施形態３における受信部の処理動作を説明するフローチャートである。
【図２０】実施形態３における制御部の処理動作を説明するフローチャートである。
【図２１】実施形態３における制御部の処理動作を説明するフローチャートである。
【図２２】実施形態３における制御部の処理動作を説明するフローチャートである。
【図２３】実施形態３におけるＲＩＰ部の処理動作を説明するフローチャートである。
【図２４】実施形態３における割り込み処理の指示が行われた後の状態テーブルのデータ構成を示す図である。
【発明を実施するための形態】
【００１５】
以下、本発明の実施形態について、図面を参照しながら説明する。
（実施形態１）
図１は本実施形態のプリンタ装置のシステム構成を示す図である。
同図において、プリンタ装置１にはＬＡＮ等のネットワークを介して、例えば３台のホストコンピュータＰＣ１〜ＰＣ３に接続されている。プリンタ装置１は受信部２、制御部３、ＲＩＰ（Raster Image Processor）部４、転送部５、プリンタエンジン６、ハードディスク（ＨＤＤ）７、ＲＡＭ８、状態テーブル９、及び画像メモリ１０で構成されている。
また、ホストコンピュータＰＣ１〜ＰＣ３は、アプリケーションに従って作成した印刷データをプリンタドライバによってＰＤＬデータに変換し、プリンタ装置１に送信する。プリンタ装置１は、受信部２において、ホストコンピュータＰＣ１〜ＰＣ３から送信された印刷データを受信すると、受信開始信号を制御部３に送信する。また、受信部２は複数のホストコンピュータから送信される印刷データを同時に受信可能である。
【００１６】
受信部２はホストコンピュータＰＣ１〜ＰＣ３から送信された印刷データを受信し、ハードディスク７又はＲＡＭ８に送信する。ＲＡＭ８は、例えば数頁分の印刷データの格納領域を有し、受信部２を介して入力する印刷データを格納する。また、ハードディスク７は複数の印刷データ（ジョブファイル）を記憶可能な記憶領域を有し、受信部２を介して入力する印刷データを記憶する。
制御部３は受信部２から受信開始信号を受信すると、受信部２への印刷データ受信開始許可の応答を行った後、状態テーブル９の全レコードを検索し、後述する各種制御を行なう。
【００１７】
ここで、本実施形態のプリンタ装置１は、上記のように複数のホストコンピュータから印刷データを同時受信することが可能であり、その一例を以下に説明する。図２は、例えば上記ホストコンピュータＰＣ１とＰＣ２から出力される印刷データを同時受信する場合を説明する図である。
この場合、ホストコンピュータＰＣ１はアプリケーションに従って印刷データａを作成し、ネットワーク（ＬＡＮ）を介して送信する際、印刷データａをａ１〜ａｎのパケットに分割し、プリンタ装置１に送信する。このパケットａ１〜ａｎには実データの他、パケット結合時に必要な送信元ホストコンピュータの情報や、パケット配列順等の情報も含まれている。また、ホストコンピュータＰＣ２においても、アプリケーションに従って印刷データｂを作成し、ネットワーク（ＬＡＮ）を介して送信する際、印刷データｂをｂ１〜ｂｎのパケットに分割し、プリンタ装置１に送信する。
【００１８】
受信部２はネットワーク（ＬＡＮ）上を混在して送信される印刷データ（パケットａ１〜ａｎ、ｂ１〜ｂｎ）を受信し、送信元情報、及びパケット配列順の情報に従って結合し、印刷データａ、及びｂを再生する。このようにして、同時に受信された印刷データａ、及びｂは、前述のハードディスク７又はＲＡＭ８に送信される。
【００１９】
図３は状態テーブル９のデータ構成を説明する図である。状態テーブル９はホストコンピュータＰＣ１〜ＰＣ３から出力された印刷データの情報を記憶し、ホスト情報記憶エリア９ａ、バッファ状態記憶エリア９ｂ、アドレス/ファイル名記憶エリア９ｃ、データサイズ記憶エリア９ｄ、及びＲＩＰ状態記憶エリア９ｅで構成され、レコード番号に対応して各情報が記憶される。
【００２０】
例えば、ホスト情報記憶エリア９ａには、印刷データを送信したホストコンピュータＰＣ１〜ＰＣ３の情報が記憶され、バッファ状態記憶エリア９ｂには、印刷データが格納されたハードディスク７又はＲＡＭ８の情報が記憶される。また、アドレス/ファイル名記憶エリア９ｃには印刷データのアドレス又はファイル名が記憶され、データサイズ記憶エリア９ｄには印刷データのデータサイズが記憶される。さらに、ＲＩＰ状態記憶エリア９ｅにはＲＩＰ部４の駆動状態が記憶され、例えばＲＩＰ部４が駆動中であれば、「ＲＩＰ中」の情報が記憶され、ＲＩＰ部４が駆動中でなければ、「なし」の情報が記憶される。
【００２１】
尚、状態テーブル９の初期時においては、図３に示すように、ホスト情報記憶エリア９ａは全て「空き」状態にリセットされ、バッファ状態記憶エリア９ｂも全て「空き」状態にリセットされ、アドレス/ファイル名記憶エリア９ｃは全て「なし」状態にリセットされ、データサイズ記憶エリア９ｄは全て「−１」にリセットされ、ＲＩＰ状態記憶エリア９ｅも全て「なし」状態にリセットされている。
【００２２】
制御部３は受信部２から受信開始信号を受信すると、上記状態テーブル９のレコード番号１から順次検索し、ホスト情報記憶エリア９ａが「空き」状態である最初のレコードにホスト情報を記憶する。
【００２３】
ＲＩＰ部４は制御部３の指示に従ってハードディスク７又はＲＡＭ８から印刷データを読み出し、コマンド解析を行い、描画データに変換する。ＲＩＰ部４によって変換された描画データは画像メモリ１０に展開される。
【００２４】
転送部５は画像メモリ１０に所定量の描画データが展開されると、画像メモリ１０から描画データを読み出し、プリンタエンジン６に転送する。プリンタエンジン６では転送部５から転送される描画データに基づいて記憶媒体（例えば、用紙）に印刷処理を行う。
【００２５】
以上の構成において、以下に本例の処理動作を説明する。
尚、本例の処理動作を説明する際、前述の状態テーブル９には既に図４に示す情報が記憶されているものとする。例えば、レコード番号１のホスト情報記憶エリア９ａには印刷データがホストコンピュータＰＣ１から送信されたことを示す「ＰＣ１」の情報が記憶され、バッファ状態記憶エリア９ｂには当該印刷データがＲＡＭ８に格納中であることを示す「ＲＡＭ」の情報が記憶され、アドレス/ファイル名記憶エリア９ｃには当該印刷データのアドレス「0x8000A064」であることを示す情報が記憶され、データサイズ記憶エリア９ｄには当該印刷データのサイズが「2478158」であることを示す情報が記憶されている。
【００２６】
したがって、状態テーブル９のレコード番号１には、ホストコンピュータＰＣ１から送信された印刷データの情報が記憶され、例えば当該印刷データがＲＡＭ８に格納中であり、またレコード番号１のＲＩＰ状態記憶エリア９ｅには「ＲＩＰ中」の情報が記憶されていることから、ＲＩＰ部４が現在駆動中であり、ＲＡＭ８に格納された印刷データがＲＩＰ部４によって解析処理されている状態であることを示す。
【００２７】
同様に、レコード番号２のホスト情報記憶エリア９ａには対応する印刷データがホストコンピュータＰＣ２から送信されたことを示す「ＰＣ２」の情報が記憶され、バッファ状態記憶エリア９ｂには当該印刷データがハードディスク７に記憶されていることを示す「ＨＤＤ」が記憶され、アドレス/ファイル名記憶部９ｃには当該印刷データのファイル名が「゛RCV00001゛」であることを示す情報が記憶され、データサイズ記憶部９ｄには未だデータサイズ情報が設定されていないことを示す「−１」の情報が記憶されている。したがって、状態テーブル９のレコード番号２は、ファイル名「゛RCV00001゛」の印刷データがホストコンピュータＰＣ２から送信され、ハードディスク７に記憶処理中であることを示す。
尚、本例の処理を開始する時点では、状態テーブル９の他のレコードは初期状態に設定されているものとして説明する。
【００２８】
図５は本例の受信部２の処理動作を説明するフローチャートであり、図６は制御部３の処理動作を説明するフローチャートであり、図７はＲＩＰ部４の処理動作を説明するフローチャートである。
【００２９】
受信部２は図５に示すフローチャートに従って、先ずネットワークに接続されたホストコンピュータＰＣ１〜ＰＣ３から印刷データを受信するか判断する（ステップ（以下、図４においてＳで示す）１）。そして、受信部２はホストコンピュータＰＣ１〜ＰＣ３から印刷データを受信するまで待ち（Ｓ１がＮＯ）、その後ホストコンピュータＰＣ１〜ＰＣ３から印刷データを受信すると（Ｓ１がＹＥＳ）、制御部３に印刷データの受信開始を通知する（Ｓ２）。すなわち、受信部２は制御部３に受信開始信号を出力し、制御部３から受信開始許可応答が送信されるまで待つ（Ｓ３）。
尚、上記図４に示すように、受信部２にはホストコンピュータＰＣ１及びＰＣ２から既に印刷データが入力しており、新たな印刷データがホストコンピュータＰＣ３から入力するものとして説明する。
【００３０】
制御部３は受信部２から上記受信開始信号を受信すると、図６に示すフローチャートに沿って処理を開始し、先ず外部から通知があるか判断する（ステップ（以下、図６においてＳＴ）で示す）１）。この場合、受信開始信号が入力しており（ＳＴ１がＹＥＳ）、状態テーブル９を検索し（ＳＴ２）、ＲＡＭ３の利用が可能であるか判断する（ＳＴ３）。この判断は、図４に示す状態テーブル９のバッファ状態記憶エリア９ｂを参照して行う。
【００３１】
図４に示す例では、レコード番号１のバッファ状態記憶エリア９ｂに「ＲＡＭ」の情報が記憶されており、前述のようにホストコンピュータＰＣ１から供給された印刷データが既にＲＡＭ８に格納されている。
【００３２】
したがって、現在ＲＡＭ８を使用中であり（ＳＴ３がＮＯ）、ハードディスク７に新たな印刷データのファイル名を生成し（ＳＴ４）、状態テーブル９の対応するエリアにファイル名の設定を行う（ＳＴ５）。例えば、図４に示す例では、レコード番号３のホスト情報記憶エリア９ａに、例えばホストコンピュータＰＣ３からの印刷データであることを示す「ＰＣ３」を記憶し、バッファ状態記憶エリア９ｂに「ＨＤＤ」を記憶し、アドレス/ファイル名記憶エリア９ｃにファイル名「゛RCV00002゛」の情報を記憶する。
【００３３】
その後、制御部３は受信部２に対して受信開始許可の応答を行う（ＳＴ６）。受信部２は制御部３から受信開始許可の応答を受信すると（Ｓ３がＹＥＳ）、累積データ格納サイズの初期化を行う（Ｓ４）。
【００３４】
その後、受信部２は受信データの判断を行い（Ｓ５）、最初のこの判断では受信データ、即ち印刷データがあり（Ｓ５がＹＥＳ）、バッファ状態を判断し（Ｓ６）、印刷データの書き込み処理を行う。尚、上記図４に示す状態テーブル９の例では、この時レコード番号３のバッファ状態記憶エリア９ｂには「ＨＤＤ」の情報が記憶されており（Ｓ６がＨＤＤ）、ホストコンピュータＰＣ３から送信された新たな印刷データはハードディスク７の新たな領域に記憶される（Ｓ７）。また、ハードディスク７の累積データ格納サイズの更新処理を行う（Ｓ８）。
【００３５】
その後、受信部２に印刷データが入力する間（Ｓ５がＹＥＳ）、ハードディスク７に印刷データを順次格納し（Ｓ５〜Ｓ８）、受信部２への印刷データの入力が完了すると（Ｓ５がＮＯ）、制御部３に印刷データの受信完了を通知する（Ｓ９）。
【００３６】
制御部３はこの受信完了の通知を受信すると（ＳＴ１がＹＥＳ）、状態テーブル９の設定を行う（ＳＴ１１）。例えば、前述のレコード番号３のデータサイズ記憶エリア９ｄに上記累積データ格納サイズのデータを登録する。
【００３７】
また、制御部３は受信部２に前述の受信開始許可の応答（ＳＴ６）を行った後、状態テーブル９を検索し（ＳＴ７）、ＲＩＰ部４によるＲＩＰ処理が可能であるか判断する（ＳＴ８）。この判断は、図４に示す状態テーブル９のＲＩＰ状態記憶エリア９ｅを参照して行ない、この時レコード番号１のＲＩＰ状態記憶エリア９ｅに「ＲＩＰ中」の情報が登録されており、この場合新たな印刷データのＲＩＰ処理は行われない（ＳＴ８がＮＯ）。
【００３８】
すなわち、この時ＲＩＰ部４はレコード番号１に対応する印刷データのＲＩＰ処理を行っており、図７に示すフローチャートに従って、外部から通知があるか判断し（ステップ（以下、図７においてＳＴＰで示す）１）、ＲＩＰ処理を開始する。図４に示す例では、制御部３からＲＩＰ部４にレコード番号１に対応する印刷データのＲＩＰ処理の開始指示が既に行われており、累積データ読出しサイズの初期化を行ない（ＳＴＰ２）、印刷データのＲＩＰ処理を行なっている。
【００３９】
具体的には、読み出し処理を行っていないデータ（未ＲＩＰデータ）があるか判断する（ＳＴＰ３）。レコード番号１に登録されている印刷データがＲＡＭ８に残っている場合（ＳＴＰ３がＹＥＳ）、バッファ状態を判断し（ＳＴＰ４）、印刷データをＲＡＭ８から読み出し、コマンド解析処理を行う（ＳＴＰ５）。
【００４０】
また、累積データ読出しサイズの更新処理を行い（ＳＴＰ７）、例えば１ページ分の画像データが完成したか判断し（ＳＴＰ８）、１ページ分の画像データが完成していなければ（ＳＴＰ８がＮＯ）、上記処理を繰り返す（ＳＴＰ３〜ＳＴＰ５、ＳＴＰ７〜ＳＴＰ９）。
【００４１】
この処理によって順次画像メモリ１０には画像データが展開され、１ページ分の画像データが完成すると（ＳＴＰ８がＹＥＳ）、転送部５にデータ転送を通知する（ＳＴＰ９）。その後、ＲＡＭ８に残る印刷データを判断し（ＳＴＰ３）、ＲＡＭ８に残る印刷データが無くなると（ＳＴＰ３がＮＯ）、制御部３にＲＩＰ処理の完了を通知する（ＳＴＰ１０）。
【００４２】
制御部３はＲＩＰ部４から上記ＲＩＰ処理の完了通知を受信すると（ＳＴ１がＹＥＳ）、状態テーブル９を確認する（ＳＴ１２）。そして、ＲＩＰ処理完了を判断し（ＳＴ１３）、対応するレコード情報の削除処理を行う（ＳＴ１４）。例えば、図４に示すレコード１の情報を削除する。すなわち、レコード１に対応するホスト情報記憶エリア９ａや、バッファ状態記憶エリア９ｂ等に記憶された情報を削除する。
【００４３】
尚、ＲＡＭ８に新たな印刷データが入力した場合等を考慮して、ＲＡＭ８のＲＩＰ処理が完了していない場合にはＲＩＰ部４にＲＩＰ処理の継続を通知する（ＳＴ１３が未完了、ＳＴ１３´）。
【００４４】
その後、ＲＩＰ処理が可能であるか判断し（ＳＴ１５）、ＲＩＰ部４によるＲＩＰ処理が可能であれば（ＳＴ１５がＹＥＳ）、状態テーブル９を検索し（ＳＴ１６）、バッファ状態が空きではないレコードがあるか判断する（ＳＴ１７）。ここで、バッファ状態が空きではないレコードがある場合、例えばレコード２に示すように、バッファ状態記憶エリア９ｂに「ＨＤＤ」の登録がある場合（ＳＴ１７がＹＥＳ）、状態テーブル９に設定を行い（ＳＴ１８）、ＲＩＰ部４にＲＩＰ処理開始を通知する（ＳＴ１９）。すなわち、レコード番号２のＲＩＰ状態記憶エリア９ｅに「ＲＩＰ中」の記憶を行い、ＲＩＰ部４にＲＩＰ処理開始を通知する。
【００４５】
この場合、レコード２に登録されているハードディスク７に記憶されたファイル名「゛RCV00001゛」の印刷データがＲＩＰ部４に読み出され、コマンドの解析処理が行われる。すなわち、バッファ状態の判断（ＳＴＰ４）において、ハードディスク７が指示され（ＳＴＰ４がＨＤＤ）、ハードディスク７から印刷データが読み出され、ＲＩＰ部４において印刷データのコマンド解析処理が行われる（ＳＴＰ６）。
尚、ＲＩＰ部４がＲＩＰ処理を行なうことができない場合（ＳＴ１５がＮＯ）、又はバッファ状態が全て空きである場合（ＳＴ１７がＮＯ）、次のＲＩＰ処理は行わず、外部からの通知待ち状態に移行する（ＳＴ１）。
【００４６】
以上のように、本実施形態はＲＡＭ８に既に印刷データが格納されている場合、新たに入力する印刷データはハードディスク７に記憶する。この間、ＲＡＭ８が空き状態になったとしても、一旦ハードディスク７に印刷データを記憶し始めた場合には、そのままハードディスク７への印刷データの記憶を継続するものである。
尚、ＲＡＭ８が空き状態であり、バッファ状態記憶部９ｂに「ＲＡＭ」の登録が無い場合には、制御部３は受信部２から受信開始信号が入力した場合（ＳＴ１がＹＥＳ）、状態テーブル９を検索し（ＳＴ２）、ＲＡＭ８が利用可能であると判断し（ＳＴ３がＹＥＳ）、ＲＡＭ８の領域を確保し（ＳＴ２０）、状態テーブル２１の設定を行う（ＳＴ２１）。この場合、状態テーブル９の対応するレコード番号のバッファ状態記憶部９ｂに「ＲＡＭ」の記憶を行い、受信部２に受信開始許可の応答を行う（ＳＴ６）。以後受信部２は制御部３から受信開始許可の応答を受信し（Ｓ３がＹＥＳ）、ＲＡＭ８への受信データの格納処理を行う（Ｓ６がＲＡＭ、Ｓ１０）。この場合も、一旦ＲＡＭ８に印刷データの格納を開始した後は、そのままＲＡＭ８への印刷データの格納処理を継続する。
【００４７】
したがって、本実施形態によれば、ＲＡＭ８が空き状態ではない場合、新たな印刷データはハードディスク７に記憶し、ＲＡＭ８が空き状態である場合、新たな印刷データはＲＡＭ８に格納し、印刷データの受信中、ハードディスク７からＲＡＭ８へ記憶先の変更や、ＲＡＭ８からハードディスク７への記憶先の変更を行うことなく、複数の印刷データが入力する場合でもＣＰＵの負荷を軽減しつつ、効率よい印刷処理を行うことができる。
【００４８】
（実施形態２）
次に、本発明の実施形態２について説明する。
図８は本実施形態のプリンタ装置のシステム構成を示す図である。尚、本実施形態２においても、基本的な構成は前述の実施形態１と同様であり、プリンタ装置１１はＬＡＮ等のネットワークを介して、例えば３台のホストコンピュータＰＣ１〜ＰＣ３に接続されている。プリンタ装置１１は受信部１２、制御部１３、ＲＩＰ部１４、転送部１５、プリンタエンジン１６、ハードディスク１７、ＲＡＭ１８、状態テーブル１９、及び画像メモリ２０で構成されている。
【００４９】
また、ホストコンピュータＰＣ１〜ＰＣ３は、アプリケーションに従って作成した印刷データをプリンタドライバによって印刷データ（ＰＤＬデータ）に変換し、プリンタ装置１１に送信する。プリンタ装置１１は、前述と同様、受信部１２において、ホストコンピュータＰＣ１〜ＰＣ３から送信された印刷データを受信すると、受信開始信号を制御部１３に送信する。受信部１３はホストコンピュータＰＣ１〜ＰＣ３から送信された印刷データを受信し、ハードディスク１７又はＲＡＭ１８に送信する。また、受信部１２は複数のホストコンピュータから送信される印刷データを同時に受信可能である。すなわち、前述の図２において説明した、例えば印刷データａ、ｂの同時受信が可能である。
【００５０】
制御部１３は受信部１２から受信開始信号を受信すると、受信部１２への印刷データ受信開始許可の応答を行った後、状態テーブル１９の全レコードを検索し、後述する各種制御を行なう。
【００５１】
図９は本実施形態２において使用する状態テーブル１９のデータ構成を説明する図である。本例で使用する状態テーブル１９は、前述の状態テーブル９と異なり、ホスト情報記憶エリア１９ａ、ＲＡＭバッファ状態記憶エリア１９ｂ、ＨＤＤバッファ状態記憶エリア１９ｃ、ＲＡＭアドレス記憶エリア１９ｄ、ＨＤＤファイル名記憶エリア１９ｅ、ＲＡＭデータサイズ記憶エリア１９ｆ、ＨＤＤデータサイズ記憶エリア１９ｇ、及びＲＩＰ状態記憶エリア１９ｈで構成され、対応するレコード番号のエリアに各情報が記憶される。
【００５２】
例えば、ホスト情報記憶エリア１９ａには印刷データを送信したホストコンピュータＰＣ１〜ＰＣ３の情報が記憶され、ＲＡＭバッファ状態記憶エリア１９ｂには印刷データがＲＡＭ１８に格納されたことを示す情報が記憶され、ＨＤＤバッファ状態記憶エリア１９ｃには印刷データがハードディスク１７に記憶されたことを示す情報が記憶される。また、ＲＡＭアドレス記憶エリア１９ｄにはＲＡＭ１８に格納される印刷データのアドレス情報が記憶される。
【００５３】
また、ＨＤＤファイル名記憶エリア１９ｅにはハードディスク１７に記憶される印刷データのファイル名が記憶され、ＲＡＭデータサイズ記憶エリア１９ｆにはＲＡＭ１８に格納されるファイルのデータサイズが記憶され、ＨＤＤデータサイズ記憶エリア１９ｇにはハードディスク１７に記憶されるファイルのデータサイズが記憶される。さらに、ＲＩＰ状態記憶エリア１９ｈにはＲＩＰ部１４の駆動状態が記憶され、例えばＲＩＰ部１４が駆動中であれば、「ＲＡＭ  ＲＩＰ中」又は「ＨＤＤ  ＲＩＰ中」の情報が記憶される。
【００５４】
尚、図９に示すように、状態テーブル１９の初期時においては、ホスト情報記憶エリア９ａは全て「空き」状態にリセットされ、ＲＡＭバッファ状態記憶エリア１９ｂは全て「データなし」状態にリセットされ、ＨＤＤバッファ状態記憶エリア１９ｃも全て「データなし」状態にリセットされ、ＲＡＭアドレス記憶エリア１９ｄも全て「なし」状態にリセットされ、ＨＤＤファイル名記憶エリア１９ｅも全て「なし」状態にリセットされ、ＲＡＭデータサイズ記憶エリア１９ｆは全て「−１」にリセットされ、ＨＤＤデータサイズ記憶エリア１９ｇも全て「−１」にリセットされ、ＲＩＰ状態記憶エリア１９ｅも全て「なし」状態にリセットされている。
【００５５】
以上の構成において、以下に本例の処理動作を説明する。
尚、本例の印刷処理動作を開始する際、前述の状態テーブル１９には既に図１０に示す情報が記憶されているものとする。例えば、レコード番号１のホスト情報記憶エリア１９ａには対応する印刷データがホストコンピュータＰＣ１から送信されたことを示す「ＰＣ１」の情報が記憶され、ＲＡＭバッファ状態記憶エリア１９ｂには当該印刷データが格納されていることを示す「データあり」の情報が記憶され、ＲＡＭアドレス記憶エリア１９ｄには当該印刷データが格納されたアドレスとして「0x8000A064」の情報が記憶され、ＲＡＭデータサイズ記憶エリア１９ｆには当該印刷データのサイズが「2478158」であることを示す情報が記憶されている。
【００５６】
したがって、状態テーブル１９のレコード番号１には、ホストコンピュータＰＣ１から送信された印刷データの情報は記憶され、またレコード番号１のＲＩＰ状態記憶エリア１９ｈには「ＲＡＭ  ＲＩＰ中」の情報が記憶されており、ＲＩＰ部１４が現在駆動中であり、ＲＡＭ１８に格納された印刷データがＲＩＰ部１４によって解析処理中であることが分かる。
【００５７】
同様に、レコード番号２のホスト情報記憶エリア９ａには対応する印刷データがホストコンピュータＰＣ２から送信されたことを示す「ＰＣ２」の情報が記憶され、ＨＤＤバッファ状態記憶エリア１９ｃには当該印刷データがハードディスク１７に記憶されていることを示す「データあり」の情報が記憶され、ＨＤＤファイル名記憶エリア１９ｅには当該印刷データのファイル名が「゛RCV00001゛」であることを示す情報が記憶されている。
【００５８】
尚、本例の処理を開始する時点では、状態テーブル１９の他のレコードは初期状態に設定されているものとする。
【００５９】
図１１は本例の受信部１２の処理動作を説明するフローチャートであり、図１２及び図１３は制御部１３の処理動作を説明するフローチャートであり、図１４はＲＩＰ部１４の処理動作を説明するフローチャートである。
【００６０】
受信部１２は上記図１１に示すフローチャートに従って、先ずネットワークに接続されたホストコンピュータＰＣ１〜ＰＣ３の何れかのコンピュータから印刷データを受信するか判断する（ステップ（以下、図１１においてＸで示す）１）。受信部１２はホストコンピュータＰＣ１〜ＰＣ３から印刷データが送信されるまで待ち（Ｘ１がＮＯ）、その後ホストコンピュータＰＣ１〜ＰＣ３の何れかのコンピュータから印刷データを受信すると（Ｘ１がＹＥＳ）、制御部１３に印刷データの受信開始を通知し（Ｘ２）、制御部１３から受信開始許可の応答を待つ（Ｘ３）。
【００６１】
尚、本実施形態の説明においても、図１０に示すように受信部１２にはホストコンピュータＰＣ１及びＰＣ２から既に印刷データが入力しており、新たな印刷データがホストコンピュータＰＣ３から入力するものとして説明する。
制御部１３は受信部１２から上記受信開始信号を受信すると、図１２に示すフローチャートに従って、先ず外部から通知があるか判断する（ステップ（以下、図１２においてＹで示す）１）。この場合、上記受信開始信号が受信部１２から出力されており（Ｙ１がＹＥＳ）、状態テーブル１９を検索し（Ｙ２）、ＲＡＭ１３の利用が可能であるか判断する（Ｙ３）。この判断は、前述と同様、図１０に示す状態テーブル１９のＲＡＭバッファ状態記憶エリア１９ｂを参照して行う。
【００６２】
図１０に示す例では、レコード番号１のＲＡＭバッファ状態記憶エリア１９ｂに「データあり」の情報が登録されており、前述のようにホストコンピュータＰＣ１から供給された印刷データが既にＲＡＭ１８に格納されている。
【００６３】
したがって、現在ＲＡＭ１８は利用中であり（Ｙ３がＮＯ）、この場合、ＨＤＤファイル名を生成し（Ｙ４）、状態テーブル１９の対応するエリアにファイル名の設定を行う（Ｙ５）。例えば、図１０に示す例では、レコード番号３のホスト情報記憶エリア１９ａに、ホストコンピュータＰＣ３に対応する「ＰＣ３」の情報を記憶し、ＨＤＤバッファ状態記憶エリア１９ｃに「データあり」の情報を記憶し、ＨＤＤファイル名記憶エリア１９ｅにファイル名「゛RCV00002゛」の情報を記憶する。そして、制御部１３は受信部１２に対してハードディスク１７への受信開始許可の応答を行う（Ｙ６）。
【００６４】
受信部１２では、上記制御部１３から受信開始許可の応答を受信すると（Ｘ３がＹＥＳ）、ＲＡＭ１８への受信開始許可であるか、又はハードディスク１７への受信開始許可であるか判断し、この場合ハードディスク１７への受信開始許可であり、ハードディスク１７の累積データ格納サイズの初期化を行う（Ｘ４）。
【００６５】
その後、受信部１２は受信データの判断を行い（Ｘ５）、最初のこの判断では受信データ、即ち印刷データがあり（Ｘ５がＹＥＳ）、受信データのバッファ切換え通知があるか判断する（Ｘ６）。ここで、受信データのバッファ切換え通知は、例えば印刷データをハードディスク１７に記憶している途中でＲＡＭ１８が空き状態になった場合、受信データのバッファ切換え通知が出力される。
【００６６】
ここで、上記受信データのバッファ切換え通知がなければ（Ｘ６がＮＯ）、印刷データをハードディスク１７に書き込む（Ｘ７）。また、ハードディスク１７の累積データ格納サイズの更新処理を行う（Ｘ８）。その後、上記処理を繰り返し（Ｘ５がＹＥＳ、Ｘ６がＮＯ、Ｘ７、Ｘ８）、印刷データをハードディスク１７に書き込み、ハードディスク１７へ書き込むべき印刷データの入力が無くなると（Ｘ５がＮＯ）、制御部１３に印刷データの受信完了を通知する（Ｘ９）。尚、上記処理は、この間受信データのバッファ切換え通知が無かった場合の処理である。
【００６７】
実際には制御部１３が同時に以下の制御も行なっており、ＲＡＭ１８が空き状態になる場合もある。すなわち、制御部１３は受信部１２に前述の受信開始許可の応答（Ｙ６）を行なった後、状態テーブル１９を検索し（Ｙ７）、ＲＩＰ部１４によるＲＩＰ処理が可能であるか判断する（Ｙ８）。この判断は、図１０に示す状態テーブル１９のＲＩＰ状態記憶エリア１９ｈを参照して行う。ここで、図１０に示す例では、レコード番号１のＲＩＰ状態記憶エリア１９ｈには「ＲＡＭ  ＲＩＰ中」の情報が登録されており（Ｙ８はＮＯ）、ＲＡＭ１８に記憶された印刷データのＲＩＰ処理が行われている。
【００６８】
尚、上記判断（Ｙ８）において、ＲＩＰ状態記憶エリア１９ｈに「ＲＡＭ  ＲＩＰ中」の情報が記憶されていない場合にも（Ｙ８はＹＥＳ）、ＲＡＭ１８にはデータが格納されており（Ｙ９がＹＥＳ）、状態テーブル１９のＲＩＰ状態記憶エリア１９ｈに「ＲＡＭ  ＲＩＰ中」の記憶を行い（Ｙ１０）、ＲＩＰ部１４にＲＡＭ１８に記憶されている印刷データのＲＩＰ処理の開始を通知する（Ｙ１１）。また、ＲＡＭ１８に印刷データが格納されていない場合でも（Ｙ９がＮＯ）、ハードディスク１７に印刷データが記憶されていれば、ＲＩＰ状態記憶エリア１９ｈに「ＨＤＤ  ＲＩＰ中」の記憶を行い（Ｙ３１）、当該印刷データのＲＩＰ処理の開始を通知する（Ｙ３２）。
【００６９】
ＲＩＰ部１４は図１４に示すフローチャートに従って、外部から通知があるか判断し（ステップ（以下、図１４においてＺで示す）１）、ＲＩＰ処理を開始する。上記例ではＲＡＭ８に記憶された印刷データのＲＩＰ処理を開始しており、先ず累積データ読出しサイズの初期化を行い（Ｚ２）、その後、未だＲＩＰデータがあるか判断する（Ｚ３）。
【００７０】
この場合、レコード番号１に登録されている印刷データがＲＡＭ１８に残っており（Ｚ３がＹＥＳ）、印刷データをＲＡＭ１８から読み出し、ＲＩＰ処理を行う（Ｚ４）。そして、累積データ読出しサイズの更新処理を行い（Ｚ５）、例えば１ページ分の画像データが完成したか判断し（Ｚ６）、１ページ分の画像データが完成していなければ（Ｚ６がＮＯ）、上記処理を繰り返す（Ｚ３〜Ｚ６）。
【００７１】
この処理によって順次画像メモリ２０には画像データが展開され、１ページ分の画像データが完成すると（Ｚ６がＹＥＳ）、転送部１５にデータ転送を通知する（Ｚ７）。その後、ＲＡＭ１８に残る印刷データを判断し（Ｚ３）、ＲＡＭ１８に残る印刷データが無くなると（Ｚ３がＮＯ）、制御部１３にＲＩＰ処理の完了を通知する（Ｚ８）。
【００７２】
一方、上記処理によって、ＲＡＭ１８に格納された印刷データが、ＲＡＭ１８から読み出され、ＲＡＭ１８に空きエリアが発生すると、前述のように受信部１２からハードディスク１７に記憶させていた印刷データをＲＡＭ１８の空きエリアに格納することができる。
【００７３】
そこで、制御部１３はＲＩＰ制御部１４から上記ＲＡＭ１８のＲＩＰ処理の完了通知を受信すると、図１２に示す処理Ｂを実行する（具体的には図１３に示す処理Ｂを実行する）。すなわち、状態テーブル１９を確認し（Ｙ１２）、ＲＡＭ１８のＲＩＰ処理完了の判断を行ない（Ｙ１３がＹＥＳ）、状態テーブル１９のレコード番号１に登録されていた情報を削除する（Ｙ１４）。尚、前述と同様、ＲＡＭ１８に印刷データが未だ残っている場合を考慮して、ＲＡＭ１８のＲＩＰ処理が完了していない場合にはＲＩＰ部１４にＲＩＰ処理の継続を通知する（Ｙ１３が未完了、Ｙ１３´）。
【００７４】
その後、ＲＩＰ処理が可能であるか判断し（Ｙ１５）、ＲＩＰ処理が可能であれば（Ｙ１５がＹＥＳ）、状態テーブル１９を検索し（Ｙ１６）、ＲＡＭ１８にデータがあれば（Ｙ１７がＹＥＳ）、対応する状態テーブル１９の設定を行ない（Ｙ１８）、ＲＩＰ部１４にＲＡＭ１８に格納された印刷データのＲＩＰ処理の開始を通知する（Ｙ１９）。
【００７５】
また、ＲＡＭ１８にデータがなければ（Ｙ１７がＮＯ）、ハードディスク１７にデータがあるか判断し（Ｙ２０）、ハードディスク１７にデータがあれば（Ｙ２０がＹＥＳ）、対応する状態テーブル１９の設定を行なう（Ｙ２１）。図１０に示す例では、次のレコード番号２にハードディスク１７に登録されたデータがあり、状態テーブル１９の設定が行なわれる。この場合、ＲＩＰ部１４にハードディスク１７に記憶された印刷データのＲＩＰ処理の開始を通知する（Ｙ２２）。
【００７６】
さらに、制御部１３は状態テーブル１９を検索し（Ｓ２３）、受信バッファの切り替えが可能であるか判断する（Ｓ２４）。この場合、既にＲＡＭ１８に格納されていた印刷データは読み出され、受信データバッファの切換えが可能である（Ｙ２４がＹＥＳ）。したがって、この場合状態テーブル１９の設定を行い（Ｙ２５）。状態テーブル１９の状態を前述の図１０から図１５に状態に設定する。すなわち、既に印刷処理が完了したレコード番号１のエリアにレコード番号２の情報を繰り上げて記憶する。また、レコード番号３の情報はレコード番号２のエリアに繰り上げて記憶する。したがって、レコード番号１にはホストコンピュータＰＣ２から送信され、ハードディスク１７に記憶されたファイル名「゛RCV00001゛」の印刷データの情報が記憶される。また、レコード番号２にはホストコンピュータＰＣ３から送信され、ハードディスク１７に記憶されたファイル名「゛RCV00002゛」の印刷データの情報が記憶される。
【００７７】
次に、制御部１３は受信部１２に上記受信データバッファの切換えを通知する（Ｙ２６）。すなわち、ＲＡＭ１８が空き状態になったので、ＲＡＭ１８への印刷データの格納が可能であり、受信データのバッファ切換え通知を受信部１２に行なう。
受信部１２はこの受信データのバッファ切換え通知を受信すると、例えば前述のホストコンピュータＰＣ３からの印刷データの受信が未だ継続中であれば、判断（Ｘ６）がＹＥＳとなり、それまで行っていたハードディスク１７への印刷データの受信処理を一旦停止する（Ｘ１０）。そして、制御部１３に受信完了通知を行い（Ｘ１１）、制御部１３はこの受信完了通知を受信すると状態テーブル１９の設定を行う（Ｙ２７）。
【００７８】
次に、受信部１２は印刷データの再開通知を制御部１３に通知する（Ｘ１２）。この通知により、制御部１３は状態テーブル１９を検索し（Ｙ２）、ＲＡＭ１３の利用が可能であると判断し（Ｙ３がＹＥＳ）、ＲＡＭ１８の領域を確保し（Ｙ２８）、状態テーブル１９の設定を行い（Ｙ２９）、受信部１２にＲＡＭ１８への受信開始許可を応答する（Ｙ３０）。
【００７９】
受信部１２は上記応答を受信すると（Ｘ３がＹＥＳ）、以後の受信データをＲＡＭ１８に書き込むためＲＡＭ１８の累積データ格納サイズの初期化処理を行い（Ｘ１４）、以後受信データをＲＡＭ１８に書き込む（Ｘ１５がＹＥＳ、Ｘ１６）。そして、累積データ格納サイズの更新処理を行い（Ｘ１７）、受信データが無くなると（Ｘ１５がＮＯ）、制御部１３に受信完了通知を行う（Ｘ１８）。
【００８０】
したがって、例えばホストコンピュータＰＣ３から当初ハードディスク１７に記憶されていた印刷データは、上記のように途中からＲＡＭ１８に変更され、以後ＲＡＭ１８に残りの印刷データが格納される。
【００８１】
以上のように本例によれば、印刷データを一旦ハードディスク１７に記憶する処理を開始した後、ＲＡＭ１８に格納された印刷データが、ＲＡＭ１８から読み出され、ＲＡＭ１８に空きエリアが発生すると、以後の印刷データをＲＡＭ１８の空きエリアに格納することができ、ＲＩＰ部１４に印刷データを送信する処理を高速に行うことができる。
【００８２】
以上の処理を行うことによって、例えばホストコンピュータＰＣ３から出力された印刷データはハードディスク１７及びＲＡＭ１８に格納された状態であり、以後制御部１３からのハードディスク１７に対するＲＩＰ処理の開始通知に基づき、ＲＩＰ処理が行われる。
【００８３】
尚、上記図１５に示す状態テーブル１９の状態では、現在レコード番号１に登録されたパーソナルコンピュータ（ＰＣ２）からの印刷データのＲＩＰ処理が行われており、累積データ読出しサイズの初期化し（Ｚ９）、ＲＩＰデータが有る間（Ｚ１０がＹＥＳ）、印刷データをハードディスク１７から読み出し、ＲＩＰ処理を行う（Ｚ１１）。そして、累積データ読出しサイズの更新処理を行い（Ｚ１２）、例えば１ページ分の画像データが完成したか判断し（Ｚ１３）、１ページ分の画像データが完成していなければ（Ｚ１３がＮＯ）、上記処理を繰り返す（Ｚ１０〜Ｚ１３）。
【００８４】
その後、１ページ分の画像データが完成すると（Ｚ１３がＹＥＳ）、転送部１５にデータ転送を通知し（Ｚ１４）、ハードディスク１７に残る印刷データを判断し（Ｚ１０）、ハードディスク１７に残る印刷データが無くなると（Ｚ１０がＮＯ）、制御部１３にＲＩＰ処理の完了を通知する（Ｚ１５）。
【００８５】
上記処理が完了すると、図１２に示す処理Ｃが実行される（具体的には図１３に示す処理Ｃを実行する）。すなわち、状態テーブル１９を確認し（Ｙ３３）、ハードディスク１７に印刷データがあるか判断する（Ｙ３４）。
【００８６】
本例の場合、前述のようにホストコンピュータ（ＰＣ３）からの印刷データをハードディスク１７とＲＡＭ１８に格納しており、ＲＩＰ部１４にハードディスク１７からのＲＩＰ処理の継続を通知する（Ｙ３５）。ＲＩＰ部１４はハードディスク１７から印刷データを読み出し、ホストコンピュータＰＣ３からハードディスク１７に格納された最初の印刷データを読み出し、前述と同様ＲＩＰ処理を行って転送部１５からプリンタエンジン１６に出力する（Ｚ９〜Ｚ１４）。
【００８７】
その後、上記ＲＩＰ処理が完了すると（Ｚ１０がＮＯ、Ｚ１５）、制御部１３はＲＩＰ部１４からのＲＩＰ処理完了通知に基づき、ハードディスク１７のＲＩＰ処理が完了したか判断し（Ｙ３４）、ハードディスク１７のＲＩＰ処理が完了していれば（Ｙ３４がＹＥＳ）、ＲＡＭ１８に印刷データがあるか判断する（Ｙ３６）。本例の場合、前述のようにホストコンピュータ（ＰＣ３）の残りの印刷データがＲＡＭ１８に格納されており、ＲＡＭ１８にも印刷データがある（Ｙ３６がＹＥＳ）。
【００８８】
したがって、制御部１３は状態テーブル１９の設定を行い（Ｙ３７）、ＲＩＰ部１４にＲＡＭ１８のＲＩＰ処理の指示を行う（Ｙ３８）。ＲＩＰ部１４は以後ＲＡＭ１８に残る印刷データのＲＩＰ処理を行い（Ｚ２〜Ｚ７）、ＲＡＭ１８のＲＩＰ処理を完了すると（Ｚ３がＹＥＳ）、制御部１３にＲＩＰ処理の完了通知を行う（Ｚ８）。
【００８９】
以上のように本例によれば、印刷データを一旦ハードディスク１７に記憶する処理を開始した後、ＲＡＭ１８に格納された印刷データのＲＩＰ処理が完了し、ＲＡＭ１８が空き状態になると、以後の印刷データをＲＡＭ１８の空きエリアに格納することができ、ＲＩＰ処理等において処理を高速に行うことができ、迅速な印刷処理が可能となる。
【００９０】
（実施形態３）
次に、本発明の実施形態３について説明する。
図１６は本実施形態のプリンタ装置のシステム構成を示す図である。本実施形態のプリンタ装置２１もＬＡＮ等のネットワークを介して、例えば３台のホストコンピュータＰＣ１〜ＰＣ３に接続されている。プリンタ装置２１は受信部２２、制御部２３、ＲＩＰ部２４、転送部２５、プリンタエンジン２６、ハードディスク２７、ＲＡＭ２８、状態テーブル２９、及び画像メモリ３０で構成され、更に表示操作部３１を備え、表示操作部３１は表示部３１ａと操作ボタン３１ｂで構成されている。
【００９１】
前述と同様、ホストコンピュータＰＣ１〜ＰＣ３は、アプリケーションに従って作成した印刷データをプリンタドライバによって印刷データ（ＰＤＬデータ）に変換し、プリンタ装置２１に送信する。プリンタ装置２１は、受信部２２において、ホストコンピュータＰＣ１〜ＰＣ３から送信された印刷データを受信すると、受信開始信号を制御部２３に送信する。受信部２３はホストコンピュータＰＣ１〜ＰＣ３から送信された印刷データを受信し、ハードディスク２７又はＲＡＭ２８に送信する。また、受信部２２は複数のホストコンピュータから送信される印刷データを同時に受信可能である。
【００９２】
制御部２３は受信部２２から受信開始信号を受信すると、受信部２２への印刷データ受信開始許可の応答を行った後、状態テーブル２９の全レコードを検索し、後述する各種制御を行なう。
【００９３】
図１７は状態テーブル２９のデータ構成を示す図である。状態テーブル２９は、ホストコンピュータＰＣ１〜ＰＣ３からの印刷データの情報を登録する。本例で使用する状態テーブル２９は、前述の実施形態２と同様、ホスト情報記憶エリア２９ａ、ＲＡＭバッファ状態記憶エリア２９ｂ、ＨＤＤバッファ状態記憶エリア２９ｃ、ＲＡＭアドレス記憶エリア２９ｄ、ＨＤＤファイル名記憶エリア２９ｅ、ＲＡＭデータサイズ記憶エリア２９ｆ、ＨＤＤデータサイズ記憶エリア２９ｇ、及びＲＩＰ状態記憶エリア２９ｈで構成され、印刷データに対応する情報が記憶される。
【００９４】
例えば、ホスト情報記憶エリア２９ａには印刷データを送信したホストコンピュータＰＣ１〜ＰＣ３の情報が記憶され、ＲＡＭバッファ状態記憶エリア２９ｂにはＲＡＭ２８に印刷データが格納されているか否かの情報が記憶され、ＨＤＤバッファ状態記憶エリア２９ｃにはハードディスク２７に印刷データが格納されているか否かの情報が記憶される。また、ＲＡＭアドレス記憶エリア２９ｄにはＲＡＭ２８に格納される印刷データのアドレス情報が記憶される。
【００９５】
また、ＨＤＤファイル名記憶エリア２９ｅにはハードディスク２７に記憶される印刷データのファイル名が記憶され、ＲＡＭデータサイズ記憶エリア２９ｆにはＲＡＭ２８に格納されるファイルのデータサイズが記憶され、ＨＤＤデータサイズ記憶エリア２９ｇにはハードディスク２７に記憶されるファイルのデータサイズが記憶される。さらに、ＲＩＰ状態記憶エリア２９ｈにはＲＩＰ部２４の駆動状態が登録され、例えばＲＩＰ部２４が駆動中であれば、「ＲＡＭ  ＲＩＰ中」又は「ＨＤＤ  ＲＩＰ中」の情報が登録される。
【００９６】
尚、図１７に示すように、状態テーブル２９の初期時においては、前述の図９と同様ホスト情報記憶エリア２９ａは全て「空き」状態にリセットされ、ＲＡＭバッファ状態記憶エリア２９ｂは全て「データなし」状態にリセットされ、ＨＤＤバッファ状態記憶エリア２９ｃも全て「データなし」状態にリセットされ、ＲＡＭアドレス記憶エリア２９ｄも全て「なし」状態にリセットされ、ＨＤＤファイル名記憶エリア２９ｅも全て「なし」状態にリセットされ、ＲＡＭデータサイズ記憶エリア２９ｆは全て「−１」にリセットされ、ＨＤＤデータサイズ記憶エリア２９ｇも全て「−１」にリセットされ、ＲＩＰ状態記憶エリア２９ｅも全て「なし」状態にリセットされている。
【００９７】
以上の構成において、以下に本例の処理動作を説明する。
尚、本例の印刷処理動作を開始する際、前述の状態テーブル２９には既に図１８に示す情報が登録されているものとする。例えば、レコード番号１のホスト情報記憶エリア２９ａには印刷データがホストコンピュータＰＣ１から送信されたことを示す「ＰＣ１」の情報が記憶され、ＲＡＭバッファ状態記憶エリア２９ｂにはＲＡＭ２８に当該印刷データが格納されていることを示す「データあり」の情報が登録され、ＲＡＭアドレス記憶エリア２９ｄには当該印刷データが格納されたアドレスが「0x8000A064」であることを示す情報が記憶されている。
【００９８】
したがって、状態テーブル２９のレコード番号１には、ホストコンピュータＰＣ１から送信された印刷データの情報が記憶され、またレコード番号１のＲＩＰ状態記憶エリア２９ｈには「ＲＡＭ  ＲＩＰ中」の情報が記憶されており、ＲＩＰ部２４がＲＡＭ２８に格納された印刷データの解析処理を行なっていることが分る。
【００９９】
同様に、レコード番号２のホスト情報記憶エリア２９ａには印刷データがホストコンピュータＰＣ２から送信されたことを示す「ＰＣ２」の情報が記憶され、ＨＤＤバッファ状態記憶エリア２９ｃには当該印刷データがハードディスク２７に記憶されていることを示す「データあり」の情報が記憶され、ＨＤＤファイル名記憶エリア２９ｅには当該印刷データのファイル名が「゛RCV00001゛」であることを示す情報が記憶されている。
【０１００】
尚、本例の処理を開始する時点では、状態テーブル２９の他のレコードは初期状態に設定されているものとする。
【０１０１】
図１９は本例の受信部２２の処理動作を説明するフローチャートであり、図２０乃至図２２は制御部２３の処理動作を説明するフローチャートであり、図２３はＲＩＰ部２４の処理動作を説明するフローチャートである。
【０１０２】
前述と同様、先ず受信部２２は図１９に示すフローチャートに従って、ネットワークに接続されたホストコンピュータＰＣ１〜ＰＣ３の何れかのコンピュータから印刷データを受信するか判断する（ステップ（以下、図１９においてＵで示す）１）。そして、受信部２２はホストコンピュータＰＣ１〜ＰＣ３から印刷データを受信するまで待ち（Ｕ１がＮＯ）、その後ホストコンピュータＰＣ１〜ＰＣ３の何れかのコンピュータから印刷データを受信すると（Ｕ１がＹＥＳ）、制御部２３に印刷データの受信開始を通知し（Ｕ２）、制御部２３から受信開始許可の応答を待つ（Ｕ３）。
【０１０３】
尚、本実施形態の説明においても、図１８に示すように受信部２２にはホストコンピュータＰＣ１及びＰＣ２から既に印刷データが入力しており、新たな印刷データがホストコンピュータＰＣ３から入力するものとして説明する。
制御部２３は受信部２２から上記受信開始信号を受信すると、図２０に示すフローチャートに従って処理を開始し、先ず外部から通知があるか判断する（ステップ（以下、図２０においてＶで示す）１）。この場合、上記受信開始信号が受信部２２から出力されており（Ｖ１がＹＥＳ）、状態テーブル２９を検索し（Ｖ２）、ＲＡＭ２３の利用が可能であるか判断する（Ｖ３）。この判断は、図１８に示す状態テーブル２９のＲＡＭバッファ状態記憶エリア２９ｂを参照して行う。
【０１０４】
図１８に示す例では、レコード番号１のＲＡＭバッファ状態記憶エリア２９ｂに「データあり」の情報が記憶されており、前述のようにホストコンピュータＰＣ１から供給された印刷データが既にＲＡＭ１８に格納されている。
【０１０５】
したがって、現在ＲＡＭ２８は利用中であり（Ｖ３がＮＯ）、この場合、ＨＤＤファイル名を生成し（Ｖ４）、状態テーブル２９の対応するエリアにファイル名の設定を行う（Ｖ５）。例えば、図１８に示す例では、レコード番号３のホスト情報記憶エリア２９ａに、ホストコンピュータＰＣ３に対応する「ＰＣ３」を記憶し、ＨＤＤバッファ状態記憶エリア２９ｃに「データあり」を記憶し、ＨＤＤファイル名記憶エリア２９ｅにファイル名「゛RCV00002゛」の情報を記憶する。そして、制御部２３は受信部２２に対してハードディスク２７への受信開始許可の応答を行う（Ｖ６）。
【０１０６】
受信部２２では、上記制御部２３から受信開始許可の応答を受信すると（Ｕ３がＹＥＳ）、ハードディスク２７への受信開始許可であるか、又はＲＡＭ２８への受信開始許可であるか判断し、この場合ハードディスク２７への受信開始許可であり、累積データ格納サイズの初期化を行う（Ｕ４）。
【０１０７】
その後、受信部２２は受信データの判断を行い（Ｕ５）、更に受信データのバッファ切換え通知があるか判断する（Ｕ６）。ここで、受信データのバッファ切換え通知は、本例の場合、例えば後述する割り込み処理の指示があった場合に出力される。
【０１０８】
ここで、上記受信データのバッファ切換え通知がなければ（Ｕ６がＮＯ）、印刷データをハードディスク２７に書き込み（Ｕ７）、ハードディスク２７の累積データ格納サイズの更新処理を行う（Ｕ８）。その後、上記処理を繰り返し（Ｕ５がＹＥＳ、Ｕ６がＮＯ、Ｕ７、Ｕ８）、ハードディスク２７に印刷データを書き込み、受信部２２への印刷データの入力が完了すると（Ｕ５がＮＯ）、制御部２３に印刷データの受信完了信号を出力する（Ｕ９）。制御部２３では受信完了通知を受信すると（Ｖ１２）、状態テーブル２９の設定を行う。
尚、上記処理はこの間、受信データのバッファ切換え通知が無かった場合、即ち割り込み処理の指示が無かった場合の処理である。
【０１０９】
一方、ホストコンピュータＰＣ１からＲＡＭ２８への印刷データの入力処理も同時に行われており、この入力処理は、受信開始許可の応答を受信した際、ＲＡＭ２８の累積データ格納サイズの初期化を行い（Ｕ１０）、受信データを判断し（Ｕ１１）、更に受信データのバッファ切換え通知があるか判断し（Ｕ１２）、ＲＡＭ２８に印刷データを書き込んでいる状態である（Ｕ１３）。また、ＲＡＭ２８の累積データ格納サイズの更新処理を行い（Ｕ１４）、上記処理を繰り返し（Ｕ１１がＹＥＳ、Ｕ１２がＮＯ、Ｕ１３、Ｕ１４）、ＲＡＭ２８に印刷データを書き込み、ＲＡＭ２８への印刷データの入力が完了すると（Ｕ１１がＮＯ）、制御部２３に印刷データの受信完了信号を出力する（Ｕ１５）。尚、この処理も、この間、受信データのバッファ切換え通知が無かった場合の処理である。
【０１１０】
さらに、制御部２３は受信部２２に前述の受信開始許可の応答（Ｖ６）を行なった後、状態テーブル２９を検索し（Ｖ７）、ＲＩＰ部２４によるＲＩＰ処理が可能であるか判断する（Ｖ８）。この判断は、前述と同様図１８に示す状態テーブル２９のＲＩＰ状態記憶エリア２９ｈを参照して行う。ここで、図１８に示す例では、レコード番号１のＲＩＰ状態記憶エリア１９ｈには「ＲＡＭ  ＲＩＰ中」の情報が登録されており（Ｖ８はＮＯ）、ＲＡＭ２８に記憶された印刷データのＲＩＰ処理が行われている。
【０１１１】
尚、上記判断（Ｖ８）において、ＲＩＰ状態記憶エリア２９ｈに「ＲＡＭ  ＲＩＰ中」の情報が記憶されていない場合（Ｖ８はＹＥＳ）、ＲＡＭ２８にはデータが格納されており（Ｖ９がＹＥＳ）、状態テーブル２９のＲＩＰ状態記憶エリア２９ｈに「ＲＡＭ  ＲＩＰ中」の記憶を行い（Ｖ１０）、ＲＩＰ部２４にＲＩＰ処理の開始を通知する（Ｖ１１）。また、ＲＡＭ２８に印刷データが格納されていない場合でも（Ｖ９がＮＯ）、ハードディスク２７に印刷データが記憶されていれば、ＲＩＰ状態記憶エリア２９ｈに「ＨＤＤ  ＲＩＰ中」の記憶を行い（Ｖ１３）、当該印刷データのＲＩＰ処理の開始を通知する（Ｖ１４）。
【０１１２】
ＲＩＰ部２４は図２３に示すフローチャートに従ってＲＩＰ処理を行い、外部から通知があるか判断し（ステップ（以下、図２３において、Ｗで示す）１）、ＲＩＰ処理を開始する。先ず、累積データ読出しサイズの初期化を行う（Ｗ２）。すなわち、図１８に示す例では、「ＲＡＭ  ＲＩＰ中」であり、ＲＡＭ２８の累積データ読出しサイズの初期化を行う。
【０１１３】
その後、未だＲＩＰデータがあるか判断し（Ｗ３）、印刷データをＲＡＭ２８から読み出し、ＲＩＰ処理を行う（Ｗ４）。そして、累積データ読出しサイズの更新処理を行い（Ｗ５）、例えば１ページ分の画像データが完成したか判断し（Ｗ６）、１ページ分の画像データが完成していなければ（Ｗ６がＮＯ）、上記処理を繰り返す（Ｗ３〜Ｗ６）。
【０１１４】
この処理によって順次画像メモリ３０には画像データが展開され、１ページ分の画像データが完成すると（Ｗ６がＹＥＳ）、転送部２５にデータ転送を通知する（Ｗ７）。その後、ＲＡＭ２８からのＲＩＰ処理の停止通知があるか判断する（Ｗ８）。このＲＩＰ処理の停止通知は、前述と同様、割り込み処理の指示があった場合に行なわれる通知である。したがって、ＲＩＰ処理の停止通知が無ければ（Ｗ８がＮＯ）、そのままＲＩＰ処理を継続し、ＲＡＭ２８に残る印刷データが無くなると（Ｗ３がＹＥＳ）、制御部２３にＲＩＰ処理の完了を通知する（Ｗ９）。
【０１１５】
一方、表示操作部３１の表示部３１ａには前述の図１８に示す状態テーブル２９の各レコード番号に対応する印刷データの情報が表示されている。ここで、利用者が表示部３１ａの表示を確認し、割り込み印刷を指示すべく操作ボタン３１ｂを操作すると、この操作信号は表示操作部３１から制御部２３に入力する。
【０１１６】
例えば、割り込み印刷の指示により、レコード番号３に登録された情報の印刷データを先に印刷させる場合、制御部２３は優先順位変更処理を行なう（Ｖ１がＹＥＳ、Ｖ１５）。そして、状態テーブル２９を設定し（Ｖ１６）、状態テーブル２９のレコード情報を並べ代える。
【０１１７】
図２４は状態テーブル２９の状態図であり、この処理を説明する図である。上記の割り込み印刷の指示があり、例えばレコード番号３の情報に対応する印刷データを割り込み処理により先に印刷出力する場合、レコード番号３に記憶されていた情報をレコード番号１のエリアに移動し、レコード番号１に記憶されていた情報をレコード番号２のエリアに移動する。また、レコード番号２に記憶されていた情報をレコード番号３のエリアに移動する。
【０１１８】
次に、ＲＩＰ部２４にＲＩＰ処理の停止を通知し（Ｖ１７）、状態テーブル２９の設定を行う（Ｖ１８）。この処理により、図２４に示すレコード番号２のＲＩＰ状態記憶エリア１９ｈには「ＲＡＭ  ＲＩＰ停止中」の設定が行われる。
【０１１９】
ＲＩＰ部２４は上記制御部２３からのＲＩＰ処理の停止通知に基づいてＲＩＰ処理を停止する（Ｗ８がＹＥＳ、Ｗ１０）。そして、制御部２３から後に出力されるＲＩＰ処理の再開通知を待つ（Ｗ１１）。
【０１２０】
次に、制御部２３は受信部２２に受信バッファの切換え通知を行う（Ｖ１９）。すなわち、前述の処理（Ｕ１０〜Ｕ１４）によってＲＡＭ２８に記憶していたホストコンピュータＰＣ１からの印刷データのバッファ切換え通知を受信部２２に対して行う。そして、状態テーブル２９の設定を行う（Ｖ２０）。
【０１２１】
受信部２２は上記制御部２３からの受信データのバッファ切換え通知によって印刷データの受信処理を一旦停止し（Ｕ１２がＹＥＳ、Ｕ１６）、制御部２３に受信完了を通知し（Ｕ１７）、再度印刷データの受信処理を再開し（Ｕ１８）、ハードディスク２７の累積データ格納サイズの初期化処理を行う（Ｕ１９）。
【０１２２】
また、制御部１３は受信部２２から上記受信処理の再開通知を受信すると（Ｖ１がＹＥＳ）、状態テーブル２９を検索し、ＲＡＭ２３の利用が可能であるか判断し（Ｖ３）、この場合、それまでＲＡＭ２８に格納していたホストコンピュータＰＣ１からの印刷データをハードディスク２７に記憶するので（Ｖ３がＮＯ）、ＨＤＤファイル名を生成し（Ｖ４）、状態テーブル２９の対応するエリアにファイル名の設定を行う（Ｖ５）。例えば、図２４に示す例では、レコード番号２のＨＤＤファイル名記憶エリア１９ｅに、例えばファイル名「゛RCV00003゛」の情報を記憶する。そして、制御部２３は受信部２２に対してハードディスク２７への受信開始許可の応答を行う（Ｖ６）。
したがって、以後ホストコンピュータＰＣ１からの印刷データはファイル名「゛RCV00003゛」としてハードディスク２７に記憶される。 
【０１２３】
さらに、制御部２３は受信部２２に対して、ホストコンピュータＰＣ３から入力している印刷データの受信バッファの切換え通知を行う（Ｖ２１）。すなわち、前述の処理（Ｕ４〜Ｕ８）によってハードディスク２７に記憶していた印刷データのバッファ切換え通知を受信部２２に対して行う。そして、状態テーブル２９の設定を行い（Ｖ２２）、ＲＩＰ部２４にＲＩＰ処理開始の通知を行う（Ｖ２３）。
【０１２４】
受信部２２は上記制御部２３からの受信データのバッファ切換え通知によって印刷データの受信処理を一旦停止し（Ｕ６がＹＥＳ、Ｕ２０）、制御部２９に受信完了を通知し（Ｕ２１）、再度印刷データの受信処理を再開し（Ｕ２２）、ＲＡＭ２８の累積データ格納サイズの初期化処理を行う（Ｕ２３）。
【０１２５】
制御部１３は受信部２２から受信処理の再開通知を受信すると（Ｖ１がＹＥＳ）、状態テーブル２９を検索し、ＲＡＭ２３の利用が可能であるか判断し（Ｖ３）、この場合、ＲＡＭ２８が利用可能であり（Ｖ３がＹＥＳ）、ＲＡＭ２８の領域を確保し（Ｖ２４）、状態テーブル２９の設定を行い（Ｖ２５）、受信部２２にＲＡＭ２８への受信開始許可を応答する（Ｖ２６）。
【０１２６】
受信部２２は、以後ホストコンピュータＰＣ３からの印刷データをＲＡＭ２８に格納し（Ｕ１１〜Ｕ１４）、印刷データが無くなると（Ｕ１１がＮＯ）、制御部２３に受信完了通知を行う（Ｕ１５）。
【０１２７】
上記処理によって、ハードディスク２７に記憶されていた、例えばホストコンピュータＰＣ３からの印刷データは、割り込み処理の指示によって以後ＲＡＭ２８に記憶され、割り込み処理の指示前にＲＡＭ２８に格納されていたホストコンピュータＰＣ１からの印刷データは以後ハードディスク２７に記憶される。したがって、割り込み処理の指示が行われた場合でも、迅速に互いの印刷データの格納先を切り換えて、入力する印刷データを対応するハードディスク２７又はＲＡＭ２８に記憶させることができる。
【０１２８】
尚、この場合、割り込み処理の指示前にＲＡＭ２８に格納されていたデータのＲＩＰ処理は中断した状態であり、先ず割り込み処理が指示された印刷データを先に印刷出力するため、ＲＩＰ処理を行う。
【０１２９】
したがって、以後ＲＩＰ部２４によるＲＩＰ処理は、先ず割り込み処理の指示が行われたホストコンピュータＰＣ３からの印刷データに対して行い、制御部２３からのＲＩＰ部２４へのＲＩＰ処理開始指示に基づき（Ｖ２３）、ＲＩＰ部２４はハードディスク２７のＲＩＰ処理を開始する。
【０１３０】
先ず、ハードディスク２７に記憶しているホストコンピュータＰＣ３からの印刷データを読み出すため、累積データ読出しサイズの初期化し（Ｗ１２）、ＲＩＰデータが有る間（Ｗ１３がＹＥＳ）、印刷データをハードディスク２７から読み出し、ＲＩＰ処理を行う（Ｗ１４）。そして、累積データ読出しサイズの更新処理を行い（Ｗ１５）、例えば１ページ分の画像データが完成したか判断し（Ｗ１６）、１ページ分の画像データが完成していなければ（Ｗ１６がＮＯ）、上記処理を繰り返す（Ｗ１３〜Ｗ１６）。
【０１３１】
その後、１ページ分の画像データが完成すると（Ｗ１６がＹＥＳ）、転送部２５にデータ転送を通知し（Ｗ１７）、ハードディスク２７からの印刷データのＲＩＰ処理の停止通知があるまで上記処理を繰り返す（Ｗ１３〜Ｗ１８）。その後、ハードディスク２７に残る印刷データを判断し（Ｗ１３）、ハードディスク２７に残る印刷データが無くなると（Ｗ１３がＮＯ）、制御部２３にハードディスク２７に対するＲＩＰ処理の完了を通知する（Ｗ２１）。
【０１３２】
制御部２３ではハードディスク２７に対するＲＩＰ処理の完了通知を受信すると図２０に示す処理Ｊを実行する（具体的には、図２１に示す処理Ｊを実行する）。すなわち、状態テーブル２９を確認し（Ｖ２７）、上記ハードディスク２７に対するＲＩＰ処理完了の判断を行うと（Ｖ２８が完了）、更にＲＡＭ２８に印刷データがあるか判断する（Ｖ２９）。本例の場合、前述のようにホストコンピュータＰＣ３からの印刷データをハードディスク２７に記憶すると共に、ＲＡＭ２８にも印刷データを切り換えて格納しており、ＲＡＭ２８にも印刷データが存在する（Ｖ２９がＹＥＳ）。尚、この場合にも、ハードディスク２７に印刷データが未だ残っている場合を考慮して、ハードディスク２７にデータが残っている場合にはＲＩＰ部２４にＲＩＰ処理の継続を通知する（Ｖ２８がＹＥＳ、Ｖ２８´）。
【０１３３】
したがって、次に制御部２３は状態テーブル２９の設定を行い（Ｖ３０）、ＲＩＰ部２４にＲＡＭ２８のＲＩＰ処理の指示を行う（Ｖ３１）。ＲＩＰ部２４は以後ＲＡＭ２８に残るホストコンピュータＰＣ３からの印刷データのＲＩＰ処理を行い（Ｗ２〜Ｗ９）、ＲＡＭ２８のＲＩＰ処理を完了すると制御部２３にＲＩＰ処理の完了通知を行う（Ｗ９）。以上の処理によってホストコンピュータＰＣ３からの印刷データの割り込み処理に基づくＲＩＰ処理が完了する。
【０１３４】
制御部２３は上記ＲＩＰ処理の完了に基づいて処理Ｈに移行し、図２１に示す状態テーブル２９を確認し（Ｖ３２）、上記ＲＡＭ２８に対するＲＩＰ処理の完了の判断を行うと（Ｖ３３が完了）、更にハードディスク２７に印刷データがあるか判断する（Ｖ３４）。本例の場合、前述のように割り込み処理の指示前にレコード番号１に登録されたホストコンピュータＰＣ１からの印刷データがＲＡＭ２８に残っており（Ｖ３４がＮＯ）、処理Ｌに移行して、図２２に示すフローチャートの処理を行う。尚、ハードディスク２７に印刷データが残っている場合には（Ｖ３４がＹＥＳ）、状態テーブル２９の設定を行い（Ｖ３５）、ＲＩＰ部２４にＲＩＰ処理の開始を通知する（Ｖ３６）。
【０１３５】
先ず、制御部２３は割り込み処理の指示に従って処理したレコード番号１のホストコンピュータＰＣ３からの印刷データに関する登録情報を削除する（Ｖ３７）。次に、状態テーブル２９を確認し（Ｖ３８）、ＲＩＰ状態が「ＲＡＭ  ＲＩＰ停止中」になっているレコードがあるか判断する（Ｖ３９）。図２４に示す例では、レコード番号２のＲＩＰ状態記憶エリア１９ｈに「ＲＡＭ  ＲＩＰ停止中」のレコードがあり（Ｖ３９がＹＥＳ）、状態テーブル２９の設定を行い（Ｖ４０）、ＲＩＰ部２４に処理再開通知を行う（Ｖ４１）。
【０１３６】
次に、ＲＩＰ処理が可能であるか判断し（Ｖ４２）、状態テーブル２９を検索すると（Ｖ４３）、前述のようにレコード番号１のホストコンピュータＰＣ３からの印刷データに関する情報が既に削除されており、ＲＩＰ処理は可能である。したがって、ＲＡＭ２８に印刷データがあることを確認して（Ｖ４４がＹＥＳ）、対応する状態テーブル２９の設定を行ない（Ｖ４５）、ＲＡＭ２８に格納されたホストコンピュータＰＣ１からの残りの印刷データのＲＩＰ処理の開始を通知する（Ｖ４６）。
【０１３７】
ＲＩＰ部２４では上記ＲＩＰ処理の再開通知に基づいて（Ｗ１１がＹＥＳ）、以後ホストコンピュータＰＣ１からの残りの印刷データのＲＩＰ処理を再開し（Ｗ３〜Ｗ８）、ＲＩＰ処理が完了すると（Ｗ３がＹＥＳ）、制御部２３にＲＡＭ２８に対するＲＩＰ処理の完了通知を行う（Ｗ９）。
【０１３８】
尚、制御部２３はその後、状態テーブル２９を検索し（Ｖ４７）、受信データのバッファ切換えが可能か否かの判断を行い（Ｖ４８）、例えば更なる割り込み処理の指示があると（Ｖ４８がＹＥＳ）、状態テーブル２９の設定を行い（Ｖ４９）、受信部２２に受信データのバッファ切換え通知を行う（Ｖ５０）。
【０１３９】
尚、本実施形態の説明では、ＲＩＰ部２４がＲＡＭ２８に格納されたホストコンピュータＰＣ１からの印刷データのＲＩＰ処理中に割り込み処理の指示が行われたため、前述のようにＲＡＭ２８に格納された印刷データのＲＩＰ処理を一旦停止し（Ｗ８がＹＥＳ、Ｗ１０）、上記割り込み処理を行った。しかし、例えばＲＩＰ部２４がハードディスク２７に記憶されていた印刷データのＲＩＰ処理中に割り込み処理の指示が行われた場合には、ハードディスク２７からの印刷データのＲＩＰ処理を一旦停止し（Ｗ１８がＹＥＳ、Ｗ１９）、割り込み処理の指示があったレコードの印刷データの印刷処理を先に行った後、制御部２３は以下の処理を行う。
【０１４０】
すなわち、制御部２３は「ＨＤＤ  ＲＩＰ停止中」のレコードがあると判断し（Ｖ５１がＹＥＳ）、状態テーブル２９の設定を行い（Ｖ５２）、ＲＩＰ部２４に処理再開通知を行う（Ｖ５３）。その後、ＲＩＰ処理が可能であるか判断し（Ｖ４２）、状態テーブル２９を検索し（Ｖ４３）、この場合ハードディスク２７に印刷データが残っているので（Ｖ５４がＹＥＳ）、状態テーブル２９の設定を行い（Ｖ５５）、ＲＩＰ部２４に処理開始通知を行う（Ｖ５６）。
【０１４１】
ＲＩＰ部２４では上記ＲＩＰ処理の再開通知に基づいて（Ｗ２０がＹＥＳ）、以後ハードディスク２７に残る印刷データのＲＩＰ処理を再開し（Ｗ１３〜Ｗ１９）、ＲＩＰ処理が完了すると（Ｗ１３がＹＥＳ）、制御部２３にＲＡＭ２８に対するＲＩＰ処理の完了通知を行う（Ｗ２１）。
【０１４２】
以上のように処理することによって、ハードディスク２７又はＲＡＭ２８への印刷データの受信処理中、割り込み処理の指示があった場合でも、直ちに印刷データの割り込み処理の指示に対する状態テーブル２９の組み換え処理を行い、以後割り込み処理の指示があった印刷データを先に印刷出力し、その後のＲＩＰ処理を一時停止した印刷データの印刷処理を行い、割り込み処理の指示に対して迅速、かつ効率よく印刷処理を行うことができる。
【０１４３】
尚、上記実施形態１乃至３で使用するＲＡＭ８、１８、２８は、固定サイズのリングバッファとしてもよく、またリングバッファでなく、例えばダブルバッファなど、他のバッファ方式を採用することもできる。
【０１４４】
また、上記実施形態１乃至３の説明では、受信バッファとして、記憶容量は小さいがデータアクセス速度が早いＲＡＭ８、１８、２８を使用し、記憶容量は大きいがデータアクセス速度が遅いハードディスク７、１７、２７を使用したが、相対的に記憶容量は小さいが相対的にデータアクセス速度が早い受信バッファと、相対的に記憶容量は大きいが相対的にデータアクセス速度が遅い受信バッファの組み合わせであれば、どのようなデバイスでも使用することができる。
【０１４５】
また、上記実施形態１乃至３の説明では、ＲＡＭ８、１８、２８を単一として説明したが、利用可能なＲＡＭサイズに応じて、ＲＡＭを複数使用してもよい。
【０１４６】
さらに、状態テーブル９、１９、２９内の各レコードの制御方法として、テーブル上位（レコード番号の小さい方）を優先する制御としたが、別途、レコード毎の優先順位を管理するようしてもよい。また、状態テーブル９、１９、２９のレコード数は５レコードとしたが、もっと大きいレコード数を使用してもよい。
【０１４７】
さらに、実施形態３の説明において、表示操作部３１は一定時間間隔で状態テーブルを監視してもよく、又は制御部２３が状態テーブルを変更した際、表示操作部３１に通知を行い、表示操作部３１はその通知により表示を行う構成としてもよい。
【０１４８】
また、実施形態３の説明において、ホスト情報以外の情報、例えばユーザ名や、印刷日時等の情報も状態テーブル２９で管理し、これらの情報を表示操作部３１に表示するようにしてもよい。
【０１４９】
また、実施形態３の説明において、表示操作部３１に表示されているホスト情報の印刷を行う優先順位を変更する操作に、操作ボタン３１ｂを用いるものとしたが、操作ボタン３１ｂでなく、タッチパネル式のデバイスでもよく、また音声入力など、別の入力デバイスを使用する構成としてもよい。
【０１５０】
また、実施形態３の説明において、ボタン操作で指定されたホスト情報に対応するレコードの印刷を行う優先順位を最優先に変更するものとしたが、優先順位の変更は最優先にするものだけでなく、他の優先順位の変更であってもよい。
【０１５１】
本発明はいくつかの実施形態を説明したが、本発明は特許請求の範囲に記載された発明とその均等の範囲に含まれる。以下、本件特許出願の出願当初の特許請求の範囲に記載された発明を付記する。
【０１５２】
付記１
複数のホスト機器から送信される印刷データを受信し、該印刷データに応じて出力を行う印刷装置において、
受信された印刷データを記憶する第１の記憶装置と、
データアクセス速度が前記第１の記憶装置より遅い第２の記憶装置と、
前記複数のホスト機器から送信される印刷データを同時に受信する受信装置と、
前記第１の記憶装置が利用可能であるか否かを判断する判断装置と、
前記第１の記憶装置が利用可能であると判断した場合、前記第１の記憶装置に前記印刷データを格納し、他のホスト機器から印刷データの入力により前記第１の記憶装置が利用可能でないと判断した場合、前記第２の記憶装置に前記印刷データを記憶する記憶処理制御装置と、
を有することを特徴とする印刷装置。
【０１５３】
付記２
複数のホスト機器から送信される印刷データを受信し、該印刷データに応じて出力を行う印刷装置において、
受信された印刷データを記憶する第１の記憶装置と、
データアクセス速度が前記第１の記憶装置より遅い第２の記憶装置と、
前記複数のホスト機器から送信される印刷データを同時に受信する受信装置と、
前記第１の記憶装置が利用可能であるか否かを判断する判断装置と、
前記第１の記憶装置が利用可能であると判断した場合、前記第１の記憶装置に前記印刷データを格納し、他のホスト機器から印刷データの入力により前記第１の記憶装置が利用可能でないと判断した場合、前記第２の記憶装置に前記印刷データを記憶する記憶処理制御装置と、
前記第１の記憶装置が利用可能でない状態から利用可能である状態に変化したことを判断し、前記第２の記憶装置への印刷データを格納している途中において、第１の記憶装置が利用可能でない状態から利用可能である状態に変化したと判断した場合、印刷データの格納先を前記第２の記憶装置から前記第１の記憶装置に変更する制御装置と、
を有することを特徴とする印刷装置。
【０１５４】
付記３
複数のホスト機器から送信される印刷データを受信し、該印刷データに応じて出力を行う印刷装置において、
受信された印刷データを記憶する第１の記憶装置と、
データアクセス速度が前記第１の記憶装置より遅い第２の記憶装置と、
前記複数のホスト機器から送信される印刷データを同時に受信する受信装置と、
前記第１の記憶装置が利用可能であるか否かを判断する判断装置と、
印刷データを前記第１の記憶装置に格納し、また前記印刷データを第２の記憶装置に記憶する記憶処理制御装置と、
複数の印刷データを印刷する優先順位を判断する優先順位判断装置と、
複数の印刷データを印刷する優先順位を変更する変更装置と、
前記優先順位に従い前記印刷データの格納先を判断する格納先判断装置と、
前記第２の記憶装置への印刷データを記憶している途中で、前記印刷データの格納先を変更する判断を行った場合、前記印刷データの格納先を第２の記憶装置から第１の記憶装置に変更し、前記第１の記憶装置への印刷データを格納している途中で、前記印刷データの格納先を変更する判断を行った場合、印刷データの格納先を前記第１の記憶装置から前記第２の記憶装置に変更する制御装置と、
を有することを特徴とする印刷装置。
【０１５５】
付記４
前記制御装置は割り込み処理の指示があった場合、前記印刷データの格納先を変更する判断を行うことを特徴とする付記３に記載の印刷装置。
【０１５６】
付記５
複数のホスト機器から送信される印刷データを受信し、該印刷データに応じて出力を行う印刷装置の印刷方法において、
前記複数のホスト機器から送信される印刷データを同時に受信する受信処理と、
受信された印刷データを記憶する第１の記憶装置が利用可能であるか否かを判断する判断処理と、
前記第１の記憶装置が利用可能であると判断した場合、前記第１の記憶装置に前記印刷データを格納し、他のホスト機器から印刷データの入力により前記第１の記憶装置が利用可能でないと判断した場合、データアクセス速度が前記第１の記憶装置より遅い第２の記憶装置に前記印刷データを記憶する記憶処理と、
を行うことを特徴とする印刷方法。
【０１５７】
付記６
複数のホスト機器から送信される印刷データを受信し、該印刷データに応じて出力を行う印刷装置の印刷方法において、
前記複数のホスト機器から送信される印刷データを同時に受信する受信処理と、
受信された印刷データを記憶する第１の記憶装置が利用可能であるか否かを判断する判断処理と、
前記第１の記憶装置が利用可能であると判断した場合、前記第１の記憶装置に前記印刷データを格納し、他のホスト機器から印刷データの入力により前記第１の記憶装置が利用可能でないと判断した場合、データアクセス速度が前記第１の記憶装置より遅い第２の記憶装置に前記印刷データを記憶する記憶処理と、
前記第１の記憶装置が利用可能でない状態から利用可能である状態に変化したことを判断し、前記第２の記憶装置への印刷データを格納している途中において、第１の記憶装置が利用可能でない状態から利用可能である状態に変化したと判断した場合、印刷データの格納先を前記第２の記憶装置から前記第１の記憶装置に変更する制御処理と、
を行うことを特徴とする印刷方法。
【０１５８】
付記７
複数のホスト機器から送信される印刷データを受信し、該印刷データに応じて出力を行う印刷装置の印刷方法において、
前記複数のホスト機器から送信される印刷データを同時に受信する受信処理と、
受信された印刷データを記憶する第１の記憶装置に前記印刷データを記憶する処理と、
データアクセス速度が前記第１の記憶装置より遅い第２の記憶装置に前記印刷データを記憶する処理と、
前記第１の記憶装置が利用可能であるか否かを判断する判断処理と、
複数の印刷データを印刷する優先順位を変更する優先順位変更処理と、
前記優先順位に従い前記印刷データの格納先を判断する格納先判断処理と、
前記第２の記憶装置への印刷データを記憶している途中で、前記印刷データの格納先を変更する判断を行った場合、前記印刷データの格納先を第２の記憶装置から第１の記憶装置に変更し、前記第１の記憶装置への印刷データを格納している途中で、前記印刷データの格納先を変更する判断を行った場合、印刷データの格納先を前記第１の記憶装置から前記第２の記憶装置に変更する制御処理と、
を行うことを特徴とする印刷方法。
【符号の説明】
【０１５９】
１、１１、２１・・プリンタ装置
２、１２、２２・・受信部
３、１３、２３・・制御部
４、１４、２４・・ＲＩＰ部
５、１５、２５・・転送部
６、１６、２６・・プリンタエンジン
７、１７、２７・・ハードディスク（ＨＤ）
８、１８、２８・・ＲＡＭ
９、１９、２９・・状態テーブル
１０、２０、３０・・画像メモリ
３１・・表示操作部
３１ａ・・表示部
３１ｂ・・操作ボタン
ＰＣ１〜ＰＣ３・・ホスト機器
【図１】
0005729156.tif 000002
【図３】
0005729156.tif 000003
【図４】
0005729156.tif 000004
【図５】
0005729156.tif 000005
【図６】
0005729156.tif 000006
【図７】
0005729156.tif 000007
【図８】
0005729156.tif 000008
【図９】
0005729156.tif 000009
【図１０】
0005729156.tif 000010
【図１１】
0005729156.tif 000011
【図１２】
0005729156.tif 000012
【図１３】
0005729156.tif 000013
【図１４】
0005729156.tif 000014
【図１５】
0005729156.tif 000015
【図１６】
0005729156.tif 000016
【図１７】
0005729156.tif 000017
【図１８】
0005729156.tif 000018
【図１９】
0005729156.tif 000019
【図２０】
0005729156.tif 000020
【図２１】
0005729156.tif 000021
【図２２】
0005729156.tif 000022
【図２３】
0005729156.tif 000023
【図２４】
0005729156.tif 000024
【図２】
0005729156.tif 000025