JP2004341996A - Task control for printing processing - Google Patents
Task control for printing processing Download PDFInfo
- Publication number
- JP2004341996A JP2004341996A JP2003140242A JP2003140242A JP2004341996A JP 2004341996 A JP2004341996 A JP 2004341996A JP 2003140242 A JP2003140242 A JP 2003140242A JP 2003140242 A JP2003140242 A JP 2003140242A JP 2004341996 A JP2004341996 A JP 2004341996A
- Authority
- JP
- Japan
- Prior art keywords
- task
- output
- data processing
- priority
- processing process
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 claims abstract description 216
- 230000006870 function Effects 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 11
- 230000000052 comparative effect Effects 0.000 description 10
- 238000004364 calculation method Methods 0.000 description 5
- 238000007726 management method Methods 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 3
- 239000000872 buffer Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000012464 large buffer Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000010187 selection method Methods 0.000 description 1
Images
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
Abstract
Description
【0001】
【発明の属する技術分野】
この発明は、印刷物画像を表す印刷物出力データを生成して、画像記録媒体上に印刷物画像を可視的に出力する技術に関する。
【0002】
【従来の技術】
コンピュータ技術の進展に伴って、商業印刷用の製版工程においてもコンピュータを用いたデジタル化が普及してきている。デジタル化された製版工程では、まず印刷データ処理装置が、原稿データ(例えばPDFデータやPostScriptデータ。PostScriptはアドビ社の商標)に対してデータ処理を行って、印刷物出力データを作成する。そして、この印刷物出力データが出力機(フィルムレコーダや刷版作成機(CTP))に転送され、網フィルムや刷版などの印刷物画像が画像記録媒体上に可視的に出力される。あるいは、出力機として、印刷物出力データから印刷物を直接印刷する印刷機を利用することも可能である。
【0003】
【発明が解決しようとする課題】
印刷データ処理装置は、複数のデータ処理プロセスを並行して実行できる場合が多い。一方、出力機は、通常は1つの印刷物画像を出力できるだけである。また、出力機は印刷データ処理装置よりも高価なため、出力機をなるべく効率的に稼働させるようにタスクを実行することが好ましい。ここで、「タスク」とは、印刷データ処理装置における1つの作業単位を意味しており、印刷データ処理装置において印刷物出力データを作成するためのデータ処理プロセスを少なくとも含み、データ処理プロセスで生成された印刷物出力データを出力機に転送する出力プロセスをさらに含み得る1つの作業単位を意味している。しかし、従来は、このような印刷データ処理装置において、効率的にタスクの実行順序を決定するための技術は知られていなかった。
【0004】
本発明は、上述した従来の課題を解決するためになされたものであり、印刷データ処理装置におけるタスクの実行順序を効率的に決定するための技術を提供することを目的とする。
【0005】
【課題を解決するための手段およびその作用・効果】
上記目的の少なくとも一部を達成するために、本発明による印刷データ処理装置は、印刷物画像を画像記録媒体上に可視的に出力するための出力機に供給する印刷物出力データを生成するためのデータ処理プロセスを行う印刷データ処理装置であって、
複数のデータ処理プロセスを並列に実行可能なデータ処理実行部と、
少なくとも前記データ処理プロセスを含み、前記データ処理プロセスで生成された印刷物出力データを前記出力機に転送する出力プロセスをさらに含み得るタスクに関して、各タスクに含まれるプロセスの内容と各タスクの優先度とを含むタスク情報を複数のタスクについて登録可能なタスク情報登録部と、
実行中のデータ処理プロセスが終了したときに、前記タスク情報登録部に登録されているタスク情報に基づいて、次にデータ処理プロセスを開始するタスクを決定する実行タスク決定部と、
を備え、
前記実行タスク決定部は、前記タスク情報登録部に登録されて実行待ちである複数のタスクの中で最も優先度の高い第1優先度タスクが前記出力プロセスを含み、かつ、前記第1優先度タスクよりも優先度の低いタスクの中に前記出力プロセスを含まない非出力タスクが存在するときに、前記第1優先度タスクのデータ処理プロセスに優先して前記非出力タスクのデータ処理プロセスを実行しても前記第1優先度タスクの出力プロセスを開始する際に待ち時間が発生しないと予測される場合には、前記第1優先度タスクに優先して前記非出力タスクのデータ処理プロセスを開始させることを特徴とする。
【0006】
この印刷データ処理装置によれば、第1優先度タスクの出力プロセスを開始する際に待ち時間がなるべく発生しないように、データ処理プロセスを開始するタスクが選択されるので、効率的にタスクの実行順序を決定することができる。
【0007】
なお、前記実行タスク決定部は、
(i)前記第1優先度タスクの出力プロセスを開始する際に待ち時間が発生しないようにするために前記第1優先度タスクのデータ処理プロセスを開始すべき時刻としての開始予定時刻を予測し、
(ii)前記実行中のデータ処理プロセスの終了後に前記非出力タスクを直ちに開始すると仮定したときの前記非出力タスクの終了予定時刻を予測し、
(iii)前記第1優先度タスクの開始予定時刻よりも前記非出力タスクの終了予定時刻の方が早いときには、前記第1優先度タスクに優先して前記非出力タスクのデータ処理プロセスを開始させるようにしてもよい。
【0008】
この構成によれば、第1優先度タスクの出力プロセスを開始する際に待ち時間が発生しないことを、かなりの確度で実現することができる。
【0009】
また、前記実行タスク決定部は、
前記第1優先度タスクが出力プロセスを含むときに、前記第1優先度タスクのデータ処理プロセスの開始を前記第1優先度タスクの開始予定時刻まで待機させるようにしてもよい。
【0010】
この構成によれば、第1優先度タスクの開始を待機させている間に、他のタスクを実行できる場合があり、この場合にその他のタスクをより早く実行することが可能である。
【0011】
なお、前記実行タスク決定部は、
(i)前記実行中のデータ処理プロセスの終了時に、前記出力プロセスを実行中のタスクの数と、前記データ処理プロセスの実行開始後であって前記出力プロセスを未実行であるタスクの数との合計である出力タスク予約数を算出し、
(ii)前記出力タスク予約数が所定の上限値未満の場合には、前記第1優先度タスクのデータ処理プロセスを開始させ、
(iii)前記出力タスク予約数が所定の上限値に達している場合には、前記非出力タスクのデータ処理プロセスを開始させるようにしてもよい。
【0012】
この構成によれば、比較的簡易な処理によって、第1優先度タスクの出力プロセスを開始する際に待ち時間がなるべく発生しないようにすることができる。
【0013】
なお、本発明は、種々の形態で実現することが可能であり、例えば、印刷データ処理装置、その制御方法および制御装置、それらの方法または装置の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体等の形態で実現することができる。
【0014】
【発明の実施の形態】
次に、本発明の実施の形態を実施例に基づいて以下の順序で説明する。
A.装置の構成:
B.第1実施例:
C.第2実施例:
【0015】
A.装置の構成:
図1は、本発明の一実施例である製版システムの全体構成を示す説明図である。この製版システムは、原稿データに基づいて印刷物出力データを作成する印刷データ処理装置100と、出力機200とを備えている。印刷データ処理装置100は、入力装置としてのキーボード110と、表示装置としてのモニタ120と、データ処理部130と、ハードディスク装置140とを備えている。出力機200は、印刷データ処理装置100で作成された印刷物出力データに応じて印刷物画像を画像記録媒体上に可視的に出力する。出力機200としては、校正刷りを印刷するプルーフ出力機や、網フィルムを作成するフィルム出力機、刷版を印刷するプレート出力機、印刷物を直接印刷する印刷機等を採用することができる。なお、プレート出力機は、CTP(Computer To Plate)装置とも呼ばれている。
【0016】
図2は、データ処理部130の機能的構成を示すブロック図である。ジョブ受付部302は、原稿データ(PDFデータやPostScriptデータ)を含むジョブを受け取り、ハードディスク装置140(図1)内に格納する。なお、「ジョブ」とは、1つ以上のタスクを含む1まとまりの作業を意味する。また、前述したように、1つのタスクは少なくともデータ処理プロセスを含むとともに出力プロセスを含み得る。但し、1つのタスクを1つのジョブとして取り扱うことも可能である。ジョブ内容解析部304は、受け取ったジョブの内容を解析し、必要に応じて複数のタスクに分割する。ジョブ内容解析部304は、さらに、各タスク同士の関連づけや、各タスクと処理リソース(後述する)との関連づけを行って、タスク管理部306にタスク内容を伝達する。
【0017】
タスク管理部306は、指示されたタスクの内容を示すタスク情報をタスク情報登録部310に登録する。各タスクのタスク情報は、各タスクに含まれるプロセスの内容(データ処理プロセスおよび出力プロセスの内容)と、各タスクの優先度とを含んでいる。タスク情報内のデータ処理プロセスの内容には、例えば、処理対象画像のサイズと、データ処理内容(後述する自動製版処理やRIP展開処理などのうちのいずれを含むか)とが含まれている。また、出力プロセスの内容には、例えば、画像記録媒体のサイズと、版の数(CMYKの場合には4つ)とが含まれている。なお、タスク情報登録部310に記憶されている複数のタスクの優先度は、優先順位テーブル312に登録されている。なお、各タスクの優先度は、通常はジョブ受付部302で受付けられた順に割り当てられる。
【0018】
実行タスク決定部320は、タスク情報登録部310に登録されているタスク情報に基づいて、データ処理実行部330,340でデータ処理プロセスを実行するタスクを決定する。この決定を行うために、実行タスク決定部320は、処理時間算出部322と、時刻予測部324とを備えている。実行タスク決定部320の処理内容については後述する。
【0019】
データ処理実行部330,340は、データ処理プロセスをそれぞれ実行するための処理部である。本実施例では、2つのデータ処理プロセスをこれらのデータ処理実行部330,340で並行して実行可能である。なお、並行して同時に実行可能なデータ処理プロセスの数M(Mは2以上の整数)は、データ処理部130に設けられたCPUの数や、メモリ容量などに応じて決定される。
【0020】
データ処理実行部330,340で生成された印刷物出力データは、処理結果出力部350から出力機200に転送されるか、または、データ格納部としてのハードディスク装置140に転送される。印刷物出力データの出力先は、各タスクの入力時に予め指定されている。出力機200が大きなバッファを有している場合には、出力機200による出力(画像記録動作)が終了する前に、処理結果出力部350による出力プロセス(データ転送)が終了する。一方、出力機200が小さなバッファしか有していない場合には、出力機200による出力(画像記録動作)の終了とほぼ同時、処理結果出力部350による出力プロセスが終了する。この説明から理解できるように、処理結果出力部350による「出力プロセス」は、処理結果出力部350から出力機200(またはハードディスク装置140)へのデータ転送が終了する時点で完了する。なお、「出力プロセス」を「データ転送プロセス」とも呼ぶ。
【0021】
なお、データ処理部130内の各部の機能は、ハードディスク装置140内に格納されたコンピュータプログラムによって実現されている。
【0022】
図3は、データ処理実行部330の内部構成を示している。データ処理実行部330は、プリフライト処理部332と、自動製版処理部334と、RIP展開処理部336とを含んでいる。各部の機能は以下の通りである。
【0023】
(1)プリフライト処理部332:
いわゆる前処理であり、原稿データの内容を解析して、製版用の処理を問題無く実行できるか否かを確認するための処理である。例えば、PDFファイルやPostScriptファイルの記述から、▲1▼文書内にリンクが張られているオブジェクトのファイルの有無、▲2▼標準的でないフォントデータの文書内への埋め込みの有無、などが確認される。不足しているデータやファイルが存在する場合には、データの追加や仕様の指定をユーザに要求する。
【0024】
(2)自動製版処理部334:
いわゆるスミノセや、白フチ、トラッピングなどの製版処理を行う。
【0025】
(3)RIP展開処理部336:
いわゆるラスタイメージプロセッシングを行い、各インク色に色分解された印刷物画像を表すラスタデータ(印刷物出力データ)を出力解像度に合わせて作成する。
【0026】
第2のデータ処理実行部340も、第1のデータ処理実行部330と同じ構成を有している。本明細書では、図3の個々の処理部332,334,336を「処理リソース」と呼ぶ。また、処理結果出力部350による出力機200への出力も1つの処理リソースである。本明細書において「処理リソース」とは、実質的な処理時間を要する処理であって、タスクの実行順序を決定する際に考慮すべき処理を実行する部分を意味している。
【0027】
なお、データ処理部130内のすべてのデータ処理実行部が同じ処理部を備えている必要は無く、例えば、RIP展開処理部336を備えていないデータ処理実行部を利用することも可能である。但し、本明細書においては、説明の便宜上、すべてのデータ処理実行部330,340が同じ処理部332,334,336を備えているものと仮定し、また、各タスクのデータ処理プロセスは3つの処理部332,334,336による処理をすべて含んでいるものと仮定する。
【0028】
図4は、ジョブ受付時の処理手順を示すフローチャートである。ステップT1においてジョブ受付部302がジョブを受け付けると、ステップT2においてジョブ内容解析部304がジョブの内容を解析してタスクに分割し、タスク情報登録部310にタスクを登録する。ステップT3では、タスク管理部306が即時実行可能なタスクがあるか否かを判断する。ステップT3の判断は、タスク情報登録部310に登録されているすべてのタスクを対象として行われる。ここで、「即時実行可能なタスク」とは、そのタスクで使用する処理リソースが待ち状態にあるタスク(すなわち処理リソースが空き状態であるタスク)を意味する。例えば、すべてのタスクのデータ処理プロセスが終了している段階において、出力プロセスを含まずデータ処理プロセスのみを含むタスクが存在する場合には、そのタスクは「即時実行可能なタスク」に該当する。ステップT4では、タスク管理部306が、タスク情報登録部310内の優先順位テーブル312に従ってタスクの実行順を決定し、ステップT5でその実行順に従ってタスクを実行する。
【0029】
なお、実行中のタスクやプロセスが終了すると、実行タスク決定部320が、次に実行するタスクやプロセスを選択する。この選択手順については以下の第1,第2実施例で説明する。
【0030】
B.第1実施例:
本発明の実施例の処理手順を説明する前に、比較例における処理例を図5に即して説明する。この比較例においても、2つのデータ処理実行部330,340(図2)で2つのデータ処理プロセスを並行して実行できるものとしている。図5の時刻t1以前では、2つのタスクTSK(1),TSK(2)のデータ処理プロセス(両端に矢印が付された実線で示す)が実行されている。また、3つの実行待ちタスクTSK(3)〜TSK(5)が存在しており、これらの実行待ちタスクTSK(3)〜TSK(5)には優先度1〜3が順次割り当てられている。最初の3つのタスクTSK(1),TSK(2),TSK(3)は出力プロセス(両端に矢印が付された破線で示す)を有している。一方、2つの実行待ちタスクTSK(4),TSK(5)はデータ処理プロセスのみを有しており、出力プロセスを有してない。
【0031】
図5の比較例では、時刻t1において実行中タスクTSK(1)のデータ処理プロセスが終了すると、優先度の最も高い実行待ちタスクTSK(3)のデータ処理プロセスが開始される。同様に、時刻t2において実行待ちタスクTSK(4)のデータ処理プロセスが開始され、時刻t3において実行待ちタスクTSK(5)のデータ処理プロセスが開始される。このように、タスクは優先度順に開始され、また、2つのデータ処理プロセスが同時に実行されるようにタスクが順次開始される。また、図1に示すシステムでは出力機200が1台だけなので、出力プロセスは同時に1つだけが実行可能である。このため、出力プロセスについては、1つのタスクの出力プロセスが終了した後に、次のタスクの出力プロセスが実行される。
【0032】
図6は、本発明の第1実施例における実行タスクの決定手順を示すフローチャートである。また、図7は、第1実施例における実行タスクの決定とその実行結果を示す説明図である。図6のステップS1では、実行中タスクのデータ処理プロセスが完了したか否かが判断され、完了するとステップS2以降の処理が実行される。
【0033】
ステップS2では、第1優先度タスクが出力タスクであるか否かが判断される。ここで、「第1優先度タスク」とは、実行待ちタスクの中で最も優先度の高いタスクを意味し、「出力タスク」は出力プロセスを含むタスクを意味する。図7(A)は、時刻t1において図6の手順で実行される処理内容を示している。図7(A)の5つのタスクTSK(1)〜TSK(5)における製版処理の処理内容(すなわち各プロセスの所要時間)は、図5に示した比較例のものと同じである。時刻t1における第1優先度タスクTSK(3)は、出力タスク(出力プロセスを含むタスク)である。第1優先度タスクが非出力タスク(出力プロセスを含まないタスク)である場合には、ステップS2からステップS8に移行し、第1優先度タスクのデータ処理プロセスが実行される。この理由は、第1優先度タスクが非出力タスクのときには、そのデータ処理プロセスを直ちに実行することによって、実行待ちタスクの中でも優先度の最も高い第1優先度タスクを早期に完了できるからである。
【0034】
一方、第1優先度タスクが出力タスクである場合には、ステップS3において、第2優先度タスク以降の実行待ちタスクの中に非出力タスクが存在するか否かが判断される。ここで、「第2優先度タスク」とは、実行待ちタスクの中の第2優先度のタスクを意味する。第2優先度タスク以降に非出力タスクが存在しない場合には、ステップS8において出力タスクである第1優先度タスクをそのまま実行する。一方、第2優先度タスク以降に非出力タスクが存在する場合には、ステップS4において、第1優先度タスクの開始予定時刻tp1が予測される。
【0035】
第1優先度タスクTSK(3)の開始予定時刻tp1は以下のように予測される(図7(A)参照)。まず、処理時間算出部322(図2)が、実行中タスクTSK(1),TSK(2)の出力プロセスの処理時間(予測出力時間)を予測する。この予測は、タスク情報登録部310に登録されている各タスクのタスク情報に基づいて実行される。処理時間算出部322は、さらに、第1優先度タスクTSK(3)のデータ処理プロセスの処理時間を予測する。時刻予測部324は、2つの実行中タスクTSK(1),TSK(2)の出力プロセスの予測出力時間を加算することによって、第1優先度タスクTSK(3)の出力プロセスの開始時刻tp0を予測する。この予測は、本実施例のシステムでは出力機200(図1)は1台だけであり、出力機200の待ち時間が実質的に発生しないように、各タスクの出力プロセスが1つずつ順次実行されることを前提にしている。ここで、「出力機200の待ち時間が実質的に発生しない」とは、出力機200が稼働可能な状態でデータ転送を待っている時間が発生しないことを意味している。通常は、出力機200の画像記録媒体(感光材など)を交換するために時間を要する場合が多いが、そのような時間は「出力機200の待ち時間」には含まれない。時刻予測部324は、さらに、第1優先度タスクTSK(3)の出力プロセスの予測開始時刻tp0から、第1優先度タスクTSK(3)のデータ処理プロセスの予測処理時間を減算することによって、第1優先度タスクTSK(3)のデータ処理プロセスの開始予定時刻tp1を算出する。
【0036】
図6のステップS5では、第2優先度以降で最も優先度の高い非出力タスクの終了予定時刻tp2が予測される。図7(A)の例では、最も優先度の高い非出力タスクは2番目の実行待ちタスクTSK(4)である。この非出力タスクTSK(4)の終了予定時刻tp2は、処理時間算出部322で算出される処理時間の予測値から決定される。
【0037】
なお、実行待ちのタスクとして複数の非出力タスクが存在する場合には、ステップS5において非出力タスクのそれぞれに関して終了予定時刻が予測される。図7(A)の例では、3番目の実行待ちタスクTSK(5)に関しても、終了予定時刻が予測される。
【0038】
ステップS6では、第1優先度タスクの開始予定時刻tp1と非出力タスクtp2の終了予定時刻tp2とを比較し、第1優先度タスクの開始予定時刻tp1よりも非出力タスクtp2の終了予定時刻tp2の方が早い場合には、非出力タスクを選択して実行する(ステップS7)。図7(A)の例では、非出力タスクTSK(4)の終了予定時刻tp2の方が、第1優先度タスクTSK(3)の開始予定時刻tp1よりも早いので、時刻t1ではこの非出力タスクTSK(4)が選択されて実行される(図7(B))。なお、ステップS6の条件を満足する非出力タスクが複数存在する場合には、その中で最も優先度の高いタスクが実行される。このようにする理由は、優先順位をなるべく保ったままでなるべく効率的に処理を進めることができるからである。
【0039】
なお、非出力タスクTSK(5)の終了予定時刻は第1優先度タスクTSK(3)の開始予定時刻tp1よりも遅いので、この非出力タスクTSK(5)はステップS6の条件を満足しない。従って、仮に、図7(A)の2つの非出力タスクTSK(4),TSK(5)の優先度が図7(A)とは逆である場合にも、非出力タスクTSK(4)の方が優先的に実行される。
【0040】
ステップS6において、第1優先度タスクの開始予定時刻tp1よりも終了予定時刻が早い非出力タスクが存在しない場合には、第1優先度タスクのデータ処理プロセスを実行する(ステップS8)。
【0041】
図7(B)は、第1実施例の処理手順によって決定された実行順序を示している。時刻t1において第1のタスクTSK(1)のデータ処理プロセスが終了すると、実行待ちであった非出力タスクTSK(4)が選択されてそのデータ処理プロセスが開始される。また、時刻t2で第2のタスクTSK(2)のデータ処理プロセスが終了すると、図6の手順により、その時点で実行待ちであった非出力タスクTSK(5)が選択されて、そのデータ処理プロセスが開始される。なお、時刻t1における第1優先度タスクTSK(3)のデータ処理プロセスは、その開始予定時刻tp1から開始される。換言すれば、第1優先度タスクTSK(3)のデータ処理プロセスは、その開始予定時刻tp1まで待機している。出力タスクのデータ処理プロセスをその開始予定時刻tp1まで待機させるようにすれば、その間に前述した図4の手順において即時実行可能なタスクが受け付けられた場合に、そのタスクをより早期に実行することができるという利点がある。
【0042】
図8は、上述した比較例と第1実施例の結果とを比較して示している。図8(A)は図5と同じものであり、図8(B)は図7(B)と同じものである。この図から理解できるように、第1実施例では、第4タスクTSK(4)の終了時刻が時間d1だけ早くなっており、また、第5タスクTSK(5)の終了時刻が時間d2だけ早くなっている。また、出力プロセスは、出力機200に待ち時間が実質的に発生しないように順次実行されている。従って、第1実施例では、出力機200の効率を低下させることなく、データ処理プロセスを比較例よりも効率的に実行することができる。また、出力プロセスを伴わないタスクをより短時間に効率良く処理することができるという利点がある。
【0043】
C.第2実施例:
図9は、本発明の第2実施例における実行タスクの決定手順を示すフローチャートである。また、図10は、比較例と第2実施例における実行タスクの決定とその実行結果を示す説明図である。図9のステップS11では、実行中タスクの何らかのプロセス(データ処理プロセスまたは出力プロセス)が完了したか否かが判断され、完了するとステップS12以降の処理が実行される。
【0044】
ステップS12では、出力タスクの予約数Nが所定の上限値Nmaxに達しているか否かが判断される。ここで、「出力タスクの予約数N」とは、出力プロセスを実行中のタスクの数と、データ処理プロセスの開始後で出力プロセスの開始前であるタスクの数と、の合計である。換言すれば、出力タスクの予約数Nは、データ処理プロセスの開始後であって出力プロセスの完了前であるタスクの数である。例えば、図10(B)に示す時刻t1では、出力タスクの予約数Nは2である。
【0045】
「出力タスクの予約数の上限値Nmax」は、適宜設定することが可能である。なお、この実施例ではNmax=2に設定されているものと仮定する。この「出力タスクの予約数の上限値Nmax」の意味については後述する。
【0046】
出力タスクの予約数Nが上限値Nmaxに達していない場合には、第1優先度タスクTSK(3)をそのまま実行する(ステップS16)。一方、出力タスクの予約数Nが上限値Nmaxに達している場合には、ステップS13において実行待ちタスクに非出力タスクが存在するか否かが判断され、非出力タスクが存在しなければステップS11に戻る。この理由は、出力タスク(出力プロセスを伴うタスク)の実行を開始すると、そのタスクの出力プロセスを開始する際に、ある程度の待機が必要となる可能性が高いからである。この場合には、出力待ちのタスクが多数蓄積されるので、全体の処理効率が低下する可能性がある。図10(B)の例では、時刻t1においてN=Nmax=2であり、また、非出力タスクである実行待ちタスクTSK(4),TSK(5)が存在するので、ステップS14が実行される。ステップS14では、非出力タスクのデータ処理プロセスを実行するための処理リソースに空きがあるか否かが判断される。処理リソースに空きがなければステップS11に戻り、空きがあればステップS15においてその非出力タスクが実行される。
【0047】
図9の手順は、データ処理プロセスまたは出力プロセスが終了するたびに実行される。図10(B)の例では、第1のタスクTSK(1)のデータ処理プロセスが終了する時刻t1ではN=Nmax=2なので、実行待ちの非出力タスクである第4のタスクTSK(4)が開始される。また、第2のタスクTSK(2)のデータ処理プロセスが終了する時刻t2でもN=Nmax=2なので、実行待ちの非出力タスクである第5のタスクTSK(5)が開始される。そして、第1のタスクTSK(1)の出力プロセスが終了する時刻t4では、出力タスク予約数Nが1に減るので、その際の第1優先度タスクTSK(3)が開始される。
【0048】
図10(A),図10(B)を比較すれば分かるように、第2実施例においても、第4タスクTSK(4)の終了時刻が時間d1だけ早くなっており、また、第5タスクTSK(5)の終了時刻が時間d2だけ早くなっている。また、出力プロセスは、出力機200に待ち時間が実質的に発生しないように順次実行されている。従って、第2実施例においても、出力機200の効率を低下させることなく、データ処理プロセスを比較例よりも効率的に実行することができる。また、出力プロセスを伴わないタスクをより短時間に多数処理することができる。
【0049】
なお、図9のステップS12で使用された「出力タスクの予約数の上限値Nmax」は、以下のように設定されている。すなわち、「出力タスクの予約数の上限値Nmax」は、第1優先度タスクTSK(3)のデータ処理プロセスに優先してより優先度の低い非出力タスクTSK(4)のデータ処理プロセスを実行した場合にも、第1優先度タスクTSK(3)の出力プロセスを開始する際に待ち時間が発生しないことが期待される数(そのように予測される数)に設定されている。第2実施例では、このような比較的簡易な処理により、出力機200に待ち時間が発生することを防止しつつ、データ処理プロセスをより早く実行することが可能である。
【0050】
上述した第1、第2実施例を考慮すると、実行タスク決定部320は、以下のように実行タスクを決定していると考えることができる。
(1)実行待ちである複数のタスクTSK(3)〜(5)の中で最も優先度の高い第1優先度タスクTSK(3)が出力プロセスを含み、かつ、第1優先度タスクTSK(3)よりも優先度の低いタスクTSK(4),TSK(5)の中に出力プロセスを含まない非出力タスクが存在する、という条件が成立するか否かを判定する。
(2)上記の条件が成立するときに、第1優先度タスクTSK(3)のデータ処理プロセスに優先して非出力タスクTSK(4)のデータ処理プロセスを実行しても第1優先度タスクTSK(3)の出力プロセスを開始する際に待ち時間が発生しないと予測されるか否かを判定する。
(3)上記の予測が成立する場合には、第1優先度タスクTSK(3)に優先して非出力タスクTSK(4)のデータ処理プロセスを開始させる。
【0051】
このような判断を行う際の実際の判断基準としては、第1実施例で用いたプロセスの開始予定時刻や終了予定時刻を利用することもでき、また、第2実施例で用いた出力タスクの予約数Nを用いることもできる。但し、第1実施例や第2実施例で用いた基準以外の種々の判断基準を適用することも可能である。
【0052】
なお、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば以下のような変形例も可能である。
【0053】
上記各実施例では、出力機200が1つだけであると仮定していたが、複数の出力機を利用可能としてもよい。複数の出力機を利用可能な場合には、同時に複数の出力プロセスが実行可能となる。この場合に、第1実施例では、各出力機毎に時刻tp1,tp2(図7(A))を予測し、これに応じて実行タスクを決定することができる。また、第2実施例では、各出力機毎に出力タスクの予約数の上限値Nmaxをそれぞれ設定しておき、これを用いて図9の処理手順を実行することができる。
【図面の簡単な説明】
【図1】本発明の一実施例である製版システムの全体構成を示す説明図。
【図2】データ処理部130の機能的構成を示すブロック図。
【図3】データ処理実行部330の内部構成を示すブロック図。
【図4】本発明の実施例におけるジョブ受付時の処理手順を示すフローチャート。
【図5】比較例の処理例を示す説明図。
【図6】第1実施例における実行タスクの決定手順を示すフローチャート。
【図7】第1実施例における実行タスクの決定とその実行結果を示す説明図。
【図8】比較例と第1実施例の結果を示す説明図。
【図9】第2実施例における実行タスクの決定手順を示すフローチャート。
【図10】第2実施例における実行タスクの決定とその実行結果を示す説明図。
【符号の説明】
100…印刷データ処理装置
110…キーボード
120…モニタ
130…データ処理部
140…ハードディスク装置
200…出力機
302…ジョブ受付部
304…ジョブ内容解析部
306…タスク管理部
310…タスク情報登録部
312…優先順位テーブル
320…実行タスク決定部
322…処理時間算出部
324…時刻予測部
330,340…データ処理実行部
332…プリフライト処理部
334…自動製版処理部
340…RIP展開処理部
350…処理結果出力部[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a technique for generating print output data representing a print image and visually outputting the print image on an image recording medium.
[0002]
[Prior art]
With the advance of computer technology, digitization using a computer has become widespread even in a plate making process for commercial printing. In the digitized plate making process, first, the print data processing device performs data processing on document data (for example, PDF data or PostScript data; PostScript is a trademark of Adobe), and creates print output data. Then, the print output data is transferred to an output device (a film recorder or a plate making machine (CTP)), and a print image such as a net film or a plate is visually output on an image recording medium. Alternatively, a printing machine that directly prints a printed matter from printed matter output data can be used as the output machine.
[0003]
[Problems to be solved by the invention]
In many cases, the print data processing device can execute a plurality of data processing processes in parallel. On the other hand, the output device can usually output only one print image. Further, since the output device is more expensive than the print data processing device, it is preferable to execute a task so as to operate the output device as efficiently as possible. Here, the “task” means one unit of work in the print data processing apparatus, and includes at least a data processing process for creating print output data in the print data processing apparatus, and is generated by the data processing process. Means one work unit that may further include an output process of transferring the output data of the printed matter to the output device. However, conventionally, in such a print data processing apparatus, a technique for efficiently determining the execution order of tasks has not been known.
[0004]
SUMMARY An advantage of some aspects of the invention is to provide a technique for efficiently determining a task execution order in a print data processing apparatus.
[0005]
[Means for Solving the Problems and Their Functions and Effects]
In order to achieve at least a part of the above object, a print data processing apparatus according to the present invention provides a print data processing apparatus for generating print output data to be supplied to an output device for visually outputting a print image on an image recording medium. A print data processing device that performs a processing process,
A data processing execution unit capable of executing a plurality of data processing processes in parallel,
Regarding tasks that include at least the data processing process and may further include an output process of transferring print output data generated in the data processing process to the output device, the contents of the process included in each task and the priority of each task. A task information registration unit capable of registering task information including a plurality of tasks,
When the running data processing process ends, based on the task information registered in the task information registration unit, an execution task determination unit that determines a task to start the next data processing process,
With
The execution task determination unit includes: a first priority task having the highest priority among a plurality of tasks registered in the task information registration unit and waiting to be executed, including the output process; When there is a non-output task that does not include the output process among tasks of lower priority than the task, the data processing process of the non-output task is executed in preference to the data processing process of the first priority task. Even if it is predicted that no waiting time will occur when starting the output process of the first priority task, the data processing process of the non-output task is started in preference to the first priority task. It is characterized by making it.
[0006]
According to this print data processing apparatus, the task for starting the data processing process is selected so as to minimize the waiting time when the output process of the first priority task is started. The order can be determined.
[0007]
Note that the execution task determination unit includes:
(I) Predicting a scheduled start time as a time at which the data processing process of the first priority task should be started in order to prevent a waiting time when starting the output process of the first priority task. ,
(Ii) predicting the expected end time of the non-output task when it is assumed that the non-output task starts immediately after the end of the currently executing data processing process;
(Iii) When the scheduled end time of the non-output task is earlier than the scheduled start time of the first priority task, the data processing process of the non-output task is started in preference to the first priority task. You may do so.
[0008]
According to this configuration, it is possible to realize, with considerable accuracy, that no waiting time occurs when starting the output process of the first priority task.
[0009]
Further, the execution task determination unit includes:
When the first priority task includes an output process, the start of the data processing process of the first priority task may be waited until the scheduled start time of the first priority task.
[0010]
According to this configuration, while waiting for the start of the first priority task, another task may be able to be executed, and in this case, the other task can be executed earlier.
[0011]
Note that the execution task determination unit includes:
(I) at the end of the currently executing data processing process, the number of tasks that are executing the output process and the number of tasks that have not executed the output process after the execution of the data processing process is started. Calculate the total number of output task reservations,
(Ii) when the output task reservation number is less than a predetermined upper limit value, start a data processing process of the first priority task;
(Iii) If the reserved number of output tasks has reached a predetermined upper limit, a data processing process of the non-output task may be started.
[0012]
According to this configuration, it is possible to minimize the waiting time when starting the output process of the first priority task by relatively simple processing.
[0013]
The present invention can be realized in various forms. For example, a print data processing device, a control method and a control device thereof, a computer program for realizing the functions of the method or the device, and a computer program thereof Can be realized in the form of a recording medium or the like in which is recorded.
[0014]
BEST MODE FOR CARRYING OUT THE INVENTION
Next, embodiments of the present invention will be described in the following order based on examples.
A. Equipment configuration:
B. First embodiment:
C. Second embodiment:
[0015]
A. Equipment configuration:
FIG. 1 is an explanatory diagram showing the entire configuration of a plate making system according to one embodiment of the present invention. The plate making system includes a print
[0016]
FIG. 2 is a block diagram illustrating a functional configuration of the
[0017]
The
[0018]
The execution
[0019]
The data
[0020]
The printed matter output data generated by the data
[0021]
The function of each unit in the
[0022]
FIG. 3 shows the internal configuration of the data
[0023]
(1) Preflight processing unit 332:
This is a so-called pre-process, which is a process for analyzing the contents of the document data and confirming whether or not the process for plate making can be executed without any problem. For example, from the description of the PDF file or the PostScript file, it is confirmed whether (1) the existence of a file of an object linked in the document, (2) the presence or absence of nonstandard font data embedded in the document, and the like. You. If there are missing data or files, the user is requested to add data or specify specifications.
[0024]
(2) Automatic plate making section 334:
Performs plate making processes such as so-called Sinose, white border, and trapping.
[0025]
(3) RIP expansion processing unit 336:
So-called raster image processing is performed to create raster data (print output data) representing a print image separated into each ink color in accordance with the output resolution.
[0026]
The second data
[0027]
It is not necessary that all the data processing execution units in the
[0028]
FIG. 4 is a flowchart illustrating a processing procedure at the time of accepting a job. When the
[0029]
When the task or process being executed ends, the execution
[0030]
B. First embodiment:
Before describing the processing procedure of the embodiment of the present invention, a processing example in a comparative example will be described with reference to FIG. Also in this comparative example, two data
[0031]
In the comparative example of FIG. 5, when the data processing process of the running task TSK (1) ends at time t1, the data processing process of the execution waiting task TSK (3) having the highest priority starts. Similarly, the data processing process of the task waiting for execution TSK (4) starts at time t2, and the data processing process of task TSK (5) waiting for execution starts at time t3. Thus, tasks are started in priority order, and tasks are started sequentially so that two data processing processes are executed simultaneously. Also, in the system shown in FIG. 1, since there is only one
[0032]
FIG. 6 is a flowchart showing a procedure for determining an execution task in the first embodiment of the present invention. FIG. 7 is an explanatory diagram showing the determination of the execution task and the execution result in the first embodiment. In step S1 of FIG. 6, it is determined whether or not the data processing process of the task under execution has been completed.
[0033]
In step S2, it is determined whether the first priority task is an output task. Here, "first priority task" means a task having the highest priority among tasks waiting to be executed, and "output task" means a task including an output process. FIG. 7A shows the contents of the processing executed in the procedure of FIG. 6 at time t1. The contents of the plate making process in the five tasks TSK (1) to TSK (5) in FIG. 7A (that is, the time required for each process) are the same as those in the comparative example shown in FIG. The first priority task TSK (3) at time t1 is an output task (a task including an output process). If the first priority task is a non-output task (a task that does not include an output process), the process moves from step S2 to step S8, and the data processing process of the first priority task is executed. The reason is that when the first priority task is a non-output task, by immediately executing the data processing process, the highest priority first priority task among the tasks waiting to be executed can be completed early. .
[0034]
On the other hand, when the first priority task is the output task, in step S3, it is determined whether or not a non-output task exists among the tasks waiting to be executed after the second priority task. Here, the “second priority task” means a task of the second priority among tasks waiting to be executed. If there is no non-output task after the second priority task, the first priority task which is the output task is executed as it is in step S8. On the other hand, when there is a non-output task after the second priority task, the scheduled start time tp1 of the first priority task is predicted in step S4.
[0035]
The scheduled start time tp1 of the first priority task TSK (3) is predicted as follows (see FIG. 7A). First, the processing time calculation unit 322 (FIG. 2) predicts the processing time (predicted output time) of the output process of the running tasks TSK (1) and TSK (2). This prediction is performed based on task information of each task registered in the task
[0036]
In step S5 of FIG. 6, the expected end time tp2 of the non-output task having the highest priority after the second priority is predicted. In the example of FIG. 7A, the non-output task having the highest priority is the second task waiting to be executed TSK (4). The scheduled end time tp2 of the non-output task TSK (4) is determined from the predicted value of the processing time calculated by the processing
[0037]
If there are a plurality of non-output tasks as tasks waiting to be executed, the scheduled end time is predicted for each of the non-output tasks in step S5. In the example of FIG. 7A, the scheduled end time is also predicted for the third execution waiting task TSK (5).
[0038]
In step S6, the scheduled start time tp1 of the first priority task is compared with the scheduled end time tp2 of the non-output task tp2, and the scheduled end time tp2 of the non-output task tp2 is compared with the scheduled start time tp1 of the first priority task. If it is earlier, a non-output task is selected and executed (step S7). In the example of FIG. 7A, the scheduled end time tp2 of the non-output task TSK (4) is earlier than the scheduled start time tp1 of the first priority task TSK (3). The task TSK (4) is selected and executed (FIG. 7B). If there are a plurality of non-output tasks that satisfy the condition of step S6, the task with the highest priority is executed. The reason for this is that the processing can proceed as efficiently as possible while maintaining the priority order as much as possible.
[0039]
Since the scheduled end time of the non-output task TSK (5) is later than the scheduled start time tp1 of the first priority task TSK (3), the non-output task TSK (5) does not satisfy the condition of step S6. Therefore, even if the priorities of the two non-output tasks TSK (4) and TSK (5) in FIG. 7A are opposite to those in FIG. 7A, the non-output task TSK (4) Is executed preferentially.
[0040]
In step S6, if there is no non-output task whose scheduled end time is earlier than the scheduled start time tp1 of the first priority task, the data processing process of the first priority task is executed (step S8).
[0041]
FIG. 7B shows the execution order determined by the processing procedure of the first embodiment. When the data processing process of the first task TSK (1) ends at time t1, the non-output task TSK (4) waiting to be executed is selected and the data processing process is started. When the data processing process of the second task TSK (2) ends at time t2, the non-output task TSK (5) waiting to be executed at that time is selected according to the procedure of FIG. The process starts. The data processing process of the first priority task TSK (3) at the time t1 is started from the scheduled start time tp1. In other words, the data processing process of the first priority task TSK (3) waits until the scheduled start time tp1. If the data processing process of the output task is made to wait until the scheduled start time tp1, if a task that can be immediately executed in the above-described procedure of FIG. 4 is received, the task can be executed earlier. There is an advantage that can be.
[0042]
FIG. 8 shows a comparison between the above-described comparative example and the result of the first embodiment. FIG. 8A is the same as FIG. 5, and FIG. 8B is the same as FIG. 7B. As can be understood from this figure, in the first embodiment, the end time of the fourth task TSK (4) is earlier by the time d1, and the end time of the fifth task TSK (5) is earlier by the time d2. Has become. The output process is sequentially executed so that the
[0043]
C. Second embodiment:
FIG. 9 is a flowchart showing a procedure for determining an execution task in the second embodiment of the present invention. FIG. 10 is an explanatory diagram showing the determination of the execution task and the execution result in the comparative example and the second embodiment. In step S11 in FIG. 9, it is determined whether or not any process (data processing process or output process) of the task being executed has been completed. When the process is completed, the processes in and after step S12 are executed.
[0044]
In step S12, it is determined whether or not the number N of reservations of the output task has reached a predetermined upper limit value Nmax. Here, the “reserved number N of output tasks” is the sum of the number of tasks currently executing the output process and the number of tasks after the data processing process is started but before the output process is started. In other words, the reserved number N of output tasks is the number of tasks that are after the start of the data processing process and before the completion of the output process. For example, at time t1 shown in FIG. 10B, the reservation number N of the output task is two.
[0045]
The “upper limit Nmax of the number of reserved output tasks” can be set as appropriate. In this embodiment, it is assumed that Nmax = 2. The meaning of the “upper limit Nmax of the number of reserved output tasks” will be described later.
[0046]
If the reserved number N of the output tasks has not reached the upper limit Nmax, the first priority task TSK (3) is executed as it is (step S16). On the other hand, if the reserved number N of the output tasks has reached the upper limit value Nmax, it is determined in step S13 whether or not there is a non-output task among the tasks waiting to be executed. Return to The reason for this is that when the execution of an output task (a task involving an output process) is started, it is highly likely that a certain amount of waiting is required when starting the output process of that task. In this case, since a large number of tasks waiting for output are accumulated, the overall processing efficiency may be reduced. In the example of FIG. 10B, at time t1, N = Nmax = 2, and there are execution waiting tasks TSK (4) and TSK (5) which are non-output tasks, so that step S14 is executed. . In step S14, it is determined whether or not there is free processing resources for executing the data processing process of the non-output task. If there is no free space in the processing resource, the process returns to step S11. If there is a free space, the non-output task is executed in step S15.
[0047]
The procedure of FIG. 9 is executed each time the data processing process or the output process ends. In the example of FIG. 10B, N = Nmax = 2 at the time t1 when the data processing process of the first task TSK (1) ends, so the fourth task TSK (4), which is a non-output task waiting to be executed, Is started. Also, at time t2 when the data processing process of the second task TSK (2) ends, since N = Nmax = 2, the fifth task TSK (5), which is a non-output task waiting to be executed, is started. Then, at time t4 when the output process of the first task TSK (1) ends, the number N of reserved output tasks is reduced to 1, and the first priority task TSK (3) at that time is started.
[0048]
As can be seen by comparing FIGS. 10A and 10B, also in the second embodiment, the end time of the fourth task TSK (4) is earlier by the time d1, and the fifth task TSK (4) The end time of TSK (5) is earlier by time d2. The output process is sequentially executed so that the
[0049]
The “upper limit Nmax of the number of reserved output tasks” used in step S12 in FIG. 9 is set as follows. That is, the “upper limit Nmax of the number of reserved output tasks” executes the data processing process of the non-output task TSK (4) having a lower priority in preference to the data processing process of the first priority task TSK (3). Also in this case, the number is set to a number expected to have no waiting time when starting the output process of the first priority task TSK (3) (the number predicted as such). In the second embodiment, such a relatively simple process makes it possible to execute the data processing process more quickly while preventing the
[0050]
Considering the first and second embodiments described above, it can be considered that the execution
(1) The first priority task TSK (3) having the highest priority among the plurality of tasks TSK (3) to (5) waiting to be executed includes an output process, and the first priority task TSK (3) It is determined whether or not the condition that a non-output task that does not include an output process exists in tasks TSK (4) and TSK (5) having a lower priority than 3).
(2) When the above condition is satisfied, even if the data processing process of the non-output task TSK (4) is executed prior to the data processing process of the first priority task TSK (3), the first priority task When starting the output process of TSK (3), it is determined whether or not it is predicted that no waiting time will occur.
(3) If the above prediction is established, the data processing process of the non-output task TSK (4) is started in preference to the first priority task TSK (3).
[0051]
As an actual criterion for making such a determination, the scheduled start time and the scheduled end time of the process used in the first embodiment can be used, and the output task used in the second embodiment can be used. The number of reservations N can also be used. However, it is also possible to apply various judgment criteria other than the criteria used in the first embodiment and the second embodiment.
[0052]
It should be noted that the present invention is not limited to the above-described examples and embodiments, and can be carried out in various modes without departing from the gist thereof. For example, the following modified examples are also possible.
[0053]
In the above embodiments, it is assumed that there is only one
[Brief description of the drawings]
FIG. 1 is an explanatory diagram showing an entire configuration of a plate making system according to an embodiment of the present invention.
FIG. 2 is a block diagram showing a functional configuration of a
FIG. 3 is a block diagram showing an internal configuration of a data
FIG. 4 is a flowchart showing a processing procedure at the time of accepting a job in the embodiment of the present invention.
FIG. 5 is an explanatory diagram illustrating a processing example of a comparative example.
FIG. 6 is a flowchart showing a procedure for determining an execution task in the first embodiment.
FIG. 7 is an explanatory diagram showing a determination of an execution task and an execution result in the first embodiment.
FIG. 8 is an explanatory diagram showing the results of the comparative example and the first embodiment.
FIG. 9 is a flowchart showing a procedure for determining an execution task in the second embodiment.
FIG. 10 is an explanatory diagram showing a determination of an execution task and an execution result in the second embodiment.
[Explanation of symbols]
100 print data processing device
110 ... Keyboard
120 ... Monitor
130 ... data processing unit
140 ... Hard disk device
200 ... Output machine
302: Job receiving unit
304: Job content analysis unit
306 ... Task management unit
310 Task information registration unit
312: Priority table
320: Execution task determination unit
322... Processing time calculation unit
324: time prediction unit
330, 340: Data processing execution unit
332: Preflight processing unit
334: Automatic plate making processing unit
340: RIP expansion processing unit
350 ... Processing result output unit
Claims (6)
複数のデータ処理プロセスを並列に実行可能なデータ処理実行部と、
少なくとも前記データ処理プロセスを含み、前記データ処理プロセスで生成された印刷物出力データを前記出力機に転送する出力プロセスをさらに含み得るタスクに関して、各タスクに含まれるプロセスの内容と各タスクの優先度とを含むタスク情報を複数のタスクについて登録可能なタスク情報登録部と、
実行中のデータ処理プロセスが終了したときに、前記タスク情報登録部に登録されているタスク情報に基づいて、次にデータ処理プロセスを開始するタスクを決定する実行タスク決定部と、
を備え、
前記実行タスク決定部は、前記タスク情報登録部に登録されて実行待ちである複数のタスクの中で最も優先度の高い第1優先度タスクが前記出力プロセスを含み、かつ、前記第1優先度タスクよりも優先度の低いタスクの中に前記出力プロセスを含まない非出力タスクが存在するときに、前記第1優先度タスクのデータ処理プロセスに優先して前記非出力タスクのデータ処理プロセスを実行しても前記第1優先度タスクの出力プロセスを開始する際に待ち時間が発生しないと予測される場合には、前記第1優先度タスクに優先して前記非出力タスクのデータ処理プロセスを開始させることを特徴とする印刷データ処理装置。A print data processing apparatus for performing a data processing process for generating print output data to be supplied to an output device for visually outputting a print image on an image recording medium,
A data processing execution unit capable of executing a plurality of data processing processes in parallel,
Regarding tasks that include at least the data processing process and may further include an output process of transferring print output data generated in the data processing process to the output device, the contents of the process included in each task and the priority of each task. A task information registration unit capable of registering task information including a plurality of tasks,
When the running data processing process ends, based on the task information registered in the task information registration unit, an execution task determination unit that determines a task to start the next data processing process,
With
The execution task determination unit includes: a first priority task having the highest priority among a plurality of tasks registered in the task information registration unit and waiting to be executed, including the output process; When there is a non-output task that does not include the output process among tasks of lower priority than the task, the data processing process of the non-output task is executed in preference to the data processing process of the first priority task. Even if it is predicted that no waiting time will occur when starting the output process of the first priority task, the data processing process of the non-output task is started prior to the first priority task. A print data processing apparatus characterized in that the print data is processed.
前記実行タスク決定部は、
(i)前記第1優先度タスクの出力プロセスを開始する際に待ち時間が発生しないようにするために前記第1優先度タスクのデータ処理プロセスを開始すべき時刻としての開始予定時刻を予測し、
(ii)前記実行中のデータ処理プロセスの終了後に前記非出力タスクを直ちに開始すると仮定したときの前記非出力タスクの終了予定時刻を予測し、
(iii)前記第1優先度タスクの開始予定時刻よりも前記非出力タスクの終了予定時刻の方が早いときには、前記第1優先度タスクに優先して前記非出力タスクのデータ処理プロセスを開始させる、印刷データ処理装置。The print data processing device according to claim 1,
The execution task determination unit,
(I) Predicting a scheduled start time as a time at which the data processing process of the first priority task should be started in order to prevent a waiting time when starting the output process of the first priority task. ,
(Ii) predicting the expected end time of the non-output task when it is assumed that the non-output task starts immediately after the end of the currently executing data processing process;
(Iii) when the scheduled end time of the non-output task is earlier than the scheduled start time of the first priority task, the data processing process of the non-output task is started prior to the first priority task. , Print data processing device.
前記実行タスク決定部は、
前記第1優先度タスクが出力プロセスを含むときに、前記第1優先度タスクのデータ処理プロセスの開始を前記第1優先度タスクの開始予定時刻まで待機させる、印刷データ処理装置。3. The print data processing device according to claim 2, wherein
The execution task determination unit,
A print data processing device, wherein when the first priority task includes an output process, a start of a data processing process of the first priority task is waited until a scheduled start time of the first priority task.
前記実行タスク決定部は、
(i)前記実行中のデータ処理プロセスの終了時に、前記出力プロセスを実行中のタスクの数と、前記データ処理プロセスの実行開始後であって前記出力プロセスを未実行であるタスクの数との合計である出力タスク予約数を算出し、
(ii)前記出力タスク予約数が所定の上限値未満の場合には、前記第1優先度タスクのデータ処理プロセスを開始させ、
(iii)前記出力タスク予約数が所定の上限値に達している場合には、前記非出力タスクのデータ処理プロセスを開始させる、印刷データ処理装置。The print data processing device according to claim 1,
The execution task determination unit,
(I) at the end of the currently executing data processing process, the number of tasks that are executing the output process and the number of tasks that have not executed the output process after the execution of the data processing process is started. Calculate the total number of output task reservations,
(Ii) when the output task reservation number is less than a predetermined upper limit value, start a data processing process of the first priority task;
(Iii) A print data processing apparatus for starting a data processing process of the non-output task when the reserved number of output tasks has reached a predetermined upper limit.
(a)少なくとも前記データ処理プロセスを含み、前記データ処理プロセスで得られた印刷物出力データを前記出力機に転送する出力プロセスをさらに含むことが可能なタスクに関して、各タスクに含まれるプロセスの内容と各タスクの優先度とを含むタスク情報を複数のタスクをメモリに登録する工程と、
(b)実行中のデータ処理プロセスが終了したときに、前記メモリに登録されているタスク情報に基づいて、次にデータ処理プロセスを開始するタスクを決定する工程と、
を備え、
前記工程(c)は、
前記メモリに登録されて実行待ちである複数のタスクの中で最も優先度の高い第1優先度タスクが前記出力プロセスを含み、かつ、前記第1優先度タスクよりも優先度の低いタスクの中に前記出力プロセスを含まない非出力タスクが存在するときに、前記第1優先度タスクのデータ処理プロセスに優先して前記非出力タスクのデータ処理プロセスを実行しても前記第1優先度タスクの出力プロセスを開始する際に待ち時間が発生しない場合には、前記第1優先度タスクに優先して前記非出力タスクのデータ処理プロセスを開始することを特徴とする制御方法。A method of controlling a print data processing apparatus capable of executing a plurality of data processing processes for generating print output data to be supplied to an output device for visually outputting a print image on an image recording medium,
(A) With respect to a task that includes at least the data processing process and can further include an output process of transferring print output data obtained in the data processing process to the output device, the content of the process included in each task Registering a plurality of tasks in the memory with task information including the priority of each task,
(B) determining a task to start the next data processing process based on the task information registered in the memory when the currently executing data processing process ends;
With
The step (c) comprises:
The first priority task having the highest priority among the plurality of tasks registered in the memory and waiting to be executed includes the output process, and among tasks having lower priorities than the first priority task, When there is a non-output task that does not include the output process, even if the data processing process of the non-output task is executed prior to the data processing process of the first priority task, A control method characterized by starting a data processing process of the non-output task in preference to the first priority task if no waiting time occurs when starting the output process.
少なくとも前記データ処理プロセスを含み、前記データ処理プロセスで得られた印刷物出力データを前記出力機に転送する出力プロセスをさらに含むことが可能なタスクに関して、各タスクに含まれるプロセスの内容と各タスクの優先度とを含むタスク情報を複数のタスクをメモリに登録するタスク情報登録機能と、
実行中のデータ処理プロセスが終了したときに、前記メモリに登録されているタスク情報に基づいて、次にデータ処理プロセスを開始するタスクを決定するタスク決定機能と、
をコンピュータに実現させるプログラムを含み、
前記タスク決定機能は、前記メモリに登録されて実行待ちである複数のタスクの中で最も優先度の高い第1優先度タスクが前記出力プロセスを含み、かつ、前記第1優先度タスクよりも優先度の低いタスクの中に前記出力プロセスを含まない非出力タスクが存在するときに、前記第1優先度タスクのデータ処理プロセスに優先して前記非出力タスクのデータ処理プロセスを実行しても前記第1優先度タスクの出力プロセスを開始する際に待ち時間が発生しない場合には、前記第1優先度タスクに優先して前記非出力タスクのデータ処理プロセスを開始させる機能を含むことを特徴とするコンピュータプログラム。A task execution order is determined in a print data processing apparatus capable of executing a plurality of data processing processes for generating print output data to be supplied to an output device for visually outputting a print image on an image recording medium. Computer program for
Regarding a task that includes at least the data processing process and can further include an output process of transferring print output data obtained in the data processing process to the output device, the content of the process included in each task and the content of each task A task information registration function for registering task information including priority and a plurality of tasks in a memory;
A task determination function for determining a task to start the next data processing process based on the task information registered in the memory when the data processing process being executed is completed;
Including a program that causes a computer to implement
The task determination function is such that a first priority task having the highest priority among a plurality of tasks registered in the memory and waiting to be executed includes the output process, and has a higher priority than the first priority task. When there is a non-output task that does not include the output process among low-degree tasks, the data processing process of the non-output task may be performed in preference to the data processing process of the first priority task. A function of starting the data processing process of the non-output task in preference to the first priority task when no waiting time occurs when starting the output process of the first priority task. Computer program to do.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003140242A JP4060233B2 (en) | 2003-05-19 | 2003-05-19 | Task control for print processing |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003140242A JP4060233B2 (en) | 2003-05-19 | 2003-05-19 | Task control for print processing |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004341996A true JP2004341996A (en) | 2004-12-02 |
JP4060233B2 JP4060233B2 (en) | 2008-03-12 |
Family
ID=33529011
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003140242A Expired - Fee Related JP4060233B2 (en) | 2003-05-19 | 2003-05-19 | Task control for print processing |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4060233B2 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008276739A (en) * | 2007-04-05 | 2008-11-13 | Kyocera Mita Corp | Information processing system and information processing program |
JP2009241485A (en) * | 2008-03-31 | 2009-10-22 | Casio Electronics Co Ltd | Printing device |
JP2010125713A (en) * | 2008-11-27 | 2010-06-10 | Kyocera Mita Corp | Image forming apparatus |
JP2010149422A (en) * | 2008-12-25 | 2010-07-08 | Canon Inc | Information processing method, printer and program |
-
2003
- 2003-05-19 JP JP2003140242A patent/JP4060233B2/en not_active Expired - Fee Related
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008276739A (en) * | 2007-04-05 | 2008-11-13 | Kyocera Mita Corp | Information processing system and information processing program |
JP2009241485A (en) * | 2008-03-31 | 2009-10-22 | Casio Electronics Co Ltd | Printing device |
JP2010125713A (en) * | 2008-11-27 | 2010-06-10 | Kyocera Mita Corp | Image forming apparatus |
JP2010149422A (en) * | 2008-12-25 | 2010-07-08 | Canon Inc | Information processing method, printer and program |
Also Published As
Publication number | Publication date |
---|---|
JP4060233B2 (en) | 2008-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8584137B2 (en) | Image processing system for judging whether a partial job should be processed by an own device or another device | |
JP2000118095A (en) | Printing control apparatus, printing system using the same, printing control method and recording medium | |
JP2005352697A (en) | Computer system, and allocating method for job of the system | |
JP2012059093A (en) | Printer controller, printing system and program | |
US7355739B2 (en) | Image forming device having a memory assignment unit | |
JP2000132347A (en) | Printing method, printer executing the same and storage medium | |
JP4859103B2 (en) | Image forming apparatus | |
US7256904B1 (en) | Device for dynamically varying the priority of various processing in a printer | |
JP2011167857A (en) | Image forming apparatus, image forming method, and image forming program | |
US9286012B2 (en) | System and method for efficiently imposing a print job in a print production workflow | |
JPH10289066A (en) | Image processor and its method | |
JP4060233B2 (en) | Task control for print processing | |
US8665460B2 (en) | Print system, printing apparatus, printing method and printing program | |
JP2008265135A (en) | Printing system and printing apparatus | |
US6972855B2 (en) | Image forming apparatus and image forming method | |
JP2008079247A (en) | Image forming apparatus | |
JP5709417B2 (en) | Image processing apparatus, control method therefor, and program | |
JP2001127928A (en) | Device and method of compound function | |
JP2006121577A (en) | Image forming apparatus and image forming system | |
JP5168220B2 (en) | Image forming apparatus | |
JP2000311071A (en) | Output controller, output control method, and storage medium stored with computer readable program | |
JP2008022456A (en) | Image processing device and image processing control method | |
JP2004213264A (en) | Information processor, image forming apparatus, and method and program for allocating identification information of application | |
CN118555342A (en) | Image processing control system, control device, image processing device | |
JP2024136386A (en) | Image processing control system, control device, image processing device, image processing control method, and image processing control program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051110 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070524 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070626 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070821 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20071211 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20071219 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101228 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101228 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101228 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |