(57)【要約】【課題】印刷データ処理装置におけるタスクの実行順序を効率的に決定する。【解決手段】第１優先度タスクＴＳＫ（３）のデータ処理プロセスの開始予定時刻ｔｐ１を予測し、また、非出力タスクＴＳＫ（４）の終了予定時刻ｔｐ２を予測する。そして、第１優先度タスクＴＳＫ（３）の開始予定時刻ｔｐ１よりも非出力タスクＴＳＫ（４）の終了予定時刻ｔｐ２の方が早いときには、第１優先度タスクＴＳＫ（３）に優先して非出力タスクＴＳＫ（４）のデータ処理プロセスを開始させる。この代わりに、出力タスクの予約数がその上限値に達しているかに応じて、実行するタスクを決定してもよい。【選択図】  図７
2004341996.tif 000002
【特許請求の範囲】
【請求項１】
印刷物画像を画像記録媒体上に可視的に出力するための出力機に供給する印刷物出力データを生成するためのデータ処理プロセスを行う印刷データ処理装置であって、
複数のデータ処理プロセスを並列に実行可能なデータ処理実行部と、
少なくとも前記データ処理プロセスを含み、前記データ処理プロセスで生成された印刷物出力データを前記出力機に転送する出力プロセスをさらに含み得るタスクに関して、各タスクに含まれるプロセスの内容と各タスクの優先度とを含むタスク情報を複数のタスクについて登録可能なタスク情報登録部と、
実行中のデータ処理プロセスが終了したときに、前記タスク情報登録部に登録されているタスク情報に基づいて、次にデータ処理プロセスを開始するタスクを決定する実行タスク決定部と、
を備え、
前記実行タスク決定部は、前記タスク情報登録部に登録されて実行待ちである複数のタスクの中で最も優先度の高い第１優先度タスクが前記出力プロセスを含み、かつ、前記第１優先度タスクよりも優先度の低いタスクの中に前記出力プロセスを含まない非出力タスクが存在するときに、前記第１優先度タスクのデータ処理プロセスに優先して前記非出力タスクのデータ処理プロセスを実行しても前記第１優先度タスクの出力プロセスを開始する際に待ち時間が発生しないと予測される場合には、前記第１優先度タスクに優先して前記非出力タスクのデータ処理プロセスを開始させることを特徴とする印刷データ処理装置。
【請求項２】
請求項１記載の印刷データ処理装置であって、
前記実行タスク決定部は、
（ｉ）前記第１優先度タスクの出力プロセスを開始する際に待ち時間が発生しないようにするために前記第１優先度タスクのデータ処理プロセスを開始すべき時刻としての開始予定時刻を予測し、
（ｉｉ）前記実行中のデータ処理プロセスの終了後に前記非出力タスクを直ちに開始すると仮定したときの前記非出力タスクの終了予定時刻を予測し、
（ｉｉｉ）前記第１優先度タスクの開始予定時刻よりも前記非出力タスクの終了予定時刻の方が早いときには、前記第１優先度タスクに優先して前記非出力タスクのデータ処理プロセスを開始させる、印刷データ処理装置。
【請求項３】
請求項２記載の印刷データ処理装置であって、
前記実行タスク決定部は、
前記第１優先度タスクが出力プロセスを含むときに、前記第１優先度タスクのデータ処理プロセスの開始を前記第１優先度タスクの開始予定時刻まで待機させる、印刷データ処理装置。
【請求項４】
請求項１記載の印刷データ処理装置であって、
前記実行タスク決定部は、
（ｉ）前記実行中のデータ処理プロセスの終了時に、前記出力プロセスを実行中のタスクの数と、前記データ処理プロセスの実行開始後であって前記出力プロセスを未実行であるタスクの数との合計である出力タスク予約数を算出し、
（ｉｉ）前記出力タスク予約数が所定の上限値未満の場合には、前記第１優先度タスクのデータ処理プロセスを開始させ、
（ｉｉｉ）前記出力タスク予約数が所定の上限値に達している場合には、前記非出力タスクのデータ処理プロセスを開始させる、印刷データ処理装置。
【請求項５】
印刷物画像を画像記録媒体上に可視的に出力するための出力機に供給する印刷物出力データを生成するためのデータ処理プロセスを複数並列に実行可能な印刷データ処理装置の制御方法であって、
（ａ）少なくとも前記データ処理プロセスを含み、前記データ処理プロセスで得られた印刷物出力データを前記出力機に転送する出力プロセスをさらに含むことが可能なタスクに関して、各タスクに含まれるプロセスの内容と各タスクの優先度とを含むタスク情報を複数のタスクをメモリに登録する工程と、
（ｂ）実行中のデータ処理プロセスが終了したときに、前記メモリに登録されているタスク情報に基づいて、次にデータ処理プロセスを開始するタスクを決定する工程と、
を備え、
前記工程（ｃ）は、
前記メモリに登録されて実行待ちである複数のタスクの中で最も優先度の高い第１優先度タスクが前記出力プロセスを含み、かつ、前記第１優先度タスクよりも優先度の低いタスクの中に前記出力プロセスを含まない非出力タスクが存在するときに、前記第１優先度タスクのデータ処理プロセスに優先して前記非出力タスクのデータ処理プロセスを実行しても前記第１優先度タスクの出力プロセスを開始する際に待ち時間が発生しない場合には、前記第１優先度タスクに優先して前記非出力タスクのデータ処理プロセスを開始することを特徴とする制御方法。
【請求項６】
印刷物画像を画像記録媒体上に可視的に出力するための出力機に供給する印刷物出力データを生成するためのデータ処理プロセスを複数並列に実行可能な印刷データ処理装置におけるタスクの実行順序を決定するためのコンピュータプログラムであって、
少なくとも前記データ処理プロセスを含み、前記データ処理プロセスで得られた印刷物出力データを前記出力機に転送する出力プロセスをさらに含むことが可能なタスクに関して、各タスクに含まれるプロセスの内容と各タスクの優先度とを含むタスク情報を複数のタスクをメモリに登録するタスク情報登録機能と、
実行中のデータ処理プロセスが終了したときに、前記メモリに登録されているタスク情報に基づいて、次にデータ処理プロセスを開始するタスクを決定するタスク決定機能と、
をコンピュータに実現させるプログラムを含み、
前記タスク決定機能は、前記メモリに登録されて実行待ちである複数のタスクの中で最も優先度の高い第１優先度タスクが前記出力プロセスを含み、かつ、前記第１優先度タスクよりも優先度の低いタスクの中に前記出力プロセスを含まない非出力タスクが存在するときに、前記第１優先度タスクのデータ処理プロセスに優先して前記非出力タスクのデータ処理プロセスを実行しても前記第１優先度タスクの出力プロセスを開始する際に待ち時間が発生しない場合には、前記第１優先度タスクに優先して前記非出力タスクのデータ処理プロセスを開始させる機能を含むことを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、印刷物画像を表す印刷物出力データを生成して、画像記録媒体上に印刷物画像を可視的に出力する技術に関する。
【０００２】
【従来の技術】
コンピュータ技術の進展に伴って、商業印刷用の製版工程においてもコンピュータを用いたデジタル化が普及してきている。デジタル化された製版工程では、まず印刷データ処理装置が、原稿データ（例えばＰＤＦデータやＰｏｓｔＳｃｒｉｐｔデータ。ＰｏｓｔＳｃｒｉｐｔはアドビ社の商標）に対してデータ処理を行って、印刷物出力データを作成する。そして、この印刷物出力データが出力機（フィルムレコーダや刷版作成機（ＣＴＰ））に転送され、網フィルムや刷版などの印刷物画像が画像記録媒体上に可視的に出力される。あるいは、出力機として、印刷物出力データから印刷物を直接印刷する印刷機を利用することも可能である。
【０００３】
【発明が解決しようとする課題】
印刷データ処理装置は、複数のデータ処理プロセスを並行して実行できる場合が多い。一方、出力機は、通常は１つの印刷物画像を出力できるだけである。また、出力機は印刷データ処理装置よりも高価なため、出力機をなるべく効率的に稼働させるようにタスクを実行することが好ましい。ここで、「タスク」とは、印刷データ処理装置における１つの作業単位を意味しており、印刷データ処理装置において印刷物出力データを作成するためのデータ処理プロセスを少なくとも含み、データ処理プロセスで生成された印刷物出力データを出力機に転送する出力プロセスをさらに含み得る１つの作業単位を意味している。しかし、従来は、このような印刷データ処理装置において、効率的にタスクの実行順序を決定するための技術は知られていなかった。
【０００４】
本発明は、上述した従来の課題を解決するためになされたものであり、印刷データ処理装置におけるタスクの実行順序を効率的に決定するための技術を提供することを目的とする。
【０００５】
【課題を解決するための手段およびその作用・効果】
上記目的の少なくとも一部を達成するために、本発明による印刷データ処理装置は、印刷物画像を画像記録媒体上に可視的に出力するための出力機に供給する印刷物出力データを生成するためのデータ処理プロセスを行う印刷データ処理装置であって、
複数のデータ処理プロセスを並列に実行可能なデータ処理実行部と、
少なくとも前記データ処理プロセスを含み、前記データ処理プロセスで生成された印刷物出力データを前記出力機に転送する出力プロセスをさらに含み得るタスクに関して、各タスクに含まれるプロセスの内容と各タスクの優先度とを含むタスク情報を複数のタスクについて登録可能なタスク情報登録部と、
実行中のデータ処理プロセスが終了したときに、前記タスク情報登録部に登録されているタスク情報に基づいて、次にデータ処理プロセスを開始するタスクを決定する実行タスク決定部と、
を備え、
前記実行タスク決定部は、前記タスク情報登録部に登録されて実行待ちである複数のタスクの中で最も優先度の高い第１優先度タスクが前記出力プロセスを含み、かつ、前記第１優先度タスクよりも優先度の低いタスクの中に前記出力プロセスを含まない非出力タスクが存在するときに、前記第１優先度タスクのデータ処理プロセスに優先して前記非出力タスクのデータ処理プロセスを実行しても前記第１優先度タスクの出力プロセスを開始する際に待ち時間が発生しないと予測される場合には、前記第１優先度タスクに優先して前記非出力タスクのデータ処理プロセスを開始させることを特徴とする。
【０００６】
この印刷データ処理装置によれば、第１優先度タスクの出力プロセスを開始する際に待ち時間がなるべく発生しないように、データ処理プロセスを開始するタスクが選択されるので、効率的にタスクの実行順序を決定することができる。
【０００７】
なお、前記実行タスク決定部は、
（ｉ）前記第１優先度タスクの出力プロセスを開始する際に待ち時間が発生しないようにするために前記第１優先度タスクのデータ処理プロセスを開始すべき時刻としての開始予定時刻を予測し、
（ｉｉ）前記実行中のデータ処理プロセスの終了後に前記非出力タスクを直ちに開始すると仮定したときの前記非出力タスクの終了予定時刻を予測し、
（ｉｉｉ）前記第１優先度タスクの開始予定時刻よりも前記非出力タスクの終了予定時刻の方が早いときには、前記第１優先度タスクに優先して前記非出力タスクのデータ処理プロセスを開始させるようにしてもよい。
【０００８】
この構成によれば、第１優先度タスクの出力プロセスを開始する際に待ち時間が発生しないことを、かなりの確度で実現することができる。
【０００９】
また、前記実行タスク決定部は、
前記第１優先度タスクが出力プロセスを含むときに、前記第１優先度タスクのデータ処理プロセスの開始を前記第１優先度タスクの開始予定時刻まで待機させるようにしてもよい。
【００１０】
この構成によれば、第１優先度タスクの開始を待機させている間に、他のタスクを実行できる場合があり、この場合にその他のタスクをより早く実行することが可能である。
【００１１】
なお、前記実行タスク決定部は、
（ｉ）前記実行中のデータ処理プロセスの終了時に、前記出力プロセスを実行中のタスクの数と、前記データ処理プロセスの実行開始後であって前記出力プロセスを未実行であるタスクの数との合計である出力タスク予約数を算出し、
（ｉｉ）前記出力タスク予約数が所定の上限値未満の場合には、前記第１優先度タスクのデータ処理プロセスを開始させ、
（ｉｉｉ）前記出力タスク予約数が所定の上限値に達している場合には、前記非出力タスクのデータ処理プロセスを開始させるようにしてもよい。
【００１２】
この構成によれば、比較的簡易な処理によって、第１優先度タスクの出力プロセスを開始する際に待ち時間がなるべく発生しないようにすることができる。
【００１３】
なお、本発明は、種々の形態で実現することが可能であり、例えば、印刷データ処理装置、その制御方法および制御装置、それらの方法または装置の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体等の形態で実現することができる。
【００１４】
【発明の実施の形態】
次に、本発明の実施の形態を実施例に基づいて以下の順序で説明する。
Ａ．装置の構成：
Ｂ．第１実施例：
Ｃ．第２実施例：
【００１５】
Ａ．装置の構成：
図１は、本発明の一実施例である製版システムの全体構成を示す説明図である。この製版システムは、原稿データに基づいて印刷物出力データを作成する印刷データ処理装置１００と、出力機２００とを備えている。印刷データ処理装置１００は、入力装置としてのキーボード１１０と、表示装置としてのモニタ１２０と、データ処理部１３０と、ハードディスク装置１４０とを備えている。出力機２００は、印刷データ処理装置１００で作成された印刷物出力データに応じて印刷物画像を画像記録媒体上に可視的に出力する。出力機２００としては、校正刷りを印刷するプルーフ出力機や、網フィルムを作成するフィルム出力機、刷版を印刷するプレート出力機、印刷物を直接印刷する印刷機等を採用することができる。なお、プレート出力機は、ＣＴＰ（Ｃｏｍｐｕｔｅｒ  Ｔｏ  Ｐｌａｔｅ）装置とも呼ばれている。
【００１６】
図２は、データ処理部１３０の機能的構成を示すブロック図である。ジョブ受付部３０２は、原稿データ（ＰＤＦデータやＰｏｓｔＳｃｒｉｐｔデータ）を含むジョブを受け取り、ハードディスク装置１４０（図１）内に格納する。なお、「ジョブ」とは、１つ以上のタスクを含む１まとまりの作業を意味する。また、前述したように、１つのタスクは少なくともデータ処理プロセスを含むとともに出力プロセスを含み得る。但し、１つのタスクを１つのジョブとして取り扱うことも可能である。ジョブ内容解析部３０４は、受け取ったジョブの内容を解析し、必要に応じて複数のタスクに分割する。ジョブ内容解析部３０４は、さらに、各タスク同士の関連づけや、各タスクと処理リソース（後述する）との関連づけを行って、タスク管理部３０６にタスク内容を伝達する。
【００１７】
タスク管理部３０６は、指示されたタスクの内容を示すタスク情報をタスク情報登録部３１０に登録する。各タスクのタスク情報は、各タスクに含まれるプロセスの内容（データ処理プロセスおよび出力プロセスの内容）と、各タスクの優先度とを含んでいる。タスク情報内のデータ処理プロセスの内容には、例えば、処理対象画像のサイズと、データ処理内容（後述する自動製版処理やＲＩＰ展開処理などのうちのいずれを含むか）とが含まれている。また、出力プロセスの内容には、例えば、画像記録媒体のサイズと、版の数（ＣＭＹＫの場合には４つ）とが含まれている。なお、タスク情報登録部３１０に記憶されている複数のタスクの優先度は、優先順位テーブル３１２に登録されている。なお、各タスクの優先度は、通常はジョブ受付部３０２で受付けられた順に割り当てられる。
【００１８】
実行タスク決定部３２０は、タスク情報登録部３１０に登録されているタスク情報に基づいて、データ処理実行部３３０，３４０でデータ処理プロセスを実行するタスクを決定する。この決定を行うために、実行タスク決定部３２０は、処理時間算出部３２２と、時刻予測部３２４とを備えている。実行タスク決定部３２０の処理内容については後述する。
【００１９】
データ処理実行部３３０，３４０は、データ処理プロセスをそれぞれ実行するための処理部である。本実施例では、２つのデータ処理プロセスをこれらのデータ処理実行部３３０，３４０で並行して実行可能である。なお、並行して同時に実行可能なデータ処理プロセスの数Ｍ（Ｍは２以上の整数）は、データ処理部１３０に設けられたＣＰＵの数や、メモリ容量などに応じて決定される。
【００２０】
データ処理実行部３３０，３４０で生成された印刷物出力データは、処理結果出力部３５０から出力機２００に転送されるか、または、データ格納部としてのハードディスク装置１４０に転送される。印刷物出力データの出力先は、各タスクの入力時に予め指定されている。出力機２００が大きなバッファを有している場合には、出力機２００による出力（画像記録動作）が終了する前に、処理結果出力部３５０による出力プロセス（データ転送）が終了する。一方、出力機２００が小さなバッファしか有していない場合には、出力機２００による出力（画像記録動作）の終了とほぼ同時、処理結果出力部３５０による出力プロセスが終了する。この説明から理解できるように、処理結果出力部３５０による「出力プロセス」は、処理結果出力部３５０から出力機２００（またはハードディスク装置１４０）へのデータ転送が終了する時点で完了する。なお、「出力プロセス」を「データ転送プロセス」とも呼ぶ。
【００２１】
なお、データ処理部１３０内の各部の機能は、ハードディスク装置１４０内に格納されたコンピュータプログラムによって実現されている。
【００２２】
図３は、データ処理実行部３３０の内部構成を示している。データ処理実行部３３０は、プリフライト処理部３３２と、自動製版処理部３３４と、ＲＩＰ展開処理部３３６とを含んでいる。各部の機能は以下の通りである。
【００２３】
（１）プリフライト処理部３３２：
いわゆる前処理であり、原稿データの内容を解析して、製版用の処理を問題無く実行できるか否かを確認するための処理である。例えば、ＰＤＦファイルやＰｏｓｔＳｃｒｉｐｔファイルの記述から、▲１▼文書内にリンクが張られているオブジェクトのファイルの有無、▲２▼標準的でないフォントデータの文書内への埋め込みの有無、などが確認される。不足しているデータやファイルが存在する場合には、データの追加や仕様の指定をユーザに要求する。
【００２４】
（２）自動製版処理部３３４：
いわゆるスミノセや、白フチ、トラッピングなどの製版処理を行う。
【００２５】
（３）ＲＩＰ展開処理部３３６：
いわゆるラスタイメージプロセッシングを行い、各インク色に色分解された印刷物画像を表すラスタデータ（印刷物出力データ）を出力解像度に合わせて作成する。
【００２６】
第２のデータ処理実行部３４０も、第１のデータ処理実行部３３０と同じ構成を有している。本明細書では、図３の個々の処理部３３２，３３４，３３６を「処理リソース」と呼ぶ。また、処理結果出力部３５０による出力機２００への出力も１つの処理リソースである。本明細書において「処理リソース」とは、実質的な処理時間を要する処理であって、タスクの実行順序を決定する際に考慮すべき処理を実行する部分を意味している。
【００２７】
なお、データ処理部１３０内のすべてのデータ処理実行部が同じ処理部を備えている必要は無く、例えば、ＲＩＰ展開処理部３３６を備えていないデータ処理実行部を利用することも可能である。但し、本明細書においては、説明の便宜上、すべてのデータ処理実行部３３０，３４０が同じ処理部３３２，３３４，３３６を備えているものと仮定し、また、各タスクのデータ処理プロセスは３つの処理部３３２，３３４，３３６による処理をすべて含んでいるものと仮定する。
【００２８】
図４は、ジョブ受付時の処理手順を示すフローチャートである。ステップＴ１においてジョブ受付部３０２がジョブを受け付けると、ステップＴ２においてジョブ内容解析部３０４がジョブの内容を解析してタスクに分割し、タスク情報登録部３１０にタスクを登録する。ステップＴ３では、タスク管理部３０６が即時実行可能なタスクがあるか否かを判断する。ステップＴ３の判断は、タスク情報登録部３１０に登録されているすべてのタスクを対象として行われる。ここで、「即時実行可能なタスク」とは、そのタスクで使用する処理リソースが待ち状態にあるタスク（すなわち処理リソースが空き状態であるタスク）を意味する。例えば、すべてのタスクのデータ処理プロセスが終了している段階において、出力プロセスを含まずデータ処理プロセスのみを含むタスクが存在する場合には、そのタスクは「即時実行可能なタスク」に該当する。ステップＴ４では、タスク管理部３０６が、タスク情報登録部３１０内の優先順位テーブル３１２に従ってタスクの実行順を決定し、ステップＴ５でその実行順に従ってタスクを実行する。
【００２９】
なお、実行中のタスクやプロセスが終了すると、実行タスク決定部３２０が、次に実行するタスクやプロセスを選択する。この選択手順については以下の第１，第２実施例で説明する。
【００３０】
Ｂ．第１実施例：
本発明の実施例の処理手順を説明する前に、比較例における処理例を図５に即して説明する。この比較例においても、２つのデータ処理実行部３３０，３４０（図２）で２つのデータ処理プロセスを並行して実行できるものとしている。図５の時刻ｔ１以前では、２つのタスクＴＳＫ（１），ＴＳＫ（２）のデータ処理プロセス（両端に矢印が付された実線で示す）が実行されている。また、３つの実行待ちタスクＴＳＫ（３）〜ＴＳＫ（５）が存在しており、これらの実行待ちタスクＴＳＫ（３）〜ＴＳＫ（５）には優先度１〜３が順次割り当てられている。最初の３つのタスクＴＳＫ（１），ＴＳＫ（２），ＴＳＫ（３）は出力プロセス（両端に矢印が付された破線で示す）を有している。一方、２つの実行待ちタスクＴＳＫ（４），ＴＳＫ（５）はデータ処理プロセスのみを有しており、出力プロセスを有してない。
【００３１】
図５の比較例では、時刻ｔ１において実行中タスクＴＳＫ（１）のデータ処理プロセスが終了すると、優先度の最も高い実行待ちタスクＴＳＫ（３）のデータ処理プロセスが開始される。同様に、時刻ｔ２において実行待ちタスクＴＳＫ（４）のデータ処理プロセスが開始され、時刻ｔ３において実行待ちタスクＴＳＫ（５）のデータ処理プロセスが開始される。このように、タスクは優先度順に開始され、また、２つのデータ処理プロセスが同時に実行されるようにタスクが順次開始される。また、図１に示すシステムでは出力機２００が１台だけなので、出力プロセスは同時に１つだけが実行可能である。このため、出力プロセスについては、１つのタスクの出力プロセスが終了した後に、次のタスクの出力プロセスが実行される。
【００３２】
図６は、本発明の第１実施例における実行タスクの決定手順を示すフローチャートである。また、図７は、第１実施例における実行タスクの決定とその実行結果を示す説明図である。図６のステップＳ１では、実行中タスクのデータ処理プロセスが完了したか否かが判断され、完了するとステップＳ２以降の処理が実行される。
【００３３】
ステップＳ２では、第１優先度タスクが出力タスクであるか否かが判断される。ここで、「第１優先度タスク」とは、実行待ちタスクの中で最も優先度の高いタスクを意味し、「出力タスク」は出力プロセスを含むタスクを意味する。図７（Ａ）は、時刻ｔ１において図６の手順で実行される処理内容を示している。図７（Ａ）の５つのタスクＴＳＫ（１）〜ＴＳＫ（５）における製版処理の処理内容（すなわち各プロセスの所要時間）は、図５に示した比較例のものと同じである。時刻ｔ１における第１優先度タスクＴＳＫ（３）は、出力タスク（出力プロセスを含むタスク）である。第１優先度タスクが非出力タスク（出力プロセスを含まないタスク）である場合には、ステップＳ２からステップＳ８に移行し、第１優先度タスクのデータ処理プロセスが実行される。この理由は、第１優先度タスクが非出力タスクのときには、そのデータ処理プロセスを直ちに実行することによって、実行待ちタスクの中でも優先度の最も高い第１優先度タスクを早期に完了できるからである。
【００３４】
一方、第１優先度タスクが出力タスクである場合には、ステップＳ３において、第２優先度タスク以降の実行待ちタスクの中に非出力タスクが存在するか否かが判断される。ここで、「第２優先度タスク」とは、実行待ちタスクの中の第２優先度のタスクを意味する。第２優先度タスク以降に非出力タスクが存在しない場合には、ステップＳ８において出力タスクである第１優先度タスクをそのまま実行する。一方、第２優先度タスク以降に非出力タスクが存在する場合には、ステップＳ４において、第１優先度タスクの開始予定時刻ｔｐ１が予測される。
【００３５】
第１優先度タスクＴＳＫ（３）の開始予定時刻ｔｐ１は以下のように予測される（図７（Ａ）参照）。まず、処理時間算出部３２２（図２）が、実行中タスクＴＳＫ（１），ＴＳＫ（２）の出力プロセスの処理時間（予測出力時間）を予測する。この予測は、タスク情報登録部３１０に登録されている各タスクのタスク情報に基づいて実行される。処理時間算出部３２２は、さらに、第１優先度タスクＴＳＫ（３）のデータ処理プロセスの処理時間を予測する。時刻予測部３２４は、２つの実行中タスクＴＳＫ（１），ＴＳＫ（２）の出力プロセスの予測出力時間を加算することによって、第１優先度タスクＴＳＫ（３）の出力プロセスの開始時刻ｔｐ０を予測する。この予測は、本実施例のシステムでは出力機２００（図１）は１台だけであり、出力機２００の待ち時間が実質的に発生しないように、各タスクの出力プロセスが１つずつ順次実行されることを前提にしている。ここで、「出力機２００の待ち時間が実質的に発生しない」とは、出力機２００が稼働可能な状態でデータ転送を待っている時間が発生しないことを意味している。通常は、出力機２００の画像記録媒体（感光材など）を交換するために時間を要する場合が多いが、そのような時間は「出力機２００の待ち時間」には含まれない。時刻予測部３２４は、さらに、第１優先度タスクＴＳＫ（３）の出力プロセスの予測開始時刻ｔｐ０から、第１優先度タスクＴＳＫ（３）のデータ処理プロセスの予測処理時間を減算することによって、第１優先度タスクＴＳＫ（３）のデータ処理プロセスの開始予定時刻ｔｐ１を算出する。
【００３６】
図６のステップＳ５では、第２優先度以降で最も優先度の高い非出力タスクの終了予定時刻ｔｐ２が予測される。図７（Ａ）の例では、最も優先度の高い非出力タスクは２番目の実行待ちタスクＴＳＫ（４）である。この非出力タスクＴＳＫ（４）の終了予定時刻ｔｐ２は、処理時間算出部３２２で算出される処理時間の予測値から決定される。
【００３７】
なお、実行待ちのタスクとして複数の非出力タスクが存在する場合には、ステップＳ５において非出力タスクのそれぞれに関して終了予定時刻が予測される。図７（Ａ）の例では、３番目の実行待ちタスクＴＳＫ（５）に関しても、終了予定時刻が予測される。
【００３８】
ステップＳ６では、第１優先度タスクの開始予定時刻ｔｐ１と非出力タスクｔｐ２の終了予定時刻ｔｐ２とを比較し、第１優先度タスクの開始予定時刻ｔｐ１よりも非出力タスクｔｐ２の終了予定時刻ｔｐ２の方が早い場合には、非出力タスクを選択して実行する（ステップＳ７）。図７（Ａ）の例では、非出力タスクＴＳＫ（４）の終了予定時刻ｔｐ２の方が、第１優先度タスクＴＳＫ（３）の開始予定時刻ｔｐ１よりも早いので、時刻ｔ１ではこの非出力タスクＴＳＫ（４）が選択されて実行される（図７（Ｂ））。なお、ステップＳ６の条件を満足する非出力タスクが複数存在する場合には、その中で最も優先度の高いタスクが実行される。このようにする理由は、優先順位をなるべく保ったままでなるべく効率的に処理を進めることができるからである。
【００３９】
なお、非出力タスクＴＳＫ（５）の終了予定時刻は第１優先度タスクＴＳＫ（３）の開始予定時刻ｔｐ１よりも遅いので、この非出力タスクＴＳＫ（５）はステップＳ６の条件を満足しない。従って、仮に、図７（Ａ）の２つの非出力タスクＴＳＫ（４），ＴＳＫ（５）の優先度が図７（Ａ）とは逆である場合にも、非出力タスクＴＳＫ（４）の方が優先的に実行される。
【００４０】
ステップＳ６において、第１優先度タスクの開始予定時刻ｔｐ１よりも終了予定時刻が早い非出力タスクが存在しない場合には、第１優先度タスクのデータ処理プロセスを実行する（ステップＳ８）。
【００４１】
図７（Ｂ）は、第１実施例の処理手順によって決定された実行順序を示している。時刻ｔ１において第１のタスクＴＳＫ（１）のデータ処理プロセスが終了すると、実行待ちであった非出力タスクＴＳＫ（４）が選択されてそのデータ処理プロセスが開始される。また、時刻ｔ２で第２のタスクＴＳＫ（２）のデータ処理プロセスが終了すると、図６の手順により、その時点で実行待ちであった非出力タスクＴＳＫ（５）が選択されて、そのデータ処理プロセスが開始される。なお、時刻ｔ１における第１優先度タスクＴＳＫ（３）のデータ処理プロセスは、その開始予定時刻ｔｐ１から開始される。換言すれば、第１優先度タスクＴＳＫ（３）のデータ処理プロセスは、その開始予定時刻ｔｐ１まで待機している。出力タスクのデータ処理プロセスをその開始予定時刻ｔｐ１まで待機させるようにすれば、その間に前述した図４の手順において即時実行可能なタスクが受け付けられた場合に、そのタスクをより早期に実行することができるという利点がある。
【００４２】
図８は、上述した比較例と第１実施例の結果とを比較して示している。図８（Ａ）は図５と同じものであり、図８（Ｂ）は図７（Ｂ）と同じものである。この図から理解できるように、第１実施例では、第４タスクＴＳＫ（４）の終了時刻が時間ｄ１だけ早くなっており、また、第５タスクＴＳＫ（５）の終了時刻が時間ｄ２だけ早くなっている。また、出力プロセスは、出力機２００に待ち時間が実質的に発生しないように順次実行されている。従って、第１実施例では、出力機２００の効率を低下させることなく、データ処理プロセスを比較例よりも効率的に実行することができる。また、出力プロセスを伴わないタスクをより短時間に効率良く処理することができるという利点がある。
【００４３】
Ｃ．第２実施例：
図９は、本発明の第２実施例における実行タスクの決定手順を示すフローチャートである。また、図１０は、比較例と第２実施例における実行タスクの決定とその実行結果を示す説明図である。図９のステップＳ１１では、実行中タスクの何らかのプロセス（データ処理プロセスまたは出力プロセス）が完了したか否かが判断され、完了するとステップＳ１２以降の処理が実行される。
【００４４】
ステップＳ１２では、出力タスクの予約数Ｎが所定の上限値Ｎｍａｘに達しているか否かが判断される。ここで、「出力タスクの予約数Ｎ」とは、出力プロセスを実行中のタスクの数と、データ処理プロセスの開始後で出力プロセスの開始前であるタスクの数と、の合計である。換言すれば、出力タスクの予約数Ｎは、データ処理プロセスの開始後であって出力プロセスの完了前であるタスクの数である。例えば、図１０（Ｂ）に示す時刻ｔ１では、出力タスクの予約数Ｎは２である。
【００４５】
「出力タスクの予約数の上限値Ｎｍａｘ」は、適宜設定することが可能である。なお、この実施例ではＮｍａｘ＝２に設定されているものと仮定する。この「出力タスクの予約数の上限値Ｎｍａｘ」の意味については後述する。
【００４６】
出力タスクの予約数Ｎが上限値Ｎｍａｘに達していない場合には、第１優先度タスクＴＳＫ（３）をそのまま実行する（ステップＳ１６）。一方、出力タスクの予約数Ｎが上限値Ｎｍａｘに達している場合には、ステップＳ１３において実行待ちタスクに非出力タスクが存在するか否かが判断され、非出力タスクが存在しなければステップＳ１１に戻る。この理由は、出力タスク（出力プロセスを伴うタスク）の実行を開始すると、そのタスクの出力プロセスを開始する際に、ある程度の待機が必要となる可能性が高いからである。この場合には、出力待ちのタスクが多数蓄積されるので、全体の処理効率が低下する可能性がある。図１０（Ｂ）の例では、時刻ｔ１においてＮ＝Ｎｍａｘ＝２であり、また、非出力タスクである実行待ちタスクＴＳＫ（４），ＴＳＫ（５）が存在するので、ステップＳ１４が実行される。ステップＳ１４では、非出力タスクのデータ処理プロセスを実行するための処理リソースに空きがあるか否かが判断される。処理リソースに空きがなければステップＳ１１に戻り、空きがあればステップＳ１５においてその非出力タスクが実行される。
【００４７】
図９の手順は、データ処理プロセスまたは出力プロセスが終了するたびに実行される。図１０（Ｂ）の例では、第１のタスクＴＳＫ（１）のデータ処理プロセスが終了する時刻ｔ１ではＮ＝Ｎｍａｘ＝２なので、実行待ちの非出力タスクである第４のタスクＴＳＫ（４）が開始される。また、第２のタスクＴＳＫ（２）のデータ処理プロセスが終了する時刻ｔ２でもＮ＝Ｎｍａｘ＝２なので、実行待ちの非出力タスクである第５のタスクＴＳＫ（５）が開始される。そして、第１のタスクＴＳＫ（１）の出力プロセスが終了する時刻ｔ４では、出力タスク予約数Ｎが１に減るので、その際の第１優先度タスクＴＳＫ（３）が開始される。
【００４８】
図１０（Ａ），図１０（Ｂ）を比較すれば分かるように、第２実施例においても、第４タスクＴＳＫ（４）の終了時刻が時間ｄ１だけ早くなっており、また、第５タスクＴＳＫ（５）の終了時刻が時間ｄ２だけ早くなっている。また、出力プロセスは、出力機２００に待ち時間が実質的に発生しないように順次実行されている。従って、第２実施例においても、出力機２００の効率を低下させることなく、データ処理プロセスを比較例よりも効率的に実行することができる。また、出力プロセスを伴わないタスクをより短時間に多数処理することができる。
【００４９】
なお、図９のステップＳ１２で使用された「出力タスクの予約数の上限値Ｎｍａｘ」は、以下のように設定されている。すなわち、「出力タスクの予約数の上限値Ｎｍａｘ」は、第１優先度タスクＴＳＫ（３）のデータ処理プロセスに優先してより優先度の低い非出力タスクＴＳＫ（４）のデータ処理プロセスを実行した場合にも、第１優先度タスクＴＳＫ（３）の出力プロセスを開始する際に待ち時間が発生しないことが期待される数（そのように予測される数）に設定されている。第２実施例では、このような比較的簡易な処理により、出力機２００に待ち時間が発生することを防止しつつ、データ処理プロセスをより早く実行することが可能である。
【００５０】
上述した第１、第２実施例を考慮すると、実行タスク決定部３２０は、以下のように実行タスクを決定していると考えることができる。
（１）実行待ちである複数のタスクＴＳＫ（３）〜（５）の中で最も優先度の高い第１優先度タスクＴＳＫ（３）が出力プロセスを含み、かつ、第１優先度タスクＴＳＫ（３）よりも優先度の低いタスクＴＳＫ（４），ＴＳＫ（５）の中に出力プロセスを含まない非出力タスクが存在する、という条件が成立するか否かを判定する。
（２）上記の条件が成立するときに、第１優先度タスクＴＳＫ（３）のデータ処理プロセスに優先して非出力タスクＴＳＫ（４）のデータ処理プロセスを実行しても第１優先度タスクＴＳＫ（３）の出力プロセスを開始する際に待ち時間が発生しないと予測されるか否かを判定する。
（３）上記の予測が成立する場合には、第１優先度タスクＴＳＫ（３）に優先して非出力タスクＴＳＫ（４）のデータ処理プロセスを開始させる。
【００５１】
このような判断を行う際の実際の判断基準としては、第１実施例で用いたプロセスの開始予定時刻や終了予定時刻を利用することもでき、また、第２実施例で用いた出力タスクの予約数Ｎを用いることもできる。但し、第１実施例や第２実施例で用いた基準以外の種々の判断基準を適用することも可能である。
【００５２】
なお、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば以下のような変形例も可能である。
【００５３】
上記各実施例では、出力機２００が１つだけであると仮定していたが、複数の出力機を利用可能としてもよい。複数の出力機を利用可能な場合には、同時に複数の出力プロセスが実行可能となる。この場合に、第１実施例では、各出力機毎に時刻ｔｐ１，ｔｐ２（図７（Ａ））を予測し、これに応じて実行タスクを決定することができる。また、第２実施例では、各出力機毎に出力タスクの予約数の上限値Ｎｍａｘをそれぞれ設定しておき、これを用いて図９の処理手順を実行することができる。
【図面の簡単な説明】
【図１】本発明の一実施例である製版システムの全体構成を示す説明図。
【図２】データ処理部１３０の機能的構成を示すブロック図。
【図３】データ処理実行部３３０の内部構成を示すブロック図。
【図４】本発明の実施例におけるジョブ受付時の処理手順を示すフローチャート。
【図５】比較例の処理例を示す説明図。
【図６】第１実施例における実行タスクの決定手順を示すフローチャート。
【図７】第１実施例における実行タスクの決定とその実行結果を示す説明図。
【図８】比較例と第１実施例の結果を示す説明図。
【図９】第２実施例における実行タスクの決定手順を示すフローチャート。
【図１０】第２実施例における実行タスクの決定とその実行結果を示す説明図。
【符号の説明】
１００…印刷データ処理装置
１１０…キーボード
１２０…モニタ
１３０…データ処理部
１４０…ハードディスク装置
２００…出力機
３０２…ジョブ受付部
３０４…ジョブ内容解析部
３０６…タスク管理部
３１０…タスク情報登録部
３１２…優先順位テーブル
３２０…実行タスク決定部
３２２…処理時間算出部
３２４…時刻予測部
３３０，３４０…データ処理実行部
３３２…プリフライト処理部
３３４…自動製版処理部
３４０…ＲＩＰ展開処理部
３５０…処理結果出力部
【図１】
2004341996.tif 000003
【図２】
2004341996.tif 000004
【図３】
2004341996.tif 000005
【図４】
2004341996.tif 000006
【図５】
2004341996.tif 000007
【図６】
2004341996.tif 000008
【図７】
2004341996.tif 000009
【図８】
2004341996.tif 000010
【図９】
2004341996.tif 000011
【図１０】
2004341996.tif 000012