【事件の表示】
　特許第３１７５６２０号「印刷装置」の請求項１ないし１０に係る特許に対する特許異議の申立てについて、次のとおり決定する。
【結　論】
　訂正を認める。
　特許第３１７５６２０号の請求項１ないし９に係る特許を維持する。
【理　由】
  １．手続の経緯
　出願日　　　　　　　　　　　　　　　平成　９年　３月１２日（優先権主張平成８年６月２１日）
　登録日　　　　　　　　　　　　　　　平成１３年　４月　６日
　公報発行日　　　　　　　　　　　　　平成１３年　６月１１日
　特許異議の申し立て　　　　　　　　　平成１３年１２月１１日
　第１回取消理由通知　　　　　　　　　平成１４年　５月２４日（発送）
　第１回訂正請求及び意見書提出　　　　平成１４年　７月２３日
　審尋（申立人に対して）　　　　　　　平成１４年１０月　８日（発送）
　回答書提出　　　　　　　　　　　　　平成１４年１１月　７日
　審尋（特許権者に対して）　　　　　　平成１５年　２月２１日（発送）
　回答書提出　　　　　　　　　　　　　平成１５年　３月２４日
　第２回取消理由通知　　　　　　　　　平成１５年１０月２８日（発送）
　第１回訂正請求取り下げ　　　　　　　平成１５年１２月　１日
　第２回訂正請求　　　　　　　　　　　平成１５年１２月　１日
　第３回取消理由通知　　　　　　　　　平成１６年　２月　４日（発送）
　第２回訂正請求取り下げ　　　　　　　平成１６年　２月　４日
　第３回訂正請求　　　　　　　　　　　平成１６年　２月　４日
　　　　　
２．訂正の適否
（１）訂正の内容
　特許権者の求めている訂正の内容は、以下のとおりである（訂正箇所にアンダーラインを付した。）。
　ａ．訂正事項ａ
　特許請求の範囲を、
「【請求項１】
　複数の印刷ジョブの各々に対応する印刷データを
並列的に
　前記受信手段が受信した複数の印刷データを各々蓄積する印刷データ蓄積手段と、
　前記受信手段が受信した印刷データから中間コードを生成する中間コード生成手段と、
　生成済みの中間コードについての印刷要求を発行する印刷要求生成手段と、
　この印刷要求生成手段が発行した印刷要求の受付順に、該当する中間コードに基づく印刷を行う印刷機構と、を備え、
　該印刷機構は、前記印刷データ蓄積手段への印刷データの蓄積完了時期の早い順に発行される前記印刷要求にしたがって印刷を行うことを特徴とする印刷装置。
【請求項２】
　複数の印刷ジョブの各々に対応する印刷データを
並列的に
　前記受信手段が受信した複数の印刷データを各々蓄積する印刷データ蓄積手段と、
　この受信手段が受信した印刷データから中間コードを
並列的に各々
　生成された各中間コードを各々蓄積する中間コード蓄積手段と、
　生成済みの中間コードについての印刷要求を発行する印刷要求生成手段と、
　この印刷要求生成手段が発行した印刷要求の受付順に、該当する中間コードに基づく印刷を行う印刷機構と、を備え、
　該印刷機構は、前記中間コード蓄積手段への中間コードの蓄積開始時期の早い順に発行される前記印刷要求にしたがって印刷を行うことを特徴とする印刷装置。
【請求項
３
　複数の印刷ジョブの各々に対応する印刷データを
並列的に
　この受信手段が受信した複数の印刷データを各々蓄積する印刷データ
蓄積
　個々の印刷データから中間コードを生成する中間コード生成手段と、
　生成された各中間コードをそれぞれ蓄積する中間コード蓄積手段と、
　生成済みの中間コードの印刷要求を発行する印刷要求生成手段と、
　この印刷要求生成手段が発行した印刷要求の受付順に、該当する中間コードに基づく印刷を行う印刷機構と、
　前記印刷要求の発行の契機となる印刷ジョブの優先実行順位を決定する優先順位決定手段と、を備え、
　該優先順位決定手段は、前記印刷データ蓄積手段への印刷データの蓄積完了時期の早い順に印刷ジョブの優先実行順位を高くして、この優先実行順位で前記印刷要求が発行されるようにする第１優先順位モードと、前記中間コード蓄積手段への中間コードの蓄積完了時期の早い順に印刷ジョブの優先実行順位を高くして、この優先実行順位で前記印刷要求が発行されるようにする第２優先順位モードと、を具備し、
　第１または第２優先順位モードのいずれかのモードを選択可能に構成されていることを特徴とする印刷装置。
【請求項
４
　前記優先順位決定手段は、さらに、前記印刷データ蓄積手段に蓄積された印刷データのうち時間的に最も早く受信した順に印刷ジョブの優先実行順位を高くして、この優先実行順位で前記印刷要求が発行されるようにする第３優先順位モードを具備し、第１から第３のいずれかのモードを選択可能に構成されていることを特徴とする請求項
３
【請求項
５
　前記優先順位決定手段は、さらに、前記中間コード蓄積手段への中間コードの蓄積開始時期の早い順に印刷ジョブの優先実行順位を高くして、この優先実行順位で前記印刷要求が発行されるようにする第４優先順位モードを具備し、第１から第４のいずれかのモードを選択可能に構成されていることを特徴とする請求項
４
【請求項
６
　前記印刷データ蓄積手段及び中間コード蓄積手段の少なくとも一方における余剰蓄積容量が規定値を越えるか否かを判定する容量判定手段をさらに備え、前記優先順位決定手段は、前記容量判定手段の判定結果に応じて一つの優先順位モードを選択するように構成されていることを特徴とする請求項
４または５
【請求項
７
　前記受信手段は、複数の入力インターフェースを有し、前記複数の印刷ジョブが、該当する入力インターフェースを介して並列的に受信されるように構成されていることを特徴とする請求項
１から６
【請求項８】
　前記受信手段は、ネットワーク用インターフェースを有し、前記複数の印刷ジョブが、このネットワーク用インターフェースを介して並列的に受信されるように構成されていることを特徴とする請求項
１から６
【請求項９】
　前記中間コード生成手段は、前記複数の印刷ジョブの各々に対応する印刷データからそれぞれの中間コードを並列的に生成するように構成されていることを特徴とする請求項
１、又は請求項３から８
と訂正する。
ｂ．訂正事項ｂ      
　発明の詳細な説明の段落【００２９】及び【００４３】並びに図面の簡単な説明における「第２実施形態」（５箇所）を、「参考例」と、発明の詳細な説明の【００２９】、【００３１】、【００３２】及び【００３４】における「実施形態」（４箇所）を、「参考例」とそれぞれ訂正すると共に、発明の詳細な説明の【００３７】及び【００４８】並びに図面の簡単な説明における「第３実施形態」（５箇所）を、「第２実施形態」と、発明の詳細な説明の【００４５】及び図面の簡単な説明における「第４実施形態」（２箇所）を、「第３実施形態」と、発明の詳細な説明の【００４９】及び図面の簡単な説明における「第５実施形態」（２箇所）を、「第４実施形態」と、発明の詳細な説明の【００５０】及び【００５２】における「第１〜５実施形態」（２箇所）を、「第１〜４実施形態」と、発明の詳細な説明の【００５６】における「第６実施形態」（１箇所）を、「第５実施形態」とそれぞれ訂正する。
ｃ．訂正事項ｃ
　発明の詳細な説明の段落【００１０】及び【００１３】における「印刷データ保持手段」を「印刷データ蓄積手段」と訂正する。
　　
（２）訂正の目的の適否、新規事項の有無及び拡張・変更の存否
　上記訂正事項ａは、以下の事項を含んでいる。
　ア．請求項２を削除して、請求項３乃至１０を順次繰り上げ請求項２乃至９とする。
　イ．請求項１乃至３（元の請求項１、３、４）において、「受信手段」が並列的に受信するものと限定する。
　ウ．請求項２（元の請求項３）において、「中間コード生成手段」が並列的に各々生成するものと限定する。
　エ．請求項３（元の請求項４）における「印刷データ保持手段」の誤記を「印刷データ蓄積手段」と訂正する。
　ところで、上記イ．及びウ．に関して、願書に添付した明細書（以下、「特許明細書」という。）には、それぞれ、「本発明の印刷装置における受信手段は、複数の入力インターフェースを有し、複数の印刷ジョブが、該当する入力インターフェースを介して並列的に受信されるように構成されたもの、あるいは、ネットワーク用インターフェースを有し、複数の印刷ジョブが、このネットワーク用インターフェースを介して並列的に受信されるように構成されたもののいずれであってもよい。」（段落【００１６】参照）及び「本発明の印刷装置における中間コード生成手段は、複数の印刷ジョブの各々に対応する印刷データからそれぞれの中間コードを並列的に生成するように構成されたものであってもよい。」（段落【００１７】参照）と記載されているから、上記イ．及びウ．は、特許明細書に記載された事項の範囲内においてされたものと認める。
　してみると、上記訂正事項ａは、特許明細書に記載された事項の範囲内において、特許請求の範囲の減縮及び誤記の訂正を目的とするものである。
　また、上記訂正事項ｂ及びｃは、上記訂正事項ａに伴い、特許請求の範囲の記載と発明の詳細な説明の記載との整合を図るため、発明の詳細な説明の記載を訂正したものであるから、明りょうでない記載の釈明を目的とするものである。
　さらに、上記訂正事項ａ乃至ｃは、いずれも、実質的に特許請求の範囲を拡張変更するものでない。
　　
（３）むすび    
　以上のとおりであるから、上記訂正は、特許法第１２０条の４第２項及び第３項において準用する特許法第１２６条第２項から第４項の規定に適合するものであるから、当該訂正を認める。
　　　
３．特許異議申し立てについての判断
（１）申立の理由の概要
  申立人渡部廣美は、証拠として、特許異議申立書で、甲第１号証（特開平７−２７６７４２号公報）、甲第２号証（特開平５−２２４８４３号公報）及び甲第３号証（特開平６−１８８９３７号公報）を提出し、本件請求項１乃至１０に係る発明は、上記甲第１乃至３に記載された発明に基づいて、当業者が容易に発明をすることができたものであるから、特許法第２９条第２項の規定により特許受けることができない旨の主張をしている。
　　　　　　　　　
（２）本件発明
　本件請求項１乃至９に係る発明（以下、「本件発明１乃至９」という。）は、上記訂正によって訂正された明細書の特許請求の範囲の請求項１乃至９に記載された事項により特定されるとおりのものである（上記２．（１）ａ．参照）。
　　　　
（３）甲各号証に記載された発明
　上記甲各号証には、本件発明１乃至９に関連する事項として、以下のような事項が記載されている。 
　ア．甲第１号証：特開昭７−２７６７４２号公報  
　甲第１号証には、
　ａ．「複数のコンピュータから出力される印字情報をマルチタスク処理する・・・システムは、プリンタ装置１に複数（例えば３台）のコンピュータ・・・接続し、１個の受信・解析制御ＣＰＵ５により各コンピュータ・・・から出力される印字情報を時分割（タイムシェアリング）処理する。すなわち、印字情報は、所定時間毎にタスクを切替えて処理され、例えばあるタスクでは、・・・印字情報の受信処理を行い、また他のタスクでは、受信バッファに既に記憶されている・・・印字情報の解析処理を行う。さらに、他のタスクでは、中間コードに変換した・・・印字情報を中間コードバッファ６に格納する。・・・中間コードバッファ６に格納された中間コードを読出し、コード（コマンド）に対応する実行処理を行い、フレームメモリ８にデータを書き込む処理はコマンド実行・プリント制御ＣＰＵ７が行う。」（段落【０００３】〜【０００４】参照）、
　ｂ．「複数のコンピュータから出力される印字情報をシングルタスク処理する・・・システムは、プリンタ装置１０内に３個の受信バッファ１１ａ〜１１ｃを設け、コンピュータ２’〜４’から出力される印字情報を、それぞれ対応する受信バッファ１１ａ〜１１ｃに入力し、以後、解析制御ＣＰＵ１２により受信情報の処理を行うシステムである。例えば、コンピュータ２’から出力される印字情報は、・・・受信バッファ１１ａに供給され、同様に、コンピュータ３’、又は４’から出力される印字情報は、・・・対応する受信バッファ１１ｂ、又は１１ｃに供給される。この様にして受信バッファ１１ａ〜１１ｃに記憶された印字情報は、上述の解析制御ＣＰＵ１２により、受信バッファ１１ａに格納された印字情報が先ず読出され、データ解析処理、中間コードバッファ１３への格納処理が行われる。尚、中間コードバッファ１３に格納された中間コードは、コマンド実行・プリント制御ＣＰＵ１４により、コマンド実行され、ビットマップデータとしてフレームメモリ１５に書き込まれる。次に、解析制御ＣＰＵ１２は、受信バッファ１１ｂに記憶された印字情報を読出し、上述と同様、印字情報の解析、コマンド実行処理を行い、中間コードバッファ１３に格納する。尚、中間コードバッファ１３に格納された中間コードをビットマップデータに変換してフレームメモリ１５に格納する処理は、上述と同様、コマンド実行・プリント制御ＣＰＵ１４の制御により行われる。そして最後に、受信バッファ１１ｃに記憶された受信情報の解析、制御処理が解析制御ＣＰＵ１２により実行される。」（段落【０００５】〜【０００６】参照）、
　ｃ．「マルチ入力ポートを有する印字装置であって、各ポート毎に専用のＣＰＵを設け、各ポートに接続されたパソコンから出力される印字情報を対応するＣＰＵで個別に受信し、コマンド解析し、コマンド実行処理を行うことにより、各ポートに接続されたパソコンの出力を待つことなく、受信情報の中間コードまでの変換を効率良く行うことができる。」（段落【００１３】参照）、
　ｄ．「ページプリンタ１７には３台のコンピュータ１８〜２０が接続されている。これらのコンピュータ１８〜２０は、例えば単独に接続されていても良いし、ＬＡＮ（ローカル・エリア・ネットワーク）等のコンピュータネットワークに接続したシステムであっても良い。ページプリンタ１７は、印字情報解析用の３個のＣＰＵ２１〜２３、中間コードバッファ２４〜２６、中間コード解析用のＣＰＵ２７、フレームメモリ２８等を内蔵する。ＣＰＵ２１はコンピュータ１８から出力される印字情報を受信、解析処理する処理装置であり、コンピュータ１８から出力される印字情報をポートａを介して入力し、受信情報の解析結果として得られる中間コードをページバッファ２４に記憶する。また、同様にＣＰＵ２２、及び２３はコンピュータ１９、２０から出力される印字情報を受信、解析処理する処理装置であり、コンピュータ１９、２０から出力される印字情報をポートｂ、ｃを介して入力し、受信情報の解析結果として得られる中間コードを対応するページバッファ２５、２６に記憶する。・・・中間コード解析用のＣＰＵ２７は、ページメモリ２４〜２６に記憶された中間コードを予め設定された順序で読み出し、・・・１ページ分のデータ（ビットマップデータ）をフレームメモリ２８に展開する。・・・各ページバッファ２４〜２６には、フラグエリア２４”〜２６”が設けられている。このフラグエリア２４”〜２６”には、対応するページバッファ２４〜２６に例えば１ページ分の中間コードが記憶された時、完成フラグがセットされる構成である。」（段落【００１６】〜【００２１】参照）、
　ｅ．「中間コード解析用のＣＰＵ２７は、ページバッファ２４〜２６に書き込まれたデータをフレームメモリ２８に展開する。・・・先ず、ＣＰＵ２７は前述のフラグエリア２４”〜２６”を検索し・・・１ページ分の中間コードが完成しているページバッファ２４〜２６を探す。中間コードが完成しているページバッファがあれば、そのページバッファからコードを読出し、ビットマップデータを作成してフレームメモリ２８に展開する・・・フレームメモリ２８に展開されたデータ（ビットマップデータ）は、・・・印字ヘッドに出力される。・・・ページバッファ２４〜２６に中間コードが完成する毎に印字処理を行うことができ、中間コードに対するフレームメモリ２８への展開処理、及び印字処理を効率良く行うことができる。」（段落【００３１】〜【００３４】参照）
図面とともに記載されている。
　イ．甲第２号証：特開平５−２２４８４３号公報     
　甲第２号証には、
　ａ．「大容量記憶媒体を備えた印刷装置において、受信データと同時に該受信データの受信履歴を上記大容量記憶媒体に記憶した後、出力時に該受信履歴をユーザに表示して、該ユーザが希望する受信データを選択したならば、選択された受信データを上記大容量記憶媒体から読み出して、それぞれのデータに対応するエミュレーションによりコード変換した後に、コード変換された該データをビットマップ上に展開して印刷することを特徴とする印刷装置の制御方法。」（【請求項１】）
　ｂ．「受信されたデータは、コード変換されることなく、そのままの形で記憶装置・・・に記憶される。コード変換が不要であるため、交信するホストが変更になり、コード体系が同じものでなくても受信が可能である。・・・この他に、ユーザＩＤや受信時刻等も記憶させておけば、受信履歴となる。その後、データを印刷する際に、この印刷履歴を表示装置や一覧表印刷等の方法でユーザに認識させることにより、これらの中からユーザの希望するデータを順次、エミュレーションによりコード変換し、・・・展開されたビットマップデータは、再度読み出されてシリアルデータに変換され、・・・プリンタエンジン１０に転送され、プリンタで印刷される。・・・図２（ａ）（ｂ）は、本発明の一実施例を示す印刷装置の制御方法のフローチャートである。受信データは、コード変換前に大容量記憶装置５内に記憶されるが、複数の・・・から同時に受信されたデータは、記憶装置５記憶領域Ａ，Ｂ，Ｃ，・・・に記憶される。・・・データの受信が終了したと判断されると、その文書から順次、データの展開を開始する。図２（ａ）に示すように、先ず、データを受信すると、・・・受信データをそのままの状態で大容量記憶装置５に蓄積する・・・受信が終了したならば、印刷履歴情報をホストから受信する・・・そして、受信した印刷履歴情報を・・・記憶する・・・終了した文書から順に、印刷のための処理を開始する。図２（ｂ）に示すように、先ず印刷履歴を表示して、・・・ユーザが印刷文書を選択したならば・・・大容量記憶装置５から読み出して、対応エミュレーションによる初期化を行う・・・次に、・・・ビットマップエリア上に展開を始め・・・展開が終了したならば・・・選択された文書が完了したか否かを判断する・・・未だ完了していなければ、再び対応エミュレーションによる初期化を行い・・・データ展開を始め・・・展開が終了したならば、処理を終了する。」（【０００６】〜【０００７】参照）
が図面とともに記載されている。
　ウ．甲第３号証：特開平６−１８８９３７号公報       
　甲第３号証には、
　ａ．「本発明によれば、情報処理端末からのデータと、公衆回線を介してデータ通信を行なうデータ通信装置からのデータを共通のデータ変換手段を用いてビットイメージに変換し、共通の可視化手段により可視化させることにより、効率のよいシステムを実現したものである。」（【０００６】参照）
　ｂ．「本発明によれば、情報処理端末からのデータ変換処理と通信回線からのデータ変換処理をデータ変換制御部内において、現在の処理状況を判定する状況判定手段と、情報処理端末からのデータ変換処理と通信回線からのデータ変換処理を自動的に切り替える複数のモード自動切替手段と、状況に応じて複数のモード自動切替手段から選択し設定するモード設定手段を設けることにより、情報処理端末からのデータ変換制御と通信回線からの受信データのデータ変換制御を、データ変換制御の状況に従い、自動的に、データ変換制御のモードを切り替えることが可能となる。例えば、通信回線からの受信データの記録制御を行う際、データ変換部が情報処理端末からのプリントデータの記録制御を行っている場合、プリントデータの記録制御が終了後、自動的に受信画像の出力を行ったり、プリントデータ記録制御をいったん中断し、受信画像の記録制御を行うことが可能となる。又、本発明によれば、通信手段で受信したデータを情報処理端末に出力する第１のモードと、記録手段に記録する第２のモードを有し、少なくとも一方のモードを自動的に選択する選択手段を有することにより、自動的に第１のモードと第２のモードを切り替えることが可能となる。また、通信手段における相手先の情報により第１のモードと第２のモードを選択する手段や、時間帯により前記モードを切り替える手段を設けることにより、相手先や時間帯に応じた、モード選択が可能となる。また、情報処理端末や記録制御部の使用状況を判定する手段を設けることにより、情報処理端末や記録制御部が使用不可の状態である場合に自動的にモードを切り替えることが可能となる。」（段落【００１５】〜【００１８】参照。）
が図面とともに記載されている。
　     
（４）対比判断
　ア．本件発明１について、
　本件発明１と上記甲各号証に記載された発明とを対比すると、
　上記甲各号証のいずれにも、本件発明１の特定事項である、    
　「複数の印刷ジョブの各々に対応する印刷データを並列的に受信する受信手段と、前記受信手段が受信した複数の印刷データを各々蓄積する印刷データ蓄積手段と印刷を行う印刷機構とを備える印刷装置において、該印刷機構は、前記印刷データ蓄積手段への印刷データの蓄積完了時期の早い順に発行される印刷要求にしたがって印刷ジョブの印刷を行う」
点について、記載も示唆もされていない。
　そして、本件発明１は、上記点を特定する事項とすることにより、明細書に記載された「複数の印刷ジョブに基づく画像形成処理及び印刷を、印刷データのサイズやメモリ容量、あるいは印刷装置の処理能力に応じて最適な順で実行することができる。」という作用効果を奏する。
　したがって、本件発明１は、上記甲第１乃至３号証のいずれにも記載されたものといえないばかりでなく、上記甲第１乃至３号証に各記載されたのものをどのように組み合わせても得られるものでなく、これらから当業者が容易に発明をすることができたものといえない。
　イ．本件発明２について、          
　本件発明２と上記甲各号証に記載された発明とを対比すると、
　上記甲各号証のいずれにも、本件発明２の特定事項である、
　「複数の印刷ジョブの各々に対応する中間コードを並列的に各々生成する中間コード生成手段と、生成された各中間コードを各々蓄積する中間コード蓄積手段と、印刷を行う印刷機構とを備える印刷装置において、該印刷機構は、前記中間コード蓄積手段への中間コードの蓄積開始時期の早い順に発行される印刷要求にしたがって印刷ジョブの印刷を行う」
点について、記載も示唆もされていない。    
　そして、本件発明２は、上記点を特定する事項とすることにより、明細書に記載された「複数の印刷ジョブに基づく画像形成処理及び印刷を、印刷データのサイズやメモリ容量、あるいは印刷装置の処理能力に応じて最適な順で実行することができる。」という作用効果を奏する。
　したがって、本件発明２は、上記甲第１乃至３号証のいずれにも記載されたものといえないばかりでなく、上記甲第１乃至３号証に各記載されたのものをどのように組み合わせても得られるものでなく、これらから当業者が容易に発明をすることができたものといえない。
　ウ．本件発明３について、
　本件発明３と上記甲各号証に記載された発明とを対比すると、
　上記甲各号証のいずれにも、本件発明３の特定事項である、
　「複数の印刷ジョブの各々に対応する印刷データを各々蓄積する印刷データ蓄積手段と、生成された各中間コードをそれぞれ蓄積する中間コード蓄積手段と、印刷を行う印刷機構と、印刷ジョブの優先実行順位を決定する優先順位決定手段とを備える印刷装置において、該優先順位決定手段は、前記印刷データ蓄積手段への印刷データの蓄積完了時期の早い順に印刷ジョブの優先実行順位を高くして、この優先実行順位で前記印刷要求が発行されるようにする第１優先順位モードと、前記中間コード蓄積手段への中間コードの蓄積完了時期の早い順に印刷ジョブの優先実行順位を高くして、この優先実行順位で前記印刷要求が発行されるようにする第２優先順位モードと、を具備し、第１または第２優先順位モードのいずれかのモードを選択可能に構成されている」
点について、記載も示唆もされていない。       
　そして、本件発明３は、上記点を特定する事項とすることにより、明細書に記載された「複数の印刷ジョブに基づく画像形成処理及び印刷を、印刷データのサイズやメモリ容量、あるいは印刷装置の処理能力に応じて最適な順で実行することができる。」という作用効果を奏する。
　したがって、本件発明３は、上記甲第１乃至３号証のいずれにも記載されたものと同一いえないばかりでなく、上記甲第１乃至３号証に各記載されたのものをどのように組み合わせても得られるものでないから、これらから当業者が容易に発明をすることができたものといえない。
　エ．本件発明４乃至９について、
　本件発明４、５、６は、本件発明３の特定事項全てをその特定事項としているものであるから、本件発明３の上記判断と同様な理由で、上記甲第１乃至３号証のいずれにも記載されたものといえないばかりでなく、上記甲第１乃至３号証に各記載されたのものをどのように組み合わせても得られるものでなく、これらから当業者が容易に発明をすることができたものといえない。        
　また、本件発明７、８は、本件発明１乃至６のいずれかの特定事項全てをその特定事項としているものであるから、本件発明１乃至３の上記判断と同様な理由で、上記甲第１乃至３号証のいずれにも記載されたものといえないばかりでなく、上記甲第１乃至３号証に各記載されたのものをどのように組み合わせても得られるものでなく、これらから当業者が容易に発明をすることができたものといえない。   
　本件発明９は、本件発明１、３乃至８のいずれかの特定事項全てをその特定事項としているものであるから、本件発明１又は３の上記判断と同様な理由で、上記甲第１乃至３号証のいずれにも記載されたものといえないばかりでなく、上記甲第１乃至３号証に各記載されたのものをどのように組み合わせても得られるものでなく、これらから当業者が容易に発明をすることができたものといえない。
　　
（５）むすび
　以上のとおりであるから、特許異議申し立ての理由及び証拠方法によっては、本件請求項１乃至９に係る発明についての係る特許を取り消すことができない。
　また、他に本件請求項１乃至９に係る発明についての特許を取り消すべき理由を発見しない。
　よって、結論のとおり決定する。
【異議決定日】
平成１６年２月１０日（２００４．２．１０）
【訂正の要旨】
審決（決定）の【理由】欄参照。
（５４）【発明の名称】
印刷装置
（５７）【特許請求の範囲】
　【請求項１】
　複数の印刷ジョブの各々に対応する印刷データを
並列的に
　前記受信手段が受信した複数の印刷データを各々蓄積する印刷データ蓄積手段と、
　前記受信手段が受信した印刷データから中間コードを生成する中間コード生成手段と、
　生成済みの中間コードについての印刷要求を発行する印刷要求生成手段と、
　この印刷要求生成手段が発行した印刷要求の受付順に、該当する中間コードに基づく印刷を行う印刷機構と、を備え、
　該印刷機構は、前記印刷データ蓄積手段への印刷データの蓄積完了時期の早い順に発行される前記印刷要求にしたがって印刷を行うことを特徴とする印刷装置。
　【請求項２】
　複数の印刷ジョブの各々に対応する印刷データを
並列的に
　前記受信手段が受信した複数の印刷データを各々蓄積する印刷データ蓄積手段と、
　この受信手段が受信した印刷データから中間コードを
並列的に各々
　生成された各中間コードを各々蓄積する中間コード蓄積手段と、
　生成済みの中間コードについての印刷要求を発行する印刷要求生成手段と、
　この印刷要求生成手段が発行した印刷要求の受付順に、該当する中間コードに基づく印刷を行う印刷機構と、を備え、
　該印刷機構は、前記中間コード蓄積手段への中間コードの蓄積開始時期の早い順に発行される前記印刷要求にしたがって印刷を行うことを特徴とする印刷装置。
　【
請求項３
　複数の印刷ジョブの各々に対応する印刷データを
並列的に
　この受信手段が受信した複数の印刷データを各々蓄積する印刷データ
蓄積
　個々の印刷データから中間コードを生成する中間コード生成手段と、
　生成された各中間コードをそれぞれ蓄積する中間コード蓄積手段と、
　生成済みの中間コードの印刷要求を発行する印刷要求生成手段と、
　この印刷要求生成手段が発行した印刷要求の受付順に、該当する中間コードに基づく印刷を行う印刷機構と、
　前記印刷要求の発行の契機となる印刷ジョブの優先実行順位を決定する優先順位決定手段と、を備え、
　該優先順位決定手段は、前記印刷データ蓄積手段への印刷データの蓄積完了時期の早い順に印刷ジョブの優先実行順位を高くして、この優先実行順位で前記印刷要求が発行されるようにする第１優先順位モードと、前記中間コード蓄積手段への中間コードの蓄積完了時期の早い順に印刷ジョブの優先実行順位を高くして、この優先実行順位で前記印刷要求が発行されるようにする第２優先順位モードと、を具備し、
　第１または第２優先順位モードのいずれかのモードを選択可能に構成されていることを特徴とする印刷装置。
　【
請求項４
　前記優先順位決定手段は、さらに、前記印刷データ蓄積手段に蓄積された印刷データのうち時間的に最も早く受信した順に印刷ジョブの優先実行順位を高くして、この優先実行順位で前記印刷要求が発行されるようにする第３優先順位モードを具備し、第１から第３のいずれかのモードを選択可能に構成されていることを特徴とする
請求項３
　【
請求項５
　前記優先順位決定手段は、さらに、前記中間コード蓄積手段への中間コードの蓄積開始時期の早い順に印刷ジョブの優先実行順位を高くして、この優先実行順位で前記印刷要求が発行されるようにする第４優先順位モードを具備し、第１から第４のいずれかのモードを選択可能に構成されていることを特徴とする
請求項４
　【
請求項６
　前記印刷データ蓄積手段及び中間コード蓄積手段の少なくとも一方における余剰蓄積容量が規定値を越えるか否かを判定する容量判定手段をさらに備え、前記優先順位決定手段は、前記容量判定手段の判定結果に応じて一つの優先順位モードを選択するように構成されていることを特徴とする
請求項４または５
　【
請求項７
　前記受信手段は、複数の入力インターフェースを有し、前記複数の印刷ジョブが、該当する入力インターフェースを介して並列的に受信されるように構成されていることを特徴とする請求項１
から６
　【
請求項８
　前記受信手段は、ネットワーク用インターフェースを有し、前記複数の印刷ジョブが、このネットワーク用インターフェースを介して並列的に受信されるように構成されていることを特徴とする請求項１
から６
　【
請求項９
　前記中間コード生成手段は、前記複数の印刷ジョブの各々に対応する印刷データからそれぞれの中間コードを並列的に生成するように構成されていることを特徴とする請求項１
、又は請求項３から８
【発明の詳細な説明】
　【０００１】
　【発明の属する技術分野】
　本発明は、複数の印刷データを所定の順番で印刷する印刷装置に関する。
　【０００２】
　【従来の技術】
　従来の印刷装置は、データ処理装置との間で１対１のローカル接続により使用されるのが通常であり、このため、印刷装置におけるデータ処理装置との接続インターフェースは、接続すべきデータ処理装置に適合する単一種の接続インターフェースを１つだけ備えるものが一般的であった。
　【０００３】
　しかし、近時における情報処理環境の変化に伴い、印刷装置には、複数種類の異なるインターフェースを有するデータ処理装置に対応できることが要求されてきている。このような要求に対応して、例えば、シリアルポート，パラレルポート等の複数の入力インターフェース（以下、入力ポート）を備える印刷装置が提供されている。
　【０００４】
　このような複数の入力ポートを持つ印刷装置の一例を図２７に示す。図２７において、印刷装置３０は、例えば、４台のデータ処理装置（以下、ホストと略称する）Ｈ（Ｈ１〜Ｈ４）に対し、入力ポートＰ（Ｐ１〜Ｐ４）を介して接続されており、また、各入力ポートＰ（Ｐ１〜Ｐ４）には、それぞれ所定容量のバッファメモリＢ（Ｂ１〜Ｂ４）が設けられている。
　【０００５】
　以上の構成において、ホストＨから各入力ポートＰに対して、図２８に示すようなタイミングで印刷のためのコマンド及びデータ（以下、印刷ジョブ）が入力され、それが各バッファメモリＢに蓄積されるとする。このとき、印刷装置３０は、まず、ホストＨ１から入力された印刷ジョブに基づく印刷を行い、続いて、ホストＨ３，ホストＨ２，ホストＨ４から入力された印刷ジョブに基づく印刷を行う。従来の印刷装置３０による印刷順がこのようになるのは、図２８に示すように、各入力ポートＰへの印刷データ転送開始順に画像形成処理が実行されて図示しない印刷機構への印刷要求が発行され、その印刷ジョブが終了した時点で次着の印刷ジョブに基づく画像形成処理が実行されるようになっているためである。
　【０００６】
　【発明が解決しようとする課題】
　このように、従来の印刷装置３０では、先着の印刷ジョブのものから順に印刷が始まり、その印刷ジョブが終わらない限りは他の印刷ジョブに基づく印刷が始まらないようになっていたため、以下のような問題があった。
　【０００７】
　例えば図２８に示す例に基づいて説明すると、ホストＨ２〜Ｈ４から送られた印刷ジョブは、ホストＨ１に入力される印刷ジョブよりも早く印刷実行可能な状態となってるにも拘わらず、印刷データ転送開始時期が遅かったために、ホストＨ１からの印刷ジョブが終了するまで待機状態となる。このため、すべての印刷ジョブを終了するまでに、かなりの待機時間が含まれることとなり、印刷装置３０における総印刷時間が長引くばかりか、待機状態となっているホストのオペレータにあっては苛々の種となっていた。
　【０００８】
　そこで本発明の課題は、上記問題点を解消し、複数の印刷ジョブを最適な順で実行することができる印刷装置を提供することにある。
　【０００９】
　【課題を解決するための手段】
　上記課題を解決する本発明の印刷装置の基本構成は、複数の印刷ジョブの各々に対応する印刷データを受信する受信手段と、この受信手段が受信した印刷データから中間コードを生成する中間コード生成手段と、生成済みの中間コードについての印刷要求を発行する印刷要求生成手段と、この印刷要求生成手段が発行した印刷要求の受付順に該当する中間コードに基づく印刷を行う印刷機構とを備え、さらに、前記印刷要求の発行の契機となる印刷ジョブの優先実行順位を決定する優先順位決定手段を有することを特徴としている。
　【００１０】
　このような基本構成に加え、前記受信手段が受信した複数の印刷データを蓄積する印刷データ蓄積手段をさらに備え、前記優先順位決定手段が、前記印刷データ
蓄積
　【００１１】
　また、複数の印刷データの各々から生成された中間コードを蓄積する中間コード蓄積手段をさらに備え、前記優先順位決定手段が、前記中間コード蓄積手段への実画像データの蓄積開始時期の早い順に印刷ジョブの優先実行順位を高くして、この優先実行順位で印刷要求が発行されるようにしてもよい。
　【００１２】
　また、複数の印刷データの各々から生成された中間コードを蓄積する中間コード蓄積手段をさらに備え、前記優先順位決定手段が、前記中間コード蓄積手段への実画像データの蓄積完了時期の早い順に印刷ジョブの優先実行順位を高くして、この優先実行順位で印刷要求が発行されるようにしてもよい。
　【００１３】
　さらに、上述の受信手段、印刷データ
蓄積
　【００１４】
　すなわち、印刷データ蓄積手段への印刷データの蓄積完了時期の早い順に印刷ジョブの優先実行順位を高くして、この優先実行順位で印刷要求が発行されるようにする第１優先順位モードと、中間コード蓄積手段への中間コードの蓄積完了時期の早い順に印刷ジョブの優先実行順位を高くして、この優先実行順位で印刷要求が発行されるようにする第２優先順位モードと、前記印刷データ蓄積手段に蓄積された印刷データのうち時間的に最も早く受信した順に印刷ジョブの優先実行順位を高くして、この優先実行順位で印刷要求が発行されるようにする第３優先順位モードと、中間コード蓄積手段への中間コードの蓄積完了時期の早い順に印刷ジョブの優先開始順位を高くして、この優先実行順位で印刷要求が発行されるようにする第４優先順位モードとを具備し、第１ないし第４のいずれかのモードを選択可能に構成する。
　【００１５】
　この場合、前記印刷データ蓄積手段及び中間コード蓄積手段の少なくとも一方の余剰蓄積容量が規定値を越えるか否かを判定する容量判定手段をさらに備え、前記優先順位決定手段が、容量判定手段の判定結果に応じて一つの優先順位モードを選択するように構成することが好ましい。
　【００１６】
　なお、本発明の印刷装置における受信手段は、複数の入力インターフェースを有し、複数の印刷ジョブが、該当する入力インターフェースを介して並列的に受信されるように構成されたもの、あるいは、ネットワーク用インターフェースを有し、複数の印刷ジョブが、このネットワーク用インターフェースを介して並列的に受信されるように構成されたもののいずれであってもよい。
　【００１７】
　また、本発明の印刷装置における中間コード生成手段は、複数の印刷ジョブの各々に対応する印刷データからそれぞれの中間コードを並列的に生成するように構成されたものであってもよい。
　【００１８】
　【発明の実施の形態】
　以下、本発明の実施形態を図面に基づいて詳細に説明する。
　【００１９】
　（第１実施形態）
　図１は、本発明の第１実施形態に係る印刷装置の機能ブロック図である。この実施形態による印刷装置１は、図１に示すように、印刷データ受信部２、前述のバッファメモリＢと同様に機能する印刷データ記憶部２ａ、中間コード生成部３、印刷要求作成部４、優先順位決定部５１、及び印刷機構６を有している。優先順位決定部５１は、個々の印刷ジョブが有する印刷データ転送終了の時点を検出し、転送終了の検出順に印刷ジョブに順位情報を設定するデータ転送終了検出部５ａ、及びデータ転送終了検出部５ａが検出した転送終了の検出順を記憶する優先順位記憶部５ｍを備えている。この場合の印刷データ転送終了時点の検出は、例えば、蓄積時の一定の空白時間の検出、当該印刷ジョブに含まれる転送終了コマンドのような特定データの検出、あるいは印刷データのサイズや処理速度の実測値に基づく予測等により実現することができる。
　【００２０】
　なお、印刷データ受信部２、中間コード生成部３、印刷要求作成部４、及び優先順位決定部５１は、タイムシェアによる並行処理が可能なマイクロプロセッサ（ＣＰＵ）を備えたコントローラ内に形成されており、このＣＰＵによって所要の機能が付与され、あるいは制御されるようになっている。また、図示を省略してあるが、中間コード生成部３の後段には実画像であるビットイメージ（実画像データ）を生成する実画像データ生成手段が設けられている。
　【００２１】
　印刷データ受信部２は、ホストＨ（Ｈ１〜Ｈ４）から送られてくる印刷ジョブ（印刷データを含む）を受信するものであり、ホストＨのインターフェースに個別に対応する４つの入力ポートを有している。そして、入力ポート毎に印刷ジョブを蓄積するための領域が印刷データ記憶部２ａに形成されている。なお、印刷データの蓄積領域を入力ポート毎に形成するのは後段処理の便宜であって、常にこのようにしなければならないものではなく、印刷データ記憶部２ａの特定の蓄積領域を各入力ポートで共用するようにしてもよい。
　【００２２】
　中間コード生成部３は、印刷ジョブにしたがって所定の画像形成処理を実行する際に、当該印刷ジョブの印刷データを一旦中間コードに変換するものである。ここに中間コードとは、個々の印刷データに対する位置情報と、その位置における画像情報（文字であればビットマップデータ、図形であれば形状データ、写真等であればイメージデータ）とから構成される。印刷データを中間コードに変換するのは、印刷データから直接実画像データを生成すると画像形成処理が複雑化して時間がかかること、さらには、保存時に実画像データよりも中間コードの方がサイズが小さいのが通常だからである。生成された中間コードは、実画像データ生成手段によって随時実画像データに展開ないし圧縮され、印刷機構６からの指示があるまで保存される。
　【００２３】
　印刷要求作成部４は、中間コード生成部３で生成された中間コードについての印刷要求を作成し、これを優先順位決定部５１からの順位情報にしたがって印刷機構６へ発行するものである。
　【００２４】
　印刷機構６は図示しないエンジンを有し、印刷要求作成部４が発行した印刷要求を受け付けた順に中間コードに対応する実画像データを取得して用紙への印刷を実行する。
　【００２５】
　次に、本実施形態における印刷装置１の動作例を図２及び図３を参照して説明する。図２は、印刷要求発行の優先順位（印刷ジョブの優先実行順位）を説明するためのタイミング図である。この図では、便宜上、各ホストＨ１〜Ｈ４から転送される印刷データの転送タイミングを図２８の例と全く同一にしてある。また、図３は、本実施形態による印刷手順を示すフローチャートである。
　【００２６】
　各ホストＨ１〜Ｈ４からの印刷ジョブ（印刷データを含む）は、印刷データ受信部２の該当入力ポートに転送される。印刷データ受信部２は、図３に示すように、転送された各印刷ジョブを並行受信し（Ｓ１０１、Ｓ１０３：Ｎｏ）、印刷データを印刷データ記憶部２ａに順次記憶（蓄積）する（Ｓ１０２）。あるジョブの受信が終了した場合、つまり印刷データの転送が終了した場合は（Ｓ１０３：Ｙｅｓ）、中間コード生成部３においてそのジョブの印刷データを中間コードに変換する（Ｓ１０４）。このとき優先順位決定部５１は、データ転送終了検出部５ａで印刷データの転送が終了したジョブを検出し、その最も早い順に印刷要求発行順位を決定してそれを優先順位記憶部５ｍに記憶し、これを印刷要求作成部４に送る。印刷要求作成部４は、この順に印刷要求を発行する（Ｓ１０５）。これを印刷データの転送が終了した他の印刷ジョブについて順次繰り返し（Ｓ１０６）、印刷ジョブがなくなった時点で処理を終える。
　【００２７】
　このように本実施形態では、印刷データの転送が早く終了した印刷ジョブから順に印刷要求が発行され、用紙への印刷が実行される。例えば、図２の例において、印刷データ記憶部２ａへの転送開始時期が最も早いのはホストＨ１からの印刷データであるが、この印刷データはサイズが大きいか、あるいはデータ転送速度が遅いため、印刷データの転送終了が最も遅くなっている。したがって、この印刷ジョブの優先順位は（４）となる。これに対し、ホストＨ２からの印刷データの転送開始時期は３番目であるが、印刷データの転送終了は最も早い。したがって、この印刷ジョブの優先順位は（１）となり、最も高くなる。同様にして、ホストＨ３からの印刷ジョブの優先順位は（２）、ホストＨ４からの印刷ジョブの優先順位は（３）となる。これにより、印刷要求作成部４からホストＨ２、ホストＨ３、ホストＨ４、ホストＨ１からの印刷ジョブの順に印刷要求が発行され、印刷機構６による印刷が実行される。
　【００２８】
　このように、本実施形態では、例えばホストＨ３からの印刷ジョブのように、先に印刷データの転送が終了した印刷ジョブの印刷データの中間コード生成及びそれに基づく印刷を先行させ、他のホストＨ１，Ｈ２，Ｈ４からの印刷ジョブの印刷データについては、それを印刷データ記憶部２ａに蓄積しておいて中間コードの生成や印刷を後回しにする。そして、先行する印刷が終了した時点で次の印刷ジョブに基づく印刷が連続実行される。したがって、印刷機構６におけるエンジンの利用効率が高まり、ユーザの実感に合致する印刷装置１の共有が可能になる。
　【００２９】
　（
参考例
　図４は、本発明の
参考例
参考例
　【００３０】
　データ蓄積完了時期の検出は、例えば中間コード生成部３における個々の中間コードの生成・蓄積中に一定の処理空白時間を検出したり、中間コードの生成速度や中間コードの生成後、そのデータサイズと予め測定した蓄積所要時間とから当該中間コードの蓄積完了時期を予測すること等によって実現することができる。なお、中間コードの蓄積完了時期の予測は、中間コードの生成に要する時間が印刷データの複雑さによって異なる点、必要に応じて中間コードの代わりに実画像データに展開して圧縮する事前展開が行われる点をも考慮する必要がある。
　【００３１】
　この
参考例
　【００３２】
　図５は、この
参考例
参考例
　【００３３】
　図５において、各ホストＨ１〜Ｈ４からの印刷ジョブ（印刷データを含む）が並行受信され、印刷データが印刷データ記憶部２ａに記憶（蓄積）されるのは第１実施形態の場合と同様である（Ｓ２０１，Ｓ２０２）。但し、印刷データ記憶部２ａにおける印刷データの記憶は、後段での中間コード生成のための一時的なものである。
　【００３４】
　この
参考例
　【００３５】
　上記手順によって、印刷データの転送開始時点やその転送終了時点に拘わらず、中間コード記憶部３ａへの蓄積完了順に印刷要求が発行され、用紙への印刷が実行される。例えば、図５の例において、最も早く中間コードの蓄積が完了するのは、ホストＨ３からの印刷ジョブである。したがって、この印刷ジョブの優先順位は（１）となり、最も高くなる。同様に、ホストＨ２、ホストＨ４、ホストＨ１からの各印刷ジョブの優先順位は、それぞれ（２）、（３）、（４）となる。これにより、印刷要求作成部４からホストＨ３、ホストＨ２、ホストＨ４、ホストＨ１からの印刷ジョブの順に印刷要求が発行され、印刷機構６による印刷が実行される。
　【００３６】
　このように、印刷データ記憶部２ａ及び中間コード記憶部３ａのメモリ容量が十分確保できる場合は、印刷機構６におけるエンジンの利用効率を第１実施形態の場合よりも高めることができ、ユーザの実感により合致する印刷装置２０を構成することができる。
　【００３７】
　（第
２
　図７は、本発明の第
２
　【００３８】
　この実施形態では、前述のデータ転送終了検出部５ａ、データ蓄積完了検出部５ｂ及び優先順位記憶部５ｍのほか、印刷データの転送開始時点を検出するデータ転送開始検出部５ｃと、各検出部５ａ〜５ｃの検出結果のいずれを優先順位決定の基準として用いるかを選択するモード選択部５ｄとを備えて優先順位決定部５３を構成している。その他の要素については、第１実施形態の印刷装置１と同様となる。
　【００３９】
　この実施形態では、印刷データの転送終了の早い順に印刷ジョブの優先実行順位を高くする第１優先順位モード、中間コード記憶部３ａへの中間コード蓄積完了の早い順に印刷ジョブの優先実行順位を高くする第２優先順位モード、印刷データの転送開始の早い順に印刷ジョブの優先実行順位を高くする第３優先順位モードを、モード選択部５ｄによって選択可能に構成している。このモード選択部５ｄによるモード選択は、例えばユーザの指令によって行うことができる。
　【００４０】
　この場合の応用例として、図８に示すように、メモリ容量検出部５ｅとモード自動切換部５ｆを備えて優先順位決定部５４を構成し、上記モード選択を自動的に行うようにすることもできる。
　【００４１】
　図８において、メモリ容量検出部５ｅは、印刷データ記憶部２ａ、中間コード記憶部３ａにおける使用可能なメモリ容量を検出するものであり、モード自動切換部５ｆは、この検出値に基づいてモード選択部５ｄを制御し、第１ないし第３優先順位モードが自動的に切り換わるようにするものである。
　【００４２】
　この実施形態による印刷装置の動作例を図９を参照して説明する。
　【００４３】
　メモリ容量検出部５ｅによる検出の結果、使用可能なメモリ容量が各々の記憶部等において十分確保できる場合、モード自動切換部５ｆは、モード選択部５ｄにおいて第２優先順位モードが選択されるようにする。このとき、
参考例
　【００４４】
　一方、例えば印刷データ記憶部２ａのメモリ容量は十分であるが、中間コード記憶部３ａのメモリ容量が所定の閾値以下の場合、モード自動切換部５ｆは、モード選択部５ｄにおいて第１優先順位モードが選択されるようにする。このとき、ホストＨ１〜Ｈ４からの印刷ジョブは、印刷データの受信、蓄積Ａは並行して行われるが、中間コードの生成・蓄積Ｂ、及び印刷要求の発行は、印刷データの転送が最も早く終了したものから順に行われる。印刷データ記憶部２ａのメモリ容量が所定の閾値以下の場合は、第３優先順位モードが選択され、ホストＨ１〜Ｈ４からの印刷ジョブは、従来装置と同様、最先に転送開始されたものから順に中間コード生成・蓄積Ｂがなされ、印刷要求が発行される。これにより、現在の印刷装置の状態に対して最適な優先順位の決定が可能となる。
　【００４５】
　（第
３
　図１０は、本発明の第
３
　【００４６】
　この実施形態では、前述のデータ転送終了検出部５ａ、データ蓄積完了検出部５ｂ、及びデータ転送開始検出部５ｃのほか、印刷データの中間コードの蓄積開始時点を検出するデータ蓄積開始検出部５ｇと、各検出部５ａ〜５ｃ及び５ｇの検出結果のいずれを優先順位決定の基準として用いるかを選択するモード選択部５ｄと、このモード選択部５ｄにより選択された検出部の検出結果に基づいて決定した優先順位を記憶する優先順位記憶部５ｍとを備えて優先順位決定部５５を構成している。その他の要素については、第１実施形態の印刷装置１と同様となる。
　【００４７】
　この実施形態では、印刷データの転送終了の早い順に印刷ジョブの優先実行順位を高くする第１優先順位モード、中間コード記憶部３ａへの中間コード蓄積完了の早い順に印刷ジョブの優先実行順位を高くする第２優先順位モード、印刷データの転送開始の早い順に印刷ジョブの優先実行順位を高くする第３優先順位モード、及び中間コード記憶部３ａへの実画像データの蓄積開始時期の早い順に印刷ジョブの優先実行順位を高くする第４優先順位モードを、モード選択部５ｄによって選択可能に構成している。このモード選択部５ｄによるモード選択は、例えばユーザの指令によって行うことができる。
　【００４８】
　なお、上述した第
２
　【００４９】
　（第
４
　上述の各実施形態では、印刷データ受信部２にホストＨ１〜Ｈ４に個別的に対応する複数の入力ポートを設けたものとして説明しているが、例えば図１１に示すように、複数のホストＨ１〜Ｈｎからの印刷ジョブ及びそれに伴う印刷データを一つのネットワーク用ポート２ｂ及び前述のＣＰＵにより、並列的に受信する構成も可能である。すなわち、あるホストからのデータ受信中に、他のホストからのデータ受信があった場合、ＣＰＵをタイムシェアしながら、稼働中の受信プログラムにより印刷データを並列的に受信することで、あたかも複数の入力ポートを備えた場合と同様の処理が実現される。
　【００５０】
　以上第１〜
４
　【００５１】
　図１２において、あるホストからのデータ受信中に、他のホストからのデータ受信があった場合、つまり印刷ジョブ及びそれに伴う印刷データの受信要求があった場合（Ｓ３０１：Ｙｅｓ）、印刷データ受信部２は、対応する受信プログラムを起動し（Ｓ３０２）、ＣＰＵをタイムシェアしながら、稼働中の受信プログラムにより印刷データを並列的に受信する（Ｓ３０３）。受信された印刷データは、それぞれ印刷データ記憶部２ａの該当領域に順次蓄積される。あるホストがデータ受信を終了した場合（Ｓ３０４：Ｙｅｓ）、印刷データ受信部２は、対応する受信プログラムを停止して格納する（Ｓ３０５）。以上の処理を全ホストについて行い、全ホストからのデータ受信が終了した場合は（Ｓ３０６：Ｙｅｓ）、データ受信処理を終える。
　【００５２】
　また、第１〜
４
　【００５３】
　図１３において、ある印刷データを中間コード生成中に他の印刷データが蓄積された場合、つまり印刷データの中間コード生成要求があった場合（Ｓ４０１：Ｙｅｓ）、中間コード生成部３は、対応する中間コード生成プログラムを起動し（Ｓ４０２）、ＣＰＵをタイムシェアしながら、稼働中の中間コード生成プログラムにより印刷データを並列的に中間コードに変換する（Ｓ４０３）。ある印刷データの中間コードへの変換が終了した場合（Ｓ４０４：Ｙｅｓ）、中間コード生成部３は、対応する中間コード生成プログラムを格納する（Ｓ４０５）。以上の処理を全印刷データについて行い、全印刷データの中間コードへの変換を終了した場合は（Ｓ４０６：Ｙｅｓ）、中間コード生成処理を終える。
　【００５４】
　以上説明した並列的なデータ受信処理または並列的な中間コード生成処理において、対応するプログラムを起動する（Ｓ３０２、Ｓ４０２）、格納する（Ｓ３０４、Ｓ４０３）とは、例えば、ＲＯＭやＨＤ（ハードディスクにデータ受信処理あるいは中間コード生成処理用のプログラムを一つ有し、その一つのプログラムをＲＯＭで実行している場合に、そのプログラムをＲＡＭにコピーしてＲＡＭ上でコピーしたプログラムを実行し、両者をＣＰＵをタイムシェアしながら並列的に実行する場合をいう。また、最初からＲＯＭ）にそれぞれ複数のプログラム、例えば、言語に応じた複数のプログラムを有し、これらを複数のプログラムをＣＰＵをタイムシェアしながら並列的に実行する場合をいう。さらには、ＲＯＭ等に格納されているデータ受信処理あるいは中間コード生成処理用のプログラムがリエントラントなものであり、必要に応じて複数の処理をＣＰＵをタイムシェアしながら並列的に実行可能な場合等をいう。
　【００５５】
　また、上述したように、印刷データ受信部２、中間コード生成部３、印刷要求作成部４、及び優先順位決定部５１による各タスクはＣＰＵをタイムシェアしながら並列的に実行され、すなわち、上述したデータ受信処理タスクと中間コード生成処理タスクとも、ＣＰＵをタイムシェアしながら並列的に実行される。これらのタスクには優先順位が定められており、各タスクは、その優先順位に基づいて、一般に、数ｍｓｅｃオーダの時間単位で交互に実行されるようになっている。このように各種タスクを交互に実行するに際して、次にどのタスクにＣＰＵの利用権利を渡すかの選択は、例えば、１ｍｓｅｃ以下のオーダで実行されるプログラムの集合体であるリアルタイムモニタが、各タスクの優先順位等を参照しながら決定している。
　【００５６】
　（第
５
　本実施形態では、各タスクの代表的な処理フローを説明する。なお、以下で説明する処理フローは、図１０に示す実施形態に基づくものとし、印刷データの受信処理を行う印刷データ受信部２の処理を実行するタスクとして複数の印刷データ受信タスク（例えば、印刷データ受信タスク１〜３とする）、受信データの中間コードへの変換処理を行う中間コード生成部３の処理を行うタスクとして複数の中間コード生成タスク（例えば、中間コード生成タスク１〜３とする）、及び生成した中間コードに基づいて印刷要求を発行する印刷要求作成部４の処理を行う複数の印刷要求作成タスク（例えば、印刷要求作成タスク１〜３とする）がそれぞれ実行されるものとし、各タスクの処理フローをそれぞれタスク１を代表して説明する。
　【００５７】
　また、上述した各実施形態では説明を省略したが、印刷機構６が印刷結果物を出力するための出力トレイは、複数個（例えば、３個で、出力トレイ１〜３とする）具備するものとし、並列的に印刷された各印刷ジョブの印刷結果物がそれぞれ異なる出力トレイに出力できるようになっているものとする。
　【００５８】
　さらに、以上説明した各実施形態においては、中間コード生成部は、印刷データ受信部２が印刷データを全部受信した後、中間コード生成部３が中間コードの生成を開始し、また、印刷要求を発生する印刷要求作成部４は一つの印刷ジョブの全ページ分の中間コードが蓄積された時点でをまとめて印刷要求を作成する形態となっているが、これとは別に、例えば、１ページ分、２ページ分あるいはそれ以上の所定のページ分の印刷データを受信した時点で、中間コード生成を開始し、また、１ページ分、２ページ分あるいはそれ以上の所定のページ分の中間コードを生成した時点でその分の印刷要求を作成して印刷機構６に発行することも可能である。なお、全印刷ページ数は、印刷データに情報として含まれており、一つの印刷ジョブの最初の印刷要求の作成の際には全印刷枚数の情報も含まれている。また、以下の説明では、一回の印刷要求に対応する印刷枚数ｎ［１］（印刷ジョブ１に対応する）を一定の枚数としたが、この値は動的に変化するものであってもよい。
　【００５９】
　図１４には印刷データ受信タスク１の処理を示す。図１４に示すように、まず、ホストＨから受信データを受信し（ステップＳ５０１）、受信した受信データを印刷データ記憶部２ａに格納する（ステップＳ５０２）。
　【００６０】
　図１５には中間コード生成タスク１の処理を示す。図１５に示すように、まず、印刷データ記憶部２ａから受信データを取りだし（ステップＳ５０５）、取り出した受信データを中間コードへ変換し（ステップＳ５０６）、生成した中間コードを中間コード記憶部３ａに格納する（ステップＳ５０７）。
　【００６１】
　図１６及び図１７には優先順位決定タスクの処理を示す。かかる優先順位決定タスクは、優先順位を示すｍを決定し、図１６（Ｂ）に示すようなテーブルに、各印刷ジョブと対応付けてｍを決定するものである。
　【００６２】
　図１６（Ａ）に示すように、まず、ｍ＝０とすると共に、全ての監視結果をクリアし（ステップＳ６０１）、各第１〜第４優先モードのうち、モード選択部５ｄにより選択された優先順位モードに対応する所定の検出部を監視し（ステップＳ６０２）、所定情報の検出を待つ（ステップＳ６０３）。そして、検出した場合には（ステップＳ６０３：Ｙｅｓ）、ｍ＝ｍ＋１とし（ステップＳ６０４）、当該所定情報を検出した印刷ジョブの番号と対応付けて、例えば、図１６（Ｂ）のようなテーブルとして優先順記憶部５ｍに記憶する（ステップＳ６０５）。
　【００６３】
　ここで、ステップＳ６０３の所定情報の検出を待つステップは、モード選択部５ｄにより何が選択されているかによって異なる。これらの具体例を図１７〜図２０にそれぞれ示す。
　【００６４】
　図１７は、データ転送終了検出部５ａによる印刷データ転送終了の検出の早い順に優先実行順位を高くする第１優先順位モードが選択されている場合であり、データの受信が続けられている際に（ステップＳ６１１）、データの受信が終了したか否かを判断してデータの受信が終了したと判断した場合に（ステップＳ６１２：Ｙｅｓ）、検出する（ステップＳ６１３）。
　【００６５】
　図１８は、データ蓄積完了検出部５ｂによる中間コード蓄積完了の検出の早い順に優先実行順位を高くする第２優先モードが選択されている場合であり、中間コードの作成を続けている際に（ステップＳ６２１）、中間コード蓄積完了かどうかを判断して完了したと判断した場合に（ステップＳ６２２：Ｙｅｓ）、検出する（ステップＳ６２３）。
　【００６６】
　図１９は、データ転送開始検出部５ｃによる印刷データの転送開始の検出の早い順に優先実行順位を高くする第３優先順位モードが選択されている場合であり、データの転送が始められたかどうかを判断して転送開始したと判断した場合に（ステップＳ６３１：Ｙｅｓ）、検出する（ステップＳ６３２）。
　【００６７】
　図２０は、データ蓄積開始検出部５ｇによる中間コードの作成開始の検出の早い順に優先実行順位を高くする第４優先モードが選択されている場合であり、中間コードが蓄積が開始されたかどうかを監視して蓄積開始と判断した場合に（ステップＳ６４１：Ｙｅｓ）、検出する（ステップＳ６４２）。
　【００６８】
　図２１及び図２２には、印刷要求作成タスク１の処理を示す。かかる印刷要求作成タスク１は、上述したように生成された中間コードに対応して、通常は受信受付順に、あるいは、上述した優先順位決定タスクにより決定される優先順位に基づいて、印刷要求作成手段により印刷要求が生成され、生成された印刷要求に基づく各印刷を所定の手順で実行させる。
　【００６９】
　図２１及び図２２に示すように、まず、所定のページ数分の中間コードが蓄積したどうかを判断し（ステップＳ７０１）、蓄積した場合には、優先順位記憶部５ｍの図１６（Ｂ）の自分の印刷ジョブ番号に対応してｍが入力されているかどうかを判断する（ステップＳ７０２）。自分の位置にｍが入力されていない場合には（ステップＳ７０２：Ｎｏ）、優先実行順位が自分ではないと判断してステップＳ７０２を繰り返す。自分の位置にｍが入力されている場合には（ステップＳ７０２：Ｙｅｓ）、印刷要求を作成した後（ステップＳ７０３）、印刷機構６が使用中かどうかの問い合わせをする印刷機構獲得要求を出す（ステップＳ７０４）。なお、この印刷機構獲得要求は、後述するサブルーチンをコールするものである。印刷機構が獲得できない場合には（ステップＳ７０５：Ｎｏ）、ステップＳ７０４に戻り、印刷機構が獲得できた場合には（ステップＳ７０５：Ｙｅｓ）、どの出力トレイに出力するかを問い合わせる出力トレイ獲得要求を出す（ステップＳ７０６）。この出力トレイ獲得要求は、後述するサブルーチンをコールするものである。そして、出力トレイが獲得できた場合には（ステップＳ７０７：Ｙｅｓ）、問い合わせ結果を基に印刷機構６に出力トレイを指定し（ステップＳ７０８）、出力トレイが獲得できない場合には（ステップＳ７０７：Ｎｏ）、印刷機構６に出力トレイをデフォルト値にするように指定すると同時に、出力位置を右もしくは左に少しずらすように指定する（ステップＳ７０９）。
　【００７０】
　次いで、印刷単位であるｎ［１］ページ分の中間コードに対応する印刷要求を印刷機構６に発行して印刷を実行し（ステップＳ７１０）、中間コードの生成が終わったデータのうちの未印刷ページ数を示すＷ［１］に（Ｗ［１］−ｎ［１］）を入力した後（ステップＳ７１１）、総印刷枚数分印刷したかどうかを判断し（ステップＳ７１２）、まだの場合には、次の中間コード蓄積があったかどうかを判断する（ステップＳ７１３）。中間コードの蓄積があった場合には、印刷要求を作成し（ステップＳ７１４）、未印刷枚数Ｗ［１］を印刷要求の印刷枚数分ｎ［１］だけ増やした後（ステップＳ７１５）、中間コードの蓄積がなかった場合にはそのまま、ステップＳ７１６でＷ［１］がｎ［１］以上かどうかを判断する。Ｗ［１］がｎ［１］以上の場合には（ステップＳ７１６：Ｙｅｓ）、ステップＳ７１０に戻ってｎ［１］ページ印刷し、Ｗ［１］がｎ［１］より小さい場合には（ステップＳ７１６：Ｎｏ）、ステップＳ７１３に戻って次の中間コードの蓄積を待つ。
　【００７１】
　一方、ステップＳ７１２で総印刷枚数分の印刷が終了した場合には、印刷機構６の印刷権を放棄し（ステップＳ７１７）、次いで、出力トレイの使用を終了する（ステップＳ７１８）。
　【００７２】
　図２３には、図２１のステップＳ７０４でコールされる印刷機構獲得要求サブルーチンの処理フローを示す。図２３に示すように、まず、印刷機構が使用中かどうかを判断して使用中の場合には（ステップＳ８０１：Ｙｅｓ）、問い合わせてきた印刷要求作成タスクｐ（ｐは問い合わせてきた印刷要求管理タスクの番号を示し、この場合のｐは１である）に「印刷機構を獲得できない」を返す（ステップＳ８０２）。一方、印刷機構６が使用中でない場合には（ステップＳ８０１：Ｎｏ）、印刷要求管理タスクｐに「印刷機構を獲得できた」を返す（ステップＳ８０３）。
　【００７３】
　図２４には、図２１のステップＳ７０６でコールされる出力トレイ獲得要求サブルーチンの処理フローを示す。図２４に示すように、まず、出力トレイを使用中の印刷要求管作成タスクｐが使用中の出力トレイが存在するかどうかを検索し（ステップＳ９０１）、使用中出力トレイが存在する場合には（ステップＳ９０２：Ｙｅｓ）、要求を出している印刷要求作成タスクｐにそのタスクが使用中の出力トレイ番号を返す（ステップＳ９０３）。使用中の出力トレイがない場合には（ステップＳ９０２：Ｎｏ）、未使用の出力トレイがあるかどうかを検索し（ステップＳ９０４）、未使用出力トレイを検出した場合には（ステップＳ９０５：Ｙｅｓ）、印刷要求作成タスクｐに見つけだした空き状態の出力トレイ番号を返す（ステップＳ９０６）。また、未使用の出力トレイが存在しない場合には（ステップＳ９０５：Ｎｏ）、印刷要求作成タスクｐに「出力トレイを獲得できない」旨を返す（ステップＳ９０７）。
　【００７４】
　以上の図１４〜図２４に示した処理の全体の流れの一例を図２５に示す。図２５においては、印刷要求の発行は、優先順位決定部により所定の中間コードの蓄積完了順になるようになっている。まず、ホストＨ２からのデータが受信されて印刷データ受信タスク２が実行され、中間コード生成タスク２及び印刷要求作成タスク２が順次実行される。次に、ホストＨ１からの印刷データが受信されて印刷データ受信タスク１が実行され、中間コード生成タスク１及び印刷要求作成タスク１が順次実行される。この印刷実行中にホストＨ３から印刷データが受信されて印刷データ受信タスク３が実行され、さらに中間コード生成タスク３及び印刷要求作成タスク３が実行され、印刷要求作成タスク３が印刷待ち状態（Ｘ１）になる。また、印刷要求作成タスク３の印刷が終了した際に印刷機構の使用権が放棄されるが、このとき、印刷要求作成タスク２も印刷待ち状態になっている（Ｘ２）が、印刷要求の発行が早い印刷要求作成タスク３の方に印刷機構が移行し（Ｘ３）、その後、印刷要求作成タスク２に印刷機構が移行する（Ｘ４）。
　【００７５】
　なお、図２５の例では、所定の中間コード生成完了順に印刷要求が作成される優先順位モードになっているが、印刷データ受信の開始順に優先的に印刷要求が発行される優先順位モードとすると、印刷データ受信タスク３の印刷データの受信開始時点（Ｘ５）より印刷データ受信開始タスク２の印刷データの受信開始時点（Ｘ６）の方が早いので、印刷要求作成タスク２による印刷要求の発行の方が印刷要求作成タスク３による印刷要求の作成より早くなり、両者の印刷順序が図示したものとは逆となる。
　【００７６】
　（その他）
　以上説明した各実施例では、優先順位決定手段により決定された優先実行順位の早い順に印刷要求作成手段が印刷要求を作成することにより、優先実行順位の早い順に印刷を実行しているが、これに限定されるものではなく、例えば、印刷要求は所定の手順で作成されるが、上述した印刷機構獲得処理の際に優先順位を判断して印刷機構を獲得するようにしても本発明を実行することができる。すなわち、図２６に示すように、印刷機構が使用中でない場合には（ステップＳ８０１：Ｎｏ）、例えば、図１６（Ｂ）に示すようなテーブルにおいて、自分のジョブ番号に対応するｍよりも小さいｍが存在するかどうかを判断し（ステップＳ８１０）、小さいｍが存在しない場合のみ（ステップＳ８１０：Ｎｏ）、印刷要求作成タスクｐに「印刷機構獲得できた」を返すようにする（ステップＳ８０３）。これにより、優先実行順位に基づいた印刷が実行される。
　【００７７】
　また、上述の各実施形態では、印刷装置としてページプリンタ装置を想定して説明したが、他にもインクジェットプリンタ、サーマルプリンタ、ドットインパクトプリンタ等の印刷装置にも同様に適用が可能である。
　【００７８】
　【発明の効果】
　以上の説明から明らかなように、本発明によれば、複数の印刷ジョブに基づく画像形成処理及び印刷を、印刷データのサイズやメモリ容量、あるいは印刷装置の処理能力に応じて最適な順で実行することができる。
【図面の簡単な説明】
　【図１】本発明の第１実施形態に係る印刷装置の機能ブロック図。
　【図２】第１実施形態における印刷ジョブの処理順を説明するためのタイミング図。
　【図３】第１実施形態による印刷手順を示すフローチャート。
　【図４】本発明の
参考例
　【図５】
参考例
　【図６】
参考例
　【図７】本発明の第
２
　【図８】第
２
　【図９】第
２
　【図１０】本発明の第
３
　【図１１】本発明の第
４
　【図１２】本発明の各実施形態による印刷データの受信処理の手順説明図。
　【図１３】本発明の各実施形態による印刷データからの中間コード生成処理の手順説明図。
　【図１４】印刷データ受信タスクの処理を示すフローチャート。
　【図１５】中間コード生成タスクの処理を示すフローチャート。
　【図１６】優先順位決定タスクの処理を示し、（Ａ）はそのフローチャート、（Ｂ）は優先順位記憶部の構造の一例を示す図。
　【図１７】データ転送終了検出部による検出の処理を示すフローチャート。
　【図１８】データ蓄積完了検出部による検出の処理を示すフローチャート。
　【図１９】データ転送開始検出部による検出の処理を示すフローチャート。
　【図２０】データ蓄積開始検出部による検出の処理を示すフローチャート。
　【図２１】印刷要求作成タスクの処理を示すフローチャート。
　【図２２】印刷要求作成タスクの処理を示すフローチャート。
　【図２３】印刷機構獲得要求サブルーチンを示すフローチャート。
　【図２４】出力トレイ要求獲得要求サブルーチンを示すフローチャート。
　【図２５】各タスクの全体の処理の一例を示すタイミング図。
　【図２６】印刷機構獲得要求サブルーチンの他の処理を示すフローチャート。
　【図２７】従来の印刷装置の受信部の概略ブロック図。
　【図２８】従来の印刷装置における印刷ジョブの処理順を説明するためのタイミング図。
　【符号の説明】
　１，１０，２０，３０　印刷装置
　２　印刷データ受信部
　２ａ　印刷データ記憶部
　２ｂ　ネットワーク用ポート
　３　中間コード生成部
　３ａ　中間コード記憶部
　４　印刷要求作成部
　５ａ　データ転送終了検出部
　５ｂ　データ蓄積完了検出部
　５ｃ　データ転送開始検出部
　５ｄ　モード選択部
　５ｅ　メモリ容量検出部
　５ｆ　モード自動切換部
　５ｇ　データ蓄積開始検出部
　５１，５２，５３，５４，５５　優先順位決定部
　６　印刷機構