(57)【要約】【課題】限られた待ち行列バッファを有効に利用して、印刷機会の損失を防止することができるプリンタ装置、印刷指示装置、印刷システム、印刷方法、プログラムおよび記録媒体を提供することを目的とする。【解決手段】複数の印刷ジョブを待ち行列バッファに登録し、待ち行列バッファに登録された順序で印刷ジョブを処理するプリンタ装置において、印刷ジョブを印刷指示装置より受信し（Ｓ１０１）、待ち行列バッファに空きがあるか判断し（Ｓ１０２）、空きがあれば印刷ジョブの属性情報より印刷ジョブの優先度を計算し（Ｓ１０４）、印刷しようとしている印刷ジョブより優先度の低い印刷ジョブが待ち行列バッファにあるか否かを判断し（Ｓ１０５）、優先度の低い印刷ジョブがあれば、その印刷ジョブより優先して待ち行列バッファに登録する（Ｓ１０６）。【選択図】図２
2007148851.tif 000002
【特許請求の範囲】
【請求項１】
複数の印刷ジョブを待ち行列バッファに登録し、前記待ち行列バッファに登録された順序で前記印刷ジョブを処理するプリンタ装置において、
前記印刷ジョブの属性情報により前記印刷ジョブの優先度を決定し、優先度の高い印刷ジョブを優先度の低い印刷ジョブより優先して前記待ち行列バッファに登録することを特徴とするプリンタ装置。
【請求項２】
前記印刷ジョブの属性情報に応じて、前記待ち行列バッファで先に登録された優先度の低い印刷ジョブの実行を即時中断し、優先度の高い印刷ジョブの印刷処理を即時に行うようにすることを特徴とする請求項１に記載のプリンタ装置。
【請求項３】
前記印刷ジョブの属性情報に応じて、前記待ち行列バッファで先に登録された優先度の低い印刷ジョブの現在印刷中のページの印刷終了時に印刷を中断し、優先度の高い印刷ジョブの印刷処理を行うようにすることを特徴とする請求項１に記載のプリンタ装置。
【請求項４】
前記属性情報は、プッシュ型かプル型かの情報を有し、前記優先度はプッシュ型印刷ジョブの優先度を高く、プル型印刷ジョブの優先度を低くすることを特徴とする請求項１から３のいずれかの項に記載のプリンタ装置。
【請求項５】
前記属性情報は、マルチパート形式印刷ジョブの有無の情報を有し、前記優先度は、マルチパート形式印刷ジョブの優先度を高く、マルチパート形式でない印刷ジョブの優先度を低くすることを特徴とする請求項１から３のいずれかの項に記載のプリンタ装置。
【請求項６】
前記属性情報は、印刷ジョブのデータ量の属性を有し、前記優先度は、印刷ジョブのデータ量が予め決められた値より大きいものを高くすることを特徴とする請求項１から３のいずれかの項に記載のプリンタ装置。
【請求項７】
前記属性情報は、印刷ジョブのデータ量を印刷されるページ数で除算した値を有し、前記優先度は、印刷ジョブのデータ量を印刷されるページ数で除算した値が予め決められた値より大きいものを高くすることを特徴とする請求項１から３のいずれかの項に記載のプリンタ装置。
【請求項８】
前記待ち行列バッファに、優先度の高い印刷ジョブが入りきれずに登録できないときは、登録できない当該優先度の高い印刷ジョブの優先度より低い優先度を持つ印刷ジョブを、前記待ち行列バッファに受け入れないようにすることを特徴とする請求項１から７のいずれかの項に記載のプリンタ装置。
【請求項９】
前記待ち行列バッファに受け入れない期間を、一定期間とすることを特徴とする請求項８に記載のプリンタ装置。
【請求項１０】
前記一定期間は、投入できなかった印刷ジョブのバッファ容量が開放されるまでの待ち時間を、現在待ち行列に登録されている前記印刷ジョブの属性情報から予測して算出することを特徴とする請求項９記載のプリンタ装置。
【請求項１１】
複数の印刷ジョブを待ち行列バッファに登録し、前記待ち行列バッファに登録された順序で前記印刷ジョブを処理する際に、前記印刷ジョブの属性情報により前記印刷ジョブの優先度を決定し、優先度の高い印刷ジョブを優先度の低い印刷ジョブより優先して前記待ち行列バッファに登録するプリンタ装置に、印刷ジョブとなる印刷データを送信して印刷指示を行う印刷指示装置において、
前記印刷データが一時的なデータであるか否かを前記印刷ジョブの属性情報として付与することを特徴とする印刷指示装置。
【請求項１２】
前記属性情報は、放送波から得られた印刷データであること示す情報を含むことを特徴とする請求項１１に記載の印刷指示装置。
【請求項１３】
前記属性情報は、表示画面のスクリーンコピーの印刷データであることを示す情報を含むことを特徴とする請求項１１に記載の印刷指示装置。
【請求項１４】
前記属性情報は、自装置がモバイル装置であることを示す情報を含むことを特徴とする請求項１１に記載の印刷指示装置。
【請求項１５】
請求項１から請求項７のいずれかの項に記載のプリンタ装置と、
請求項１１から請求項１４のいずれかの項に記載の印刷指示装置と
を含むことを特徴とする印刷システム。
【請求項１６】
請求項８から請求項１０のいずれかの項に記載のプリンタ装置と、
請求項１１から請求項１４のいずれかの項に記載の印刷指示装置とを含む印刷システムであって、
前記プリンタ装置は、前記待ち行列バッファに、印刷ジョブが登録可能となるまでの予測時間を前記印刷指示装置に通知する機能を有し、
前記印刷指示装置は、通知された前記予測時間を表示する機能を有することを特徴とする印刷システム。
【請求項１７】
前記プリンタ装置は、待ち行列バッファに印刷ジョブが登録可能となったことを前記印刷指示装置に通知する機能を有し、
前記印刷指示装置は、その通知を受けて印刷ジョブを発行する機能を有することを特徴とする請求項１６記載の印刷システム。
【請求項１８】
複数の印刷ジョブを待ち行列バッファに登録し、前記待ち行列バッファに登録された順序で印刷ジョブを処理する印刷方法であって、
前記印刷ジョブの属性情報より印刷ジョブの優先度を決定するステップと、
優先度の高い印刷ジョブを優先度の低い印刷ジョブより優先して前記待ち行列バッファに登録するステップとを有することを特徴とする印刷方法。
【請求項１９】
コンピュータに、
複数の印刷ジョブを待ち行列バッファに登録し、前記待ち行列バッファに登録された順序で前記印刷ジョブを印刷する印刷プログラムであって、
前記印刷ジョブの属性情報より印刷ジョブの優先度を決定するステップと、
優先度の高い印刷ジョブを優先度の低い印刷ジョブより優先して前記待ち行列バッファに登録するステップとを実行させることを特徴とするプログラム。
【請求項２０】
請求項１９に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プリンタ装置、印刷指示装置、印刷システム、印刷方法、プログラムおよび記録媒体に係り、特に、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）で接続され、印刷データを伝送して印刷を行うためのプリンタ装置、印刷指示装置、印刷システム、印刷方法、プログラムおよび記録媒体に関する。
【背景技術】
【０００２】
従来より、書式情報などを指示するタグをテキストに加えたハイパーテキストなどのマークアップランゲージＭＬ（Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）を、ブラウザソフトを使用してコンピュータディスプレイに表示することが行われている。マークアップランゲージＭＬとしては、ＸＨＴＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｈｙｐｅｒ  Ｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）、ＨＴＭＬやＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）等がある。このマークアップランゲージＭＬで記述されたファイルは主としてＷｅｂサーバ装置に格納されており、種々のネットワークを介してＷｅｂサーバ装置と接続したブラウザソフトが、マークアップランゲージＭＬを取得し、当該マークアップランゲージＭＬを解釈してディスプレイに表示したり印刷したりすることになる。
【０００３】
以下の説明では、このようなマークアップランゲージＭＬで記述されたデータおよび当該データからリンクされているオブジェクトデータを、ファイルを印刷等の画像複製に使用するので、印刷記述データという。
【０００４】
この印刷記述データは、印刷物のレイアウト等の骨格を決定する階層構造の最上位のトップデータと、当該トップデータにリンクするリンクデータ（オブジェクトデータ）とから構成される。リンクデータの例としては画像データ、スタイルシート、ドキュメントタイプの定義などが挙げられる。
【０００５】
次に、印刷記述データを用いて記録媒体上に所定の印刷をする場合の、従来のプリンタ装置およびそのシステム構成を、図１１を参照して説明する。
【０００６】
まず、プッシュ型ジョブの印刷モデルを説明する。印刷指示装置１００とプリンタ装置２００とがＬＡＮ４００を通じて接続されている。マークアップランゲッジＭＬで編集された印刷記述データが、アプリケーション１１の印刷要求に従ってアプリケーション１１より出力されると、印刷記述データは、変換手段１２で更にプリンタ装置２００側で解読可能な言語、例えばＸＨＴＭＬ形式に変換されてプリント制御手段１３に入力される。なお、既にプリンタ装置２００側で解読可能な言語になっている場合は、特に変換は行わなくても構わないことはもちろんである。
【０００７】
ここで、マークアップランゲージＭＬで編集された印刷記述データは、印刷物全体の骨格を決める最上位階層のトップファイルの部分と当該トップファイルの下層をなすリンクファイル（リンクファイルに、さらに他のファイルがリンクされる場合を含む）とを備えている。リンクファイルの例としては画像データファイル、スタイルシートファイル、ドキュメントタイプの定義ファイルなどが挙げられる。
【０００８】
ここで、プリント制御手段１３が、Ｅｔｈｅｒｎｅｔ（登録商標）Ｉ／Ｆ１５，２４を介して印刷ジョブを発行してインタプリタ２３を起動し、これと同時に印刷バッファ１４に格納されたトップファイルとリンクファイルとをプリンタ装置２００側の待ち行列バッ
ファ２５に格納することになる。このようにプリンタ装置２００側の待ち行列バッファ２５に格納されたトップファイルとそれにリンクするリンクファイルとをインタプリタ２３およびラスタライザ２２上でレイアウト情報に従ってレイアウトして印刷するようになっている。これによってプリンタエンジン２１は、記録媒体上に印刷記述データを印刷することになる。
【０００９】
次に、再度、図１１を用いて、プル型ジョブの印刷モデルを説明する。トップファイルとリンクファイルとはサーバ装置に格納される。ここでのサーバ装置は印刷指示装置１００と同一でも良いし、ＬＡＮ４００が接続するインターネット上の汎用のサーバ装置でも構わない。また、それぞれのトップファイルとリンクファイルとが別々のサーバ装置に格納されていても構わない。また、トップファイル内から別のオブジェクトへの参照がある場合、トップファイルから参照するリンクオブジェクトの格納位置を特定する情報が記されている。なお、この格納位置を特定する情報には、ＵＲＩ（Ｕｎｉｖｅｒｓａｌ  Ｒｅｓｏｕｒｃｅ  Ｉｄｅｎｔｉｆｉｅｒ）が使われることがある。
【００１０】
まず、プリント制御手段１３が印刷ジョブを発行してインタプリタ２３を起動する。これと同時にプリンタ装置２００側の待ち行列バッファ２５にトップページの格納位置を特定するデータを格納する。この格納位置を特定する情報にもＵＲＩが使われることがある。インタプリタ２３は指定された格納位置より、ネットワークを通じてトップページを取得、解釈し、ラスタライザ２２でレイアウト情報に従ってレイアウトする。またトップページから参照されているリンクオブジェクトの格納位置がトップページ内に記述されているため、リンクオブジェクトもネットワークを通じて取得し、ラスタライザ２２でレイアウトする。このようにしてレイアウトされた印刷記述データを、プリンタエンジン２１は、記録媒体上に印刷することになる。このような印刷形態は、家庭内に設置されたデジタルテレビとプリンタ装置でも既に実現されている。
【００１１】
更にプル型印刷において、参照されているオブジェクトデータのうち、レイアウトに必要な部分のみを逐次取得することにより、プリンタ内のレイアウト用処理メモリの有効利用をなすような提案もなされている（例えば、特許文献１参照。）。
【００１２】
また、パーソナルコンピュータの印刷機能で複数の印刷ジョブを待ち行列で管理するのと同様に、プリンタ装置内で複数のジョブを待ち行列で管理することを前提とした標準プロトコルも提案されている（例えば、非特許文献１参照。）。
【特許文献１】国際公開第０３／００８１９６号パンフレット
【非特許文献１】“ＰｒｉｎｔＢａｓｉｃ：１  Ｓｅｒｖｉｃｅ  Ｔｅｍｐｌａｔｅ  Ｖｅｒｓｉｏｎ  １．０１  Ｆｏｒ  Ｕｎｉｖｅｒｓａｌ  Ｐｌｕｇ  ａｎｄ  Ｐｌａｙ  Ｖｅｒｓｉｏｎ  １．０”、［ｏｎｌｉｎｅ］、平成１４年８月８日、［平成１７年６月１４日検索］、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ．ｕｐｎｐ．ｏｒｇ／ｄｏｗｎｌｏａｄ／Ｓｅｒｖｉｃｅ＿ｐｒｉｎｔ＿ｖ１＿０２０８０８．ｐｄｆ＞
【発明の開示】
【発明が解決しようとする課題】
【００１３】
プル型印刷ジョブは、印刷が開始されるまではトップページの位置を特定する情報しか必要でないため、待ち行列バッファ２５の使用容量は小さいが、プッシュ型印刷ジョブはトップページ、および、そこから参照されるリンクデータ、例えば文書内にはめ込まれる画像データを全て待ち行列バッファ２５に保存しておかなければならないため、待ち行列バッファ２５の使用容量が大きい。図１２（Ａ）にプル型印刷ジョブの例を示す図、図１２（Ｂ）にプッシュ型印刷ジョブの例を示す図を示す。
【００１４】
図１２（Ａ）および図１２（Ｂ）に示すように、１つの印刷ジョブだけを扱うプリンタ
装置２００においては、プッシュ型ジョブの最大容量分の待ち行列バッファ２５を用意すれば印刷データを取得することができる。一方、複数の印刷ジョブを待ち行列バッファ２５で管理するようにした場合、プル型ジョブは待ち行列バッファ２５の使用容量が小さいため多数の印刷ジョブを、待ち行列バッファ２５に登録することができるが、プッシュ型ジョブは待ち行列バッファ２５の使用容量が大きいため多数待ち行列バッファ２５に登録することができない。
【００１５】
この点について図１３を使って複数の印刷ジョブが待ち行列に登録される様子を詳細に説明する。図１３において、待ち行列、プル型印刷ジョブ、プッシュ型印刷ジョブは所定の大きさを持っており、待ち行列に入りきれない印刷ジョブはジョブ発行に失敗し、待ち行列に登録できないものである。
【００１６】
最初は、バッファは空である（図１３（Ａ））。プル型印刷ジョブが発行されるとプル型ジョブが待ち行列バッファ２５に登録され、それと同時に印刷処理が始まる（図１３（Ｂ））。この印刷処理中にさらにプル型印刷ジョブが発行されるとプル型ジョブが待ち行列バッファ２５に登録される（図１３（Ｃ））。さらにプル型印刷ジョブが発行されるとプル型ジョブが待ち行列バッファ２５に登録される（図１３（Ｄ））。さらに今度はプッシュ型印刷ジョブが発行されるとプッシュ型ジョブが待ち行列バッファ２５に登録される（図１３（Ｅ））。
【００１７】
この様な状態において、さらにプッシュ型印刷ジョブを発行しようとしても、待ち行列バッファ容量が足りないため、待ち行列バッファ２５に登録することができない。
【００１８】
従って、単純に待ち行列バッファ２５で管理する印刷ジョブ管理方式では、この印刷できなかったプッシュ型ジョブを待ち行列バッファ２５が空くのを待って印刷しようとしても、これまで登録されているプル型ジョブ３個とプッシュ型ジョブ１個が全て印刷完了しなければ、新しくプッシュ型ジョブを待ち行列バッファ２５に登録することができないという問題がある。
【００１９】
この問題点を、図１４を用いてさらに詳しく説明する。図１４（Ａ）は、図１３（Ｅ）と同じ状態である。図１４（Ａ）の状態から印刷中のプル型ジョブの印刷が完了した場合、先頭のプル型ジョブが待ち行列バッファ２５より消去され、次のプル型ジョブが待ち行列バッファ２５の先頭となり、印刷中の状態になる（図１４（Ｂ））。プル型ジョブの分の容量が待ち行列バッファ２５より開放されるが、プッシュ型ジョブを新たに登録するほどの空きはできない。さらに図１４（Ｂ）の状態から印刷中のプル型ジョブの印刷が完了した場合、先頭のプル型ジョブが待ち行列バッファ２５より消去され、次のプル型ジョブが待ち行列バッファ２５の先頭となり、印刷中の状態になる（図１４（Ｃ））。プル型ジョブの分の容量が待ち行列バッファ２５より開放されるが、プッシュ型ジョブを新たに登録するほどの空きはできない。更に図１４（Ｃ）の状態から印刷中のプル型ジョブの印刷が完了した場合、先頭のプル型ジョブが待ち行列バッファ２５より消去され、次のプッシュ型ジョブが待ち行列バッファ２５の先頭となり、印刷中の状態になる（図１４（Ｄ））。プル型ジョブの分の容量が待ち行列バッファ２５より開放されるが、プッシュ型ジョブを新たに登録するほどの空きはできない。さらに図１４（Ｄ）の状態から印刷中のプッシュ型ジョブの印刷が完了した場合、先頭のプッシュ型ジョブが待ち行列バッファより消去され、待ち行列が空となる（図１４（Ｅ））。この状態になって、初めてプッシュ型ジョブの登録が可能となる。
【００２０】
また、プッシュ型ジョブが待ち行列バッファ２５に登録できない間に、他のプル型ジョブがさらに待ち行列バッファ２５に登録されてしまえば、更にプッシュ型ジョブの待ち行列バッファ２５への登録ができなかったり、あるいは、待ち行列バッファに登録できたと
しても、プッシュ型ジョブの印刷が遅れたりしてしまう。
【００２１】
更には、印刷指示装置１００がデジタルテレビであるような場合、印刷指示装置１００が生成する印刷記述データが、デジタル放送などの放送波から得られたデータであったり、現在表示されている画面データであったりする場合、印刷データの一時性が高く、時間が経過してしまえば印刷ができなくなってしまうものがある。なお、これら一時的データはプッシュ型ジョブであるとは限らないが、サーバ装置上にファイルとして保存する性格のものではないため、プッシュ型ジョブであることが多い。従って、バッファの使用容量は大きいことが多く、バッファの使用容量が小さいプル型のジョブに比べれば待ち行列バッファ２５に登録できない可能性が高い。このような一時性の高い印刷ジョブの印刷機会を失ってしまうと利用者に対する損失は大きい。
【００２２】
本発明は、前記従来の課題を解決するもので、限られた待ち行列バッファを有効に利用して、印刷機会の損失を防止することができるプリンタ装置、印刷指示装置、印刷システム、印刷方法、プログラムおよび記録媒体を提供することを目的とする。
【課題を解決するための手段】
【００２３】
前記従来の課題を解決するために、本発明は、印刷ジョブの属性情報より印刷ジョブの優先度を決定し、優先度の高い印刷ジョブを優先度の低い印刷ジョブより優先して待ち行列バッファに登録することを特徴とする。
【発明の効果】
【００２４】
本構成によって、複数の印刷ジョブを待ち行列で処理するプリンタ装置において、プリンタ装置内の限られたバッファを有効に利用して印刷することが可能となるので、印刷機会の損失を防止することができる。
【発明を実施するための最良の形態】
【００２５】
本願の第１の発明は、複数の印刷ジョブを待ち行列バッファに登録し、待ち行列バッファに登録された順序で印刷ジョブを印刷するプリンタ装置において、印刷ジョブの属性情報により印刷ジョブの優先度を決定し、優先度の高い印刷ジョブを優先度の低い印刷ジョブより優先して待ち行列バッファに登録することを特徴としたものである。
【００２６】
このようなプリンタ装置とすることで、限られた待ち行列バッファを有効に活用して、印刷機会の損失を防ぐことができる。
【００２７】
本願の第２の発明は、第１の発明のプリンタ装置において、印刷ジョブの属性情報に応じて、待ち行列バッファで先に登録された優先度の低い印刷ジョブの実行を即時中断し、優先度の高い印刷ジョブの印刷処理を即時に行うようにすることを特徴としたものである。
【００２８】
現在印刷中の印刷ジョブを即時中断するために、優先度の高い印刷ジョブを早期に処理することができ、更に限られた待ち行列バッファを有効に活用して、印刷機会の損失を防ぐことができる。
【００２９】
本願の第３の発明は、第１の発明のプリンタ装置において、印刷ジョブの属性情報に応じて、待ち行列バッファで先に登録された優先度の低い印刷ジョブの現在印刷中のページの印刷終了時に印刷を中断し、優先度の高い印刷ジョブの印刷処理を行うようにすることを特徴としたものである。
【００３０】
ページ単位の中断を行うことにより、無駄な印刷結果を無くし、印刷用紙、インクなど
の資源を無駄なく使用することができるとともに、限られた待ち行列バッファを有効に活用して、印刷機会の損失を防ぐことができる。
【００３１】
本願の第４の発明は、第１の発明から第３の発明のいずれかのプリンタ装置において、プッシュ型かプル型かの属性情報を用いて、プッシュ型印刷ジョブの優先度を高く、プル型印刷ジョブの優先度を低くすることを特徴としたものである。
【００３２】
プッシュ型印刷ジョブを優先して印刷することにより、限られた待ち行列バッファを有効に活用して、印刷機会の損失を防ぐことができる。
【００３３】
本願の第５の発明は、第１の発明から第３の発明のいずれかのプリンタ装置において、マルチパート形式印刷ジョブの有無の属性情報を用いて、マルチパート形式印刷ジョブの優先度を高く、マルチパート形式でない印刷ジョブの優先度を低くすることを特徴としたものである。
【００３４】
マルチパート形式印刷ジョブを優先して印刷することにより、限られた待ち行列バッファを有効に活用して、印刷機会の損失を防ぐことができる。
【００３５】
本願の第６の発明は、第１の発明から第３の発明のいずれかのプリンタ装置において、印刷ジョブのデータ量の属性情報を用いて、印刷ジョブのデータ量が予め決められた値より大きいものの優先度を高くすることを特徴としたものである。
【００３６】
印刷ジョブのデータ量が大きいものを優先して印刷することにより、限られた待ち行列バッファを有効に活用して、印刷機会の損失を防ぐことができる。
【００３７】
本願の第７の発明は、第１の発明から第３の発明のいずれかのプリンタ装置において、印刷ジョブのデータ量を印刷されるページ数で除算した値の属性情報を用いて、印刷ジョブのデータ量を印刷されるページ数で除算した値が予め決められた値より大きいものの優先度を高くすることを特徴としたものである。
【００３８】
印刷されるページ数あたりデータ量が大きいものを優先して印刷することにより、限られた待ち行列バッファを有効に活用して、印刷機会の損失を防ぐことができる。
【００３９】
本願の第８の発明は、第１の発明から第７の発明のいずれかのプリンタ装置において、待ち行列バッファに、優先度の高い印刷ジョブが入りきれずに登録できないときは、登録できない当該優先度の高い印刷ジョブの優先度より低い優先度を持つ印刷ジョブを、待ち行列バッファに受け入れないようにすることを特徴としたものである。
【００４０】
優先度の高い印刷ジョブの印刷機会の損失を防ぐことができる。
【００４１】
本願の第９の発明は、第８の発明のプリンタ装置において、待ち行列バッファに受け入れない期間を、一定期間とすることを特徴としたものである。
【００４２】
優先度の低い印刷ジョブが印刷できなくなることを抑制することができる。
【００４３】
本願の第１０の発明は、第９の発明のプリンタ装置において、一定期間は、投入できなかった印刷ジョブのバッファ容量が開放されるまでの待ち時間を、現在待ち行列に登録されている印刷ジョブの属性情報から予測して算出することを特徴としたものである。
【００４４】
今は印刷できない優先度の低い印刷ジョブが、印刷可能になる時間をユーザに提示する
ことができる。
【００４５】
本願の第１１の発明は、複数の印刷ジョブを待ち行列バッファに登録し、待ち行列バッファに登録された順序で印刷ジョブを処理する際に、印刷ジョブの属性情報により印刷ジョブの優先度を決定し、優先度の高い印刷ジョブを優先度の低い印刷ジョブより優先して待ち行列バッファに登録するプリンタ装置に、印刷ジョブとなる印刷データを送信して印刷指示を行う印刷指示装置において、印刷データが一時的なデータであるか否かを印刷ジョブの属性情報として付与することを特徴としたものである。
【００４６】
このような印刷指示装置とすることで、プリンタ装置が一時的な印刷データを優先して印刷するので、限られた待ち行列バッファを有効に活用して、印刷機会の損失を防ぐことができる。
【００４７】
本願の第１２の発明は、第１１の発明の印刷指示装置において、属性情報は、放送波から得られた印刷データであることを示す情報を含むことを特徴としたものである。
【００４８】
放送波から得られた印刷データを優先して印刷することにより、限られた待ち行列バッファを有効に活用して、印刷機会の損失を防ぐことができる。
【００４９】
本願の第１３の発明は、第１１の発明の印刷指示装置において、属性情報は、表示画面のスクリーンコピーの印刷データであることを示す情報を含むことを特徴としたものである。
【００５０】
表示画面のスクリーンコピーの印刷データを優先して印刷することにより、限られた待ち行列バッファを有効に活用して、印刷機会の損失を防ぐことができる。
【００５１】
本願の第１４の発明は、第１１の発明の印刷指示装置において、属性情報は、自装置がモバイル装置であることを示す情報を含むことを特徴としたものである。
【００５２】
モバイル装置からの印刷データを優先して印刷することにより、限られた待ち行列バッファを有効に活用して、印刷機会の損失を防ぐことができる。
【００５３】
本願の第１５の発明は、第１の発明から第７の発明のいずれかのプリンタ装置と、第１１の発明から第１４の発明のいずれかの印刷指示装置とを含むことを特徴とした印刷システムである。
【００５４】
このような印刷システムとすることで、限られた待ち行列バッファを有効に活用して、印刷機会の損失を防ぐことができる。
【００５５】
本願の第１６の発明は、第８の発明から第１０の発明のいずれかのプリンタ装置と、第１１の発明から第１４の発明のいずれかの印刷指示装置とを含む印刷システムであって、プリンタ装置は、待ち行列バッファに、印刷ジョブが登録可能となるまでの予測時間を印刷指示装置に通知する機能を有し、印刷指示装置は、通知された予測時間を表示する機能を有することを特徴としたものである。
【００５６】
今は印刷ができない印刷ジョブをいつ印刷指示可能になるかを、ユーザに提示することができる。
【００５７】
本願の第１７の発明は、第１６の発明の印刷システムにおいて、プリンタ装置は、待ち行列バッファに印刷ジョブが登録可能となったことを前記印刷指示装置に通知する機能を
有し、印刷指示装置は、その通知を受けて印刷ジョブを発行する機能を有することを特徴としたものである。
【００５８】
今は印刷できない印刷ジョブが印刷指示可能になると同時に、印刷指示を出すことができる。
【００５９】
本願の第１８の発明は、複数の印刷ジョブを待ち行列バッファに登録し、待ち行列バッファに登録された順序で印刷ジョブを処理する印刷方法であって、印刷ジョブの属性情報より印刷ジョブの優先度を決定するステップと、優先度の高い印刷ジョブを優先度の低い印刷ジョブより優先して前記待ち行列バッファに登録するステップとを有することを特徴としたものである。
【００６０】
このような印刷方法とすることで、限られた待ち行列バッファを有効に活用して、印刷機会の損失を防ぐことができる。
【００６１】
本願の第１９の発明は、コンピュータに、複数の印刷ジョブを待ち行列バッファに登録し、待ち行列バッファに登録された順序で印刷ジョブを処理する印刷プログラムであって、印刷ジョブの属性情報より印刷ジョブの優先度を決定するステップと、優先度の高い印刷ジョブを優先度の低い印刷ジョブより優先して待ち行列バッファに登録するステップとを実行させるプログラムとしたものである。
【００６２】
このようなプログラムとしたことで、コンピュータに、限られた待ち行列バッファを有効に活用して、印刷機会の損失を防ぐことができるように動作させることができる。
【００６３】
本願の第２０の発明は、第１９の発明のプログラムを記録したコンピュータ読み取り可能な記録媒体としたものである。
【００６４】
このようなコンピュータ読み取り可能な記録媒体とし、コンピュータに読み取らせて実行させることで、限られた待ち行列バッファを有効に活用して、印刷機会の損失を防ぐことができるようにコンピュータを動作させることができる。
【００６５】
以下、本発明の実施の形態について、図面を用いて詳細に説明する。なお、以下の実施の形態が、本発明の技術的範囲を限定するものではなく、特許請求の範囲に記載された発明物とその均等物にまで及ぶものである。
【００６６】
（実施の形態１）
図１は、本発明の実施の形態１に係る印刷システムを説明する図である。図１に示すように、本発明の実施の形態１に係る印刷システムは、印刷指示装置１００とプリンタ装置３００とがＬＡＮ４００を通じて接続されている。
【００６７】
印刷指示装置１００は、デジタルテレビ、セットトップボックスなどを用いることができるが、その他、データのソース源となる装置であれば、メディアサーバ、携帯型の端末、汎用のパーソナルコンピュータなど何にでも適用可能である。
【００６８】
プリンタ装置３００はプリンタ単体の機能を有する装置とする以外に、複合機やファクシミリなどでもよい。また、本実施の形態１においてはＬＡＮ４００を通じて印刷指示装置１００とプリンタ装置３００がつながっているが、必ずしもＬＡＮである必要はなく、ＩＥＥＥ１３９４、Ｂｌｕｅｔｏｏｔｈ、ＵＳＢなどでも構わない。
【００６９】
図１に示すように、印刷指示装置１００は、印刷記述データを生成するアプリケーショ
ン１１と、アプリケーション１１から出力される印刷記述データの形式を、プリンタ装置３００が解読可能な階層構造をもつリンクファイル（ここではＸＨＴＭＬを使用する）形式に変換する変換手段１２と、前記印刷記述データを解読してプリンタジョブを発行したり印刷記述データのバッファ管理を行うプリント制御手段１３と、印刷記述データを一時保存する印刷バッファ１４と、更にＬＡＮ４００との接続インターフェイスとなるＥｔｈｅｒｎｅｔ（登録商標）  Ｉ／Ｆ  １５とを備えている。
【００７０】
また、プリンタ装置３００は、ＬＡＮ４００との接続用インターフェイスとなるＥｔｈｅｒｎｅｔ（登録商標）  Ｉ／Ｆ３７と、印刷ジョブを蓄積する待ち行列バッファ３６と、待ち行列バッファ３６の制御する待ち行列制御手段３５と、印刷ジョブの属性情報より優先度を決定する優先度決定手段３４と、印刷ジョブに基づいて印刷記述データやオブジェクトを参照し、印刷記述データの解読をしてラスタライザに渡すインタプリタ３３と、インタプリタ３３より得られた印刷データに基づいてラスタライズするラスタライザ３２と、ラスタライズされた印刷記述データを記録媒体上に可視記録出力するプリンタエンジン３１とを備えている。
【００７１】
なお、本実施の形態１では、印刷記述データを記録媒体上に可視出力するためにプリンタエンジン３１を用いているが、プリンタエンジン３１は、インクジェット型、熱転写型、昇華方、レーザープリンタなどの電子写真画像記録装置、あるいは銀塩写真プリンタ、スクリーン印刷の版下を作成する印刷装置に用いられるプリンタエンジン３１などとしても良い。
【００７２】
以上のように構成される本発明の実施の形態に係る印刷システムの動作について説明する。まず、ユーザがアプリケーション１１を用いて、例えば印刷データの編集等を行った後に印刷要求を出すと、アプリケーション１１から印刷記述データが出力される。なお、このアプリケーション１１については、例えばメーラやウエブブラウザ及びＢＭＬ（Ｂｒｏａｄｃａｓｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）ブラウザ、ディジタルスチールカメラのデータを編集可能なＤＳＣ（Ｄｉｇｉｔａｌ  Ｓｔｉｌｌ  Ｃａｍｅｒａ）アルバムなどがある。これらからのデータをレイアウタにより再レイアウトし、変換手段１２で更にプリンタ装置３００側で解読可能な言語、例えばＸＨＴＭＬ形式に変換する（既にＸＨＴＭＬ形式等であれば、特に変換は行わなくても構わないことはもちろんである）。
【００７３】
このように、変換された印刷記述データはプリント制御手段１３に渡され、印刷バッファ１４に格納される。その際、印刷記述データの中でリンクされているような画像オブジェクトファイルについては、プリンタで印刷処理が可能な形式のデータ（ＪＰＥＧ（Ｊｏｉｎｔ  Ｐｈｏｔｏｇｒａｐｈｉｃ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）やＰＮＧ（Ｐｏｒｔａｂｌｅ  Ｎｅｔｗｏｒｋ  Ｇｒａｐｈｉｃｓ）形式）に変換されて本来当該データが存在していたソース源から印刷バッファ１４にコピーされる。
【００７４】
なお、当該ソース源は、印刷指示装置１００の中であるか外であるかを問わない。ここでも既にプリンタ装置３００で印刷処理が可能な形式のデータである場合には変換の必要はないことはもちろんである。
【００７５】
次に、このようにして準備された印刷ジョブが印刷指示装置１００からプリンタ装置３００にＬＡＮ４００を通じて渡された場合のプリンタ装置３００の処理を、図２および図３を用いて詳細に説明する。図２は、本発明の実施の形態に係るプリンタ装置３００の待ち行列制御手段３５の処理を説明するフローチャートである。図３は、本発明の実施の形態に係るプリンタ装置３００のインタプリタ３３の処理を説明するフローチャートである。
【００７６】
まず、図２に基づいて待ち行列制御手段３５の動作を説明する。プリンタ装置３００が印刷ジョブを受信する（Ｓ１０１）と、待ち行列バッファ３６に空きがあるかを調べる（Ｓ１０２）。もし空きがなければ印刷ジョブの登録ができなかったことを印刷指示装置１００に通知し（Ｓ１０３）、Ｓ１０１に戻る。空きがあれば印刷ジョブの属性情報より優先度を計算する。ここでは、プッシュ型ジョブの優先度が高い、プル型ジョブの優先度が低い、という計算を行うものとする（Ｓ１０４）。
【００７７】
次に、待ち行列バッファ３６の中に既に登録されている印刷ジョブの中で、新しく登録しようとしている印刷ジョブの優先度より優先度の低い印刷ジョブがあるか否かを調べる（Ｓ１０５）。もし待ち行列バッファの中に既に登録されている印刷ジョブの中で、いま登録しようとしている印刷ジョブの優先度より優先度の低い印刷ジョブがなければ、待ち行列バッファ３６の最後に、印刷ジョブを登録する（Ｓ１０７）。そうでなければ、待ち行列バッファ３６中、印刷中の印刷ジョブを除く、優先度の低い印刷ジョブの前に、新しい印刷ジョブを登録する。そして、いずれの場合もＳ１０１に戻る。
【００７８】
次に、図３に基づいてインタプリタ３３の動作を説明する。まず、待ち行列バッファ３６に登録されている印刷ジョブがあるか否かを調べる（Ｓ２０１）。なければＳ２０１に戻る。
【００７９】
待ち行列バッファ３６に登録されている印刷ジョブがある場合、待ち行列バッファ３６の先頭の印刷ジョブの印刷を実行する。この印刷実行は従来の技術で説明した内容と同一で、印刷ジョブのトップデータとオブジェクトとに従い、インタプリタ３３およびラスタライザ３２上でレイアウト情報に従ってレイアウトし、プリンタエンジン３１が、記録媒体上に印刷記述データを印刷する一連の処理を行う。この処理には時間がかかり、特に印字媒体への転写は物理的機械的操作が施されるため、インタプリタ３３はその完了を待つことになる。
【００８０】
次に、Ｓ２０３で印刷が中断されたか否かチェックする。中断されていればＳ２０１に戻る。中断されていなければ、印刷が完了されたか否かチェックする（Ｓ２０４）。印刷完了していなければＳ２０３に戻る。
【００８１】
印刷が完了している場合、待ち行列バッファ３６の先頭の印刷ジョブを待ち行列バッファ３６から削除する（Ｓ２０５）。その後、Ｓ２０１に戻る。
【００８２】
このようにして図２および図３で示される処理が、同時並行的になされてプリンタ装置３００の処理が行われることになる。
【００８３】
さてここで、この図２および図３に示す処理に従って処理がなされるプリンタ装置３００において、印刷ジョブが次々と登録され、また印刷完了していくときの待ち行列バッファ３６の様子を、図２および図３を参照しつつ、更に図４および図５を用いて説明する。図４（Ａ）〜図４（Ｅ）および図５（Ａ）〜図５（Ｃ）は、本発明の実施の形態１に係るプリンタ装置３００の待ち行列バッファ３６に登録されている印刷ジョブの様子を説明する図である。
【００８４】
図４（Ａ）は待ち行列バッファ３６の初期状態である。ここでプル型ジョブが登録されると、Ｓ１０１で印刷ジョブが受信される。次に待ち行列バッファ３６に空きがあるか否かチェックする（Ｓ１０２）。この場合、待ち行列バッファ３６に空きがあるのでＳ１０４に進み、印刷ジョブの属性情報より優先度計算をする。本印刷ジョブはプル型印刷ジョブなので優先度が低い。次にＳ１０５に進み、待ち行列バッファ３６に登録されている優先度の低い印刷ジョブがあるか否か調べる。待ち行列バッファ３６は空なので待ち行列バ
ッファ３６に登録されている優先度の低いジョブがないのでＳ１０７に進み、待ち行列バッファ３６の最後に印刷ジョブを登録する。この時点で、図３のＳ２０１において待ち行列バッファ３６に印刷ジョブが登録されたのでＳ２０２に進み、待ち行列バッファ３６の先頭の印刷ジョブの印刷を実行する。この時点の待ち行列バッファ３６の状態を示すものが図４（Ｂ）である。
【００８５】
ここで更にプル型ジョブが登録されると、Ｓ１０１で印刷ジョブが受信される。次に待ち行列バッファ３６に空きがあるか否かチェックする（Ｓ１０２）。空きがあるのでＳ１０４に進み、印刷ジョブの属性情報より優先度計算をする。本印刷ジョブはプル型印刷ジョブなので優先度が低い。次にＳ１０５に進み、待ち行列バッファ３６に登録されている優先度の低い印刷ジョブがあるか否か調べる。待ち行列バッファ３６には同じ優先度の印刷ジョブしかないのでＳ１０７に進み、待ち行列バッファ３６の最後に印刷ジョブを登録する。この時点の待ち行列バッファの状態を示すものが図４（Ｃ）である。
【００８６】
ここでさらにプル型ジョブが登録されると、Ｓ１０１で印刷ジョブが受信される。次に待ち行列バッファ３６に空きがあるか否かチェックする（Ｓ１０２）。空きがあるのでＳ１０４に進み、印刷ジョブの属性情報より優先度計算をする。本印刷ジョブはプル型印刷ジョブなので優先度が低い。次にＳ１０５に進み、待ち行列バッファ３６に登録されている優先度の低いジョブがあるか否か調べる。待ち行列バッファ３６には同じ優先度の印刷ジョブしかないのでＳ１０７に進み、待ち行列バッファ３６の最後に印刷ジョブを登録する。この時点の待ち行列バッファ３６の状態を示すものが図４（Ｄ）である。
【００８７】
ここで更にプッシュ型ジョブが登録されると、Ｓ１０１で印刷ジョブが受信される。次に待ち行列バッファ３６に空きがあるか否かチェックする（Ｓ１０２）。空きがあるのでＳ１０４に進み、印刷ジョブの属性情報より優先度計算をする。本印刷ジョブはプッシュ型印刷ジョブなので優先度高である。次にＳ１０５に進み、待ち行列バッファに登録されている優先度の低い印刷ジョブがあるか否か調べる。待ち行列バッファ３６には優先度の低いジョブしか登録されていないのでＳ１０６に進み、待ち行列バッファ３６中、印刷中の印刷ジョブを除く、優先度の低い印刷ジョブの前に印刷ジョブを登録する。この時点の待ち行列バッファの状態を示すものが図４（Ｅ）である。
【００８８】
ここで、順次印刷ジョブが印刷完了していく様子を、図５を用いて説明する。図５（Ａ）は、図４（Ｅ）と同じ状態である。図５（Ａ）の状態から印刷中のプル型ジョブの印刷が完了した場合、先頭のプル型ジョブが待ち行列バッファ３６より消去され、次のプッシュ型ジョブが待ち行列バッファ３６の先頭となり、印刷中の状態になる（図５（Ｂ））。プル型ジョブの分の容量が待ち行列バッファ３６より開放されるが、この時点では、次のプッシュ型ジョブを新たに登録するほどの空きはできない。更に図５（Ｂ）の状態から印刷中のプッシュ型ジョブの印刷が完了した場合、先頭のプッシュ型ジョブが待ち行列バッファ３６より消去され、次のプル型ジョブが待ち行列バッファ３６の先頭となり、印刷中の状態になる（図５（Ｃ））。この状態になって、２個のプル型ジョブが待ち行列バッファ３６に登録されているが、プッシュ型ジョブを新しく待ち行列バッファ３６に登録することが可能となる。
【００８９】
本実施の形態１に挙げた印刷ジョブの登録例においては、従来の技術に比べて印刷ジョブ２個分早く、プッシュ型ジョブを登録できるようになる。つまり１印刷ジョブに２分かかるとすれば４分も早く登録できるようになる。
【００９０】
このようにしてプリンタ内部で計算した優先度を用いて待ち行列バッファ３６を制御することにより、待ち行列バッファ３６を有効に活用することができる。
【００９１】
なお、本発明の実施の形態１では優先度をプッシュ型ジョブであるかプル型ジョブであるかを元に判別したが、待ち行列バッファ３６の利用効率を考慮した様々な優先度の計算を行うことが可能である。例えば、マルチパート形式印刷ジョブは印刷指示装置内部で一時的に作成した印刷ジョブであると判断し、優先度を高くするようなことが考えられる。また、単に印刷ジョブのデータ量が大きいものを、優先度を高くしても良い。また、待ち行列バッファ３６の時間当たりの使用容量を考えると、印刷ジョブのデータ量を印刷されるページ数で除算した値が大きいものを、優先度を高くしても良い。例えば、印刷ジョブのデータ量が同じであれば、ページ数が少ないものの方が出力されるまでに時間が少なくて済むため、ページ数が少ないものを優先的に処理した方が待ち行列バッファの使用効率が高い。
【００９２】
（実施の形態２）
本実施の形態２では、実施の形態１に加え、現在印刷中の印刷ジョブの中断を行う場合について図面を用いて詳細に説明する。
【００９３】
印刷システムの構成は、実施の形態１と同様であり、図１中の待ち行列制御手段３５の動作が、図６に示すフローチャートに従っているところを特徴とする。よって、印刷ジョブが印刷指示装置１００からプリンタ装置３００にＬＡＮ４００を通じて渡された場合の処理を、図６を用いて詳細に説明する。図６は、本発明の実施の形態２に係るプリンタ装置３００の待ち行列制御手段３５の動作を説明するフローチャートである。
【００９４】
図６に示すように、プリンタ装置３００が印刷ジョブを受信する（Ｓ３０１）と、待ち行列バッファ３６に空きがあるかを調べる（Ｓ３０２）。もし空きがなければ印刷ジョブの登録ができなかったことを印刷指示装置に通知し（Ｓ３０３）、Ｓ３０１に戻る。空きがあれば印刷ジョブの属性情報より優先度を計算する。ここでは、プッシュ型ジョブの優先度が高く、プル型ジョブの優先度が低いという計算を行うものとする（Ｓ３０４）。
【００９５】
次に、待ち行列バッファ３６の中に、既に登録されている印刷ジョブの中で、新しく登録しようとしている印刷ジョブの優先度より優先度の低いジョブがあるか否かを調べる（Ｓ３０５）。もし待ち行列バッファ３６の中に既に登録されている印刷ジョブの中で、いま登録しようとしている印刷ジョブの優先度より優先度の低いジョブがなければ、待ち行列バッファ３６の最後に印刷ジョブを登録する（Ｓ３０７）。そうでなければ、新しく登録しようとする印刷ジョブの優先度より現在印刷中の印刷ジョブの優先度が低いか否かを判定する（Ｓ３０８）。新しく登録しようとする印刷ジョブの優先度より現在印刷中の印刷ジョブの優先度が低ければ、印刷中の印刷ジョブを中断し、待ち行列バッファ３６の先頭に印刷ジョブを登録する（Ｓ３０９）。そうでなければ待ち行列バッファ３６中、印刷中の印刷ジョブを除く、優先度の低い印刷ジョブの前に印刷ジョブを登録する（Ｓ３０６）。
【００９６】
この図６に示される処理がなされるプリンタ装置３００において、印刷ジョブが次々と登録され、また印刷完了していくときの待ち行列バッファ３６の様子を図７および図８を用いて説明する。図７（Ａ）〜図７（Ｅ）および図８（Ａ）〜図８（Ｃ）は、本発明の実施の形態２に係るプリンタ装置３００の待ち行列バッファ３６に登録されている印刷ジョブの様子を説明する図である。
【００９７】
図７（Ａ）は待ち行列バッファ３６の初期状態である。ここでプル型ジョブが登録されると、Ｓ３０１で印刷ジョブが受信される。次に待ち行列バッファ３６に空きがあるか否かをチェックする（Ｓ３０２）。空きがあるのでＳ３０４に進み、印刷ジョブの属性情報より優先度計算をする。本印刷ジョブはプル型印刷ジョブなので優先度が低い。次にＳ３０５に進み、待ち行列バッファ３６に登録されている優先度の低い印刷ジョブがあるか否
かを調べる。待ち行列バッファ３６は空なので待ち行列バッファ３６に登録されている優先度の低いジョブがなく、Ｓ３０７に進む。Ｓ３０８では今登録しようとしている印刷ジョブの優先度が、印刷中の印刷ジョブより低いか否かをチェックしているが、何も印刷していないのでＳ３０６に進む。Ｓ３０６では、待ち行列バッファ３６の最後に印刷ジョブを登録する。この時点で、図３のＳ２０１において待ち行列バッファ３６に印刷ジョブが登録されたのでＳ２０２に進み、待ち行列バッファ３６の先頭の印刷ジョブの印刷を実行する。この時点の待ち行列バッファ３６の状態を示すものが図７（Ｂ）である。
【００９８】
更にプル型ジョブが登録されると、Ｓ３０１で印刷ジョブが受信される。次に待ち行列バッファ３６に空きがあるか否かをチェックする（Ｓ３０２）。空きがあるのでＳ３０４に進み、印刷ジョブの属性情報より優先度計算をする。本印刷ジョブはプル型印刷ジョブなので優先度が低い。次にＳ３０５に進み、待ち行列バッファ３６に登録されている優先度の低いジョブがあるかどうか調べる。待ち行列バッファ３６には優先度低の印刷ジョブだけなので、待ち行列バッファ３６に登録されている優先度の低い印刷ジョブがなく、Ｓ３０７に進む。Ｓ３０８では現今登録しようとしている印刷ジョブの優先度が、印刷中の印刷ジョブの優先度より低いか否かをチェックするが、優先度は同じなのでＳ３０６に進む。Ｓ３０６では、待ち行列バッファ３６の最後に印刷ジョブを登録する。この時点の待ち行列バッファ３６の状態を示すものが図７（Ｃ）である。
【００９９】
更にプル型ジョブが登録されると、Ｓ３０１で印刷ジョブが受信される。次に待ち行列バッファ３６に空きがあるかどうかチェックする（Ｓ３０２）。空きがあるのでＳ３０４に進み、印刷ジョブの属性情報より優先度計算をする。本印刷ジョブはプル型印刷ジョブなので優先度が低い。次にＳ３０５に進み、待ち行列バッファ３６に登録されている優先度の低い印刷ジョブがあるかどうか調べる。待ち行列バッファ３６には優先度低の印刷ジョブだけなので、待ち行列バッファ３６に登録されている優先度の低い印刷ジョブがなく、Ｓ３０７に進む。Ｓ３０８では今登録しようとしている印刷ジョブの優先度が、印刷中の印刷ジョブより低いか否かをチェックするが、優先度は同じなのでＳ３０６に進む。Ｓ３０６では、待ち行列バッファ３６の最後に印刷ジョブを登録する。この時点の待ち行列バッファ３６の状態を示すものが図７（Ｄ）である。
【０１００】
ここで、更にプッシュ型ジョブが登録されると、Ｓ３０１で印刷ジョブが受信される。次に待ち行列バッファ３６に空きがあるかどうかチェックする（Ｓ３０２）。空きがあるのでＳ３０４に進み、印刷ジョブの属性情報より優先度計算をする。本印刷ジョブはプッシュ型印刷ジョブなので優先度が高い。次にＳ３０５に進み、待ち行列バッファ３６に登録されている優先度の低いジョブがあるかどうか調べる。待ち行列バッファ３６には優先度の低い印刷ジョブが登録されているだけなのでＳ３０８に進む。Ｓ３０８では今登録しようとしている印刷ジョブの優先度が、印刷中の印刷ジョブより低いか否かをチェックするが、印刷中の印刷ジョブの方が、優先度が低いので、Ｓ３０９に進む。Ｓ３０９では印刷中の印刷ジョブを中断して、今登録するプッシュ型の印刷ジョブを待ち行列バッファ３６の先頭に登録する。一方、図３に示す処理において、印刷中の印刷ジョブが中断されたことが判定され（Ｓ２０３）、処理が先頭に戻り、Ｓ２０１で待ち行列バッファ３６の先頭に登録されているプッシュ型のジョブの印刷が実行され、印刷中の状態になる。この時点の待ち行列バッファ３６の状態を示すものが図７（Ｅ）である。
【０１０１】
ここで、順次印刷ジョブが印刷完了していく様子を、図８を用いて説明する。図８（Ａ）は、図７（Ｅ）と同じ状態である。図８（Ａ）の状態から印刷中のプッシュ型ジョブの印刷が完了した場合、先頭のプル型ジョブが待ち行列バッファ３６より消去され、次のプル型ジョブが待ち行列バッファ３６の先頭となり、印刷中の状態になる（図８（Ｂ））。この状態になって、３個のプル型ジョブが待ち行列バッファ３６に登録されているが、プッシュ型ジョブを新しく待ち行列バッファ３６に登録することが可能となる。
【０１０２】
本実施の形態２に挙げた印刷ジョブの登録例においては、従来の技術に比べて印刷ジョブ３個分早く、プッシュ型ジョブを登録できるようになる。１印刷ジョブに２分かかるとすれば６分も早く登録できるようになる。
【０１０３】
このようにして、本発明の実施の形態２においては、現在印刷中のジョブがあっても中断することにより、待ち行列バッファ３６の効率を飛躍的に高めることができ、待ち行列バッファ３６を有効に活用することができる。なお、現在印刷中の印刷ジョブを中断しても、再度印刷シーケンスに入れば良い為、最終的な印刷物は得ることができる。
【０１０４】
なお、プリンタ装置３００では、１枚の紙面の印刷途中で中断してしまうと、印刷用紙やトナーやインクが無駄になってしまうというプリンタ装置特有の問題点がある。従って、そのような問題が発生しないように、印刷ジョブの途中であっても、１枚の紙面の印刷の切れ目で中断するようにしてもよい。
【０１０５】
（実施の形態３）
本実施の形態３では、優先度の高い印刷ジョブがプリンタ内部の待ち行列バッファに入りきれずに、待ち行列に投入できなかった場合の処理について図面を用いて詳細に説明する。
【０１０６】
印刷システムの構成は実施の形態１と同様であり、図１中の待ち行列制御手段３５の動作が、図９に示す処理に従っているところを特徴とする。よって、印刷ジョブが印刷指示装置１００からプリンタ装置３００にＬＡＮ４００を通じて渡された場合の処理を、図９を用いて詳細に説明する。図９は、本発明の実施の形態３に係るプリンタ装置３００の待ち行列制御手段３５の動作を説明するフローチャートである。
【０１０７】
図９に示すように、プリンタ装置３００が印刷ジョブを受信する（Ｓ４０１）と、受け入れ拒否タイマがタイムアウトしたか否かを調べる（Ｓ４０２）。なお、受け入れ拒否タイマは後述のＳ４０９にて説明する。受け入れ拒否タイマがタイムアウトしていれば、Ｓ４０３に進み、受け入れ拒否フラグをオフにする。次にＳ４０４に進み、印刷ジョブの属性情報より優先度を計算する。この優先度の計算は実施の形態１および実施の形態２で説明してきた内容と同様である。次に、印刷ジョブの優先度が低く、かつ、受け入れ拒否フラグがオンであるかどうかをチェックする（Ｓ４０５）。判定が真であれば、Ｓ４０６に進み、印刷指示装置に印刷ジョブ登録不可通知を行い、Ｓ４０１に戻る。判定が偽であればＳ４０７に進む。
【０１０８】
Ｓ４０７では、待ち行列バッファ３６に空きがあるかどうかチェックする。空きがない場合、待ち行列バッファ３６が空くまでの時間を予測する（Ｓ４０８）。この時間予測は、待ち行列バッファ３６中の全印刷ジョブの印刷枚数とプリンタの時間当たりの印字速度とから計算することができる。次にＳ４０９に進み、受け入れ拒否フラグをオンにし、受け入れ拒否タイマを予測した時間の値にセットする。このタイマは、セットした時間が経過するとタイムアウトするようになっている。次にＳ４１０に進み、印刷指示装置１００に印刷ジョブ登録不可通知を行い、Ｓ４０１に戻る。待ち行列バッファ３６に空きがある場合はＳ４１１に進む。
【０１０９】
次に、待ち行列バッファ３６の中に、既に登録されている印刷ジョブの中で、新しく登録しようとしている印刷ジョブの優先度より優先度の低いジョブがあるか否かを調べる（Ｓ４１１）。もし待ち行列バッファ３６の中に既に登録されている印刷ジョブの中で、いま登録しようとしている印刷ジョブの優先度より優先度の低いジョブがなければ、待ち行列バッファ３６の最後に印刷ジョブを登録する（Ｓ４１３）。そうでなければ、待ち行列
バッファ３６中、印刷中の印刷ジョブを除く、優先度の低い印刷ジョブの前に印刷ジョブを登録する（Ｓ４１２）。
【０１１０】
さてここで、この図９に示す処理に従って処理がなされるプリンタ装置３００において、印刷ジョブが次々と登録され、図４（Ｅ）に示す状態になったときに、更に印刷ジョブが登録されようとするときの処理を説明する。
【０１１１】
ここでプッシュ型ジョブが登録されると、Ｓ４０１で印刷ジョブが受信される。次に受け入れ拒否タイマがタイムアウトしたかどうか調べる（Ｓ４０２）。受け入れ拒否タイマはまだ設定されていないのでタイムアウトもせず、Ｓ４０４に進む。すなわち、印刷ジョブの属性情報より優先度計算をする（Ｓ４０４）。プッシュ型印刷ジョブなので、優先度は高い。
【０１１２】
次に、印刷ジョブの優先度が低く、かつ、受け入れ拒否フラグがオンであるかどうかをチェックする（Ｓ４０５）。優先度は高いのでＳ４０７に進む。
【０１１３】
次に待ち行列バッファ３６に空きがあるかどうかチェックする（Ｓ４０７）。空きがないので、Ｓ４０８に進む。ここでは待ち行列バッファ３６が空くまでの時間を予測する（Ｓ４０８）。次のプッシュ型ジョブを登録するためには、現在印刷中のプル型ジョブと、次のプッシュ型ジョブの印刷が完了し、待ち行列バッファ３６が空くことが必要である。この２つの印刷ジョブの残り印刷枚数と、プリンタの時間当たりの印字速度より２つの印刷ジョブが完了するまでの時間を予測計算することができる。次に受け入れ拒否フラグをオンにし、受け入れ拒否タイマを今予測した時間に設定する（Ｓ４０９）。そして印刷指示装置に印刷ジョブ登録不可通知を行い、Ｓ４０１に戻る。
【０１１４】
さて、ここで新しくプル型印刷ジョブを登録しようとする場合を考える。Ｓ４０１でプル型ジョブが登録されると、次に受け入れ拒否タイマがタイムアウトしたかどうか調べる（Ｓ４０２）。まだ受け入れ拒否タイマがタイムアウトしない場合、Ｓ４０４に進む。次に印刷ジョブの属性情報より優先度計算をする（Ｓ４０４）。プル型印刷ジョブなので、優先度は低い。
【０１１５】
次に、印刷ジョブの優先度が低く、かつ、受け入れ拒否フラグがオンであるかどうかをチェックする（Ｓ４０５）。いずれも真であるため、Ｓ４０６に進み、印刷指示装置に印刷ジョブ登録不可通知を行い、Ｓ４０１に戻る。この動作は受け入れ拒否タイマがタイムアウトするまで、すなわち、先に計算したプッシュ型ジョブが投入可能になるまでの時間継続する。
【０１１６】
このように、本発明の実施の形態３においては、ある一定期間はたとえ待ち行列バッファ３６に空きがあってもプル型のジョブを待ち行列に投入しないようにすることにより、従来の技術で課題であった、待ち行列バッファに空きがある場合に印刷ジョブを登録してしまい、プッシュ型ジョブの印刷機会の喪失を防止することを可能としている。
【０１１７】
また、この待ち行列バッファ３６が空くまでの予測時間を印刷指示装置１００に通知するようにしても良い。これを表示画面上に表示してユーザに中断するか待つかの判断を仰ぐようにしたり、自動的に予測時間経ったら再度印刷ジョブを発行したりするようにしても良い。
【０１１８】
なお、本発明の実施の形態３の説明においては、待ち行列バッファ３６の状態より一定期間の値を予測計算するようにしたが、一定時間は固定値としてもよいし、あるいはプッシュ型ジョブが投入されるまでずっと待つようにしても良い。
【０１１９】
以上、これまでの説明においては、優先度の計算においてはプリンタ装置３００に与えられた一般的な印刷ジョブの情報から得られる属性情報を用いるようにしたが、印刷指示装置１００からこの優先度を算出するに参考となる属性情報を設定するようにしても良い。
【０１２０】
例えば、印刷指示装置１００が発行する印刷ジョブを図１０に基づいて説明する。図１０は、本発明の実施の形態３に係る印刷指示装置１００が発行する印刷ジョブの一例を示す図であり、デジタルテレビの画面データを印刷するような例である。図１０において、属性情報として「データソース：スクリーン」と指定しており、プリンタ装置はこの属性情報を元に優先度を計算するようにすることもできる。すなわち、デジタルテレビの画面は逐次移り変わるものであり、時間が経てば保持できなくなってしまうため、この情報を付与することにより優先度の高い情報であることを示すものである。この場合、これまでに示した待ち行列バッファを効率的に利用するという目的以外に、印刷という操作には時間を要するものであるし、またインク切れや紙詰まりなどにより印刷が失敗する、という状況も発生しうる。従って、一時的データは優先的に印刷させるようにするものである。
【０１２１】
なお、この属性情報は画面データであるというだけでなく、放送波から得られたデータであるという情報を利用することもできる。あるいはアプリケーション１１により一時的に生成されたデータで、長時間印刷指示装置１００で保持できないような条件を設定するようにしても良い。また、印刷指示装置１００がモバイル装置でネットワークに長時間参加できないような場合にも優先的に印刷させるために、装置種別情報を属性情報として設定するようにしても良い。
【０１２２】
また、ユーザにとって意図しない印刷順序となる場合があるため、待ち行列バッファ３６中の順序を変更した場合、印刷指示装置１００に通知するようにしても良い。また、順序の変更を望まないユーザのために、このような待ち行列バッファに登録される順序が変更されるような動作を抑制するような設定項目をプリンタ装置３００に設けても良い。
【産業上の利用可能性】
【０１２３】
本発明に係るプリンタ装置は、印刷指示装置より指示される属性の異なる複数の印刷ジョブを効率よく印刷するプリンタ装置として有用である。
【０１２４】
また、本発明に係る印刷指示装置は、複数の印刷ジョブをプリンタ装置に印刷指示する装置として有用であり、デジタルテレビ、携帯電話機およびパーソナルコンピュータ等として有用である。
【図面の簡単な説明】
【０１２５】
【図１】本発明の実施の形態１に係る印刷システムを説明する図
【図２】本発明の実施の形態に係るプリンタ装置の待ち行列制御手段の処理を説明するフローチャート
【図３】本発明の実施の形態に係るプリンタ装置のインタプリタの処理を説明するフローチャート
【図４】（Ａ）〜（Ｅ）本発明の実施の形態１に係るプリンタ装置の待ち行列バッファに登録されている印刷ジョブの様子を説明する図
【図５】（Ａ）〜（Ｃ）本発明の実施の形態１に係るプリンタ装置の待ち行列バッファに登録されている印刷ジョブの様子を説明する図
【図６】本発明の実施の形態２に係るプリンタ装置の待ち行列制御手段の動作を説明するフローチャート
【図７】（Ａ）〜（Ｅ）本発明の実施の形態２に係るプリンタ装置の待ち行列バッファに登録されている印刷ジョブの様子を説明する図
【図８】（Ａ）〜（Ｂ）本発明の実施の形態２に係るプリンタ装置の待ち行列バッファに登録されている印刷ジョブの様子を説明する図
【図９】本発明の実施の形態３に係るプリンタ装置の待ち行列制御手段の動作を説明するフローチャート
【図１０】本発明の実施の形態３に係る印刷指示装置が発行する印刷ジョブの一例を示す図
【図１１】従来のプリンタ装置およびそのシステム構成を説明する図
【図１２】（Ａ）プル型印刷ジョブの例を示す図、（Ｂ）プッシュ型印刷ジョブの例を示す図
【図１３】従来のプリンタ装置における待ち行列バッファの状態を説明する図
【図１４】従来のプリンタ装置における待ち行列バッファの状態を説明する図
【符号の説明】
【０１２６】
１００    印刷指示装置
３００    プリンタ装置
４００    ＬＡＮ
１１    アプリケーション
１２    変換手段
１３    プリント制御手段
１４    印刷バッファ
１５    Ｅｔｈｅｒｎｅｔ（登録商標）  Ｉ／Ｆ
３１    プリンタエンジン
３２    ラスタライザ
３３    インタプリタ
３４    優先度決定手段
３５    待ち行列制御手段
３６    待ち行列バッファ
３７    Ｅｔｈｅｒｎｅｔ（登録商標）  Ｉ／Ｆ
【図１】
2007148851.tif 000003
【図２】
2007148851.tif 000004
【図３】
2007148851.tif 000005
【図４】
2007148851.tif 000006
【図５】
2007148851.tif 000007
【図６】
2007148851.tif 000008
【図７】
2007148851.tif 000009
【図８】
2007148851.tif 000010
【図９】
2007148851.tif 000011
【図１０】
2007148851.tif 000012
【図１１】
2007148851.tif 000013
【図１２】
2007148851.tif 000014
【図１３】
2007148851.tif 000015
【図１４】
2007148851.tif 000016