説明

ジョブ処理装置およびジョブ処理方法

【課題】プリンタなどのジョブ処理装置が受信中のジョブを、ジョブ入れ替え対象とした新しいジョブ処理装置等を提供する。
【解決手段】ジョブを受信する受信部21と、受信するジョブを保持し、該保持された複数のジョブの処理順序を管理するジョブ管理部23と、処理順序にしたがって複数のジョブを順に処理するジョブ処理部24と、受信中の第1ジョブの処理される順番を保持されたジョブのうち所定の第2ジョブの前に変更する処理順序の変更要求を受け付ける受付部26とを備え、ジョブ管理部23は、受付部26が変更要求を受け付けた場合に、処理順序の変更を実行するものであって、前記変更要求に応じて前記処理順序を変更する前にジョブ処理部24による第2ジョブを処理する順番が回ってきた場合には、ジョブ処理部24による処理を停止し、処理順序の変更を実行するジョブ処理装置。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ジョブ処理装置およびジョブ処理方法に関する
【背景技術】
【0002】
従来より、ジョブ処理装置、たとえば、プリンタや複合機において、印刷ジョブを受信して保持し、印刷待ち状態にある複数の印刷ジョブの印刷順序の入れ替えを実現する種々の方法が提案されている(たとえば、特許文献1,2など参照)。
【0003】
特許文献1には、印刷待ち状態にある複数の印刷ジョブに優先度を付与し、該優先度に基づいて印刷順序の入れ替えを実現する発明が開示されており、また、特許文献2には、印刷ジョブの印刷順序の入れ替え動作によって、いつまでも実行されなくなってしまう印刷ジョブが存在しないように制御する発明が開示されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2006−255956号公報
【特許文献2】特開2008−173886号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、従来の印刷ジョブの入れ替え方法は、プリンタ等が既に受信完了した印刷ジョブのみを入れ替え対象としており、プリンタ等が受信中の印刷ジョブについては入れ替え対象外であって、入れ替え対象として検討もされていなかった。
【0006】
そこで、本発明は、プリンタなどのジョブ処理装置が受信中のジョブを、ジョブ入れ替え対象とした新しいジョブ処理装置およびジョブ処理方法を提供することを目的とする。
【課題を解決するための手段】
【0007】
本発明によるジョブ処理装置は、ジョブを受信する受信部と、前記受信部が受信するジョブをメモリに保持し、該メモリに保持された複数のジョブの処理順序を管理するジョブ管理部と、前記処理順序にしたがって前記複数のジョブを順に処理するジョブ処理部と、前記受信部が受信中の第1ジョブの処理される順番を前記保持されたジョブのうち所定の第2ジョブの前に変更する前記処理順序の変更要求を受け付ける受付部と、を備え、前記ジョブ管理部は、前記受付部が前記変更要求を受け付けた場合に、前記処理順序の変更を実行するものであって、前記変更要求に応じて前記処理順序を変更する前に前記ジョブ処理部による前記第2ジョブを処理する順番が回ってきた場合には、前記ジョブ処理部による処理を停止し、前記処理順序の変更を実行する。
【0008】
また、本発明によるジョブ処理装置において、前記ジョブ管理部は、前記受付部が前記変更要求を受け付けた場合に、前記第1ジョブの受信完了後に前記処理順序の変更を実行するものであって、前記受信完了を待つ間に前記ジョブ処理部による前記第2ジョブを処理する順番が回ってきた場合には、前記ジョブ処理部による処理を停止し、前記第1ジョブの受信完了後に前記処理順序の変更を実行することができる。
【0009】
さらに、本発明によるジョブ処理装置において、前記ジョブ管理部は、前記ジョブ処理部による処理の停止中に、前記メモリのリソースが不足するか否かを判定し、該リソースが不足すると判定した場合、前記ジョブ処理部による処理を再開し、前記処理順序の変更要求に応じた前記処理順序の変更を非実行とすることができる。
【0010】
さらに、本発明によるジョブ処理装置において、前記ジョブ管理部は、前記ジョブ処理部による処理の停止中に、前記メモリのリソースが不足するか否かを判定し、該リソースが不足すると判定し、かつ、前記変更要求のうち前記第2ジョブの情報を前記第3ジョブの情報に入れ替え、前記第1ジョブの受信完了を待って、前記処理順序の変更を実行することもできる。
【0011】
さらに、本発明によるジョブ処理装置は、着脱可能な外部記憶媒体を備えることができ、前記ジョブ管理部が、前記受信完了を待つ間に前記ジョブ処理部による前記第2ジョブを処理する順番が回ってきた場合には、前記メモリに保持された少なくとも1つのジョブを前記外部記憶媒体にスワップアウトすることもできる。
【0012】
さらに、本発明によるジョブ処理装置は、前記ジョブ管理部による前記処理順序の変更結果を表示する表示部をさらに備えることができる。
【0013】
本発明によるジョブ処理方法は、ジョブを受信する段階と、前記受信するジョブをメモリに保持し、該メモリに保持された複数のジョブの処理順序を管理する段階と、前記処理順序にしたがって前記複数のジョブを順に処理する段階と、受信中の第1ジョブの処理される順番を前記保持されたジョブのうち所定の第2ジョブの前に変更する前記処理順序の変更要求を受け付ける段階と、前記変更要求を受け付けた場合に、前記処理順序の変更を実行する段階であって、前記変更要求に応じて前記処理順序を変更する前に前記第2ジョブを処理する順番が回ってきた場合には、該第2ジョブの処理を停止し、前記処理順序の変更を実行する段階と、を含む。
【図面の簡単な説明】
【0014】
【図1】本実施形態の印刷システムのハードウェア構成を示す概略図である。
【図2】本実施形態の印刷装置の概略的な機能構成の一例を示す図である。
【図3】本実施形態におけるメモリの使用状態の一例を示す図である。
【図4】本実施形態における印刷ジョブの状態遷移図を示す図である。
【図5】本実施形態における印刷待ち行列の蓄積内容の一例を示す図である。
【図6】本実施形態の印刷装置のジョブ処理方法の処理内容を示すフローチャートである。
【図7】本実施形態のジョブ処理方法を実行した場合のタイムチャートの一例を示す図である。
【図8】本実施形態の変形例1の印刷システムのジョブ処理方法の処理内容を示すフローチャートである。
【図9】本実施形態の変形例1の印刷システムのジョブ処理方法の処理内容を示すフローチャートである。
【図10】本実施形態の変形例2の印刷システムのジョブ処理方法の処理内容を示すフローチャートである。
【発明を実施するための形態】
【0015】
以下、本発明を実施するための好適な実施形態を、図面を参照しながら説明する。なお、本実施形態では、ジョブ処理装置として印刷装置(プリンタ)を例にとって説明する。
【0016】
図1は、本実施形態の印刷システム1のハードウェア構成を表すブロック図である。印刷システム1は、ユーザ端末10と印刷装置20とで構成され、ユーザ端末10および印刷装置20は通信ネットワークを介して相互に通信可能に接続されている。
【0017】
ユーザ端末10は、印刷ジョブを生成し、該印刷ジョブを印刷装置20に送信する装置であって、印刷装置20に対してホスト装置として機能する。なお、ユーザ端末10は、通常のユーザ端末と同様の構成および機能とすることができる。
【0018】
印刷装置20は、ユーザ端末10から印刷ジョブを受信して印刷処理を実行する装置である。また、印刷装置20は、印刷待ちの複数の印刷ジョブの処理順序を管理し、ユーザ入力を受け付けて該処理順序を入れ替える機能を有する。印刷装置20は、ハードウェアとして、図1に示すように、プリンタエンジン201、およびプリンタコントローラ202、および操作ユニット203を備えている。ただし、プリンタコントローラ202および操作ユニット203は、印刷装置20と別体となされていてもよい。
【0019】
プリンタエンジン201は、印刷データを受け取って印刷処理を実行する。なお、プリンタエンジン201は、通常のインクジェットプリンタやレーザプリンタなどの印刷装置におけるプリンタエンジンと同様の機能構成とすることができる。
【0020】
操作ユニット(操作パネル)203は、ユーザからの指示を入力するための入力部であって、液晶ディスプレイ、操作ボタンなどから構成される。操作ユニット203において、たとえば、ユーザが操作ボタンを操作することによって、ユーザが印刷順序の入れ替えを所望する印刷ジョブを選択し、該選択した印刷ジョブの印刷順序を決定することができる。なお、操作ユニット203自体は、原則として、従来のプリンタに用いられる操作ユニットと同様の機能構成を有することができる。
【0021】
プリンタコントローラ202は、印刷装置20全体における様々な処理を実行するものであって、CPU204、記憶装置205、インタフェース206等を備えている。CPU204は、記憶装置205に記憶されたコンピュータプログラムを読み出して各種処理を実行する。インタフェース206は、たとえば、ユーザ端末10と通信可能に接続するためのEthernet(登録商標)などのI/Fや、USBなどの記憶媒体と通信可能に接続するためのI/F、スキャナ、ファックスと通信可能に接続するI/Fを含む。
【0022】
プリンタコントローラ202は、機能構成として、図2に示すように、受信部21、言語解釈部22、ジョブ管理部23、印刷処理部24、ジョブ廃棄処理部25、受付部26、表示部27、メモリリソース管理部28、およびメモリ29を含む。なお、メモリ29は、たとえば、記憶装置205を用いて実現でき、また、受信部21などの各部は、たとえば、主にCPU204が記憶装置205に格納されるコンピュータプログラムを実行し、各ハードウェアを制御することにより実現することができる。
【0023】
受信部21は、ユーザ端末10より送信された印刷ジョブを受信する。受信部21は、受信した印刷ジョブを言語解釈部22に送る。
【0024】
言語解釈部22は、印刷ジョブをプリンタエンジン201にて印刷可能なデータに変換処理(言語解釈)する。また、言語解釈部22は、変換処理した印刷ジョブのデータをジョブ管理部23に送る。なお、言語解釈部22は、印刷ジョブを変換処理する際にメモリリソース管理部28を介してメモリ29の記憶領域の一部を使用する。
【0025】
ジョブ管理部23は、言語解釈部22にて言語解釈された印刷ジョブのデータを保持し、保持された複数の印刷ジョブの処理順序を印刷待ち行列(印刷キュー)を用いることによってジョブ管理する。ジョブ管理部23は、印刷待ち行列の先頭にある印刷ジョブを印刷処理部24に送る。また、ジョブ管理部23は、後述する受付部26からの印刷順序の変更要求を受け付けた場合に、印刷ジョブの処理順序の変更(順番入れ替え)を制御する。ジョブ管理部23は、印刷ジョブを保持する際、メモリリソース管理部28を介してメモリ29の記憶領域を使用する。なお、印刷ジョブの管理状態、およびジョブの処理順序を変更する制御については後述する。
【0026】
印刷処理部(ジョブ処理部)24は、ジョブ管理部23より受信した印刷ジョブのデータをプリンタエンジン201に送り、プリンタエンジン201の印刷処理を制御する。
【0027】
ジョブ廃棄処理部25は、印刷処理部24により印刷完了した印刷ジョブのデータを、メモリリソース管理部28を介してメモリ29の記憶領域から廃棄(削除)する。
【0028】
受付部26は、印刷順序の変更要求(順番入れ替えの情報)をユーザ入力により受け付ける部である。受付部26は、ユーザ入力の1つとして、受信部21が受信中の印刷ジョブ(第1ジョブ)の処理される順番を印刷待ち行列に蓄積されたジョブのうち所定の印刷ジョブ(第2ジョブ)の前に変更する処理順序の変更要求を受け付ける。受付部26は、受け付けた印刷順序の変更要求をジョブ管理部23に送る。なお、受付部26は、たとえば、操作ユニット203を通して、ユーザ入力を受け付けることができる。
【0029】
表示部27は、一般的な印刷装置の表示項目に加え、印刷待ち行列内の印刷ジョブを一覧表示し、印刷待ち行列内の各印刷ジョブの状態(たとえば、「印刷中」、「未印刷」、または「受信中」のいずれか)を表示する。また、表示部27は、ジョブ管理部23による処理順序の変更結果、たとえば、入れ替え不可能な印刷ジョブを示したり、入れ替え失敗時にその内容を表示したりすることができる。
【0030】
メモリリソース管理部28は、言語解釈部22、ジョブ管理部23、印刷処理部24、ジョブ廃棄処理部25からメモリ29の各利用要求を受信し、各利用要求に応じてメモリ29内の印刷ジョブを記憶し、または、記憶された印刷ジョブを取得および削除するなどメモリ29を管理する。
【0031】
メモリ29は、各処理を実行するためのプログラム、および印刷待ちの印刷ジョブを記憶し、また、言語解釈部22で印刷ジョブを言語解釈するためのワークエリアとして利用される。図3に、メモリ29の使用例を示す。メモリ29は、図3に示すように、たとえば、印刷ジョブの言語解釈が終わった部分のデータ(印刷ジョブAの一部)を受信して記憶する記憶領域291と、印刷ジョブの言語解釈が終わって受信完了した印刷ジョブB,C,D,Eを記憶する記憶領域292,293,294,295と、言語解釈に利用する記憶領域296と、空き記憶領域297とに分けて使用される。
【0032】
ここで、ジョブ管理部23における印刷ジョブの管理状態について、図4を用いて説明する。図4は、本実施形態における印刷ジョブの状態遷移図を示す図である。
【0033】
印刷ジョブXの管理状態は、図4に示すように、たとえば、ジョブ管理部23が、印刷ジョブXの言語解釈が終わった部分のデータ(印刷ジョブXの一部)を受信して記憶し、残りのデータは受信部21または言語解釈部22が保持している第1の状態と、第1の状態から印刷ジョブXの印刷が開始することにより遷移した状態であって、印刷ジョブXの一部のデータを受信しながら印刷している第2の状態と、第1の状態から印刷ジョブXの言語解釈が完了することにより遷移した状態であって、印刷ジョブXのデータが全て記憶されて未印刷の第3の状態と、第2の状態から印刷ジョブXの受信が完了することにより遷移した状態、または第3の状態から印刷ジョブXの印刷が開始することにより遷移した状態であって、印刷ジョブXのデータが印刷されている第4の状態と、を含む。なお、印刷ジョブXの第1の状態から第2の状態への遷移は、印刷待ち行列で印刷処理の順番が回ってきていること、プリンタエンジン201が空いていること、印刷するのに十分な印刷ジョブのデータ(印刷ジョブの一部)を受信したこと、を全て満たす場合に遷移する。
【0034】
このような各状態における印刷ジョブの順番入れ替えを行う場合、従来は、第1の状態、第2の状態および第4の状態にある印刷ジョブは入れ替え対象外とし、第3状態にある印刷ジョブのみを入れ替え対象としていた。これに対して、本実施形態では、第1の状態にある印刷ジョブも入れ替え対象としている点で従来の印刷順序の順番入れ替えとは相違する。ここで、発明者は、第1の状態にある印刷ジョブを入れ替え対象とする場合、メモリの記憶容量の制約が存在することを見出した。
【0035】
メモリ29の記憶容量の制約は、受信中の印刷ジョブは印刷順序の入れ替えをできる保証が無いという制約である。これは、上述したように、たとえば、メモリ29は各記憶領域291〜296を必要とするが、これら各記憶領域291〜296の容量は、各印刷ジョブの内容やデータ量に応じて変化する。しかし、メモリ29の記憶容量には限りがあるため、言語解釈された受信中の印刷ジョブの内容やデータ量によっては、該印刷ジョブの一部を記憶する記憶領域291と、該印刷ジョブに対して言語解釈で使用する記憶領域296とが足りなくなる可能性があり、印刷待ちの印刷ジョブを受信中の印刷ジョブより先に印刷し、該印刷完了した印刷ジョブを廃棄することで空き記憶領域297を確保する必要が生じる。よって、受信中の印刷ジョブを印刷待ちの印刷ジョブより先に印刷を開始するよう印刷順序を入れ替えることができない場合がある。
【0036】
そこで、本実施形態では、かかる制約を考慮して、印刷順序の順番入れ替え制御を行っており、かつ、ユーザの要求した通りの印刷順序の順番入れ替えを可能な限り実現する。
【0037】
次に、ジョブ管理部23における印刷順序の順番入れ替え制御について、図5を参照して説明する。
【0038】
ジョブ管理部23が管理する印刷待ち行列によって保持された印刷ジョブは、たとえば、図5に示すように、現在受信中、または受信が完了しているが未印刷の印刷待ち行列の末尾に位置する印刷ジョブ(A)と、受信が完了しているが未印刷の印刷ジョブ(B,C,D)と、現在印刷中、または印刷を開始しようとしている印刷ジョブ(E)と、に分けることができる。
【0039】
ジョブ管理部23は、受信中の印刷ジョブを未印刷の印刷ジョブの前に挿入する印刷順序の入れ替えに関しては、上記制約により、受信中の印刷ジョブの受信完了を待って、処理順序の変更を実行する。たとえば、ジョブ管理部23は、受付部26より、印刷ジョブAを印刷ジョブDより先に印刷する印刷順序の変更要求を受け付けると、印刷ジョブAが受信完了するまで印刷順序の変更を待機し、印刷ジョブAが受信完了したときに受け付けた変更要求を実行する。ただし、ジョブ管理部23は、変更要求に応じて処理順序を変更する前であって、印刷ジョブAの受信完了を待つ間に印刷処理手段24による印刷ジョブDを処理する順番が回ってきた場合には、印刷処理部24による処理を停止し、印刷ジョブAの受信完了後に処理順序の変更を実行する。また、ジョブ管理部23は、印刷処理部24による処理の停止中に、メモリ29のリソースが不足するか否かを判定し、該リソースが不足すると判定した場合、印刷処理部24による処理を再開し、処理順序の変更要求による処理順序の変更を非実行とする。
【0040】
ジョブ管理部23は、受信完了しているが未印刷の印刷ジョブ同士での印刷順序の入れ替えに関しては、印刷待ち行列内部で閉じた処理のため、即座に実行する。たとえば、ジョブ管理部23は、受付部26より、印刷ジョブBを印刷ジョブDより先に印刷する印刷順序の変更要求を受け付けると、印刷順序を変更する。その結果、印刷ジョブEの次に印刷処理部24に送られる印刷ジョブを印刷ジョブBとすることができる。
【0041】
以下、図6に示すフローチャートを参照して、印刷装置20において実施されるジョブ処理方法を説明する。各工程(符号が付与されていない部分的な工程を含む)は処理内容に矛盾を生じない範囲で任意に順番を変更して又は並列に実行することができる。なお、印刷待ち行列によって保持された印刷ジョブは、図5に示すように、印刷ジョブAは受信中の状態、印刷ジョブB,C,Dは受信完了済みで未印刷の状態、印刷ジョブEは受信完了済みで印刷中の状態とした場合を例にとって説明する。また、ユーザが印刷順序を先にしたい印刷ジョブを「入れ替え元ジョブ」、印刷待ち行列で保持される印刷ジョブのうち、印刷順序の入れ替え後に入れ替え元ジョブの次に印刷の順番が回ってくる印刷ジョブを「入れ替え先ジョブ」として説明する。
【0042】
まず、受付部26は、印刷順序の変更要求をユーザ入力により受け付ける(ステップS100)。たとえば、ユーザにより操作ユニット203を通して入れ替え元ジョブとして印刷ジョブAが選択され、また、その印刷ジョブAの印刷順序が印刷ジョブDの前と指定されることにより、受付部26は、印刷順序の変更要求として、入れ替え元ジョブ(印刷ジョブA)、および入れ替え先ジョブ(印刷ジョブD)の情報を受け付けることができる。
【0043】
次いで、ジョブ管理部23は、入れ替え先ジョブが印刷中であるか否かを判定する(ステップS101)。入れ替え先ジョブが印刷中であれば(ステップS101:Yes)、入れ替えは不可能であるので、ジョブ管理部23は印刷順序の変更を実行せず、表示部27は操作ユニット203のディスプレイなどに入れ替えに失敗した旨を表示する(ステップS102)。たとえば、入れ替え先ジョブが現在印刷中の印刷ジョブEである場合、印刷順序の入れ替えは失敗となる。
【0044】
一方、入れ替え先ジョブが印刷中で無ければ(ステップS101:No)、ジョブ管理部23は、入れ替え元ジョブが受信中であるか否かを判定する(ステップS103)。入れ替え元ジョブが受信中で無ければ(ステップS103:No)、ジョブ管理部23は、印刷順序を変更する(ステップS108)。たとえば、入れ替え元ジョブが印刷ジョブAであり、入れ替え先ジョブが印刷ジョブDであれば、印刷順序は、ステップS108の処理により、A→B→C→D→Eの順序から、B→C→D→A→Eの順序に変更される。
【0045】
入れ替え元ジョブが受信中であれば(ステップS103:Yes)、ジョブ管理部23は、入れ替え先ジョブに対して印刷停止フラグを設定する(ステップS104)。印刷停止フラグは、印刷処理部24による印刷処理の実行を停止するためのフラグであって、たとえば、入れ替え先ジョブが印刷ジョブDであり、該印刷ジョブDに対して印刷停止フラグが設定されると、印刷ジョブDは印刷処理部24によって処理されない。
【0046】
次いで、印刷停止フラグの設定後、ジョブ管理部23は、入れ替え元ジョブの入れ替えが可能になるまで、すなわち、入れ替え元ジョブが受信完了するまで印刷順序の変更処理を待機する。具体的には、ジョブ管理部23は、入れ替え先ジョブの印刷順番が回ってきたか否かを判定し(ステップS105)、入れ替え元ジョブの受信が完了したか否かを判定する(ステップS106)。
【0047】
入れ替え先ジョブの印刷順序が回ってきたと判定されない場合であって(ステップS105:No)、入れ替え元ジョブが受信完了と判定されない場合(ステップS106:No)、ステップS105の処理に戻る。
【0048】
入れ替え元ジョブが受信完了と判定された場合(ステップS106:Yes)、ジョブ管理部23が、入れ替え先ジョブに対して印刷停止フラグを解除し(ステップS107)、印刷順序を変更する(ステップS108)。
【0049】
一方、ステップS105の処理において、入れ替え先ジョブの印刷順序が回ってきたと判定した場合(ステップS105:Yes)、印刷処理部24は、入れ替え先ジョブの印刷処理を停止する(ステップS109)。すなわち、入れ替え先ジョブには、印刷停止フラグが設定されているため、印刷処理部24は、自動的に入れ替え先ジョブの印刷処理を停止する。
【0050】
ステップS109の処理後、ジョブ管理部23は、メモリ29のリソースの不足を監視しつつ、入れ替え元ジョブが受信完了するまで印刷順序の変更処理を待機する。具体的には、ジョブ管理部23は、メモリ29のリソース不足を判定し(ステップS110)、入れ替え元ジョブの受信が完了したか否かを判定する(ステップS111)。
【0051】
メモリ29のリソースが不足すると判定した場合(ステップS110:Yes)、入れ替え元ジョブの入れ替えが可能になるのを待っている間に、メモリ29のリソースが不足することにより、入れ替え元ジョブを受信完了させることが不可能となるので、ジョブ管理部23は、入れ替え先ジョブに対して印刷停止フラグを解除する(ステップS112)。次いで、ジョブ管理部23は印刷順序の変更を実行せず、表示部27は操作ユニット203のディスプレイなどに入れ替えに失敗した旨を表示する(ステップS113)。
【0052】
メモリ29のリソースが不足すると判定されない場合であって(ステップS110:No)、入れ替え元ジョブが受信完了と判定されない場合(ステップS111:No)、ステップS110の処理に戻る。入れ替え元ジョブが受信完了と判定された場合(ステップS111:Yes)、ジョブ管理部23が、入れ替え先ジョブに対して印刷停止フラグを解除し(ステップS107)、印刷順序を変更する(ステップS108)。
【0053】
ステップS102、S108、S113の各処理が行われると、本処理フローは終了する。なお、たとえば、3つの印刷ジョブを順に受信して印刷処理する場合であって、2番目に受信する印刷ジョブを入れ替え先ジョブ、3番目に受信する印刷ジョブを入れ替え元ジョブとした場合において、上記処理フローを実行した際のタイムチャート例を図7に示す。図7からも理解されるように、入れ替え元ジョブが受信中のときに印刷順序の変更要求を受け付けた場合、入れ替え元ジョブの受信完了までに、入れ替え先ジョブの印刷順序が回ってきたら、入れ替え先ジョブの印刷処理を止めてでも入れ替えが行われ、入れ替え元ジョブの印刷順序が入れ替え先ジョブより先になる。
【0054】
以上、本実施形態の印刷装置(ジョブ処理装置)、およびジョブ処理方法によれば、受信中の印刷ジョブの印刷順序の変更要求を受け付けることができる。また、受信中の印刷ジョブを入れ替え対象とする場合、受信中の印刷ジョブが受信完了するまで印刷順序の入れ替えを待機し、入れ替え先ジョブの印刷順番が回ってくるまでに入れ替え元ジョブが受信完了したら、そのまま印刷順序の入れ替えを行い、入れ替え元ジョブが受信完了する前に入れ替え先ジョブの印刷順番が回ってきたら入れ替え先ジョブの印刷を止めてでも、ユーザが変更要求した入れ替えを可能な限り実行する。たとえば、ある印刷ジョブの印刷中に、100枚の未印刷の印刷ジョブを入れ替え先ジョブとし、1枚の受信中の印刷ジョブを入れ替え元ジョブとした場合、入れ替え元ジョブが受信完了するより前に入れ替え先ジョブの印刷を開始してしまうと、入れ替え元ジョブの印刷開始は、100枚の入れ替え先ジョブの印刷が完了するまで行われない。しかし、本実施形態によれば、入れ替え先ジョブの印刷処理を停止することで、受信中の印刷ジョブを可能な限り速く印刷することができる。また、入れ替え先ジョブの印刷処理を停止した場合であって、メモリ29のリソースが足りなくなれば、入れ替え先ジョブの印刷を開始し、入れ替え失敗として制御することで、入れ替え先ジョブの印刷完了により、メモリ29の空き記憶領域を確保することができることから、メモリ29の記憶容量の制約を解消することができる。
【0055】
<ジョブ処理方法の変形例1>
上記実施形態では、受信中の印刷ジョブ(入れ替え元ジョブ)を印刷待ち状態の印刷ジョブ(入れ替え先ジョブ)の前に印刷順序を変更する場合、入れ替え元ジョブの入れ替えが可能になるのを待っている間に、メモリ29のリソースが不足することにより印刷順序の変更が不可能になったら、印刷順序の変更は非実行としていたが、本発明はこれに限られず、たとえば、入れ替え先ジョブを変更し、かつ、先の入れ替え先ジョブを印刷処理してメモリ29から削除することで、メモリ29の空き記憶容量を確保し、印刷順序の変更を実行するようにしてもよい。なお、この場合、ジョブ管理部23は、上述の機能に加えて、印刷処理部24による処理の停止中に、メモリ29のリソースが不足するか否かを判定し、該リソースが不足すると判定し、かつ、第2ジョブの次に処理される印刷ジョブ(第3ジョブ)がメモリ29に保持されている場合、変更要求のうち第2ジョブの情報を第3ジョブの情報に変更(入れ替え先ジョブを変更)し、第1ジョブの受信完了を待って、処理順序の変更を実行する機能を有する。
【0056】
本実施形態の変形例1の処理フローを、図8および図9に示すフローチャートを参照して説明する。
【0057】
まず、受付部26は、印刷順序の変更要求をユーザ入力により受け付ける(ステップS200)。次いで、ジョブ管理部23は、入れ替え先ジョブが印刷中であるか否かを判定する(ステップS201)。入れ替え先ジョブが印刷中であれば(ステップS201:Yes)、現在の入れ替え先ジョブでは入れ替えが不可能であるので、ジョブ管理部23は入れ替え先ジョブを、現在の入れ替え先ジョブの次の順番の印刷ジョブに変更する(ステップS202)。たとえば、図5に示す印刷ジョブを例にとって説明すると、入れ替え先ジョブが印刷ジョブEであった場合、入れ替え先ジョブを印刷ジョブEの次の順番の印刷ジョブDに変更する。
【0058】
ステップS202で入れ替え先ジョブを変更した結果、入れ替え先ジョブと入れ替え元ジョブが同一か否かを判定し(ステップS203)、同一でなければ(ステップS203:No)、ステップS201の処理に移り、同一であれば(ステップS203:Yes)、印刷順序の変更は不可能であるため、ジョブ管理部23は印刷順序の変更を実行せず、表示部27は操作ユニット203のディスプレイなどに入れ替えに失敗した旨を表示する(ステップS204)。
【0059】
一方、入れ替え先ジョブが印刷中で無ければ(ステップS201:No)、ジョブ管理部23は、入れ替え元ジョブが受信中であるか否かを判定する(ステップS205)。入れ替え元ジョブが受信中で無ければ(ステップS205:No)、ジョブ管理部23は、印刷順序を変更する(ステップS210)。
【0060】
入れ替え元ジョブが受信中であれば(ステップS205:Yes)、ジョブ管理部23は、入れ替え先ジョブに対して印刷停止フラグを設定する(ステップS206)。
【0061】
次いで、ジョブ管理部23は、印刷停止フラグの設定後、入れ替え元ジョブの入れ替えが可能になるまで印刷順序の変更処理を待機する。具体的には、ジョブ管理部23は、入れ替え先ジョブの印刷順番が回ってきたか否かを判定し(ステップS207)、入れ替え元ジョブの受信が完了したか否かを判定する(ステップS208)。
【0062】
入れ替え先ジョブの印刷順序が回ってきたと判定されない場合であって(ステップS207:No)、入れ替え元ジョブが受信完了と判定されない場合(ステップS208:No)、ステップS207の処理に戻る。
【0063】
入れ替え元ジョブが受信完了と判定された場合(ステップS208:Yes)、ジョブ管理部23が、入れ替え先ジョブに対して印刷停止フラグを解除し(ステップS209)、印刷順序を変更する(ステップS210)。
【0064】
一方、ステップS207の処理において、入れ替え先ジョブの印刷順序が回ってきたと判定した場合(ステップS207:Yes)、印刷処理部24は、入れ替え先ジョブの印刷処理を停止する(ステップS211)。
【0065】
ステップS211の処理後、ジョブ管理部23は、メモリ29のリソースの不足を監視しつつ、入れ替え元ジョブが受信完了するまで印刷順序の変更処理を待機する。具体的には、ジョブ管理部23は、メモリ29のリソース不足を判定し(ステップS212)、入れ替え元ジョブの受信が完了したか否かを判定する(ステップS213)。
【0066】
メモリ29のリソースが不足すると判定した場合(ステップS212:Yes)、入れ替え元ジョブを受信完了させることが不可能となるので、ジョブ管理部23は、入れ替え先ジョブを、現在の入れ替え先ジョブの次の順番の印刷ジョブに変更する(ステップS214)。すなわち、ジョブ管理部23は、変更前に入れ替え先ジョブであった印刷ジョブを印刷処理し、かつ、メモリ29から削除することで、メモリ29の空き記憶容量を確保し、入れ替え元ジョブを受信完了させることを可能にする。
【0067】
ステップS214で入れ替え先ジョブを変更した結果、入れ替え先ジョブと入れ替え元ジョブが同一か否かを判定し(ステップS215)、同一でなければ(ステップS215:No)、ジョブ管理部23が、変更前の入れ替え先ジョブの印刷停止フラグを解除し、新しい入れ替え先ジョブに対して印刷停止フラグを設定し(ステップS216)、ステップS207の処理に移る。一方、入れ替え先ジョブと入れ替え元ジョブが同一であれば(ステップS215:Yes)、印刷順序の変更は不可能であるため、ジョブ管理部23は印刷順序の変更を実行せず、変更前の入れ替え先ジョブに対して印刷停止フラグを解除するとともに(ステップS217)、表示部27は操作ユニット203のディスプレイなどに入れ替えに失敗した旨を表示する(ステップS218)。
【0068】
ステップS204、S210、S218の各処理が行われると、本処理フローは終了する。
【0069】
上述のように、本処理フローによれば、受信中の印刷ジョブ(入れ替え元ジョブ)を印刷待ち状態の印刷ジョブ(入れ替え先ジョブ)より先に印刷されるよう印刷順序を変更する場合、受信中の印刷ジョブの受信完了を待つ間、すなわち、入れ替え元ジョブの入れ替えが可能になるのを待っている間に、メモリ29のリソースが不足することにより印刷順序の変更が不可能になったら、入れ替え先ジョブを変更し、かつ、先の入れ替え先ジョブを印刷処理してメモリ29から削除することで、メモリ29の空き記憶領域を確保し、印刷順序の変更を実行する。その結果、ユーザの所望する印刷ジョブを、所望する順番、または所望する順番から可能な限り先に印刷されるように自動的に設定されることができる。
【0070】
<ジョブの処理方法の変形例2>
上記実施形態では、受信中の印刷ジョブ(入れ替え元ジョブ)を印刷待ち状態の印刷ジョブ(入れ替え先ジョブ)の前に印刷順序を変更する場合、入れ替え元ジョブの入れ替えが可能になるのを待っている間に、メモリ29のリソースが不足することにより印刷順序の変更が不可能になったら、印刷順序の変更は非実行としていたが、本発明はこれに限られず、たとえば、印刷装置20に着脱可能な外部記憶媒体(たとえば、USBメモリなど)30を備え、メモリ29の空き記憶領域を確保するために、この外部記憶媒体30を利用することで、印刷順序の変更を可能とすることができる。具体的には、メモリ29に保持されている印刷ジョブを外部記憶媒体30に記憶し、メモリ29から該当する印刷ジョブを削除することで、メモリ29の空き記憶領域を確保する。なお、この場合、ジョブ管理部23は、上述の機能に加えて、受信完了を待つ間に印刷処理部24による印刷先ジョブを処理する順番が回ってきた場合には、メモリに保持された少なくとも1つのジョブを外部記憶媒体にスワップアウトする機能を有する。
【0071】
本実施形態の変形例2の処理フローを、図10に示すフローチャートを参照して説明する。なお、ステップS300〜S309の各処理は、原則として、上記ステップS100〜S109の各処理と同様にすることができるので、ここでの詳細な説明は省略する。
【0072】
本実施形態の変形例2では、ステップS305の処理において、入れ替え先ジョブの印刷順番が回ってきたと判定した場合(ステップS305:Yes)、ジョブ管理部23が、メモリ29に保持された1つの印刷ジョブを外部記憶媒体30にスワップアウトする(ステップS310)。たとえば、図5に示すように、メモリ29に各印刷ジョブA〜Eが保持されている場合、印刷ジョブDを外部記憶媒体30に記憶し、メモリ29から印刷ジョブDを削除することで、メモリ29のリソースを確保することができる。
【0073】
ステップS310の処理後、ジョブ管理部23は、メモリ29のリソースの不足を監視しつつ、入れ替え元ジョブが受信完了するまで印刷順序の変更処理を待機する。具体的には、ジョブ管理部23は、メモリ29のリソース不足を判定し(ステップS311)、入れ替え元ジョブの受信が完了したか否かを判定する(ステップS312)。
【0074】
メモリ29のリソースが不足すると判定した場合(ステップS311:Yes)、メモリ29に保持された未印刷の印刷ジョブが存在すれば、ステップS310の処理に移る。
【0075】
メモリ29のリソースが不足すると判定されない場合であって(ステップS311:No)、入れ替え元ジョブが受信完了と判定されない場合(ステップS312:No)、ステップS311の処理に戻る。入れ替え元ジョブが受信完了と判定された場合(ステップS312:Yes)、ジョブ管理部23が、入れ替え先ジョブに対して印刷停止フラグを解除し(ステップS307)、印刷順序を変更する(ステップS308)。
【0076】
なお、上記ステップS310の処理において、メモリ29に保持された1つの印刷ジョブを外部記憶媒体にスワップアウトする場合を例にとって説明したが、スワップアウトする印刷ジョブは1つに限られず、少なくとも1つの印刷ジョブとしてもよい。たとえば、メモリ29に保持された全ての印刷ジョブを外部記憶媒体30にスワップアウトする構成とすれば、メモリ29のリソースを最大限確保することができる。この場合、上記ステップS311〜312の処理を省略する。
【0077】
以上、本処理フローによれば、着脱可能な外部記憶媒体を備え、受信完了を待つ間に印刷処理部24による入れ替え先ジョブを処理する順番が回ってきた場合には、メモリ29に保持された少なくとも1つの印刷ジョブを外部記憶媒体にスワップアウトすることで、メモリ29のリソース不足による印刷順序の変更が行われないという状況を防ぐことができ、メモリ29の空き記憶領域を確保することができることから、メモリ29の記憶容量の制約を解消することができる。
【0078】
<変形例>
以上のように本発明の好適な実施形態について説明したが、本発明は、以上の実施形態に限定されるべきものではなく、特許請求の範囲に表現された思想および範囲を逸脱することなく、種々の変形、追加、および省略が当業者によって可能である。
【0079】
たとえば、上記実施形態では、ジョブ処理装置としての印刷装置の例について説明したが、本発明はこれに限られず、ジョブ処理待ち行列を用いる種々のジョブ処理装置、たとえば、複合機やコピー機、FAX機などの装置に適用することができる。なお、たとえば、複合機やコピー機はスキャナ装置からジョブを受信し、FAX機は外部FAX機からジョブを受信することができる。
【0080】
また、上記実施形態において、ジョブ管理部による処理順序の変更結果を表示する表示部を備える場合を例にとって説明したが、本発明はこれに限られず、たとえば、処理順序の変更の成功の有無を音声により伝達する音源を備えてもよい。
【0081】
さらに、上記実施形態において、印刷装置20には、用途に応じた各部が備えられているが、これら各部は、そのいくつかを一纏めにして構成されていてもよいし、一つの部をさらに複数の部に分割して構成されていてもよい。
【0082】
さらに、上記実施形態では、印刷装置20において、それぞれの処理機能を有する各部が備えられている構成を説明したが、本発明はこれに限られず、各部がユーザ端末10や印刷装置20と通信可能に接続されたネットワーク上に又は他の装置に備えて構成することもできる。
【符号の説明】
【0083】
1 印刷システム、10 ユーザ端末、20 印刷装置、21 受信部、22 言語解釈部、23 ジョブ管理部、24 印刷処理部、25 ジョブ廃棄処理部、26 受付部、27 表示部、28 メモリリソース管理部、29 メモリリソース、201 プリンタエンジン、202 プリンタコントローラ、203 操作ユニット。

【特許請求の範囲】
【請求項1】
ジョブを受信する受信部と、
前記受信部が受信するジョブをメモリに保持し、該メモリに保持された複数のジョブの処理順序を管理するジョブ管理部と、
前記処理順序にしたがって前記複数のジョブを順に処理するジョブ処理部と、
前記受信部が受信中の第1ジョブの処理される順番を前記保持されたジョブのうち所定の第2ジョブの前に変更する前記処理順序の変更要求を受け付ける受付部と、を備え、
前記ジョブ管理部は、前記受付部が前記変更要求を受け付けた場合に、前記処理順序の変更を実行するものであって、前記変更要求に応じて前記処理順序を変更する前に前記ジョブ処理部による前記第2ジョブを処理する順番が回ってきた場合には、前記ジョブ処理部による処理を停止し、前記処理順序の変更を実行する、ジョブ処理装置。
【請求項2】
前記ジョブ管理部は、前記受付部が前記変更要求を受け付けた場合に、前記第1ジョブの受信完了後に前記処理順序の変更を実行するものであって、前記受信完了を待つ間に前記ジョブ処理部による前記第2ジョブを処理する順番が回ってきた場合には、前記ジョブ処理部による処理を停止し、前記第1ジョブの受信完了後に前記処理順序の変更を実行する、請求項1に記載のジョブ処理装置。
【請求項3】
前記ジョブ管理部は、前記ジョブ処理部による処理の停止中に、前記メモリのリソースが不足するか否かを判定し、該リソースが不足すると判定した場合、前記ジョブ処理部による処理を再開し、前記処理順序の変更要求に応じた前記処理順序の変更を非実行とする、請求項1に記載のジョブ処理装置。
【請求項4】
前記ジョブ管理部は、前記ジョブ処理部による処理の停止中に、前記メモリのリソースが不足するか否かを判定し、該リソースが不足すると判定し、かつ、前記第2ジョブの次に処理される第3ジョブが前記メモリに保持されている場合、前記変更要求のうち前記第2ジョブの情報を前記第3ジョブの情報に変更し、前記第1ジョブの受信完了を待って、前記処理順序の変更を実行する、請求項1に記載のジョブ処理装置。
【請求項5】
前記ジョブ処理装置は、着脱可能な外部記憶媒体を備えており、
前記ジョブ管理部は、前記受信完了を待つ間に前記ジョブ処理部による前記第2ジョブを処理する順番が回ってきた場合には、前記メモリに保持された少なくとも1つのジョブを前記外部記憶媒体にスワップアウトする、請求項1に記載のジョブ処理装置。
【請求項6】
前記ジョブ管理部による前記処理順序の変更結果を表示する表示部をさらに備える、請求項1〜5のいずれか1項に記載のジョブ処理装置。
【請求項7】
ジョブを受信する段階と、
前記受信するジョブをメモリに保持し、該メモリに保持された複数のジョブの処理順序を管理する段階と、
前記処理順序にしたがって前記複数のジョブを順に処理する段階と、
受信中の第1ジョブの処理される順番を前記保持されたジョブのうち所定の第2ジョブの前に変更する前記処理順序の変更要求を受け付ける段階と、
前記変更要求を受け付けた場合に、前記処理順序の変更を実行する段階であって、前記変更要求に応じて前記処理順序を変更する前に前記第2ジョブを処理する順番が回ってきた場合には、該第2ジョブの処理を停止し、前記処理順序の変更を実行する段階と、を含むジョブ処理方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2011−235614(P2011−235614A)
【公開日】平成23年11月24日(2011.11.24)
【国際特許分類】
【出願番号】特願2010−111441(P2010−111441)
【出願日】平成22年5月13日(2010.5.13)
【出願人】(000002369)セイコーエプソン株式会社 (51,324)
【Fターム(参考)】