(57)【要約】【課題】 少ないイメージデータメモリにより高品質印刷を行うことができるプリンタを提供することである。【解決手段】 本発明は、受信したジョブデータに基づいてイメージデータを生成する生成手段と、前記生成手段によって生成されたイメージデータを単位領域ごとに記憶するイメージデータメモリと、連続する単位領域からなる仮想記憶領域が形成される二次記憶装置と、前記イメージデータメモリと前記二次記憶装置との間の仮想記憶に関する処理を管理する記憶管理手段と、前記イメージデータメモリに記憶されたイメージデータを印刷エンジンに供給する供給手段とによって構成される。【選択図】  図１
2005231374.tif 000002
【特許請求の範囲】
【請求項１】
受信したジョブデータに基づいてイメージデータを生成する生成手段と、
前記生成手段によって生成されたイメージデータを単位領域ごとに記憶するイメージデータメモリと、
連続する単位領域からなる仮想記憶領域が形成される二次記憶装置と、
前記イメージデータメモリと前記二次記憶装置との間の仮想記憶に関する処理を管理する記憶管理手段と、
前記イメージデータメモリに記憶されたイメージデータを印刷エンジンに供給する供給手段とを備え、
前記記憶管理手段は、前記仮想記憶領域における単位領域が前記イメージデータメモリにおける単位領域のいずれかに割り当てられているか否かを判断する判断手段をさらに備え、前記生成手段が前記イメージデータを生成している間は、前記判断手段による判断に基づいて、前記イメージデータメモリにおける単位領域の内容を前記仮想記憶領域における単位領域に出力するとともに、前記仮想記憶領域における単位領域の内容を前記イメージデータメモリにおける単位領域に出力する処理を実行可能に構成されていることを特徴とするプリンタ。
【請求項２】
受信した印刷ジョブデータに基づいて生成したイメージデータをイメージデータメモリに記憶し、前記記憶したイメージデータを前記イメージデータメモリから読み出して印刷エンジンに供給するプリンタのメモリ管理方法であって、
連続する単位領域からなる仮想記憶領域を二次記憶装置上に形成し、前記イメージデータメモリにアクセスする際に、前記イメージデータメモリと前記二次記憶装置との間で仮想記憶に関する処理を行う工程を備え、
前記工程は、前記イメージデータを生成している間は、前記仮想記憶領域における単位領域が前記イメージデータメモリにおける単位領域のいずれかに割り当てられているか否かを判断し、割り当てられていると判断した場合に、前記イメージデータメモリにおける単位領域の内容を前記仮想記憶領域における単位領域に出力するとともに、前記仮想記憶領域における単位領域の内容を前記イメージデータメモリの単位領域に出力する工程を含むことを特徴とするプリンタのメモリ管理方法。
【請求項３】
プリンタに所定の機能を実現させるプログラムを記録した記録媒体であって、前記プログラムは、論理アドレスに基づいて得られる物理アドレスに従って、イメージデータメモリに対してアクセスを行い、前記アクセスに際してページフォルトが発生した場合に、前記イメージデータメモリと二次記憶装置との間で仮想記憶に関する処理を行う記憶管理手段と、受信したジョブデータに基づいてイメージデータを生成し、前記生成したイメージデータを仮想記憶領域に展開するための論理アドレスに従って前記記憶管理手段にアクセスする生成手段と、論理アドレスに従って前記記憶管理手段にアクセスして前記仮想記憶領域に展開されたイメージデータを読み出し、印刷エンジンに供給する供給手段と、を備え
前記記憶管理手段は、前記生成手段が前記記憶管理手段にアクセスする間に、前記イメージデータメモリにおける単位領域の内容を前記仮想記憶領域における単位領域に出力するとともに、前記仮想記憶領域における単位領域の内容を前記イメージデータメモリにおける単位領域に出力する処理を実行可能に構成されていることを特徴とするプログラムを記録した記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、受信したジョブデータに基づいて生成されるイメージデータをイメージデータメモリに展開した後、印刷を行うページプリンタの技術に関する。
【背景技術】
【０００２】
プリンタは、コンピュータから送信される印刷ジョブデータを受信すると、イメージデータメモリ上にこの印刷ジョブデータに従って生成したイメージデータを展開する。そして、プリンタは、用紙１ページ分のイメージデータを展開した後、順次、イメージデータを印刷エンジンに転送して、印刷を行う。
【０００３】
このように、プリンタは、１ページ分のイメージデータを記憶することができるイメージデータメモリが必要となる。例えば、Ａ４の用紙に６００ｄｐｉ、モノクロで印刷するためには、約４ＭＢのイメージデータメモリが必要となる。このようなイメージデータメモリは、一般に、ＤＲＡＭ等の半導体記憶装置によって構成されている。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
近年は、コンピュータの発達に伴い、高速、高解像度、フルカラーを実現するプリンタが要求されている。このような要求を実現するためには、大容量のイメージデータメモリを搭載する必要があるが、コスト面を考慮すると、実現が困難であるという課題があった。
【０００５】
また、イメージデータメモリは、１ページ分のイメージデータを記憶できるように、コスト面を考慮しつつ、余裕を持ったサイズで構成されている。しかしながら、ドキュメントの内容によっては、イメージデータの生成中に、メモリ不足の状態に陥る場合がある。このようなメモリ不足の状態に対処するため、プリンタは、メモリ不足の状態に陥ると、解像度を低下させる等の画像最適化処理を行う。このため、ユーザが望む本来の印刷状態に比べて印刷品質が低下した印刷結果を招いてしまうという課題があった。
そこで、本発明の課題は、少ないイメージデータメモリにより高品質印刷を行うことができるプリンタを提供することである。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明は以下のように特定される。
すなわち、本発明は、受信したジョブデータに基づいてイメージデータを生成する生成手段と、前記生成手段によって生成されたイメージデータを単位領域ごとに記憶するイメージデータメモリと、連続する単位領域からなる仮想記憶領域が形成される二次記憶装置と、前記イメージデータメモリと前記二次記憶装置との間の仮想記憶に関する処理を管理する記憶管理手段と、前記イメージデータメモリに記憶されたイメージデータを印刷エンジンに供給する供給手段とを備えたことを特徴とするプリンタである。
【０００７】
ここで、前記記憶管理手段は、前記供給手段が前記生成したイメージデータの先頭部分から順に供給できるように、前記仮想記憶領域における単位領域の内容を前記イメージデータメモリにおける単位領域に順に出力することを特徴とする。
【０００８】
また、前記記憶管理手段は、前記供給手段によって供給が完了した前記イメージデータメモリにおける単位領域に、前記仮想記憶領域における単位領域の内容を順に出力することを特徴とする。
【０００９】
さらに、前記記憶管理手段は、前記仮想記憶領域における単位領域が前記イメージデータメモリにおける単位領域のいずれかに割り当てられているか否かを判断する判断手段をさらに備え、前記生成手段が前記イメージデータを生成している間は、前記判断手段による判断に基づいて、前記イメージデータメモリにおける単位領域の内容を前記仮想記憶領域における単位領域に出力するとともに、前記仮想記憶領域における単位領域の内容を前記イメージデータメモリにおける単位領域に出力し、前記供給手段が前記イメージデータを供給している間は、前記仮想記憶領域における単位領域の内容を前記イメージデータメモリにおける単位領域に順に出力することを特徴とする。
【００１０】
なお、前記単位領域のメモリサイズは、印刷のバンド幅に基づくメモリサイズに対応するように構成することが望ましい。
【００１１】
一方、上記物の発明は方法の発明として把握することもできる。具体的には、本発明は、受信した印刷ジョブデータに基づいて生成したイメージデータをイメージデータメモリに記憶し、前記記憶したイメージデータを前記イメージデータメモリから読み出して印刷エンジンに供給するプリンタのメモリ管理方法であって、連続する単位領域からなる仮想記憶領域を二次記憶装置上に形成し、前記イメージデータメモリにアクセスする際に、前記イメージデータメモリと前記二次記憶装置との間で仮想記憶に関する処理を行うことを特徴とするプリンタのメモリ管理方法である。
【００１２】
ここで、前記仮想記憶に関する処理は、前記イメージデータの先頭部分から順に供給できるように、前記仮想記憶領域における単位領域の内容を前記イメージデータメモリにおける単位領域に順に出力することを特徴とする。
【００１３】
また、前記仮想記憶に関する処理は、前記供給が完了した前記イメージデータメモリにおける単位領域に、前記仮想記憶領域における単位領域の内容を順に出力することを特徴とする。
【００１４】
さらに、前記仮想記憶に関する処理は、前記イメージデータを生成している間は、前記仮想記憶領域における単位領域が前記イメージデータメモリにおける単位領域のいずれかに割り当てられているか否かを判断し、割り当てられていると判断した場合に、前記イメージデータメモリにおける単位領域の内容を前記仮想記憶領域における単位領域に出力するとともに、前記仮想記憶領域における単位領域の内容を前記イメージデータメモリの単位領域に出力し、前記イメージデータを供給している間は、前記仮想記憶領域における単位領域の内容を前記イメージデータメモリにおける単位領域に順に出力することを特徴とする。
【００１５】
また、本発明は、プログラムを実行することにより実現される所定の機能により構成することもできる。具体的には、本発明は、プリンタに所定の機能を実現させるプログラムを記録した記録媒体であって、前記プログラムは、論理アドレスに基づいて得られる物理アドレスに従って、イメージデータメモリに対してアクセスを行い、前記アクセスに際してページフォルトが発生した場合に、前記イメージデータメモリと二次記憶装置との間で仮想記憶に関する処理を行う記憶管理手段と、受信したジョブデータに基づいてイメージデータを生成し、前記生成したイメージデータを仮想記憶領域に展開するための論理アドレスに従って前記記憶手段にアクセスする生成手段と、論理アドレスに従って前記記憶管理手段にアクセスして前記仮想記憶領域に展開されたイメージデータを読み出し、印刷エンジンに供給する供給手段と、を備えたことを特徴とするプログラムを記録した記録媒体であってもよい。
【００１６】
なお、前記記録媒体とは、例えば、ハードディスク（ＨＤ）、ＤＶＤ−ＲＡＭ、フレキシブルディスク（ＦＤ）やＣＤ−ＲＯＭ等のほかに、ＲＡＭやＲＯＭ等のメモリを含む。また、前記プリンタとは、例えば、ＣＰＵやＭＰＵといったいわゆる中央処理装置がプログラムを解釈することで所定の処理を行う、いわゆるマイクロコンピュータ等を備えたプリンタをいう。
【発明の効果】
【００１７】
本発明によれば、少ないイメージデータメモリで高品質印刷を行うことができる安価なプリンタを提供できる。
【発明を実施するための最良の形態】
【００１８】
次に、本発明の実施の形態について、図面を参照しつつ説明する。
［第１の実施形態］本実施形態は、二次記憶装置であるハードディスク装置を用いてイメージデータメモリを仮想記憶管理することを特徴とする。
【００１９】
図１は、本実施形態に係るプリンタのハードウェア構成を示す図である。同図において、本実施形態に係るプリンタ１は、ネットワークインターフェース１１（以下「ネットワークＩ／Ｆ」という。）、プロセッサ１２、ＲＯＭ１３、ＲＡＭ１４、Ｉ／Ｏコントローラ１５，１６、印刷エンジン１７およびハードディスク装置１８を備える。また、プリンタ１は、ＬＡＮ等のネットワークＮを介して図示しないコンピュータに接続される。コンピュータは、エディタやワードプロセッサ等のアプリケーションの実行により作成された図形データやテキストデータ等から構成されるドキュメントデータを、印刷実行に際し、印刷ジョブデータに変換し、ネットワークＮを介してプリンタ１に送信する。
【００２０】
ネットワークＩ／Ｆ１１は、ネットワークＮを介してコンピュータから送信される印刷ジョブデータを受信し、図示しない内部のバッファに保持する。プロセッサ１２は、ＲＯＭ１３やＲＡＭ１４に記憶された所定のプログラムに従って動作し、プリンタ１全体の制御を行う。プロセッサ１２は、例えば、印刷ジョブデータに基づいてイメージデータを生成し、また、ＲＡＭ１４に対して割り当てられる仮想記憶領域（スワップ領域）を管理する。なお、これらの詳細については後述する。
【００２１】
ＲＡＭ１４は、プログラム作業領域およびデータ作業領域を有する。さらに、このデータ作業領域は、印刷ジョブデータを保持する領域と、印刷ジョブデータに基づいて生成されるイメージデータを保持する領域とに分けられる。ＲＡＭ１４は、典型的には、ＤＲＡＭによって構成される。これらの領域は、論理的に分割されていても、物理的に分割されていてもよい。
【００２２】
Ｉ／Ｏコントローラ１５は、ＲＡＭ１４から転送されるイメージデータを、印刷エンジン１７の処理状況を監視しながら、印刷エンジン１７に送出する。印刷エンジン１７は、例えば、紙送り機構やプリントヘッド等を含んで構成されており、紙等の印刷記録媒体に印刷を行うものである。
【００２３】
Ｉ／Ｏコントローラ１６は、ハードディスク装置をアクセスするための制御を行う。Ｉ／Ｏコントローラ１６は、例えば、ＤＭＡ機能により、ＲＡＭ１４とハードディスク装置との間の入出力制御を行う。ハードディスク装置１８は、ＲＡＭ１４に対する二次記憶装置として機能する。すなわち、ハードディスク装置１８は、プロセッサ１２によって実行される各種プログラムを記憶し、また、フォントやオーバーレイ等のデータを記憶する。これらのデータは、プロセッサ１２の制御の下、必要に応じてＲＡＭ１４にロードされる。さらに、本実施形態では、ハードディスク装置１８は、ＲＡＭ１４に対する仮想記憶領域として使用される。
【００２４】
図２は、本実施形態に係るプリンタの機能構成を示す図である。本実施形態に係るプリンタの機能構成は、プロセッサが所定のプログラムを実行し、他のハードウェアと共働して動作することにより実現される。
【００２５】
通信部２１は、コンピュータとの間でネットワーク通信を行う。通信部２１は、印刷ジョブデータに関する通信データを受信した場合には、これを論理的・物理的に変換して印刷ジョブデータを抽出し、ジョブデータメモリ２２に出力する。
【００２６】
イメージデータ生成部２３は、ジョブデータメモリ２２に蓄積された印刷ジョブデータを読み出して、これを解釈し、イメージデータを生成する。イメージデータは、紙等の印刷記録媒体に対する印刷イメージに対応したラスタデータである。生成されたイメージデータは、イメージデータメモリ２４に展開（記憶）される。本実施形態においては、イメージデータ生成部２３が、イメージデータメモリ２４の物理空間を超えるサイズを持つイメージデータを展開できるようにするため、仮想記憶に関する処理を管理する記憶管理部２５を介して、イメージデータメモリ２４にアクセスする。
【００２７】
すなわち、記憶管理部２５は、イメージデータメモリ２４に対して割り当てられる仮想記憶領域を管理する。換言すれば、記憶管理部２５は、イメージデータメモリ２４の物理空間を超えるイメージデータをあたかもイメージデータメモリ２４に記憶されているかのように仮想的に見せかけるものである。
【００２８】
より具体的には、記憶管理部２５は、メモリアクセス部２５１、アドレス変換部２５２およびページングテーブル部２５３を備える。メモリアクセス部２５１は、イメージデータメモリ２４をページと呼ばれる固定長の領域（所定の単位領域）に分割して管理して、この所定の単位領域ごとにハードディスク２６上の割り当てられた仮想記憶領域との間でページイン（スワップイン）およびページアウト（スワップアウト）を行う。本実施形態においては、この単位領域のサイズを１バンド幅分に合わせるとともに、その数を３ページ（すなわち３バンド分）として構成している。ここで、バンドとは、主走査方向のドット数と副走査方向のドット数とによって決定される印刷領域である。アドレス変換部２５２は、入力される論理アドレスを物理アドレスに変換する。ページングテーブル部２５３は、論理アドレスで示される所定の単位領域がイメージデータメモリ部２４に存在するか否かに関する情報等から構成されるページングテーブルを記憶する。
【００２９】
印刷制御部２７は、イメージデータ生成部２３によって印刷記録媒体（用紙）１ページ分のイメージデータの生成が完了すると、記憶管理部２５を介して、イメージデータメモリ２４からイメージデータを順次読み出し、印刷エンジン２８の処理状態に応じて、イメージデータを印刷エンジン２８に供給する。つまり、印刷エンジン２８に対するイメージデータの供給のために、印刷制御部２７がイメージデータメモリ２４に対するアクセスを記憶管理部２５に要求すると、記憶管理部２５は、必要に応じてハードディスク装置２６上の仮想記憶領域から所定の単位領域をイメージデータメモリ２４上にページインして、印刷制御部２７に出力する。
【００３０】
図３は、本実施形態に係る記憶管理部２５による仮想記憶の原理を説明するための図である。イメージデータメモリ２４に対するアクセスは、論理アドレスに従って行われる。論理アドレスは、論理ページ番号とページ内変位とにより構成される。論理ページ番号は、仮想記憶領域上で所定の単位領域ごとに分割された領域にそれぞれ与えられた番号である。また、ページ内変位は、所定の単位領域内における先頭位置からの変位量である。ページングテーブル２５３は、論理ページ番号に対応したエントリーに、そのページ（所定の単位領域）がイメージデータメモリ２４上に存在するか否かを示すフラグ、書き込みがあったか否かを示すフラグ、物理ページ番号およびハードディスク装置上のファイル名等の情報を有する。
【００３１】
なお、本実施形態に係るプリンタ１は、イメージデータを生成して仮想記憶領域上に展開する際は、ページインおよびページアウトを考慮するように構成されるが、イメージデータを印刷エンジンに供給する際には、ページアウトを考慮せず、所定の単位領域を順にページインするように構成される。
【００３２】
メモリアクセス部２５１は、論理アドレスに従ってイメージデータメモリ２４に対するアクセスを受け付けると、ページングテーブル部２５３を参照し、論理アドレス中の論理ページ番号に対応するエントリーの存在フラグをチェックする。その結果、イメージデータメモリ２４上に存在していると判断する場合には、アドレス変換部２５２は、その物理ページ番号および論理アドレス中のページ内変位に基づいて物理アドレスを算出し、メモリアクセス部２５１にこれを送出する。一方、存在しないと判断する場合には、メモリアクセス部２５１は、ページング処理を行う。つまり、メモリアクセス部２５１は、所定の追い出しアルゴリズムに従ってイメージデータメモリ２４上の物理ページを決定し、そのページの書き込みフラグが真である（書き込みがあった）ならば、その内容を仮想記憶領域上に退避して、読み出すべき論理ページをその位置にページインする。
【００３３】
次に、本実施形態に係るプリンタ１の動作について説明する。
【００３４】
図４は、本実施形態に係るプリンタ１の動作を説明するための図である。同図において、プリンタ１は、ページングテーブル部２５３に記憶されたページングテーブルを初期化し（ＳＴＥＰ４１）、印刷待ち状態になる。プリンタ１は、コンピュータから印刷ジョブデータを受信すると（ＳＴＥＰ４２）、受信した印刷ジョブデータを逐次解釈して、イメージデータを生成し、論理空間上にイメージデータを展開する（ＳＴＥＰ４３およびＳＴＥＰ４４）。すなわち、プリンタ１は、論理アドレスに従って仮想記憶領域上に展開されるイメージデータを、イメージデータメモリ２４の物理アドレスに展開する。この場合において、イメージデータメモリ２４上に割り当てられていない単位領域をアクセスしようとする場合には、所定の仮想記憶処理を行う。プリンタ１は、印刷記録媒体の１ページ分のイメージデータを生成するまで、上記ＳＴＥＰ４２〜ＳＴＥＰ４４の処理を繰り返す。なお、印刷ジョブデータを２部以上の印刷を行うときは、印刷対象ページの２部目以降は、ＳＴＥＰ４６〜ＳＴＥＰ４９が該当部数分繰り返されることになる。
【００３５】
プリンタ１は、１ページ分のイメージデータを生成したと判断した場合には（ＳＴＥＰ４５）、イメージデータメモリ２４からイメージデータメモリを読み出して、これを印刷エンジンに供給する（ＳＴＥＰ４６およびＳＴＥＰ４７）。すなわち、プリンタ１は、論理アドレスに従って仮想記憶領域上に展開されたイメージデータを、イメージデータメモリ２４の物理アドレスに展開し、これを順次印刷エンジンに供給する。この場合において、イメージデータメモリ２４上に割り当てられていない単位領域をアクセスしようとする場合には、所定の仮想記憶処理が行われる。プリンタ１は、１ページ分のイメージデータを印刷エンジンに供給するまで、上記ＳＴＥＰ４６〜ＳＴＥＰ４７の処理を繰り返す（ＳＴＥＰ４８）。また、プリンタ１は、受信した印刷ジョブデータをすべて処理するまで、つまり全ページ分印刷が完了するまで、上記処理を繰り返す（ＳＴＥＰ４９）。
【００３６】
次に、図４に示した仮想記憶処理の詳細を図５〜図７に従って説明する。
【００３７】
上述したように、本実施形態に係るプリンタ１は、イメージデータを生成して仮想記憶領域上に展開する際（イメージデータ生成モード）は、ページインおよびページアウトを考慮した仮想記憶処理を行うが、イメージデータを印刷エンジンに供給する際（イメージデータ供給モード）は、ページアウトを考慮せず、ページインのみを考慮した仮想記憶処理を行う。
【００３８】
図５は、本実施形態に係るプリンタの仮想記憶処理を説明するための図である。同図において、記憶管理部２５は、論理アドレスの中から論理ページ番号を抽出し（ＳＴＥＰ５１）、この論理ページ番号に従ってページングテーブルのエントリを参照する（ＳＴＥＰ５２）。記憶管理部２５は、そのエントリの存在フラグが真であるか否か、つまり、イメージデータメモリ２４上にその論理ページが存在するか否かをチェックする（ＳＴＥＰ５３）。ＳＴＥＰ５３において、存在フラグが真であると判断される場合には、記憶管理部２５は、ページングテーブルのエントリから物理ページ番号を抽出する（ＳＴＥＰ５４）。記憶管理部２５は、抽出した物理ページ番号および論理アドレスの中のページ内変位に基づいてイメージデータメモリ２４上の物理アドレスを算出し（ＳＴＥＰ５５）、イメージデータメモリ２４をアクセスする（ＳＴＥＰ５６）。なお、イメージデータメモリ２４をアクセスした場合には、記憶管理部２５は、ページングテーブルにおけるアクセスされた論理ページの書き込みフラグを真に変更する（ＳＴＥＰ５７）。
【００３９】
一方、ＳＴＥＰ５３において、存在フラグが偽であると判断される場合には、ページング処理を行う（ＳＴＥＰ５８）。ページング処理が発生した場合、イメージデータメモリ２４に対するアクセスは、ページ処理が完了するまでの間、待機状態になる。
【００４０】
図６は、イメージデータ生成モードにおけるページング処理の動作を説明するための図である。すなわち、記憶管理部２５は、イメージデータメモリ２４上に、ページイン可能な空き物理ページ（所定の単位領域）があるか否かを判断する（ＳＴＥＰ６１）。記憶管理部２５は、空き物理ページがないと判断する場合には、所定の追い出しアルゴリズムに従って、追い出すべき物理ページを決定し、この物理ページの内容をハードディスク装置２６の仮想記憶領域上に退避する（ＳＴＥＰ６２）。この場合の追い出しアルゴリズムは、例えば、ＬＲＵ（LeastRecently Used）法により実現される。一方、ＳＴＥＰ６１において空き物理ページがあると判断する場合、またはＳＴＥＰ６２においてページアウトが完了した後、記憶管理部２５は、ハードディスク２６の仮想記憶領域上の論理ページの内容をイメージデータメモリ２４上の物理ページに書き込む（ＳＴＥＰ６３）。記憶管理部２５は、イメージデータメモリ２４上の物理ページに割り当てられた論理ページを管理するため、ページングテーブルの内容を変更する（ＳＴＥＰ６４）。
【００４１】
図７は、イメージデータ供給モードにおけるページング処理の動作を説明するための図である。イメージデータ供給モードにおけるページング処理は、イメージデータ生成モードにおけるページング処理に対して、ページアウトによるイメージデータメモリ２４の物理ページの内容を、ハードウェア装置２６の仮想記憶領域上に退避しない点が異なる。すなわち、記憶管理部２５は、イメージデータメモリ２４上に、ページイン可能な空き物理ページがないと判断する場合には（ＳＴＥＰ７１）、所定の追い出しアルゴリズムに従って、ページインされるべき物理ページを決定する（ＳＴＥＰ７２）。この場合、記憶管理部２５は、ページインされるべき物理ページを決定するのみであり、その物理ページの内容をハードディスク２６の仮想記憶領域上に退避することを行わない。ページインされるべき物理ページを決定すると、記憶管理部２５は、ハードディスク２６の仮想記憶領域上の論理ページの内容をイメージデータメモリ２４上の物理ページに書き込み（ＳＴＥＰ７３）、ページングテーブルの内容の変更を行う（ＳＴＥＰ７５）。
【００４２】
図６または図７に示したページング処理が完了すると、図５に示したＳＴＥＰ５４以降の処理を行う。
【００４３】
なお、本実施形態に係るプリンタの動作はシーケンシャルに構成されたが、これは説明の便宜のためであり、特にこれにこだわるものではない。すなわち、動作に矛盾が生じない限り、並行的に動作するように構成され、または順序を入れ替えて構成されてもよい。
【００４４】
次に、本実施形態に係るプリンタの動作例を、図８〜図１０を用いて説明する。例えば、プリンタ１が、図８に示すような印刷イメージを実現する印刷ジョブデータを受信したとする。印刷イメージは、複数のオブジェクト枠から構成される。各オブジェクト枠には、図形データやテキストデータが割り当てられる。コンピュータは、オブジェクト枠ごとに印刷ジョブデータを生成し、順次プリンタに送信する。図中、丸数字は、プリンタが印刷ジョブデータを受信した順番を示すものとする。
【００４５】
まず、プリンタ１は、印刷ジョブデータ１を受信すると、これを解釈してイメージデータを生成し、仮想記憶領域上の所定の論理ページに展開する（図９（ａ））。つまり、記憶管理部２５によって、イメージデータメモリ２４上の物理ページ（物理ページ番号１および２）に展開されることになる。次に、印刷ジョブデータ２を受信すると、１ページ分を空きページ（物理ページ番号３）に展開し、残りのページについては所定の追い出しアルゴリズムに従って決定された、例えば、物理ページ番号２の内容をページアウトした後に、展開する（同図（ｂ））。
【００４６】
最後に、印刷ジョブデータ３を受信すると、所定の追い出しアルゴリズムに従って決定された物理ページ番号１の内容を仮想記憶領域上に退避する。そして、プリンタ１は、ページアウトしたページ（物理ページ番号１）に論理ページに割り当て、印刷ジョブデータ３に基づいてイメージデータを生成し、展開する（同図（ｃ））。
【００４７】
イメージデータの生成が完了すると、プリンタ１は、図１０に示すように、仮想記憶領域上の論理ページを順次イメージデータメモリ２４上の物理ページに展開する（同図（ａ））。この場合、イメージデータメモリ２４上の物理ページの内容をハードディスク２６に退避させることなく、上書きするように順次展開する（同図（ｂ））。
【００４８】
以上のように、本実施形態によれば、ハードディスク装置の仮想記憶領域に対して生成したイメージデータを展開することができるようになる。すなわち、イメージデータメモリの物理空間を超えるサイズのイメージデータを扱うことができるようになる。
【００４９】
従って、メモリ不足の状態に陥ることがなく、解像度を低下させる等の画像最適化処理を行う必要がないため、ユーザが望む本来の印刷品質を提供することができるようになる。
【００５０】
また、高解像度、フルカラーを実現する大容量のイメージデータを扱う場合であっても、それに応じたイメージデータメモリをプリンタに搭載する必要がなくなる。従って、イメージデータメモリに比較してビット単価の安いハードディスクを用いてプリンタを構成することができるので、高印刷品質のプリンタを安価に実現することができるようになる。
【００５１】
さらに本実施形態によれば、イメージデータを印刷エンジンに供給する際には、すでにイメージデータメモリ上の内容をハードディスク装置上に退避することなく、ハードディスク装置から順次イメージデータメモリ上に読み出して印刷エンジンに供給するので、仮想記憶処理によるオーバーヘッドを可能な限り小さくすることができる。これにより、小さなイメージデータメモリで高速印刷、高品質印刷のプリンタを実現することができる。
【００５２】
また、本実施形態によれば、イメージデータメモリ上の単位領域のサイズ（物理ページサイズ）と印刷のバンドの大きさとが対応するように構成しているため、１回のページインに対して１回の印刷エンジンへの供給が可能になる。このため、仮想記憶処理によるオーバーヘッドを可能な限りなくすことができ、効率的な動作を実現できる。
【００５３】
［第２の実施形態］本実施形態は、二次記憶装置であるハードディスク装置を用いてジョブデータメモリおよびイメージデータメモリを仮想記憶管理することを特徴とする。
【００５４】
図１１は、本実施形態に係るプリンタ１の機能構成を示す図である。同図において、第１の実施形態と同じ機能実現手段には、同じ符号が付されている。すなわち、本実施形態に係るプリンタ１は、ジョブデータメモリおよびイメージデータメモリに対するアクセスを、常に記憶管理部２５を介して行うように構成されている。
【００５５】
通信部２１は、印刷ジョブデータに関する通信データを受信した場合には、これを論理的・物理的に変換して印刷ジョブデータを抽出し、これを記憶管理部２５に送出する。記憶管理部２５は、上記実施形態と同様に、仮想記憶処理を管理する。すなわち、記憶管理部２５は、論理アドレスに従って仮想記憶領域上に展開される印刷ジョブデータを、ジョブデータメモリ２２の物理アドレスに変換し、展開する。この場合において、ジョブデータメモリ２２上に割り当てられていない単位領域をアクセスしようとする場合には、所定の仮想記憶処理を行う。
【００５６】
なお、その他の機能実現手段については、上記実施形態と同じであるため説明を省略する。
【００５７】
以上のように、本実施形態によれば、ジョブデータメモリの物理空間を超えるサイズの印刷ジョブデータを扱うことができるようになる。このことは、一度に複数の印刷ジョブデータを受信する場合に、特に有効である。
【図面の簡単な説明】
【００５８】
【図１】第１の実施形態に係るプリンタのハードウェア構成を示す図
【図２】第１の実施形態に係るプリンタの機能構成を示す図
【図３】仮想記憶の原理を説明するための図
【図４】第１の実施形態に係るプリンタの動作を説明するための図
【図５】仮想記憶処理の動作を説明するための図
【図６】イメージデータ生成モードにおけるページング処理を説明するための図
【図７】イメージデータ供給モードにおけるページング処理を説明するための図
【図８】プリンタの動作例を説明するための印刷イメージを示す図
【図９】イメージデータ生成モードにおけるプリンタの動作例を示す図
【図１０】イメージデータ供給モードにおけるプリンタの動作例を示す図
【図１１】第２の実施形態に係るプリンタの機能構成を示す図
【符号の説明】
【００５９】
１…プリンタ；２１…通信部；２２…ジョブデータメモリ；２３…イメージデータ生成部；２４…イメージデータメモリ；２５…記憶管理部；２６…ハードディスク装置；２７…印刷制御部；２８…印刷エンジン
【図１】
2005231374.tif 000003
【図２】
2005231374.tif 000004
【図３】
2005231374.tif 000005
【図４】
2005231374.tif 000006
【図５】
2005231374.tif 000007
【図６】
2005231374.tif 000008
【図７】
2005231374.tif 000009
【図８】
2005231374.tif 000010
【図９】
2005231374.tif 000011
【図１０】
2005231374.tif 000012
【図１１】
2005231374.tif 000013