JP4281738B2 - 画像形成装置、画像形成方法及びプログラム - Google Patents

画像形成装置、画像形成方法及びプログラム Download PDF

Info

Publication number
JP4281738B2
JP4281738B2 JP2005372471A JP2005372471A JP4281738B2 JP 4281738 B2 JP4281738 B2 JP 4281738B2 JP 2005372471 A JP2005372471 A JP 2005372471A JP 2005372471 A JP2005372471 A JP 2005372471A JP 4281738 B2 JP4281738 B2 JP 4281738B2
Authority
JP
Japan
Prior art keywords
area
data
capacity
shared storage
storage area
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2005372471A
Other languages
English (en)
Other versions
JP2007172506A (ja
Inventor
文人 秋山
昌裕 小澤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Konica Minolta Business Technologies Inc
Original Assignee
Konica Minolta Business Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Konica Minolta Business Technologies Inc filed Critical Konica Minolta Business Technologies Inc
Priority to JP2005372471A priority Critical patent/JP4281738B2/ja
Priority to US11/401,055 priority patent/US7859703B2/en
Priority to EP06255094A priority patent/EP1816848A1/en
Publication of JP2007172506A publication Critical patent/JP2007172506A/ja
Application granted granted Critical
Publication of JP4281738B2 publication Critical patent/JP4281738B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32358Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using picture signal storage, e.g. at transmitter
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1211Improving printing performance
    • G06F3/1217Improving printing performance achieving reduced idle time at the output device or increased asset utilization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/126Job scheduling, e.g. queuing, determine appropriate device
    • G06F3/1261Job scheduling, e.g. queuing, determine appropriate device by using alternate printing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1286Remote printer device, e.g. being remote from client or server via local network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0077Types of the still picture apparatus
    • H04N2201/0094Multifunctional device, i.e. a device capable of all of reading, reproducing, copying, facsimile transception, file transception
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N2201/3285Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using picture signal storage, e.g. at transmitter
    • H04N2201/3288Storage of two or more complete document pages or image frames
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N2201/3285Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using picture signal storage, e.g. at transmitter
    • H04N2201/3295Deletion of stored data; Preventing such deletion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N2201/3285Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using picture signal storage, e.g. at transmitter
    • H04N2201/3298Checking or indicating the storage space

Description

本発明は、画像データに基づいたデータをメモリに保存する画像形成装置、画像形成方法及びプログラムに関する。
近年、PC(Personal Computer)等の外部装置で作成された印刷データ、即ち、ぷストスクリプト(登録商標)やPCL(Printer Control Language)に代表されるページ記述言語(PDL;Page Description Language)形式の画像データを、LAN等のネットワークを介して受信し、受信した印刷データを一旦中間形式のデータ(中間データ)に変換してメモリ上に保持し、順次メモリ上に保持されている中間データを読み出してビットマップデータに変換して印刷を行うネットワーク型の複写機、プリンタ、MFP(Multi Function Peripheral)等の画像形成装置が普及している。
このような画像形成装置は、印刷処理の高速化に伴う印刷データ量の増大に対して、高スループットが求められている。また、何らかのエラーが発生した場合には、エラーが発生したページから再度印刷する必要があるため、印刷終了まで印刷データを保持しておかなければならない。更に、メモリ上に空き十分な領域が無い場合には、メモリ上に新たなデータを蓄積することはできずメモリオーバーエラーが発生していた。従って、一度に多くのデータを処理するために必要とされるメモリ容量が増加し、コストが高くなるという問題がある。
そこで、メモリ容量の増加を回避するために、保持するデータに対して圧縮等の処理を行い、データの容量を縮小させる方法があるが圧縮処理の為に余分な処理が必要となり、スループットの低下を招く要因となっている。
また、中間データとビットマップデータとを共有のメモリ内で閾値を用いて管理し、メモリの使用効率を向上させる方法がある。この方法は、メモリの空き容量が閾値以上か否かの単純な比較結果に応じてデータの保持を行うものにすぎず、メモリの空き容量が閾値以上に確保するまで処理が停止してしまい、スループットが低下するという問題がある。
更に、メモリを効率的に使用してスループットを向上させるために、印刷データが入力されたインターフェースを特定し、特定されたインターフェースを示す情報及び特定されたインターフェースに対して設定されたジャムリカバリ処理の有効/無効を示すジャムリカバリ情報を読み込み、ジャムリカバリ情報に応じて、ジャムリカバリ処理が有効に設定されている場合には、ワーク用として使用しているメモリ領域を小さくして保存バッファ領域を確保し、通常のジャムリカバリ処理を実行し、無効に設定されている場合には、保存バッファをワーク領域やその他の作業領域として使用する印刷装置が開示されている(特許文献1参照)。
特開2004−82401号公報
しかしながら、特許文献1記載の発明は、印刷データを送信したインターフェースに対して設定されたジャムリカバリ処理が有効か否かに応じて、メモリの使用方法を変更することによりメモリを効率的に利用している印刷装置であり、ジャムリカバリ処理が有効に設定されている場合においては、通常のメモリの使用方法と変わらず、空き領域待ちによる処理停止が発生し、スループットを向上させることができない。即ち、インターフェースに対して設定された条件に応じてメモリの使用方法を変更しているため、インターフェースに依存したメモリ管理となり、スループットを向上させることができないのである。
本発明の課題は、上記問題に鑑みて、メモリの高効率化を図り、スループットの向上が図られた画像形成装置、画像形成方法及びプログラムを提供することである。
請求項1に記載の発明は、ページ記述言語形式のデータと当該データを解釈して得られるビットマップ形式のデータとの間の中間形式のデータと、前記ビットマップ形式のデータと、が一時的に保存される共有の保存領域を有する記憶手段と、前記共有の保存領域内に予め設定された閾値以上の空き領域の容量が存在することを条件に、前記ページ記述言語形式のデータから得られた中間形式のデータを前記共有の保存領域に保存する制御手段と、を備え、前記制御手段は、前記空き領域の容量が前記閾値以上か否かの確認時において前記共有の保存領域内に前記閾値以上の空き領域の容量が無い場合には、(1)前記共有の保存領域内に既に保存されている1ページ分の中間形式のデータが保存されている領域であって、当該中間形式のデータがビットマップ形式のデータに変換される処理が未完了のために消去できないが当該変換処理が完了したとき消去できる消去予定のデータの領域を前記確認時において空き領域としてみなし、(2)前記共有の保存領域内に既に保存されている1ページ分のビットマップ形式のデータが保存されている領域であって、当該ビットマップ形式のデータが出力される処理が未完了のために消去できないが当該出力処理が完了したとき消去できる消去予定のデータの領域を前記確認時において空き領域としてみなし、前記(1)又は(2)により空き領域とみなした容量と前記空き領域の容量とを加算した容量が前記閾値以上である場合は、前記ページ記述言語形式のデータから得られた中間形式のデータを前記共有の保存領域に保存する処理を実行し、前記(1)又は(2)により空き領域とみなした容量と前記空き領域の容量とを加算した容量が前記閾値未満である場合は、前記ページ記述言語形式のデータから得られた中間形式のデータを前記共有の保存領域に保存する処理を行なわずに待機する、画像形成装置であること、を特徴としている。
更に、コンピュータに対して、上述した請求項1に記載の発明に示した主要手段を機能させるためのプログラムを提供する(請求項に記載の発明)。
請求項2に記載の発明は、請求項1記載の画像形成装置において、前記中間形式のデータを前記共有の保存領域内に保存する場合、空き領域と当該空き領域と連続した領域であって空き領域又は空き領域とみなされた領域との合計領域の容量が最も小さい容量となる空き領域に前記データを保存すること、を特徴としている。
更に、コンピュータに対して、上述した請求項2に記載の発明に示した主要手段を機能させるためのプログラムを提供する(請求項に記載の発明)。
請求項に記載の発明は、ページ記述言語形式のデータと当該データを解釈して得られるビットマップ形式のデータとの間の中間形式のデータと、前記ビットマップ形式のデータと、が一時的に保存される共有の保存領域内に、予め設定された閾値以上の空き領域の容量が存在することを条件に、前記ページ記述気式のデータから得られた中間形式のデータを前記共有の保存領域に保存する際、前記空き領域の容量が前記閾値以上か否かの確認時において前記共有の保存領域内に前記閾値以上の空き領域の容量が無い場合には、(1)前記共有の保存領域内に既に保存されている1ページ分の中間形式のデータが保存されている領域であって、当該中間形式のデータがビットマップ形式のデータに変換される処理が未完了のために消去できないが当該変換処理が完了したとき消去できる消去予定のデータの領域を前記確認時において空き領域としてみなし、(2)前記共有の保存領域内に既に保存されている1ページ分のビットマップ形式のデータが保存されている領域であって、当該ビットマップ形式のデータが出力される処理が未完了のために消去できないが当該出力処理が完了したとき消去できる消去予定のデータの領域を前記確認時において空き領域としてみなし、前記(1)又は(2)により空き領域とみなした容量と前記空き領域の容量とを加算した容量が前記閾値以上である場合は、前記ページ記述言語形式のデータから得られた中間形式のデータを前記共有の保存領域に保存する処理を実行し、前記(1)又は(2)により空き領域とみなした容量と前記空き領域の容量とを加算した容量が前記閾値未満である場合は、前記ページ記述言語形式のデータから得られた中間形式のデータを前記共有の保存領域に保存する処理を行なわずに待機する制御工程を含むこと、を特徴としている。
請求項に記載の発明は、請求項記載の画像形成方法において、前記制御工程は、前記中間形式のデータを前記共有の保存領域に保存する場合、空き領域と当該空き領域と連続した領域であって空き領域又は空き領域とみなされた領域との合計領域の容量が最も小さい容量となる空き領域に前記データを保存させること、を特徴としている。
請求項1、に記載の発明によれば、データを共有の保存可能か否かを確認する場合、実際の空き領域に加え消去予定のデータの領域を空き領域としてみなすことができ、共有の保存領域を効率的に活用することができるため、スループットの向上を図ることができる。
請求項2、に記載の発明によれば、請求項1、と同様の効果を得られるのは勿論のこと、連続した空き領域が最大となるように領域を選んでデータを保存させることができるため、共有の保存領域内にデータが離散的に保存されることを低減することができ、共有の保存領域を有効に活用することができる。
請求項1、3、5に記載の発明によれば共有の保存領域内に予め設定された閾値以上の空き領域の容量が無い場合であっても、(1)又は(2)により中間形式のデータ及びビットマップ形式のデータ少なくとも一方の容量を空き領域の容量としてみなすことができ、実際に空き領域が発生するまで待機することなく次の処理を実行させることができるため、スループットを向上させることができる。
請求項1、3、5に記載の発明によれば中間形式のデータを共有の保存領域に保存させる際、共有の保存領域内に予め設定された閾値以上の空き領域の容量が無い場合であっても、(1)又は(2)により中間形式のデータ及びビットマップ形式のデータの少なくとも一方の容量を空き領域の容量としてみなすことができ、実際に空き領域が発生するまで待機する必要がなく、中間形式のデータの保存処理を再開させることができるため、待機状態の発生率を低減させることができ、スループットを向上させることができる。
以下、図を参照して本発明の実施の形態を詳細に説明する。
まず、構成を説明する。
図1に、本実施の形態における画像形成装置1の概略断面構成図を示す。
画像形成装置1は、読取対象原稿WP(以下、原稿と言う。)から画像を読み取り、読み取った画像を処理対象紙としての枚葉紙等の記録媒体Pに画像形成するコピー機能や、パーソナルコンピュータ等から画像データを受信し、受信した画像データに基づいて記録媒体P上に画像を形成して出力するプリンタ機能等を備えたデジタル複合機である。図1に示すように、画像形成装置1は、画像読取部20、プリント部30から構成される。
画像読取部20は、自動原稿送り部21と読取部22とを備えて構成されている。
自動原稿送り部21は、ADF(Auto Document Feeder)と称されるものであり、原稿トレイT1に積載される原稿WPを読取部22の読取箇所に一枚ずつ搬送する。
読取部22は、光源、レンズ、コンタクトガラス、イメージセンサ等が設けられたスキャナを備えて構成され、原稿に照射した光の反射光を結像して光電変換することにより原稿WPの画像を読み取り、プリント部30に出力する。ここで、画像とは、図形や写真等のイメージデータに限らず、文字や記号等のテキストデータ等も含む意である。
プリント部30は、画像形成部40と、クリーニング部50と、中間転写ベルト60と、給紙部70と、搬送部80と、定着装置90とを備えて構成される。
本実施の形態の画像形成部40は、イエロー(Y)、マゼンダ(M)、シアン(C)、ブラック(K)の色毎の画像形成部40Y、40M、40C、40Kを備えて構成されている。例えば、画像形成部40Yは、感光体ドラム41Yの周囲に配置された帯電装置42Y、露光装置43Y、現像装置44Y、一次転写ローラ45Y、クリーニング装置46Yを備え、イエロー(Y)の画像を形成する。
具体的には、帯電装置42Yにより帯電された感光体ドラム41Yに、露光装置43Yからイエロー(Y)の画像データに応じた光を照射して静電潜像を形成する。そして、現像装置44Yは、静電潜像が形成された感光体ドラム41Yの表面に帯電したイエロー(Y)のトナーを付着させて静電潜像を現像する。現像装置44Yによりトナーが付着された感光体ドラム41Yは、一次転写ローラ45Yが配置された転写位置へ一定速度で回転されながら後述する中間転写ベルト60に転写される。中間転写ベルト60にトナーが転写された後、クリーニング装置46Yが、感光体ドラム41Yの表面の残留電荷や残留トナー等を除去する。
同様に、画像形成部40M、40C、40Kは、感光体ドラム41M、41C、41Kの周囲に配置された帯電装置42M、42C、42K、露光装置43M、43C、43K、現像装置44M、44C、44K、一次転写ローラ45M、45C、45K、クリーニング装置46M、46C、46Kを備え、マゼンタ(M)、シアン(C)、ブラック(K)の画像をそれぞれ形成する。
中間転写ベルト60は、複数のローラに懸架され回転可能に支持された半導電性エンドレスベルトであり、ローラの回転に伴って回転駆動される。
この中間転写ベルト60は、一次転写ローラ45Y、45M、45C、45Kによりそれぞれ感光体ドラム41Y、41M、41C、41Kに圧着される。これにより感光体ドラム41Y、41M、41C、41Kの表面に現像された各トナーは、一次転写ローラ45Y、45M、45C、45Kによる転写位置で中間転写ベルト60に転写され、二次転写ローラ83による転写位置で記録媒体Pにイエロー、マゼンタ、シアン、ブラックの各トナーが順次重ねて転写される。
給紙部70は、複数の給紙カセット71、72、73と手差しトレイTとを備える。給カセット71、72、73内は、給紙カセット毎にサイズや紙種毎に予め識別された規格サイズの記録媒体Pが収容されており、給紙ローラ74、75、76によって収容された記録媒体Pを最上部から一枚ずつ搬送部80に向けて搬送する。手差しトレイTは、ユーザのニーズに合わせて様々な規格外のサイズの記録媒体Pをその都度積載可能となっている。積載された記録媒体Pは、用紙サイズ及び通紙幅が検知され、給紙ローラ77によって積載された記録媒体Pが最上部から一枚ずつ搬送部80に向けて搬送される。
搬送部80は、用紙トレイ71、72、73及び手差しトレイTから搬送された記録媒体Pを、複数の中間ローラ81a、81b、81c、81d、レジストローラ82を経て二次転写ローラ83へと搬送する。この二次転写ローラ83により、中間転写ベルト60に転写されたトナー画像が記録媒体P面に一括転写される。
そして、トナー画像が転写された記録媒体Pは、定着装置90において記録媒体Pに転写されたトナー像が熱定着される。定着処理された記録媒体Pは、排紙ローラ84に挟持されて排紙トレイ85上に出力される。
一方、二次転写ローラ83により記録媒体Pにトナー画像を転写した後、記録媒体Pを曲率及び静電的に分離した中間転写ベルト60は、クリーニング部50により残留トナーが除去される。
図2に、画像形成装置1の制御ブロック図を示す。
図2に示すように、画像形成装置1は、制御部10、外部IF(InterFace)11、操作表示部12、画像読取部20、プリント部30を備え、各部はバス等により接続されて構成され、外部IF11を介して外部装置2と通信可能に接続されている。なお、図1で説明した各部と同一の構成には、同一の符号を付してその説明を省略する。
制御部10は、CPU(Central Processing Unit)100、ROM(Read Only Memory)110、RAM(Random Access Memory)120等から構成され、ROM110内に格納されている各種処理プログラムやデータをRAM120に展開し、当該プログラムに基づいて画像形成装置1の各部の動作を集中制御する。例えば、操作表示部12や外部装置2から入力される指示信号に従って、コピーモード、プリントモード、スキャナモードを切り替え、各モードに対する処理プログラムを読み出して、複写、印刷、画像データの読取等の制御を行う。
CPU100は、ROM110及びRAM120の協働により、ポストスクリプト(等力商標)やOCL等のページ記述言語形式の画像データ(以下、PDLデータという。)を解釈し、当該画像データとビットマップ形式のデータ(以下、ビットマップデータという。)との間の中間形式のデータ(以下、中間データという。)を生成してRAM120内の共有保存領域123に保存させる際、共有保存領域123内に中間データを保存させるための領域の有無を判別し、当該判別結果が無しの場合、共有保存領域123に保存されていた他の中間データが消去された事象及び共有保存領域123に保存されていたビットマップデータが消去された事象を監視し、これらのうちいずれか一方の事象が発生したとき、再度、中間データを保存させるための領域の有無を判別する機能を実現する。
中間データとしては、PDLデータに含まれるオブジェクト(テキストデータ、グラフィックスデータ、イメージデータ等)の特徴に応じて生成されるデータである。例えば、テキストデータやグラフィックスデータの中間データとしてはベクタ形式のデータ、イメージデータの中間データとしてはイメージ形式のデータ、を挙げることができる。
更に、CPU100は、ROM110及びRAM120の協働により、中間データを共有保存領域123に保存させる際、中間データを共有保存領域123に保存可能か否かを確認する場合、共有保存領域123内に予め設定された閾値以上の空き領域の容量が無い場合には、共有保存領域123内に保存されている中間データ及びビットマップデータの少なくとも一方について、消去予定であると判別された中間データ及びビットマップデータの少なくとも一方の容量を空き領域の容量とみなし、また、空き領域と、この空き領域と連続した領域であって、空き領域又はこの空き領域と連続した空き領域とみなされた中間データ及びビットマップデータの少なくとも一方と、の合計容量が最も小さい容量となる空き領域に保存される機能を実現する。
ROM110は、画像形成に係る各種処理プログラム、画像形成に係るデータ等、各種プログラムで処理されたデータ等を記憶する。また、ROM110は、CPU100及びRAM120との協働により本実施の形態を実現させるためのプログラムやデータを記憶しているデータ受信部111、解析部112、ビットマップデータ生成部113、印刷制御部114を有している。
データ受信部111は、外部装置2から外部IF11を介して入力される画像データを受信して、RAM120内のスプール領域122に記憶させる機能を実現させるためのプログラムやデータが記憶されている。
解析部112は、中間データ生成部112a、保存領域判定部112b、保存位置設定部112cを有している。
中間データ生成部112aは、RAM120内のスプール領域122に記憶されているPDLデータを読み出し、読み出されたPDLデータとビットマップデータとの間の形式の中間データを生成してRAM120内の共有保存領域123に保存させる機能を実現させるためのプログラムやデータが記憶されている。
保存領域判定部112bは、中間データ生成部112aにより生成された中間データを共有保存領域123内に保存可能か否かを確認する場合、共有保存領域123内に予め設定された閾値以上の空き領域が無い場合には、共有保存領域123内に保存されている中間データ及びビットマップデータの少なくとも一方は消去予定であるか否かを判別し、消去予定であると判別された中間データ及びビットマップデータの少なくとも一方の領域を空き領域とみなす機能を実現させるためのプログラムやデータが記憶されている。
保存位置設定部112cは、中間データ生成部112により生成された中間データを共有保存領域123内に保存可能か否かを確認する場合、共有保存領域123内の空き領域とこの空き領域と連続した領域であって、空き領域又は空き領域とみなされた領域と、の合計領域の容量が最も小さい容量のとなる空き領域に、中間データを保存させる機能を実現させるためのプログラムやデータが記憶されている。
ビットマップデータ生成部113は、中間データ生成部112aにより生成され共有保存領域123内に保存されている中間データに基づいてビットマップデータを生成するラスタライズ処理を実行し、生成されたビットマップデータに対応する中間データを共有保存領域123から消去(解放)する機能を実現させるためのプログラムやデータが記憶されている。
印刷制御部114は、記録媒体上に画像を形成させるプリント部30にビットマップデータ生成部113により生成されたビットマップデータを出力し、出力されたビットマップデータを消去(解放)する機能を実現させるためのプログラムやデータが記憶されている。
なお、ROM110は読み出し可能な不揮発性の記憶媒体であれば良く、磁気的、光学的記憶媒体又は半導体メモリで構成されていても良い。また、このROM110は、制御基板等に固定的に設けられるもの、若しくは着脱自在に装着するものであっても良い。
RAM120は、展開領域121、スプール領域122、共有保存領域123を有しており、画像形成に係るデータ等、各種プログラムで処理されたデータ等を記憶する。
展開領域121は、ROM110内に記憶された各種プログラムやデータが展開される領域である。スプール領域122は、外部装置2や画像読取部20から入力されたPDLデータ等の外部から入力された各種データを保存する領域である。
共有保存領域123は、中間データとビットマップデータとが一時的に保存される共有の保存領域であり、中間データは共有保存領域123内の上位アドレスから下位アドレスの方向に向かって保存され、ビットマップデータは共有保存領域123内の下位アドレスから上位アドレスの方向に向かって保存される領域である。共有保存領域123は、中間データに対しては予め設定された閾値を用いて保存の可否が判別されるが、ビットマップデータに対しては制限無く保存可能である。
このように、RAM120は共有保存領域123を有する。
なお、RAM120は、読み書き可能な記憶媒体であればよく、HDD(Hard Disk Drive)、MRAM(Magnetic Random Access Memory)又はフラッシュメモリなどで構成されていても良く、この限りではない。また、このRAM120は、制御基板等に固定的に設けられるもの、若しくは着脱自在に装着するものであっても良い。
外部IF11は、NIC(Network Interface Card)やモデム等のLAN等のネットワークNに接続するための通信インターフェースであり、外部装置2からPDLデータ等を受信する。受信されたPDLデータ等は、制御部10に出力される。
操作表示部12は、LCD(Liquid Crystal Display)、LCDを覆うように設けられたタッチパネルや操作キー群等から構成され、制御部10から入力される表示信号に従って、各種設定条件を入力するための各種設定画面や各種処理結果等をLCDに表示させると共に、操作キー群又はタッチパネルから入力される操作信号を制御部10に出力する。
次に、本実施の形態の動作を説明する。
図3に、本実施の形態における印刷時における共有保存領域123の制御処理のメインフロー図を示す。図3に示す動作は、CPU100において実行されるものとする。説明を簡略化するために、まず1ページ分の画像が記録媒体上に形成されるまでの処理を説明する。
データ受信部111によりCPU100は、外部IF11を介して入力されたPDLデータを受信し、スプール領域122に保存させるデータ受信処理を実行する(ステップS1)。
PDLデータがスプール領域122に保存された後、解析部112によりCPU100は、スプール領域122に保存されているPDLデータを読み出して中間データを生成し、共有保存領域123に保存させる解析処理を実行する(ステップS2)。
ビットマップデータ生成部によりCPU100は、1ページ分の中間データが共有保存領域123に保存されると、共有保存領域123から1ページ分の中間データに基づいてバンド単位でビットマップデータを生成するラスタライズ処理を実行して1ページ分のビットマップデータを生成し、生成されたビットマップデータを共有保存領域123に保存する(ステップS3)。
印刷制御部114によりCPU100は、1ページ分のビットマップデータが共有保存領域123に保存されると、共有保存領域123から1ページ分のビットマップデータを読み出してプリント部30に出力し、1ページ分の画像を記録媒体P上に形成させ(ステップS4)、本処理は終了される。
本実施の形態の画像形成装置1は、上述した動作の各ステップの処理を並行して実行させることができる。複数ページの画像を複数の記録媒体上に形成させる場合には、各処理に優先順位が設定されており、設定された順位に応じて実行される処理の順序が入れ替えられる。優先順位の例としては、優先順位が高い順に、ステップS1のデータ受信処理、ステップS4の印刷処理、ステップS3のラスタライズ処理、ステップS2の中間データ生成処理と設定され、記録媒体上に画像を形成する処理が優先されるように設定されている例を挙げることができる。
図4に、ステップS2において実行される解析処理のフロー図を示す。図4に示す動作は、1ページ分の中間データを生成して共有保存領域123内に保存させる解析処理を示しており、解析部112の中間データ生成部112aによりCPU100において実行されるものとする。
CPU100は、スプール領域122内に保存されている1ページ分のPDLデータからオブジェクトを選択し(ステップS11)、選択したオブジェクトに基づいて中間データを生成する(ステップS12)。
CPU100は、生成された中間データの容量に基づいて、共有保存領域123内にステップS12において生成された中間データを保存可能な領域の有無を判別する保存領域判定処理を実行する(ステップS13)。
CPU100は、保存領域判定処理を実行した結果、中間データを保存させるための領域有りと判定されたか否かを判別する(ステップS14)。
CPU100は、中間データを保存させるための領域有りと判別した場合(ステップS14;Yes)、共有保存領域123内に保存される中間データの領域を設定して保存させる保存位置設定処理を実行する(ステップS15)。
CPU100は、中間データを保存させるための領域無しと判別した場合(ステップS14;No)、中間データを保存可能な領域の有無を判定する機会、即ち、共有保存領域123内に保存されているデータ(中間データ又はビットマップデータ)が共有保存領域123内から消去(解放)された事象を示す信号(以下、解放信号という。)が発生するまで待機し(ステップS16)、解放信号の発生の有無を判別する(ステップS17)。
CPU100は、解放信号の発生無しと判別した場合(ステップS17;No)、ステップS16に戻り、解放信号の発生有りと判別した場合(ステップS17;Yes)、ステップS13に戻る。
CPU100は、保存位置設定処理が実行された後、1ページ分の中間データの生成が終了したか否かを判別し(ステップS18)、1ページ分の中間データの生成が終了していないと判別した場合(ステップS18;No)、ステップS11に戻る。
CPU100は、1ページ分の中間データの生成が終了したと判別した場合(ステップS18;Yes)、本処理は終了される。
図5に、ステップS13において実行される保存領域判定処理のフロー図を示す。図5に示す動作は、保存領域判定部112bによりCPU100において実行されるものとする。
CPU100は、共有保存領域123においてデータ(中間データ又はビットマップデータ)が保存されていない空き領域(以下、実空き領域という。)の合計容量を算出し、算出された実空き領域の合計容量は、予め設定されている閾値よりも大きいか否かを判別する(ステップS21)。
CPU100は、実空き領域の合計容量は閾値以下であると判別した場合(ステップS21;No)、共有保存領域123内に保存されているデータを選択し(ステップS22)、選択されたデータは消去予定(解放予定)であるか否かを判別する(ステップS23)。
ステップS23において実行される選択されたデータが消去予定か否かの判別は、例えば、選択されたデータが、両面印刷時の片面のみ生成され保存されているビットマップデータか否かを判別したり、同一ページ中の画像データに基づいてオブジェクト毎に複数生成される中間データであって未生成の中間データが有る中間データか否かを判別したり、1ページ分のビットマップデータを生成させるために同一ページ中の画像データに基づいて複数生成された中間データであって未生成のビットマップデータが有る中間データか否かを判別したりする。
CPU100は、選択されたデータは共有保存領域123内から解放予定であると判別した場合(ステップS23;Yes)、選択されたデータが保存されている領域を実空き領域としてみなして設定する(ステップS24)。以下、実空き領域とみなされた選択されたデータが保存されている領域をみなし空き領域という。
CPU100は、実空き領域の合計容量に設定したみなし空き領域の容量を加え、予測空き領域の容量として算出し(ステップS25)、共有保存領域123内に保存されているデータにおいて、未選択のデータの有無を判別する(ステップS26)。
CPU100は、未選択のデータ有りと判別した場合(ステップS26;Yes)、共有保存領域123内に保存されている未選択のデータを選択し(ステップS27)、ステップS23に戻る。
CPU100は、未選択のデータ無しと判別した場合(ステップS26;No)、算出した予測空き領域の容量からステップS12において生成された中間データの容量を減算した値が予め設定された閾値よりも大きいか否かを判別する(ステップS28)。
CPU100は、実空き領域の合計容量が予め設定されている閾値よりも大きいと判別した場合(ステップS21;Yes)、又は、算出した予測空き領域の容量からステップS12において生成された中間データの容量を減算した値が予め設定された閾値よりも大きいと判別した場合(ステップS28;Yes)、ステップS12において生成された中間データを保存させるための領域が有りと判定し(ステップS29)、本処理を終了する。
また、CPU100は、算出した予測空き領域の容量からステップS12において生成された中間データの容量を減算した値が予め設定された閾値以下と判別した場合(ステップS28;No)、ステップS12において生成された中間データを保存させるための領域が無しと判定し(ステップS30)、本処理を終了する。
図6及び7に、図5に示す保存領域判定処理を適用した場合の共有保存領域123の例を示す。図6及び7において、共有保存領域の容量を120MBと設定し、予め設定されている閾値を64MBと設定する。
図6は、みなし空き領域として設定される領域がビットマップデータである場合の例を示している。図6に示す共有保存領域123は、上位アドレス順に、オブジェクト毎に生成中の2ページ目の中間データM2であり20MBを占める領域、60MBの実空き領域E、生成が完了した40MBの1ページ目のビットマップデータB1の領域、を有している。
図6(a)は、2ページ目の中間データM2をオブジェクト毎に生成中、ステップS21において実空き領域の容量と閾値とが比較されている共有保存領域123の状態を示している。図6(a)に示すように、実空き領域の容量(60MB)は、閾値(64MB)以下である。従って、従来では、ステップS12において生成された中間データを保存するための領域が確保できないと判別されて待機状態となっていた。
図6に示す中間データM2は、2ページ目の画像データに基づいてオブジェクト毎に複数生成される中間データであって未生成の中間データが有る中間データあるため、ステップS23において解放予定と判別されない。一方ビットマップデータB1は、プリント部30の準備が出来次第出力される予定であるため、ステップS23において解放予定と判別され、みなし空き領域と設定される。従って、実空き領域Eとみなし空き領域として設定されたビットマップデータB1とが加算された予測空き領域が算出される。
図6(b)は、ステップS28において、予測空き領域からステップS12において生成された2ページ目のあるオブジェクトの中間データm2が減算された容量と閾値とが比較されている状態を示している。図6(b)に示すように、予測空き領域(100MB)からステップS12において生成された中間データm2(15MB)が減算された容量(85MB)は、閾値(64MB)よりも大きくなり、中間データm2を保存させるための領域有りと判定される。従って、待機することなく次の処理を実行することができる。
図7は、みなし空き領域として設定される領域が中間データである場合の例を示している。図7に示す共有保存領域123は、上位アドレス順に、生成が完了した30MBの3ページ目の中間データの領域M3、オブジェクト毎に生成中の4ページ目の中間データM4であり10MBを占める領域、50MBの実空き領域E、3ページ目の中間データに基づいて生成中の3ページ目のビットマップデータB3であり30MBを占める領域、を有している。
図7(a)は、4ページ目の中間データM4をオブジェクト毎に生成中、ステップS21において実空き領域の容量と閾値とが比較されている共有保存領域123の状態を示している。図7(a)に示すように、実空き領域の容量(50MB)は、閾値(64MB)以下である。従って、従来では、ステップS12において生成された中間データを保存するための領域が確保できないと判別されて待機状態となっていた。
本実施の形態では、中間データM3は、3ページ目のビットマップデータを生成した後に解放されるデータであるため、ステップS23において解放予定と判別され、みなし空き領域と設定される。中間データM4は、4ページ目の画像データに基づいてオブジェクト毎に複数生成される中間データであって未生成の中間データが有る中間データあるため、ステップS23において解放予定と判別されない。また、ビットマップデータB3は、中間データM3に基づいて生成中であるため、解放予定を判別されない。従って、実空き領域Eとみなし空き領域と設定された中間データM3とが加算された予測空き領域が算出される。
図7(b)は、ステップS28において、予測空き領域からステップS12において生成された4ページ目のあるオブジェクトの中間データm4が減算された容量と閾値とが比較されている状態を示している。図7(b)に示すように、予測空き領域(80MB)からステップS12において生成された中間データm4(10MB)が減算された容量(70MB)は、閾値(64MB)よりも大きくなり、中間データm4を保存させるための領域有りと判定される。従って、待機することなく次の処理を実行することができる。
このように、中間データを共有保存領域123に保存させる際、共有保存領域123内に予め設定された閾値以上の実空き領域の容量が無い場合であっても、消去予定であると判別された中間データ及びビットマップデータの少なくとも一方の容量を空き領域の容量としてみなすことができ、実空き領域が発生するまで待機する必要がなく、中間データの保存処理を再開させることができるため、待機状態の発生率を低減させることができ、スループットを向上させることができる。
図8に、ステップS15において実行される保存位置設定処理のフロー図を示す。図8に示す動作は、保存位置設定部112cによりCPU100において実行されるものとする。
CPU100は、共有保存領域123のアドレスであってステップS12において生成された中間データが保存される領域の先頭のアドレス(以下、設定保存領域アドレスという。)を初期化すると共に、ステップS12において生成された中間データが保存される領域の容量(以下、設定保存領域サイズという。)を初期化する(ステップS31)。
CPU100は、設定保存領域アドレス及び設定保存領域サイズの初期化後、実空き領域を選択し(ステップS32)、選択した実空き領域と連続し先頭のアドレスが実空き領域よりも下位の領域である次の領域を更に選択する(ステップS33)。
CPU100は、ステップS33において選択された領域は、みなし空き領域又は実空き領域であるか否かを判別する(ステップS34)。
CPU100は、ステップS33において選択された領域は、みなし空き領域又は実空き領域であると判別した場合(ステップS34;Yes)、ステップS32において選択された実空き領域とステップS33において選択された領域とを加算した領域を保存候補領域として設定する(ステップS35)。
CPU100は、ステップS33において選択した領域と連続した次の領域の有無を判別し(ステップS36)、ステップS33において選択した領域と連続した次の領域有りと判別した場合(ステップS36;Yes)、ステップS33において選択した領域と連続した次の領域を更に選択し(ステップS37)、ステップS34に戻る。
CPU100は、ステップS33において選択した領域と連続した次の領域無しと判別した場合(ステップS36;No)、ステップS38に進む。
CPU100は、ステップS33において選択された領域は、みなし空き領域又は実空き領域ではないと判別した場合(ステップS34;No)、ステップS32において選択された実空き領域の容量はステップS12において生成された中間データの容量よりも大きいか否かを判別する(ステップS38)。即ち、ステップS38では、ステップ32において選択された実空き領域は、ステップS12において生成された中間データを保存可能な領域であるか否かを判別している。
CPU100は、ステップS32において選択された実空き領域の容量は、ステップS12において生成された中間データの容量以下であると判別した場合(ステップS38;No)、ステップS43に進む。
CPU100は、ステップS32において選択された実空き領域の容量は、ステップS12において生成された中間データの容量よりも大きいと判別した場合(ステップS38;Yes)、ステップS32において選択された実空き領域の容量は、共有保存領域123内における実空き領域のうち、最も上位の先頭アドレスを有する実空き領域(即ち、共有保存領域123内において先頭の実空き領域)ではないか否かを判別する(ステップS39)。
CPU100は、ステップS32において選択された実空き領域の容量は、共有保存領域123内における実空き領域のうち、最も上位の先頭アドレスを有する実空き領域(即ち、共有保存領域123内において先頭の実空き領域)ではないと判別した場合(ステップS39;Yes)、保存候補領域の容量は設定保存領域の容量よりも小さいか否かを判別し(ステップS40)、保存候補領域の容量は設定保存領域の容量以上であると判別した場合(ステップS40;No)、ステップS43に進む。
CPU100は、ステップS32において選択された実空き領域の容量は、共有保存領域123内における実空き領域のうち、最も上位の先頭アドレスを有する実空き領域(即ち、共有保存領域123内において先頭の実空き領域)であると判別した場合(ステップS39;No)、又は、保存候補領域の容量は設定保存領域の容量よりも小さいと判別した場合(ステップS40;Yes)、ステップS32において選択された実空き領域の先頭のアドレスを設定保存領域アドレスとして設定し(ステップS41)、保存候補領域を設定保存領域として設定する(ステップS42)。
CPU100は、ステップS38;No後、ステップ40後、又はステップ42後、共有保存領域123内に未選択の実空き領域の有無を判別し(ステップS43)、共有保存領域123内に未選択の実空き領域有りと判別した場合(ステップS43;Yes)、ステップS32に戻り、共有保存領域123内に未選択の実空き領域無しと判別した場合(ステップS43;No)、設定保存領域にステップS12において生成された中間データを保存し(ステップS44)、本処理を終了する。
図9に、図5及び8に示す保存領域判定処理及び保存位置設定処理を適用した場合の共有保存領域123の例を示す。図9において、共有保存領域の容量を120MBと設定し、予め設定されている閾値を64MBと設定する。
図9に示す共有保存領域123は、上位アドレス順に、生成が完了した両面印刷として設定された20MBの2ページ目の中間データM2、20MBの実空き領域E1、生成が完了した両面印刷として設定された20MBの3ページ目の中間データM3の領域、20MBの実空き領域E2、生成が完了した片面印刷として設定された40MBの1ページ目のビットマップデータB1の領域、を有している。
図9(a)は、4ページ目のあるオブジェクトの中間データm4を生成したとき、ステップS21において実空き領域の合計容量と閾値とが比較されている共有保存領域123の状態を示している。図9(a)に示すように、実空き領域の合計容量(40MB)は、閾値(64MB)以下である。従って、従来では、ステップS12において生成された中間データを保存するための領域が確保できないと判別されて待機状態となっていた。
図9に示す共有保存領域123は、ステップS22〜S27において、中間データM2、M3は解放予定と判別されない。一方、ビットマップデータB1は解放予定と判別され、みなし空き領域と設定される。従って、実空き領域E1、E2とみなし空き領域として設定されたビットマップデータB1とが加算された予測空き領域の容量が算出される。
図9(b)は、ステップS28において、予測空き領域からステップS12において生成された中間データm4が減算された容量と閾値とが比較されている状態を示している。図9(b)に示すように、予測空き領域(80MB)からステップS12において生成された中間データm4(10MB)が減算された容量(70MB)は、閾値(64MB)よりも大きくなり、中間データm4を保存させるための領域有りと判定される。
図9に示す共有保存領域123内に中間データm4を保存させた後、連続した実空き領域が大きくなるように中間データm4の保存位置を決定することが、以降のデータ保存処理において効率的に共有保存領域を活用する点について好ましい。そこで、図8に示す動作のように、共有保存領域123の上位アドレスから順に、中間データm4を保存させるべき実空き領域を判定していく。
本実施の形態においては、共有保存領域123の上位アドレスから下位アドレスの方向に向かって、順次、実空き領域を判定していることとする。まず、実空き領域E1に着目し、実空き領域E1と連続する下位の領域としての中間データM3は解放予定ではないため、みなし空き領域でも実空き領域でもない。次に、実空き領域E1の容量は、中間データm4の容量よりも大きいため、中間データm4を保存可能と判断される。そして実空き領域E1は、共有保存領域123内の先頭の実空き領域であるため、実空き領域E1が設定保存領域に設定される。
次に、実空き領域E2に着目し、実空き領域E2と連続する下位の領域としてのビットマップデータB1は解放予定であり、みなし空き領域と設定されるため、実空き領域E2とビットマップデータB1との加算領域が保存候補領域として設定される。そして実空き領域E2の容量は、中間データm4の容量よりも大きいため、中間データm4を保存可能と判断される。また、実空き領域E2は、共有保存領域123内の先頭の実空き領域でない。
図9(c)は、設定保存領域として設定された実空き領域E1の容量と、保存候補領域として設定された実空き領域E2及びビットマップデータB1の合計容量とが比較されている状態を示している。図9(c)に示すように、保存候補領域の容量(60MB)は設定保存領域の容量(20MB)以上であるため、設定保存領域である実空き領域E1に中間データm4が保存されることとなる。
このように、連続した空き領域が最大となるように領域を選んで中間データを保存させることができ、共有保存領域123内にデータが離散的に保存されることを低減することができ、共有保存領域123を有効に活用することができる。
図10に、ステップS3において実行されるビットマップデータ生成処理のフロー図である。図10に示す動作は、ビットマップデータ生成部113によりCPU100において実行されるものとする。
CPU100は、共有保存領域123からオブジェクト毎に生成された中間データを読み出し(ステップS51)、読み出された中間データに基づいてビットマップデータを生成する。このオブジェクト毎に生成された中間データに基づいて生されたビットマップデータをバンドビットマップデータという(ステップS52)。
CPU100は、生成されたバンドビットマップデータを共有保存領域123内に保存させ(ステップS53)、生成され保存されたバンドビットマップは、1ページ分のビットマップとして生成されたか否かを判別する(ステップS54)。
CPU100は、1ページ分のビットマップデータが生成されていないと判別した場合(ステップS54;No)、ステップS51に戻る。
CPU100は、1ページ分のビットマップデータが生成されたと判別した場合(ステップS54;Yes)、共有保存領域123に保存された1ページ分のビットマップデータに対応し生成元となった中間データを消去(解放)させる(ステップS55)。
CPU100は、中間データを共有保存領域123から消去した事象を示す解放信号を発生させ(ステップS56)、本処理を終了する。
図11に、ステップS4において実行される印刷処理のフロー図を示す。図11に示す動作は、印刷制御部114によりCPU100において実行されるものとする。
CPU100は、共有保存領域123から1ページ分のビットマップデータを読み出し、プリント部30に出力させる(ステップS61)。
CPU100は、1ページ分のビットマップデータがプリント部30に出力され、出力されたビットマップデータに応じた画像が記録媒体上に形成されて排出されたか否か、即ち、1ページ分のビットマップデータに応じた印刷処理が完了したか否かを判別する(ステップS62)。
CPU100は、1ページ分のビットマップデータに応じた印刷処理が完了していないと判別した場合(ステップS62;No)、ステップS61に戻る。
CPU100は、1ページ分のビットマップデータに応じた印刷処理が完了したと判別した場合(ステップS62;Yes)、共有保存領域123に保存されている印刷処理が完了した1ページ分のビットマップデータに対応するビットマップデータを消去(解放)させる(ステップS63)。
CPU100は、ビットマップデータを共有保存領域123から消去した事象を示す解放信号を発生させ(ステップS64)、本処理を終了する。
図12に、図4に示した解析処理を適用した場合の共有保存領域123の例を示す。
図12において、共有保存領域の容量を120MBと設定し、予め設定されている閾値を64MBと設定する。
図12に示す共有保存領域123は、上位アドレス順に、生成が完了した30MBの3ページ目の中間データM3の領域、オブジェクト毎に生成中の4ページ目の中間データM4であり15MBを占める領域、25MBの実空き領域E1、生成が完了した2ページ目の20MBのビットマップデータB2の領域、生成が完了した1ページ目の30MBのビットマップデータB1の領域、を有している。
図12(a)は、ステップS13の保存領域判定処理において、予測空き領域からステップS12において生成された4ページ目のあるオブジェクトの中間データm4が減算された容量と閾値とが比較されている状態を示している。図12(a)に示すように、予測空き領域(55MB)からステップS12において生成された中間データm4(10MB)が減算された容量(45MB)は、閾値(64MB)よりも小さいため、中間データm4を保存させるための領域無しと判定される。
従来は、中間データm4を保存させる領域無しと判別された後は、共有保存領域123内に保存されているビットマップデータが消去(解放)されるまで、即ち、共有保存領域123内の空き領域の有無を判定する機会が1つしかなく、プリント部の不具合等があった場合等は、長時間待機することとなり、スループットの低下を招く要因となっていた。
図12(b)及び(c)に、図12(a)の状態後のステップS16後(解放信号待ち状態であった後)、解放信号が発生した状態を示す。本実施の形態において、図10に示すビットマップデータ生成処理と図11に示す印刷処理とはマルチタスクで動作されるため、解放信号が発生し中間データを保存可能な領域の有無を判定する機会としては、共有保存領域123内に保存されているビットマップデータが消去された機会と、中間データが消去された機会との2つの機会を有することとなる。
図12(b)に、図12(a)の状態後のステップS16後(解放信号待ち状態であった後)、プリント部30が即座に印刷可能な状態であって、ビットマップデータB1を共有保存領域123から消去した事象を示す解放信号が発生した状態を示している。
図12(b)に示すように、ビットマップデータB1がプリント部30に出力されて印刷処理が完了すると、ビットマップデータB1が共有保存領域123から消去され、ビットマップデータB1が占めていた領域が新たな実空き領域E2となる。そして再度、ステップS13の保存領域判定処理において、予測空き領域(75MB)からステップS12において生成された中間データm4(10MB)が減算された容量(65MB)と閾値(64MB)とが比較され、中間データm4を保存させるための領域の有無が判定されることとなる。
図12(c)に、図12(a)の状態後のステップS16後(解放信号待ち状態であった後)、給紙部70内に記録媒体Pが収容されていない場合やトナー無し等のプリント部30内においてエラーが生じて印刷不可能な状態であって、中間データM3を共有保存領域123から消去した事象を示す解放信号が発生した状態を示している。
図12(c)に示すように、中間データM3がラスタライズ処理されてビットマップデータB3が生成されると、中間データM3が共有保存領域123から消去されるため、中間データM3が占めていた領域が新たな実空き領域E2となる。そして再度、ステップS13の保存領域判定処理において、予測空き領域(60MB)からステップS12において生成された中間データm4(10MB)が減算された容量(50MB)と閾値(64MB)とが比較され、中間データm4を保存させるための領域の有無が判定されることとなる。
このように、本実施の形態によれば、中間データを共有保存領域123に保存させる場合、共有保存領域内123に予め設定された閾値以上の実空き領域の容量が無い場合であっても、実空き領域に加え消去予定のデータ(中間データ又はビットマップデータ)の領域を空き領域としてみなすことができ、実際に空き領域が発生するまで待機することなく次の処理を実行させることができる。また、連続した空き領域が最大となるように中間データを保存させることができるため、共有保存領域123内に中間データやビットマップデータが離散的に保存されることを低減することができ、共有保存領域123を有効に活用することができる。従って、共有保存領域123の高効率化を図ることができ、スループットの向上を図ることができる。
更に、共有保存領域123に保存されていた中間データが消去された事象が発生したときと、共有保存領域123に保存されていたビットマップデータが消去された事象が発生したときと、の2つの機会において中間データを保存させるための領域の有無を判別することができるため、どちらか一方の機会において中間データを保存させるための領域が有りと判別された場合に中間データの保存処理を再開させることができる。従って、中間データを保存可能な領域の有無の判定機会が複数有るため、共有保存領域123の高効率化を図ることができ、スループットの向上を図ることができる。
また、本発明は、上記実施の形態の内容に限定されるものではなく、本発明の主旨を逸脱しない範囲で適宜変更可能である。
本実施の形態における画像形成装置1の概略断面構成図である。 画像形成装置1の制御ブロック図である。 本実施の形態における印刷時における共有保存領域123の制御処理のメインフロー図である。 ステップS2において実行される解析処理のフロー図である。 ステップS13において実行される保存領域判定処理のフロー図である。 みなし空き領域として設定される領域がビットマップデータである場合における図5に示す保存領域判定処理を適用した場合の共有保存領域123の例である。 みなし空き領域として設定される領域が中間データである場合における図5に示す保存領域判定処理を適用した場合の共有保存領域123の例である。 ステップS15において実行される保存位置設定処理のフロー図である。 図5及び8に示す保存領域判定処理及び保存位置設定処理を適用した場合の共有保存領域123の例である。 ステップS3において実行されるビットマップデータ生成処理のフロー図である。 ステップS4において実行される印刷処理のフロー図である。 図4に示した解析処理を適用した場合の共有保存領域123の例である。
符号の説明
1 画像形成装置
2 外部装置
10 制御部
11 外部IF
12 操作表示部
20 画像読取部
21 自動原稿送り部
22 読取部
30 プリント部
40(40Y、40M、40C、40K) 画像形成部
41Y、41M、41C、41K 感光体ドラム
42Y、42M、42C、42K 帯電体装置
43Y、43M、43C、43K 露光装置
44Y、44M、44C、44K 現像装置
45Y、45M、45C、45K 一時転写ローラ
46Y、46M、46C、46K クリーニング装置
50 クリーニング部
60 中間転写ベルト
70 給紙部
71、72、73 給紙カセット
74、75、76、77 給紙ローラ
80 搬送部
81a、81b、81c、81d 中間ローラ
82 レジストローラ
83 二次転写ローラ
84 排紙ローラ
85 排紙トレイ
90 定着装置
100 CPU
110 ROM
111 データ受信部
112 解析部
112a 中間データ生成部
112b 保存領域判定部
112c 保存位置設定部
113 ビットマップデータ生成部
114 印刷制御部
120 RAM
121 展開領域
122 スプール領域
123 共有保存領域
P 記録媒体
T 手差しトレイ
WP 原稿

Claims (6)

  1. ページ記述言語形式のデータと当該データを解釈して得られるビットマップ形式のデータとの間の中間形式のデータと、前記ビットマップ形式のデータと、が一時的に保存される共有の保存領域を有する記憶手段と、
    前記共有の保存領域内に予め設定された閾値以上の空き領域の容量が存在することを条件に、前記ページ記述言語形式のデータから得られた中間形式のデータを前記共有の保存領域に保存する制御手段と、
    を備え、
    前記制御手段は、
    前記空き領域の容量が前記閾値以上か否かの確認時において前記共有の保存領域内に前記閾値以上の空き領域の容量が無い場合には、
    (1)前記共有の保存領域内に既に保存されている1ページ分の中間形式のデータが保存されている領域であって、当該中間形式のデータがビットマップ形式のデータに変換される処理が未完了のために消去できないが当該変換処理が完了したとき消去できる消去予定のデータの領域を前記確認時において空き領域としてみなし、
    (2)前記共有の保存領域内に既に保存されている1ページ分のビットマップ形式のデータが保存されている領域であって、当該ビットマップ形式のデータが出力される処理が未完了のために消去できないが当該出力処理が完了したとき消去できる消去予定のデータの領域を前記確認時において空き領域としてみなし、
    前記(1)又は(2)により空き領域とみなした容量と前記空き領域の容量とを加算した容量が前記閾値以上である場合は、前記ページ記述言語形式のデータから得られた中間形式のデータを前記共有の保存領域に保存する処理を実行し、
    前記(1)又は(2)により空き領域とみなした容量と前記空き領域の容量とを加算した容量が前記閾値未満である場合は、前記ページ記述言語形式のデータから得られた中間形式のデータを前記共有の保存領域に保存する処理を行なわずに待機する
    ことを特徴とする画像形成装置。
  2. 前記制御手段は、
    前記中間形式のデータを前記共有の保存領域内に保存する場合、空き領域と当該空き領域と連続した領域であって空き領域又は空き領域とみなされた領域との合計領域の容量が最も小さい容量となる空き領域に前記データを保存すること、
    を特徴とする請求項1記載の画像形成装置。
  3. ページ記述言語形式のデータと当該データを解釈して得られるビットマップ形式のデータとの間の中間形式のデータと、前記ビットマップ形式のデータと、が一時的に保存される共有の保存領域内に、予め設定された閾値以上の空き領域の容量が存在することを条件に、前記ページ記述気式のデータから得られた中間形式のデータを前記共有の保存領域に保存する際、
    前記空き領域の容量が前記閾値以上か否かの確認時において前記共有の保存領域内に前記閾値以上の空き領域の容量が無い場合には、
    (1)前記共有の保存領域内に既に保存されている1ページ分の中間形式のデータが保存されている領域であって、当該中間形式のデータがビットマップ形式のデータに変換される処理が未完了のために消去できないが当該変換処理が完了したとき消去できる消去予定のデータの領域を前記確認時において空き領域としてみなし、
    (2)前記共有の保存領域内に既に保存されている1ページ分のビットマップ形式のデータが保存されている領域であって、当該ビットマップ形式のデータが出力される処理が未完了のために消去できないが当該出力処理が完了したとき消去できる消去予定のデータの領域を前記確認時において空き領域としてみなし、
    前記(1)又は(2)により空き領域とみなした容量と前記空き領域の容量とを加算した容量が前記閾値以上である場合は、前記ページ記述言語形式のデータから得られた中間形式のデータを前記共有の保存領域に保存する処理を実行し、
    前記(1)又は(2)により空き領域とみなした容量と前記空き領域の容量とを加算した容量が前記閾値未満である場合は、前記ページ記述言語形式のデータから得られた中間形式のデータを前記共有の保存領域に保存する処理を行なわずに待機する制御工程を含むこと、
    を特徴とする画像形成方法。
  4. 前記制御工程は、
    前記中間形式のデータを前記共有の保存領域に保存する場合、空き領域と当該空き領域と連続した領域であって空き領域又は空き領域とみなされた領域との合計領域の容量が最も小さい容量となる空き領域に前記データを保存させること、
    を特徴とする請求項記載の画像形成方法。
  5. コンピュータに、
    ページ記述言語形式のデータと当該データを解釈して得られるビットマップ形式のデータとの間の中間形式のデータと、前記ビットマップ形式のデータと、が一時的に保存される共有の保存領域内に、予め設定された閾値以上の空き領域の容量が存在することを条件に、前記ページ記述気式のデータから得られた中間形式のデータを前記共有の保存領域に保存する際、
    前記空き領域の容量が前記閾値以上か否かの確認時において前記共有の保存領域内に前記閾値以上の空き領域の容量が無い場合には、
    (1)前記共有の保存領域内に既に保存されている1ページ分の中間形式のデータが保存されている領域であって、当該中間形式のデータがビットマップ形式のデータに変換される処理が未完了のために消去できないが当該変換処理が完了したとき消去できる消去予定のデータの領域を前記確認時において空き領域としてみなし、
    (2)前記共有の保存領域内に既に保存されている1ページ分のビットマップ形式のデータが保存されている領域であって、当該ビットマップ形式のデータが出力される処理が未完了のために消去できないが当該出力処理が完了したとき消去できる消去予定のデータの領域を前記確認時において空き領域としてみなし、
    前記(1)又は(2)により空き領域とみなした容量と前記空き領域の容量とを加算した容量が前記閾値以上である場合は、前記ページ記述言語形式のデータから得られた中間形式のデータを前記共有の保存領域に保存する処理を実行し、
    前記(1)又は(2)により空き領域とみなした容量と前記空き領域の容量とを加算した容量が前記閾値未満である場合は、前記ページ記述言語形式のデータから得られた中間形式のデータを前記共有の保存領域に保存する処理を行なわずに待機する制御手段、
    として機能させるためのプログラム。
  6. 前記制御手段は、
    前記中間形式のデータを前記共有の保存領域内に保存する場合、空き領域と当該空き領域と連続した領域であって空き領域又は空き領域とみなされた領域との合計領域の容量が最も小さい容量となる空き領域に前記データを保存させること、
    を特徴とする請求項記載のプログラム。
JP2005372471A 2005-12-26 2005-12-26 画像形成装置、画像形成方法及びプログラム Active JP4281738B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2005372471A JP4281738B2 (ja) 2005-12-26 2005-12-26 画像形成装置、画像形成方法及びプログラム
US11/401,055 US7859703B2 (en) 2005-12-26 2006-04-10 Image forming apparatus, image forming method and recording medium having program recorded thereon
EP06255094A EP1816848A1 (en) 2005-12-26 2006-10-02 Freeing of memory areas in an image forming apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005372471A JP4281738B2 (ja) 2005-12-26 2005-12-26 画像形成装置、画像形成方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2007172506A JP2007172506A (ja) 2007-07-05
JP4281738B2 true JP4281738B2 (ja) 2009-06-17

Family

ID=38162151

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005372471A Active JP4281738B2 (ja) 2005-12-26 2005-12-26 画像形成装置、画像形成方法及びプログラム

Country Status (3)

Country Link
US (1) US7859703B2 (ja)
EP (1) EP1816848A1 (ja)
JP (1) JP4281738B2 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8526049B2 (en) * 2006-03-31 2013-09-03 Konica Minolta Laboratory U.S.A., Inc. Systems and methods for display list management
JP2008162089A (ja) * 2006-12-27 2008-07-17 Konica Minolta Business Technologies Inc 印刷装置
US20090086238A1 (en) * 2007-09-28 2009-04-02 Mabry Dozier Methods for Determining Document Characteristics from PDL Data
US8782371B2 (en) * 2008-03-31 2014-07-15 Konica Minolta Laboratory U.S.A., Inc. Systems and methods for memory management for rasterization
US8228555B2 (en) * 2008-03-31 2012-07-24 Konica Minolta Laboratory U.S.A., Inc. Systems and methods for parallel display list rasterization
US8817032B2 (en) * 2008-08-29 2014-08-26 Konica Minolta Laboratory U.S.A., Inc. Systems and methods for framebuffer management
US8854680B2 (en) * 2008-09-11 2014-10-07 Konica Minolta Laboratory U.S.A., Inc. Systems and methods for optimal memory allocation units
US8861014B2 (en) * 2008-09-30 2014-10-14 Konica Minolta Laboratory U.S.A., Inc. Systems and methods for optimized printer throughput in a multi-core environment
JP5854983B2 (ja) * 2012-12-27 2016-02-09 京セラドキュメントソリューションズ株式会社 画像処理装置
JP5854982B2 (ja) * 2012-12-27 2016-02-09 京セラドキュメントソリューションズ株式会社 画像処理装置
JP6720776B2 (ja) * 2016-08-26 2020-07-08 コニカミノルタ株式会社 画像処理装置、起動制御方法および起動制御プログラム
JP7102753B2 (ja) * 2018-01-31 2022-07-20 ブラザー工業株式会社 画像形成装置およびプログラム

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5157765A (en) * 1989-11-15 1992-10-20 International Business Machines Corporation Method and apparatus for pipelined parallel rasterization
US5251297A (en) * 1990-10-10 1993-10-05 Fuji Xerox Co., Ltd. Picture image processing system for entering batches of original documents to provide corresponding picture image datafiles
JPH04256142A (ja) 1991-02-08 1992-09-10 Nec Corp メモリ管理方式
JP3563793B2 (ja) * 1994-12-21 2004-09-08 キヤノン株式会社 データ処理方法及びその装置
JPH0971013A (ja) * 1995-05-10 1997-03-18 Canon Inc 印刷制御装置及びメモリ制御方法及び印刷制御方法及び制御プログラムを記憶した記憶媒体
JPH11170631A (ja) * 1997-12-10 1999-06-29 Brother Ind Ltd 画像形成装置
US6874062B1 (en) * 2000-02-22 2005-03-29 Unisys Corporation System and method for utilizing a hierarchical bitmap structure for locating a set of contiguous ordered search items having a common attribute
FR2818771A1 (fr) * 2000-12-21 2002-06-28 Bull Cp8 Procede d'allocation dynamique de memoire par blocs de memoire elementaires a une structure de donnees, et systeme embarque correspondant
JP2004046497A (ja) 2002-07-11 2004-02-12 Toshiba Corp コンテンツ管理装置、コンテンツ管理システム及びコンテンツ管理方法
JP2004082401A (ja) 2002-08-23 2004-03-18 Canon Inc 印刷装置、印刷システム、印刷装置の制御方法、印刷装置の制御プログラム及び記録媒体
JP4143378B2 (ja) * 2002-10-18 2008-09-03 コニカミノルタビジネステクノロジーズ株式会社 画像データ管理装置、画像データ管理プログラム、および画像形成装置
JP4271449B2 (ja) 2003-01-24 2009-06-03 京セラ株式会社 通信装置
JP2004240779A (ja) 2003-02-06 2004-08-26 Sharp Corp ファイル管理装置およびファイル管理方法
JP2007172505A (ja) * 2005-12-26 2007-07-05 Konica Minolta Business Technologies Inc 画像形成装置、画像形成方法及びプログラム

Also Published As

Publication number Publication date
US20070146785A1 (en) 2007-06-28
EP1816848A1 (en) 2007-08-08
JP2007172506A (ja) 2007-07-05
US7859703B2 (en) 2010-12-28

Similar Documents

Publication Publication Date Title
JP4281738B2 (ja) 画像形成装置、画像形成方法及びプログラム
US8498011B2 (en) Image forming apparatus and control method for dynamically adjusting rendering speed and printing speed
CN102608898A (zh) 能够防止清洁过程中的给纸错误的打印装置及其控制方法
JP4905143B2 (ja) 画像形成装置、画像形成方法及びプログラム
JP5058512B2 (ja) 印刷装置及び印刷方法
JP5716367B2 (ja) 印刷データ生成装置及び印刷データ生成方法
JP6755698B2 (ja) 画像形成装置
JP4424357B2 (ja) 画像形成装置、画像形成方法、および、画像形成用プログラム
JP2007172505A (ja) 画像形成装置、画像形成方法及びプログラム
JP4238889B2 (ja) 画像形成装置、画像形成方法及びプログラム
JP4816238B2 (ja) 画像形成装置、画像形成方法及びプログラム
JP2009298043A (ja) 画像形成装置及び画像形成システム
JP2012155218A (ja) 画像形成装置
JP2010046864A (ja) 画像形成システム
JP2019207365A (ja) 画像形成装置
JP7129241B2 (ja) 画像形成装置
JP5984350B2 (ja) 印刷装置及びその制御方法、並びにプログラム
JP2012083580A (ja) 画像形成システム
JP4561596B2 (ja) 画像形成装置
JP2008219107A (ja) データ処理装置
JP2009274244A (ja) 画像形成装置、画像形成制御方法、画像形成制御プログラム及び記録媒体
JP2008162089A (ja) 印刷装置
JP5740825B2 (ja) 印刷装置
JP2021005223A (ja) 画像形成装置および書き込み位置決定方法
JP2005305727A (ja) 画像形成装置および制御方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080804

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080812

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081010

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081202

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090130

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090224

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090309

R150 Certificate of patent or registration of utility model

Ref document number: 4281738

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120327

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120327

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130327

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140327

Year of fee payment: 5

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350