(57)【要約】【課題】  複数の印刷処理が並行して実行される場合にも、スワップの発生等による印刷速度の低下を良好に抑制することのできる印刷制御装置、及び、その印刷制御装置を構成するためのプログラムの提供。【解決手段】  印刷処理が開始されたとき、同様の印刷処理のモジュールが起動済みで（Ｓ１１：Ｙ）、同時動作制限数として自然数が設定されている場合（Ｓ１６：Ｎ）、起動中のＲＩＰエンジンの数を表すｎＲＩＰが取得される（Ｓ１７）。そして、ｎＲＩＰの値が同時動作制限数のＮに達している場合は（Ｓ１８：Ｎ）、ｎＲＩＰが減るまで当該印刷処理は待機状態に制御される（Ｓ１９）。【選択図】  図６
2009009378.tif 000002
【特許請求の範囲】
【請求項１】
印刷装置に出力可能な印刷データを生成する印刷処理を、印刷装置毎に複数並行して実行可能な印刷処理手段と、
該印刷処理手段によって実行される印刷処理の実行数が第１制限値に達している場合、一部の上記印刷処理を待機状態に制御する第１待機制御手段と、
を備えたことを特徴とする印刷制御装置。
【請求項２】
上記印刷処理手段によって使用されるメモリの空きが第２制限値以下の場合、一部の上記印刷処理を待機状態に制御する第２待機制御手段を、
更に備えたことを特徴とする請求項１記載の印刷制御装置。
【請求項３】
上記印刷処理手段による印刷処理の実行数を記憶する記憶手段と、
上記印刷処理手段による印刷処理の開始時に、上記記憶手段に記憶された上記実行数をインクリメントするインクリメント手段と、
上記印刷処理手段による印刷処理の終了時に、上記記憶手段に記憶された上記実行数をデクリメントするデクリメント手段と、
を更に備えたことを特徴とする請求項１または２記載の印刷制御装置。
【請求項４】
使用者の操作に応じて上記第１制限値を設定する制限値設定手段を、
更に備えたことを特徴とする請求項１〜３のいずれかに記載の印刷制御装置。
【請求項５】
コンピュータを、請求項１〜４のいずれかに記載の印刷制御装置を構成する各手段として動作させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷装置に出力可能な印刷データを生成する印刷装置に関し、詳しくは、印刷装置毎に複数並行して上記印刷データの生成処理を実行可能な印刷装置、及び、その印刷制御装置を構成するためのプログラムに関する。
【背景技術】
【０００２】
従来より、各種アプリケーションで生成されたデータ（以下、アプリデータという）からプリンタ等の印刷装置に出力可能なＰＤＬデータ等を生成する印刷処理（いわゆるプリンタドライバの処理）を実行可能な装置が種々提案されている。従来のプリンタドライバでは、印刷が指示されたプリンタに対して印刷処理が実行されていない場合、他に何本の印刷処理が実行されていてもそのプリンタに対する印刷処理が開始されてしまう。
【０００３】
すなわち、プリンタドライバは共通のモジュールを利用する場合であっても、見かけ上プリンタ毎に独立している。このため、複数のプリンタに対して並行して印刷処理が実行されることがあり、この場合、印刷処理を実行するパーソナルコンピュータのメモリが不足する可能性がある。そこで、メモリ不足時にはハードディスクにスワップすることにより印刷処理用のメモリを確保することが提案されている（例えば、特許文献１参照）。
【特許文献１】特開平１１−１５６１１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところが、スワップが発生すると、パーソナルコンピュータ内でのデータの移し変え等の処理によって印刷速度が低下する。また、特許文献１の技術では、スワップが発生する際に印刷を実行するか否か使用者に確認しているが、この確認も１台のプリンタが使用するメモリ容量のみしか確認していないので、前述のように複数の印刷処理が並行して実行される場合にはスワップの発生を回避できない可能性があった。
【０００５】
そこで、本発明は、複数の印刷処理が並行して実行される場合にも、スワップの発生等による印刷速度の低下を良好に抑制することのできる印刷制御装置、及び、その印刷制御装置を構成するためのプログラムを提供することを目的としてなされた。
【課題を解決するための手段】
【０００６】
上記目的を達するためになされた本発明の印刷制御装置は、印刷装置に出力可能な印刷データを生成する印刷処理を、印刷装置毎に複数並行して実行可能な印刷処理手段と、該印刷処理手段によって実行される印刷処理の実行数が第１制限値に達している場合、一部の上記印刷処理を待機状態に制御する第１待機制御手段と、を備えたことを特徴としている。
【０００７】
このように構成された本発明の印刷制御装置では、印刷処理手段は、印刷装置に出力可能な印刷データを生成する印刷処理を、印刷装置毎に複数並行して実行することができる。但し、このような印刷処理が多数並行して実行されると、前述のようにメモリ不足が発生して印刷速度が低下する可能性がある。そこで、本発明の第１待機制御手段は、上記印刷処理手段によって実行される印刷処理の実行数が第１制限値に達している場合、一部の上記印刷処理を待機状態に制御する。このため、本発明では、同時に並行して実行される印刷処理の実行数を第１制限値以下に制限することができ、延いては、メモリ不足やスワップの発生を抑制して印刷速度を確保することができる。
【０００８】
なお、本発明は以下の構成に限定されるものではないが、上記印刷処理手段によって使用されるメモリの空きが第２制限値以下の場合、一部の上記印刷処理を待機状態に制御する第２待機制御手段を、更に備えてもよい。
【０００９】
この場合、メモリの空きが第２制限値以下の場合も、第２待機制御手段によって一部の印刷処理を待機状態にすることにより、印刷速度を一層良好に確保することができる。なお、第１待機制御手段と第２待機制御手段とは、いずれも印刷処理を待機状態に制御する手段であるので、一方が印刷処理を待機状態への制御をしようとしているのに他方は待機状態を解除しようとしている場合も生じる。このような場合は、いずれかを優先してもよいし、両者の制御の論理和または論理積によって印刷処理を制御してもよい。
【００１０】
また、上記印刷処理手段による印刷処理の実行数を記憶する記憶手段と、上記印刷処理手段による印刷処理の開始時に、上記記憶手段に記憶された上記実行数をインクリメントするインクリメント手段と、上記印刷処理手段による印刷処理の終了時に、上記記憶手段に記憶された上記実行数をデクリメントするデクリメント手段と、を更に備えてもよい。この場合、その時点における印刷処理の実行数が記憶手段に記憶されるため、その記憶手段に記憶された実行数に基づいて、上記第１待機制御手段による制御を確実に実行することができる。
【００１１】
また、使用者の操作に応じて上記第１制限値を設定する制限値設定手段を、更に備えてもよい。この場合、使用者の所望に応じて、上記第１制限値を設定することができる。例えば、印刷速度が若干低下することを覚悟の上で、多数の印刷処理を同時に実行可能に設定することもできる。
【００１２】
更に、本発明のプログラムは、コンピュータを、上記いずれかに記載の印刷制御装置を構成する各手段として動作させることを特徴としている。このため、本発明のプログラムをコンピュータに実行させれば、上記いずれかに記載の印刷制御装置を容易に構成することができる。
【発明を実施するための最良の形態】
【００１３】
［実施の形態の全体構成］
次に、本発明の実施の形態を、図面を参照して説明する。図１は、本発明が適用された印刷システムの構成を表す外観図である。図１に示すように、本実施の形態の印刷システムは、印刷装置の一例としての複数のカラーレーザプリンタ（以下、単にプリンタという）１と、そのプリンタ１にＬＡＮ，インターネット等のネットワークＷを介して接続された印刷制御装置の一例としてのパーソナルコンピュータ（以下、単にパソコンという）３００とから構成されている。
【００１４】
各プリンタ１は、イエロー，マゼンタ，シアン，及びブラックのトナーにて電子写真方式によって画像を形成する周知のプリンタエンジン２（図２参照）を内部に備え、このプリンタエンジン２は、収容トレイ３に収容された被記録媒体の一例としての用紙（図示省略）に、１枚ずつ画像を形成してスタッカ４へ排出する。また、プリンタ１の表面には、各種設定や指示を行うための操作パネル５が設けられている。なお、ネットワークＷに接続された各プリンタ１は、いずれも同一機種で、従って、実質的に同一のプリンタドライバにより制御されるものとする。
【００１５】
図２は、この印刷システムにおける制御系の構成を表すブロック図である。なお、図２では、プリンタ１は１つだけ示したが、他のプリンタ１の構成も同様である。図２に示すように、パソコン３００のパソコン本体３１０は、ＣＰＵ３１１、ＲＯＭ３１２、ＲＡＭ３１３、及び、ハードディスク装置（ＨＤＤ）３１４を備えている。そして、このパソコン本体３１０には、ＣＲＴ等のディスプレイ３２０、キーボード３３０、マウス３４０が接続されている（いずれも図１参照）。更に、パソコン本体３１０には、前述のネットワークＷと接続するためのネットワークポートインタフェース（ネットワークポートＩ／Ｆ）３５０も接続されている。
【００１６】
プリンタ１には、前述のプリンタエンジン２等を制御する制御部１０が設けられ、この制御部１０は、ＣＰＵ１０Ａ，ＲＯＭ１０Ｂ，ＲＡＭ１０Ｃを備えたマイクロコンピュータとして構成されている。また、制御部１０は、電源スイッチが切られても記憶内容が消えないようにされたＮＶＲＡＭ１０Ｄも備えている。更に、この制御部１０には、前述のプリンタエンジン２，操作パネル５の他、ネットワークＷを介してパソコン３００と接続するためのネットワークポートインタフェース（ネットワークポートＩ／Ｆ）１１などが接続されている。
【００１７】
［実施の形態における制御（制御の概要）］
次に、この制御系で実行される処理について説明する。パソコン３００において各種アプリケーションによりアプリデータが作成され、印刷のためにプリンタドライバがコールされてそのプリンタドライバ上で印刷が指示されると、パソコン３００のＣＰＵ３１１は、ハードディスク装置３１４に記憶されたプログラムに基いて次のような印刷処理を実行する。
【００１８】
図３は、この印刷処理の動作全体を概略的に例示する説明図である。図３に例示するように、パソコン３００から印刷を指示できるプリンタ１がネットワークＷに複数接続されている場合、ポートＰ１，Ｐ２，Ｐ３，…といった具合にプリンタ１の機種の数だけ論理ポートが設定される。また、同一機種のプリンタ１に対しても、デフォルトの印刷設定を異ならせるなどした複数の論理ポートを設定することが可能である。
【００１９】
そして、パソコン３００では、見かけ上独立したプリンタドライバＰＤ１，ＰＤ２，ＰＤ３がポートＰ１，Ｐ２，Ｐ３に対して設けられる。但し、本実施の形態では、各プリンタドライバＰＤ１，ＰＤ２，ＰＤ３は、共通のプリンタドライバモジュールＭを使用する（プリンタドライバＰＤ２，ＰＤ３は、プリンタドライバＰＤ１をコピーして作成）ものとする。なお、この場合、プリンタ１は同じ機種のプリンタ１であってもよいし、プリンタドライバＰＤ１で制御することが可能な他の機種のプリンタ１であってもよい。
【００２０】
図３の例では、プリンタドライバＰＤ１が、印刷設定ＰＳ１が付与されたアプリデータＡＤ１から印刷データＩＤ１を生成し、ポートＰ１から出力している。同様に、プリンタドライバＰＤ２，ＰＤ３が、印刷設定ＰＳ２，ＰＳ３が付与されたアプリデータＡＤ２，ＡＤ３から印刷データＩＤ２，ＩＤ３を生成し、ポートＰ２，Ｐ３から出力している。また、このとき、プリンタドライバＰＤ１，ＰＤ２，ＰＤ３がアプリデータＡＤ１，ＡＤ２，ＡＤ３を印刷データＩＤ１，ＩＤ２，ＩＤ３に変換するに当り、ラスタライズのためにＲＩＰ（Raster Image Processor）エンジンＥ１，Ｅ２，Ｅ３がそれぞれ使用されるものとする。
【００２１】
１つのプリンタドライバ（ＰＤ１〜ＰＤ３のいずれか）が１つのポート（Ｐ１〜Ｐ３のいずれか）から、複数のアプリデータに対応する複数の印刷データを出力する場合は、アプリデータが１つずつ順次処理され、処理待ちのアプリデータはキューに保存される。ところが、上記のように見かけ上独立したプリンタドライバＰＤ１，ＰＤ２，ＰＤ３がそれぞれ印刷処理を実行する場合は、複数の印刷処理が並行して実行され、メモリ不足が発生する可能性がある。特に、ＲＩＰエンジンＥ１，Ｅ２，Ｅ３は、アプリデータをラスタ処理（ビットマップ化）するために膨大なメモリ容量及びＣＰＵパワーを必要とする。そこで、本実施の形態では、以下のように、同時に実行可能な印刷処理に制限を設けて、印刷速度の確保を図っている。
【００２２】
［実施の形態における制御（制限値の設定）］
図４は、プリンタドライバＰＤ１〜ＰＤ３に対する設定用の共通のダイアログ９００において、「オプション」のページを開いたときのディスプレイ３２０における表示画面を例示する説明図である。図４に示すように、このダイアログ９００には、同時に実行可能な印刷処理の数（第１制限値の一例）としての同時動作制限数が設定される同時動作制限数設定部９１０と、同時動作制限数として「自動」が設定された場合に第２制限値の一例としての空メモリ制限値が設定される空メモリ制限値設定部９２０とが設けられる。また、ダイアログ９００には、周知のＯＫボタン９３０やキャンセルボタン９４０も設けられている。
【００２３】
図５は、このダイアログ９００が表示されたときに、パソコン３００のＣＰＵ３１１が、ハードディスク装置３１４に記憶されたプログラムに基いて実行する制限値設定手段の一例としてのダイアログ制御処理を表すフローチャートである。図５に示すように、この処理では、先ず、Ｓ１（Ｓはステップを表す：以下同様）にて、ハードディスク装置３１４の所定領域に画定された共通記憶領域から、上記同時動作制限数，空メモリ制限値等の各種設定値が取得される。続くＳ２では、Ｓ１にて取得された設定に従ってダイアログ９００の各部の表示がなされる。
【００２４】
すると、使用者は、同時動作制限数設定部９１０，空メモリ制限値設定部９２０等の各部を必要に応じて操作して、所望の値を設定した上でＯＫボタン９３０をマウス３４０でクリック（以下、単にクリックという）する。そこで、Ｓ２では、ダイアログ９００の各部の表示をマウス３４０等の操作に応じて変更しながら表示を続け、ＯＫボタン９３０またはキャンセルボタン９４０がクリックされるまで待機する。そして、いずれかがクリックされると、処理は続くＳ３へ移行して、ＯＫボタン９３０またはキャンセルボタン９４０のいずれがクリックされたかが判断される。
【００２５】
キャンセルボタン９４０がクリックされた場合は（Ｓ３：キャンセル）、処理はそのまま終了し、ＯＫボタン９３０がクリックされた場合は（Ｓ３：ＯＫ）、Ｓ５にて、表示中のダイアログ９００から同時動作制限数，空メモリ制限値等の各種設定値が取得される。続くＳ６では、Ｓ５にて取得された各種設定値が前述の共通記憶領域に記憶されて、処理が終了する。
【００２６】
［実施の形態における制御（印刷処理の詳細）］
次に、パソコン３００において各種アプリケーションによりアプリデータが作成され、その印刷が指示されると、パソコン３００のＣＰＵ３１１は、ハードディスク装置３１４に記憶されたプログラムに基いて次のような印刷処理を実行する。図６，図７は、パソコン３００で実行される印刷処理を表すフローチャートである。
【００２７】
図６に示すように、この処理では、先ずＳ１１にて、同様の印刷処理のモジュールが起動済み（すなわち同様の印刷処理が並行して実行中）であるか否かが判断される。モジュールが起動済みでない場合は（Ｓ１１：Ｎ）、処理はＳ１２へ移行し、上記共通記憶領域から同時動作制限数及び空メモリ制限値が取得される。続くＳ１３では、同時動作制限数の値がＮに、空メモリ制限値の値がＭにそれぞれ設定される。なお、同時動作制限数として「自動」が設定されている場合は、Ｎ＝０に設定される。更に、続くＳ１４では、起動ＲＩＰ数を表すｎＲＩＰが０にセットされた上で、処理はＳ１６へ移行する。また、同様の印刷処理のモジュールが既に起動済みの場合は（Ｓ１１：Ｙ）、Ｓ１２〜Ｓ１４の初期設定は実行されず、処理はＳ１１からＳ１６へ直接移行する。
【００２８】
Ｓ１６では、Ｎ＝０、すなわち同時動作制限数として「自動」が設定されているか否かが判断される。Ｎ≠０の場合は（Ｓ１６：Ｎ）、Ｓ１７にてｎＲＩＰの値が取得される。ｎＲＩＰは、後述のように、ＲＩＰエンジンＥを用いた印刷処理がいくつ並行して実行されているかを表す数値である（Ｓ２５，Ｓ３６参照）。そこで、続くＳ１８では、ｎＲＩＰがＮ未満であるか否かが判断され、ｎＲＩＰ≧Ｎの場合は（Ｓ１８：Ｎ）、処理は第１待機制御手段の一例としてのＳ１９へ移行して、ｎＲＩＰが減るまで待機状態（例えば、Ｓｌｅｅｐなど）となる。
【００２９】
なお、この待機状態では、本印刷処理によってｎＲＩＰの減少が監視されるのではなく、ｎＲＩＰの値の監視や処理の再開はパソコン３００のＯＳに委ねられる。そして、ｎＲＩＰが減少して処理が再開されると、処理はＳ１９から再びＳ１７へ移行して、改めてｎＲＩＰが取得される。その結果、ｎＲＩＰがＮ未満になっていると（Ｓ１８：Ｙ）、処理は後述のＳ２４へ移行する。いうまでもなく、最初からｎＲＩＰがＮ未満であった場合も（Ｓ１８：Ｙ）、同様に処理はＳ２４へ移行する。
【００３０】
一方、Ｎ＝０の場合は（Ｓ１６：Ｙ）、Ｓ２１にて、印刷処理に割り当てられたメモリの空メモリ容量がＭより大きいか否かが判断される。空メモリ容量がＭ以下の場合は（Ｓ２１：Ｎ）、第２待機制御手段の一例としてのＳ２２にて、ｎＲＩＰが減るか若しくは一定時間が経過するまで、処理はＳ１９と同様の待機状態となる。ｎＲＩＰが減るか一定時間が経過するかして処理が再開されると、処理は再びＳ２１へ移行する。そして、空メモリ容量がＭより大きくなっている場合は（Ｓ２１：Ｙ）、処理はＳ２４へ移行する。いうまでもなく、最初から空メモリ容量がＭより大きかった場合も（Ｓ２１：Ｙ）、同様に処理はＳ２４へ移行する。なお、Ｓ２２における上記一定時間は、空メモリ容量の変化を確認するタイミングとして適宜設定された時間である。
【００３１】
図７に示すように、Ｓ２４では、ＲＩＰエンジンＥがマルチタスクで起動され、続くインクリメント手段の一例としてのＳ２５では、ｎＲＩＰの値が１つインクリメントされる。なお、Ｓ１８で肯定判断されてからＳ２５へ至るまでの間は他の割り込み処理が禁止される。このため、処理がＳ１８からＳ２５へ至るまでの間にもう１つの印刷処理が開始されてｎＲＩＰの値がＮを超えてしまうことはない。また、上記ｎＲＩＰの値を記憶するハードディスク装置３１４の記憶領域が記憶手段に相当する。そして、この記憶領域に記憶されたｎＲＩＰの値も、パソコン３００のＯＳによって監視され、前述の待機状態の制御（Ｓ１９，Ｓ２２参照）に利用される。
【００３２】
Ｓ２５に続くＳ２６では、印刷が指示されたプリンタ１に、印刷前処理データが送信される。この印刷前処理データとは、例えば、ＰＪＬ（Printer Job Language）コマンドなどからなる初期設定データである。続くＳ３０では、未印刷の印刷ページがあるか否かが判断される。未印刷の印刷ページがある場合は（Ｓ３０：Ｙ）、処理はＳ３１へ移行し、アプリデータＡＤがＲＩＰエンジンＥに転送される。続くＳ３２では、アプリデータＡＤをラスタライズして得られた画像データがＲＩＰエンジンＥから取得され、更に続くＳ３３にて、その画像データがＰＤＬデータ等の印刷データに変換される。すなわち、Ｓ３１〜Ｓ３３の処理が印刷処理手段の一例に相当する。
【００３３】
続くＳ３４では、Ｓ３３にて得られた印刷データがプリンタ１へ送信され、処理は再びＳ３０へ移行する。こうして、Ｓ３０〜Ｓ３４の処理が繰り返し実行され、未印刷の印刷ページがなくなると（Ｓ３０：Ｎ）、処理はＳ３５へ移行する。Ｓ３５では、その印刷処理に使用されていたＲＩＰエンジンＥがクローズされ、続くデクリメント手段の一例としてのＳ３６にて、ｎＲＩＰの値が１つデクリメントされる。更に、続くＳ３７では、印刷後処理データがプリンタ１へ送信されて、処理が終了する。なお、この印刷後処理データとは、例えば、印刷が終了したことを表すＰＪＬコマンドである。
［本実施の形態の効果］
このように、本実施の形態では、ＲＩＰエンジンＥを用いた印刷処理（Ｓ２４〜Ｓ３５）の実行数が予め設定された同時動作制限数に達している場合は（Ｓ１８：Ｎ）、新たに指示された印刷処理が待機状態に制御される（Ｓ１９）。また、同時動作制限数として「自動」が設定されているときは（Ｓ１６：Ｙ）、空メモリ容量が予め設定された空メモリ制限値以下の場合に（Ｓ２１：Ｎ）、新たに指示された印刷処理が待機状態に制御される（Ｓ２２）。このため、本実施の形態では、複数の印刷処理が並行して実行される場合にも、メモリ不足やスワップの発生を抑制して印刷速度を確保することができる。
【００３４】
また、上記同時動作制限数や空メモリ制限値はダイアログ９００により設定可能であるので、使用者の所望に応じた設定を行うことができる。例えば、印刷速度が若干低下することを覚悟の上で、多数の印刷処理を同時に実行可能に設定することもできる。
［本発明の他の実施の形態］
なお、本発明は上記実施の形態になんら限定されるものではなく、本発明の要旨を逸脱しない範囲で種々の形態で実施することができる。例えば、上記実施の形態では、ｎＲＩＰの値がＮ未満か否かの判断（Ｓ１８）と、空メモリ容量がＭより大きいか否かの判断（Ｓ２２）とのいずれか一方のみを利用しているが（Ｓ１６）、両判断の論理和または論理積に基づいて印刷処理を制限してもよい。
【００３５】
図８は、ｎＲＩＰがＮ以上で、かつ、空メモリ容量がＭ以下のときのみに、制限を行う形態の印刷処理（図６相当部のみ）を表すフローチャートである。なお、この処理は、大部分が図６，図７に示した処理と同様であるので、以下、相違点についてのみ説明する。
【００３６】
図８に示すように、本印刷処理は、Ｓ１６，Ｓ２１，Ｓ２２の処理が削除され、Ｓ１８にて否定判断された場合にＳ４１，Ｓ４２の処理が実行される点を除いて、図６，図７の印刷処理と同様に構成されている。このため、本印刷処理では、Ｓ１２〜Ｓ１４による初期設定後、若しくは、同様の印刷処理のモジュールが既に起動済みの場合は（Ｓ１１：Ｙ）、次にｎＲＩＰの取得がなされ（Ｓ１７）、Ｎ＞ｎＲＩＰの場合は（Ｓ１８：Ｙ）、前述のように処理はＳ２４へ移行する。一方、ｎＲＩＰがＮ以上の場合は（Ｓ１８：Ｎ）、Ｓ４１にて空メモリ容量がＭより大きいか否かが判断され、空メモリ容量がＭより大きければ（Ｓ４１：Ｙ）、ｎＲＩＰの値に関わらずＳ２４以降の処理が実行される。
【００３７】
一方、本印刷処理では、ｎＲＩＰがＮ以上で（Ｓ１８：Ｎ）、かつ、空メモリ容量がＭ以下の場合（Ｓ４１：Ｎ）、Ｓ４２にて前述のＳ２２と同様の待機状態となる。そして、Ｓ４２による待機の後に処理が再開された場合は、処理は前述のＳ１７へ移行する。このため、本実施の形態では、ｎＲＩＰの値がＮ以上であっても（Ｓ１８：Ｎ）、空メモリ容量がＭより大きければ（Ｓ４１：Ｙ）、Ｓ２４以降の処理による印刷が実行される。従って、本実施の形態では、印刷処理が待機状態になるケースを一層少なくすることができる。
【００３８】
次に、図９は、ｎＲＩＰがＮ以上である場合も、空メモリ容量がＭ以下の場合も、共に制限を行う形態の印刷処理（図６相当部のみ）を表すフローチャートである。なお、この処理も、大部分が図６，図７に示した処理と同様であるので、以下、相違点についてのみ説明する。
【００３９】
図９に示すように、本印刷処理は、Ｓ１６，Ｓ２１，Ｓ２２の処理が削除され、Ｓ１８にて肯定判断された場合にＳ５１，Ｓ５２の処理が実行される点を除いて、図６，図７の印刷処理と同様に構成されている。このため、本印刷処理でも、Ｓ１２〜Ｓ１４による初期設定後、若しくは、同様の印刷処理のモジュールが既に起動済みの場合は（Ｓ１１：Ｙ）、次にｎＲＩＰの取得がなされ（Ｓ１７）、ｎＲＩＰがＮ以上の場合は（Ｓ１８：Ｎ）、前述のＳ１９による待機がなされる。一方、Ｎ＞ｎＲＩＰの場合は（Ｓ１８：Ｙ）、Ｓ５１にて空メモリ容量がＭより大きいか否かが判断され、空メモリ容量がＭ以下であれば（Ｓ５１：Ｎ）、Ｓ５２にて前述のＳ２２と同様の待機状態となる。
【００４０】
そして、本印刷処理では、ｎＲＩＰがＮ未満で（Ｓ１８：Ｙ）、かつ、空メモリ容量がＭより大きい場合にのみ（Ｓ５１：Ｙ）、Ｓ２４以降の処理による印刷が実行される。このため、本実施の形態では、スワップ等による印刷速度の低下を一層良好に抑制することができる。なお、本処理では、同時動作制限数を「自動」に設定する処理は無効とされ、Ｎ＝０となることもない。
【００４１】
また、上記各実施の形態において、Ｓ１２〜Ｓ１４の初期設定を行った場合は、Ｓ２４へ直接移行して印刷を実行してもよい。この場合、同様の印刷処理のモジュールが起動されていない場合の印刷処理を、一層迅速に実行することができる。
【図面の簡単な説明】
【００４２】
【図１】本発明が適用された印刷システムの構成を表す外観図である。
【図２】その印刷システムにおける制御系の構成を表すブロック図である。
【図３】その印刷システムのパソコンで実行される印刷処理の動作全体を概略的に例示する説明図である。
【図４】そのパソコンに表示される設定用のダイアログを例示する説明図である。
【図５】そのパソコンにおけるダイアログ制御処理を表すフローチャートである。
【図６】そのパソコンにおける印刷処理を表すフローチャートである。
【図７】その印刷処理の続きを表すフローチャートである。
【図８】その印刷処理の変形例を表すフローチャートである。
【図９】その印刷処理の他の変形例を表すフローチャートである。
【符号の説明】
【００４３】
１…カラーレーザプリンタ    ２…プリンタエンジン          ３…収容トレイ
５…操作パネル              １０…制御部                  １０Ａ，３１１…ＣＰＵ
１０Ｂ，３１２…ＲＯＭ      １０Ｃ，３１３…ＲＡＭ        ３００…パソコン
３１０…パソコン本体        ３１４…ハードディスク装置    ３２０…ディスプレイ
３３０…キーボード          ３４０…マウス                ９００…ダイアログ
９１０…同時動作制限数設定部    ９２０…空メモリ制限値設定部    Ｗ…ネットワーク
【図１】
2009009378.tif 000003
【図２】
2009009378.tif 000004
【図３】
2009009378.tif 000005
【図５】
2009009378.tif 000006
【図６】
2009009378.tif 000007
【図７】
2009009378.tif 000008
【図８】
2009009378.tif 000009
【図９】
2009009378.tif 000010
【図４】
2009009378.tif 000011