トップ :: B 処理操作 運輸 :: B41 印刷;線画機;タイプライタ−;スタンプ




【発明の名称】 プリンタシステムにおけるメモリ管理方法及び装置
【発明者】 【氏名】齋藤 紀夫

【要約】 【課題】プリンタドライバによってプリンタコントローラ内の用途別メモリ領域の配分を指定する。

【解決手段】プリンタコントローラ内のワークメモリ20は、スプール領域20a、フォント領域20b、オブジェクト領域20c、ブラシ領域20dの各領域に配分されている。プリンタドライバによって描画データの種別を判別して、その判別結果に基づいて、印刷ジョブ毎(又は、ページ毎)に該コントローラ内のワークメモリ20の各領域の配分を指定する。
【特許請求の範囲】
【請求項1】 プリンタドライバによってプリンタコントローラ内の用途別メモリ領域を指定するプリンタシステムにおいて、前記ドライバによって描画データの種別を判別し、その判別結果に基づいて前記プリンタコントローラ内の用途別メモリ領域の配分を指定することを特徴とするプリンタシステムにおけるメモリ管理方法。
【請求項2】 請求項1において、前記プリンタコントローラ内の用途別メモリ領域の配分の指定を、印刷ジョブ単位で行なうことを特徴とするプリンタシステムにおけるメモリ管理方法。
【請求項3】 請求項1において、前記プリンタコントローラ内の用途別メモリ領域の配分の指定を、ページ単位で行なうことを特徴とするプリンタシステムにおけるメモリ管理方法。
【請求項4】 請求項1ないし3のいずれかに記載の前記メモリ管理方法を実行するプリンタシステムにおけるメモリ管理装置。
【発明の詳細な説明】【0001】
【発明の属する技術分野】本発明は、プリンタシステムにおけるメモリ管理方法、より詳細には、デジタル複写機、スキャナ、FAXといった画像処理装置における動的メモリ管理方法及びそのための装置に関する。
【0002】
【従来の技術】従来のプリンタシステムでは、プリンタコントローラ内の用途別メモリの各領域の配分量は固定であり、様々なアプリケーションから印刷を行なう上で最適なメモリ配分を決定することが困難であった。例えば、文字出力を高速に行なうためにフォントキャッシュメモリを多く取ることが考えられる。ところが、これによって他の領域の配分量が減少してしまうと、文字以外のオブジェクトを描画する場合に必要なメモリが不足してしまい、描画全体の効率が悪くなってしまうという問題点があった。
【0003】
【発明が解決しようとする課題】従来より、プリンタシステムにおいて、より少ないメモリ容量で高速に出力できることが重要視されている。また、プリンタシステムに搭載されるメモリは、プリンタ全体のコストに比して高価であり、省メモリ化を進めることでプリンタ全体のコストダウンをはかることができる。
【0004】一方で、プリンタシステム内の搭載メモリを、例えば、フレームメモリ、コントローラ内のワークメモリといった、いくつかの用途に分け、それぞれの用途毎に効率良く利用することが求められる。本発明が対象とするコントローラ内のワークメモリのメモリ管理においては、さらにその中で用途毎にメモリ領域を分割して利用している。例えば、プリンタドライバから送られてくる描画コマンドをスプールする領域、描画オブジェクトやブラシパターンをページ内で再利用するためのオブジェクト領域とブラシ領域、フォントを高速に印字するためのフォントキャッシュ領域である。
【0005】本発明は、上述の点に鑑みてなされたものであり、プリンタシステムにおけるコントローラ内の用途別メモリの各領域の配分を描画データの種別に応じて変更することを目的としてなされたものである。
【0006】
【課題を解決するための手段】請求項1の発明は、プリンタドライバによってプリンタコントローラ内の用途別メモリ領域を指定するプリンタシステムにおいて、前記ドライバによって描画データの種別を判別し、その判別結果に基づいて前記プリンタコントローラ内の用途別メモリ領域の配分を指定することを特徴としたものである。
【0007】請求項2の発明は、請求項1の発明において、前記プリンタコントローラ内の用途別メモリ領域の配分の指定を、印刷ジョブ単位で行なうことを特徴としたものである。
【0008】請求項3の発明は、請求項1の発明において、前記プリンタコントローラ内の用途別メモリ領域の配分の指定を、ページ単位で行なうことを特徴としたものである。
【0009】請求項4の発明は、請求項1ないし3のいずれかに記載の前記メモリ管理方法を実行するプリンタシステムにおけるメモリ管理装置である。
【0010】
【発明の実施の形態】(実施例1)図1は、本発明が適用されるプリンタコントローラ内のメモリ管理の一例を示す図で、図中、1は、文字からなるページで構成される印刷ジョブ、2は、グラフィックスからなるページで構成される印刷ジョブ、3は、写真からなるページで構成される印刷ジョブ、10は、プリンタ、20は、プリンタ10のコントローラ内のワークメモリであって、スプール領域20a、フォント領域20b、オブジェクト領域20c、ブラシ領域20dからなる。アプリケーションから送られてくる印刷ジョブ内の描画データは、例えば、文字、イメージ、グラフィックス、それらを組み合わせたものと様々である。図1に示す、プリンタコントローラ内での各用途別メモリの、スプール領域20a、フォント領域20b、オブジェクト領域20c、ブラシ領域20dのメモリ領域が固定比率で配分されている場合、どの印刷ジョブに対しても効率良く、高速に出力するためのメモリ配分を決定することは、それぞれの描画オブジェクトの関係がトレードオフとなるため困難である。そこで、これらのメモリ配分を固定ではなく、印刷ジョブ毎に動的に変更できるよう、プリンタシステム10内部で、印刷ジョブの受け取り時にメモリ配分を変更可能とする管理を行なう。
【0011】(実施例2)図2は、本発明が適用されるプリンタコントローラ内のメモリ管理において、ページ単位でメモリ配分を変更した場合の実施例を示す図で、4はグラフィックスからなるページ、5は、文字とグラフィックスからなるページ、6は、文字からなるページである。複数ページの印刷ジョブにおいて、ページ毎に含まれる描画データの種類が異なる場合、例えば、1ページ目が文字だけであっても、2ページ目はイメージ、3ページ目はグラフィックスと、各ページ毎に必要なメモリ配分が異なることがあるため、ページ毎に最適なメモリ配分が違ってくる。そこで、印刷ジョブ毎に変更可能としたメモリ配分を、ページ毎に変更可能とする。図2に示すページ4では描画データがグラフィックスであるためオブジェクト領域20cを大きくとり、ページ6では、描画データが文字であるためフォント領域20bを大きくとる。ここで、各用途別メモリによって、ページ毎にメモリ容量の増加を許すもの、減少を許さないものがある。例えば、フォントキャッシュメモリにおいては、1ジョブ中で各ページを跨いでフォントキャッシュを共有するため、一旦確保したフォントキャッシュメモリを途中のページで減少させてしまうことはできない。一方で、スプール領域20aは各ページの最後でフラッシュするため、各ページの最初に、自由にメモリ量を増加、減少させることができる。
【0012】(実施例3)図3は、本発明が適用されるプリンタシステムの一例を示す図で、図中、30は、プリンタドライバである。印刷ジョブ毎、複数ページからなる印刷ジョブの各ページ毎に用途別ワークメモリ配分を動的に変更することを実現するため、プリンタドライバ30が、アプリケーションからのデータの種別を解析し、そのページに描画するオブジェクトの判別を行なう。この判別結果を用いてプリンタシステムのワークメモリ配分を指定するため、プリンタシステムに対してメモリ量指定コマンドをPDL(Page Description Language)コマンド中に付加して送出する。これにより、プリンタコントローラは受け取ったPDLコマンドを解釈し、各ワークメモリの適切な配分量をページ毎に決定することができる。
【0013】さらに、プリンタドライバ30からメモリ配分が指定できるため、プリンタシステムの再設計を行なうこと無く、プリンタドライバ30を変更するだけで自由に配分量をコントロールすることができる。
【0014】
【発明の効果】以上の説明から明らかなように、請求項1,2の発明によると、印刷ジョブ毎にプリンタコントローラ内の各ワークメモリ配分を動的に変更できるので、描画データの異なる印刷ジョブ毎に効率良くメモリを利用した描画処理が行なえる。
【0015】請求項1,3の発明によると、1つの印刷ジョブ中の各ページ毎にワークメモリ配分を動的に変更できるので、1つの印刷ジョブにおいても、各ページ毎に効率良くメモリを利用して描画処理が行なえる。
【0016】請求項1,4の発明によると、プリンタドライバからPDLコマンドにワークメモリ配分指定コマンドを付加してプリンタシステムに送出することで、動的なワークメモリ量の変更を実現でき、また、プリンタシステムを再設計すること無く、自由にメモリ配分を指定して効率良くメモリを利用した描画処理を行なうことができる。
【出願人】 【識別番号】000006747
【氏名又は名称】株式会社リコー
【出願日】 平成12年11月17日(2000.11.17)
【代理人】
【公開番号】 特開2002−144646(P2002−144646A)
【公開日】 平成14年5月22日(2002.5.22)
【出願番号】 特願2000−350851(P2000−350851)