JP3000914B2 - 画像処理装置 - Google Patents

画像処理装置

Info

Publication number
JP3000914B2
JP3000914B2 JP8029159A JP2915996A JP3000914B2 JP 3000914 B2 JP3000914 B2 JP 3000914B2 JP 8029159 A JP8029159 A JP 8029159A JP 2915996 A JP2915996 A JP 2915996A JP 3000914 B2 JP3000914 B2 JP 3000914B2
Authority
JP
Japan
Prior art keywords
image data
unit
search
free area
writing
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.)
Expired - Fee Related
Application number
JP8029159A
Other languages
English (en)
Other versions
JPH09224134A (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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Fujifilm Business Innovation Corp
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 Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP8029159A priority Critical patent/JP3000914B2/ja
Publication of JPH09224134A publication Critical patent/JPH09224134A/ja
Application granted granted Critical
Publication of JP3000914B2 publication Critical patent/JP3000914B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Record Information Processing For Printing (AREA)
  • Storing Facsimile Image Data (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、画像データを一時的に
記憶するバッファを備えた画像処理装置に関し、特に、
効率的なバッファ管理に関する。
【0002】
【従来の技術】近年、ディジタル複写機、プリンタ装
置、ファクシミリ、及び、これらの機能を組み合わせた
マルチファンクション機、等の画像処理装置において
は、一般に、画像入力部と画像出力部との速度差を吸収
するため、少なからず装置内に画像記憶部が搭載されて
いる。その画像記憶部としては、低価格で大容量の記憶
が可能であるが書き込み/読み出し速度が遅いハードデ
ィスクや光磁気ディスク、及び、高価であるが書き込み
/読み出し速度が早い半導体メモリが知られている。近
年の画像処理装置は、両者の特性を生かすためにそれら
を併用している。このような2種類の画像記憶部を搭載
することにより、上述した速度差吸収のみならず、多種
多様で効果的な画像処理を実現できる。すなわち、その
ような2種類の画像記憶部の併用によれば、例えば、入
力した画像データを画像記憶部に記憶しておきそれを複
数回出力させる機能、入力順序とは異なる出力順序で画
像データを出力させる電子ソーティング機能など、近年
の画像処理装置にとっては必要不可欠の機能を実現でき
る。
【0003】一方、画像記憶部の容量削減及び画像デー
タの高速転送のために、画像データを圧縮する方式が普
及している。画像データの圧縮を行うことにより、大量
ページの画像を一度に記憶でき、また書き込み/読み出
し等の転送時間を短縮できるため、高速処理が可能とな
る。しかし、一般的な可変長圧縮処理によると、画像デ
ータの内容によって圧縮率が異なるため、プレート毎に
圧縮後のデータ量がまちまちになる。なお、プレートは
白黒画像の場合には各ページのイメージに相当し、カラ
ー画像の場合には各色ごとの各ページのイメージに相当
する。
【0004】そこで、複数の画像データを格納可能な半
導体メモリ(以下、ページバッファと呼ぶ)の小型化及
び効率的利用のために、最終番地の次の番地を先頭番地
とすることでバッファを仮想的に環状にしたページバッ
ファ(以下、リングバッファと呼ぶ)を使用する装置
が、例えば特開昭60−100872号公報で開示され
ている。圧縮処理を施しながらページバッファ及びハー
ドディスクを用いて上述の電子ソーティング機能を実現
するシステムにおいては、現状では、リングバッファ方
式が最も適した方式であるといえよう。
【0005】ところが、画像処理装置においては、両面
/片面処理、印刷部数及び出力装置の動作シーケンスな
どに起因し、画像入力順と画像出力順は必ずしも同一と
ならない。例えば、両面出力可能な出力装置(例えばプ
リンタ)には、表、裏、表、……の順に出力するもの
や、表、表、表、裏、裏、裏、……の順に出力するもの
などが存在する。従って、入力順を特定の出力装置に合
わせても、他の出力装置にはその入力順で出力すること
ができないことになる。このように入力順と出力順が異
なる場合、上述の圧縮画像を取り扱うリングバッファ方
式では、ばらばらに圧縮画像が格納された領域を所定順
序で解放していくと、バッファ内の空き領域が散在して
しまう。
【0006】空き領域は、可変長圧縮後の画像データが
格納されていた領域であるため、その領域の大きさは多
様であり、たとえ空き領域があったとしても必ずしもそ
こに次の圧縮画像データを格納できるわけではない。す
なわち、リングバッファは連続した空き領域を確保でき
ることを特徴としたものだが、入力順と出力順が異なる
ことによって、その特徴を発揮できないことになり、場
合によっては、バッファ全体としては十分な空き領域が
存在するにも拘らず各空き領域が分散することにより次
の画像データを格納できない問題(デッドロック)や、
入力処理と出力処理が並列に行なえなかったりする問題
などが発生していた。
【0007】これに関し、特開平2−288464号公
報のように、ページ出力順(降順)に応じてバッファ格
納順を変えるもの、特開昭60−74768号公報のよ
うに、両面出力可能なようにバッファを表面用、裏面用
の2つに分割して格納するもの、特開平6−86030
号公報のように、順序が異なることによってバッファ上
でデッドロックが生じた場合に、出力順とは異なるペー
ジ(バッファ領域を解放するのに都合のよいページ)を
出力させてデッドロックを回避するもの、などの各種の
手法が提案されている。
【0008】
【発明が解決しようとする課題】しかしながら、上記の
特開昭60−74768号公報で開示されているような
バッファ管理方式では、両面出力時についてのみ対応し
ており、両面/片面切替え時による出力順の変動、及び
複数回の出力を行う場合におけるバッファの効率的な管
理については十分考慮されていない。
【0009】また、特開平6−86030号公報で開示
されているようなデッドロック回避方式においては、ユ
ーザが意図する出力順とは異なる出力順で出力されるた
め、出力されたシートの並べかえを手作業で行わなけれ
ばならず煩わしいといった問題がある。
【0010】さらに、特開平2−288464号公報で
開示されているようなバッファ格納方式では、出力順で
画像データがバッファに格納されるため、デッドロック
が生じるような問題はないが、同一画像データの出力回
数については考慮されていないため、例えば、特定の画
像データのみを複数回出力させるような場合に、一回目
の出力によりバッファ領域が解放されてしまい、二回目
に出力しようとする場合には画像データをハードディス
クから再び読み出してこなければならず、結果として、
処理速度が低下していた。
【0011】また、公知の技術であるバッファをブロッ
ク単位で区切って使用するバッファ管理方式において
は、入力順と出力順が異なってもバッファをページ単位
に切り出していくため問題は生じないが、可変長圧縮画
像を取り扱う場合は、無駄な領域を確保することにな
り、結果的に、バッファ全体を不必要に増大させなけれ
ばならないといった問題がある。
【0012】本発明は、上記従来の課題に鑑みなされた
ものであり、その目的は、バッファへの画像データの書
き込み順序とバッファからの画像データの読み出し順序
とが異なるような画像処理装置において、バッファ上で
空き領域が分散化してしまって次の画像データを格納で
きなくなる問題を解消することにある。
【0013】また、本発明の目的は、空き領域待ちにな
る画像データを極力少なくしながら上記のデッドロック
を解消することにある。
【0014】
【課題を解決するための手段】
(1)上記目的を達成するために本発明は、複数の画像
データが書き込まれる記憶部と、前記記憶部へ画像デー
タを書き込む書込み手段と、前記記憶部から画像データ
を読み出す読出し手段と、前記記憶部に格納された画像
データを出力する出力手段と、を含み、書き込まれた順
序と異なる順序で出力する画像処理装置において、前記
書込み手段は、前記記憶部上の空き領域をサーチする際
の開始アドレスを管理する開始アドレス管理手段と、前
記空き領域をサーチするために前記開始アドレスを含む
前記バッファの一部のみを参照して次に格納すべき画像
データを格納可能な有効空き領域を特定する手段であっ
て、前記開始アドレスからサーチを開始し、所定のサー
チ終了条件に達するまでサーチを行っても前記有効空き
領域が発見されない場合にサーチを終了する空き領域サ
ーチ手段と、前記有効空き領域が発見された場合にそこ
に前記次の画像データを書き込み、前記有効空き領域が
発見されなかった場合に前記次の画像データの書き込み
待ち状態を維持する書込み制御手段と、を含むことを特
徴とする。
【0015】例えば、記憶部(リングバッファ)上で次
の画像データを格納するための有効空き領域をサーチす
る場合において、書込みポインタによって指定される開
始アドレスからサーチを開始し、そのサーチを記憶部全
体に渡って行って有効空き領域を特定すると、次の画像
データは、書込みポインタあるいは前回書き込んだ画像
データの格納領域の位置にかかわらず、それらとは相当
程度離れていても書き込まれてしまう。しかし、そのよ
うな書き込みでは、結果として、画像データ読み出し後
の各空き領域が記憶部全体に渡って飛び飛びに発生する
可能性が高まり、上述したデッドロックの発生が危惧さ
れる。
【0016】そこで、本発明は、データ処理効率を考慮
しつつ可能な限り空き領域が連続して生じるように各画
像データの書込みを行うことを特徴とするものである。
【0017】すなわち、本発明によれば、開始アドレス
から空き領域のサーチを行う場合、所定のサーチ終了条
件が充足するまでサーチを行っても前記有効空き領域が
発見されない場合にそのサーチは強制終了する。つま
り、本発明では、空き領域のサーチを常にバッファ全体
に渡って行うのではなく、一定条件で終了させるもので
ある。換言すれば、通常の画像処理であれば、入力順序
が近い関係にある2つの画像データは出力順序も比較的
近いであろうとの経験則に基づいて、記憶部全体とし
て、入力順序が近い画像データ同士があまり離れないよ
うに書込み制御を行うものである。従って、サーチ終了
条件は、望ましくは、開始アドレスを示す書込みポイン
タを基準として、また前回格納された画像データの格納
領域を基準として設定される。サーチ終了条件に到達す
るまでに有効空き領域が発見されれば、次の画像データ
はそこに書き込まれ、発見されなければ書込み待ち状態
が維持される。その後、記憶部から画像データが読み出
され、その格納領域が解放されて空き領域が発生した時
点で、再度、上記の有効空き領域のサーチが実行され
る。なお、上記の記憶部としてはバッファメモリやハー
ドディスクが用いられ、基本的にリングバッファが用い
られる。
【0018】(2)また、本発明は、さらに、前記バッ
ファへの書き込みに先立って、画像データを可変長圧縮
する圧縮手段を含み、前記空き領域サーチ手段は、前記
画像データのデータ量を考慮して前記有効空き領域を特
定することを特徴とする。すなわち、本発明は、画像デ
ータのデータ量が固定されている装置にも適用可能であ
るが、殊に、可変長圧縮された画像データの書込み制御
が行われる装置に有用である。
【0019】(3)また、本発明は、前回書き込まれた
画像データの格納領域の最終アドレスに相当する基準ア
ドレスを管理する基準アドレス管理手段を含み、前記空
き領域サーチ手段は、前記基準アドレスから数えて所定
数n(n≧1)番目の空き領域までサーチを行っても前
記有効空き領域が発見されない場合にサーチを終了する
ことを特徴とする。
【0020】上記構成によれば、前回格納された画像デ
ータの格納位置が基準となって、そこから所定数n番目
までの空き領域がサーチ対象とされる。これにより、前
回格納された画像データの格納領域からあまり離れない
場所に次の画像データが格納されるように条件付けるこ
とができ、空き領域が連続する可能性を高められる。も
ちろん、前回格納された画像データよりも前に有効空き
領域が存在していれば次の画像データはそこに格納され
る。
【0021】所定数nとしては、各種の条件に応じて
1,2,3などの数値の中から選択されることが望まし
い。例えば、n=1の場合、前回格納された画像データ
の後にある最初の空き領域までがサーチ対象とされ(ス
キップ数は0)、n=2の場合、前回格納された画像デ
ータから数えて2番目の空き領域までがサーチ対象とさ
れる(スキップ数は1)。なお、スキップ数は、1つの
画像データ又は連続した複数の画像データを1つのデー
タブロックと定義した場合において、サーチを行ってい
く際のデータブロックの飛び越し数である。
【0022】(4)また、本発明は、さらに、前記所定
数nを設定する設定手段を有することを特徴とする。こ
こで、前記設定手段は、望ましくは、前記記憶部への画
像データの書き込み順序と前記記憶部からの画像データ
の読み出し順序の相違度に基づいて、前記所定数nを設
定する。あるいは、前記設定手段は、望ましくは、各画
像データに付随する情報を参照して動的に前記所定数n
を設定する。
【0023】このように諸条件に応じて所定数n(換言
すればスキップ数の上限)を可変設定することにより、
書込み待ちが発生する度合いと空き領域が分散する度合
いとのバランスを適宜調整できる。
【0024】
【発明の実施の形態】以下、図面を参照しながら本発明
の実施形態について説明する。本実施形態においては、
画像処理装置としてのプリンタ装置を例に挙げて説明す
る。
【0025】図1は、本発明が適用されるシステムの構
成例を示す概略図である。各種のプリンタ1A〜1D
は、それぞれ画像処理制御を行うプリントサーバ2A〜
2Dに接続されている。プリントサーバ2A〜2Dは、
画像データの入出力制御及び画像データの編集等を行う
ものである。プリントサーバ2A〜2Dは、所定の区域
に張られたネット上、例えばローカルエリアネットワー
ク4(以下、LANと呼ぶ)に接続され、また、LAN
4を介して公衆回線5等と接続されており、これらのネ
ットを介して、他の入出力装置及び端末装置(ファクシ
ミリ装置6などを含む)と通信することが可能である。
【0026】ユーザは、クライアント3において、グラ
フィカル・ユーザ・インタフェース(GUI)を用い
て、もしくはワープロソフト等のアプリケーションに備
わっている印刷コマンドによって、ネット上のいずれか
のプリントサーバ2A〜2Dへ印刷処理(プリントジョ
ブ)を要求する。この要求を受け付けたプリントサーバ
は、ジョブの内容をチェックして適当な画像処理を施し
ながら、画像データをそのプリントサーバに接続された
プリンタへもしくは他のプリントサーバへ出力する。こ
れによってユーザが所望する印刷処理が実現される。
【0027】なお、プリントサーバに接続されたプリン
タへ画像データを出力する場合をダイレクトプリント、
他のプリントサーバを介して別のプリンタに画像データ
を出力する場合をリダイレクトプリントと呼ぶ。
【0028】図2は、図1に示した各種のプリンタ1A
〜1D中の一例を示す断面図である。以下、参考まで
に、図2に示すプリンタ1について説明する。
【0029】プリンタ1の内部に設けられた画像形成部
M1は、LAN4上の端末装置もしくは公衆回線から送
信された画像情報に基づき、記録紙上に原稿画像に対応
したトナー像を形成する印字部M2と、この印字部M2
に対して記録紙を供給する給紙部M3と、で構成され
る。ここで、印字部M2は、処理部からのディジタル画
像データに従って、周知の電子写真法により記録用紙上
にトナー像を形成するものであり、帯電装置M4によっ
て均一に帯電された感光体ドラムM5の表面を、レーザ
ー露光装置M6からのレーザー光により露光して静電潜
像を形成するものである。レーザー露光装置M6は、画
像データに基づいて駆動電流が変調される半導体レーザ
ー等のレーザー素子(図示せず)、レーザー素子からの
レーザー光を感光体ドラムM5の表面の移動方向と直交
する方向に周期的に偏向する回転多面鏡M7、反射ミラ
ーM8、等で構成されている。
【0030】感光体ドラムM5上の静電潜像は、現像器
M9,M10により現像されて感光体ドラムM5上に所
望色のトナー像が形成され、このトナー像は、転写部M
11により、給紙部M3の複数のトレイM3a〜3eの
いずれかから経路Aに沿って送られてきた記録紙に転写
される。なお、トレイM3a〜3cは、それぞれサイズ
の異なった用紙が収納される給紙トレイであり、トレイ
M3dは両面複写のための記録紙を一時的に収納する中
間トレイであり、M3eは数百枚の記録紙を収納する大
容量トレイである。転写後に、感光体ドラムM5の表面
に残った残留トナーは、クリーニング部M12により除
去される。
【0031】転写後の記録紙は、剥離部M13により感
光体ドラムM5から剥離され、コンベアM14で定着部
M15に搬送され、定着処理を受ける。定着後の用紙の
経路は、切り替えゲートM16により、排出部M17に
進む経路Bと、両面複写のために反転部M18を介して
中間トレイM3dに進む経路Cのいずれかに切り換えら
れる。両面複写の場合には反転部M18で記録紙の表裏
が反転され、中間トレイM3dを経由し経路Aに沿って
再度印字部M2に供給され、今度は記録紙の裏面にトナ
ー像が形成された後、排出部M17に送られる。
【0032】図3は、本発明に係る画像処理装置の一実
施形態を示す図であり、具体的にはプリントサーバ2内
のハードウェアブロック図である。プリントサーバ2に
は、画像形成部(Image Output Terminal : IOT)1
10(図1に示したプリンタ1に相当)が接続され、ま
た、ネットワークインタフェース(Ether I/F )101
を介してLAN4が接続されている。なお、本実施形態
では、LANの例としてイーサネットが示されている。
【0033】プリントサーバ2は、上記のネットワーク
インタフェース101、画像データを圧縮する圧縮器
(Compressor)102、画像データを転送するためのD
MA(Direct Memory Access)コントローラ103、ソ
フトウェア処理を行うためのCPU104、RAM/R
OM/クロック発生回路等のCPU周辺チップ群(Peri
pheral)105、画像データを格納するためのページバ
ッファ(リングバッファ)106、画像データを一時的
に格納しておくためのハードディスク108(HD)、
ハードディスクを制御するためのディスクコントローラ
(DiskCont)107、画像データを伸長するための伸長
器109、及び、画像データや制御データが転送される
内部バス111、などで構成されている。
【0034】次に、プリントサーバ2の全体動作につい
て説明する。ネットワークからの画像情報は、通常、ペ
ージ記述言語(Page Description Language :PDL)
で記述されており、一方、IOT110が取り扱う画像
情報はラスタデータ(ビットマップデータ)であるた
め、そのままではIOT110に出力することができな
い。従って、LAN4から画像情報が入力されると、ま
ず画像情報をラスタデータに変換することが必要であ
る。この処理をデコンポーズと呼び、デコンポーズ処理
を行うモジュール(ソフトウェア又はハードウェア)を
デコンポーザと呼ぶ。デコンポーズ処理が行われかつラ
スタデータに変換された画像データは、圧縮器102に
よって圧縮され、ページバッファ106にいったん格納
される。そして、ページバッファ106は容量が小さい
ため、ハードディスク108へ画像データを転送し、一
時的に待避させておく。
【0035】一方、圧縮処理がなされた画像データをI
OT110へ出力する場合には、後に詳述するようにペ
ージバッファ106への書込み/読み出しを経て、画像
データが伸長器109に転送され、そこで伸長処理がな
された画像データがIOT110に出力される。IOT
110では、図2に示した画像形成部M1において、入
力された画像データから生成された2値データに基づ
き、レーザー光のオン/オフを各画素毎に制御すること
により網点を形成して中間調画像を再現し、これにより
印刷画像を出力する。
【0036】このような一連の処理によって画像データ
が出力されるが、画像情報をデコンポーズする処理、圧
縮処理を施しながらページバッファ106へ圧縮画像デ
ータを格納する処理、ハードディスク108へ一時待避
するもしくはハードディスクからページバッファ106
に画像データを戻す処理、及びページバッファ106か
ら画像データを伸長しながらIOT110へ出力する処
理は、内部バス111のバスアービトレーション及び時
分割処理により、可能である限り並列に処理される。こ
れにより、結果的に処理速度を向上することが可能とな
る。
【0037】図4は、プリントサーバ2が有する制御部
10を機能ブロック図として表したものである。また、
図5は、制御部10の制御に当たって利用される管理テ
ーブルが示されている。
【0038】図4の制御部10は、ハードウエア面から
見れば、図3において符号10で示すように、例えばC
PU104及びCPU周辺チップ群105などにより実
現される。ちなみに、CPU周辺チップ群105に含ま
れるROMにはCPU104を制御部として機能させる
ための制御プログラムなどが格納され、またCPU周辺
チップ群105に含まれるRAMには後述するジョブ管
理テーブルなどが形成される。なお、図4には、説明の
都合上、圧縮器102、ディスクコントローラ107な
どに相当する構成も示されている。
【0039】図4において、制御部10は、ジョブ受付
部201及びジョブスケジューリング部203を含み、
それらの間では、ジョブキューイング部202を仲立ち
としてジョブ処理のためのやり取りが行われる。
【0040】まず、初期化部200によってシステムの
立上げが行われ、ジョブ受け付け可能状態となる。この
時、スキップ回数選択部211により、デフォルト値と
して所定のスキップ回数(上限値)がセットされる。ス
キップ回数は、空き領域のサーチを行う場合のサーチ終
了条件に関わるもので、後述のスキップポインタを越え
てサーチを行う場合におけるデータブロックの飛び越し
数に相当する。このスキップ回数は、ぺージバッファへ
のデータ入力順序とページバッファからのデータ出力順
序の食い違い度合い(相違度)に基づいて適宜設定され
ることが望ましい。例えば、順序の食い違いが1〜3プ
レート分程度であればスキップ回数を1にセットすれば
よいし、それが10プレート以内ならばスキップ回数を
2にセットし、それ以上ならばスキップ回数を3にセッ
トする。このように食い違い度合いに応じてスキップ数
を選択するのは、食い違い度合いが大きいのにもかかわ
らずスキップ数を小さい値にしておくと、データの書込
み待ち頻度が大きくなり、結果として、処理速度が低下
するためである。なお、スキップポインタから数えた空
き領域の個数をn(n≧1)とした場合、スキップ数は
n−1となる。
【0041】上記の初期化後、クライアントからネット
を介してジョブ受付部201がジョブ処理要求を受け付
けると、そこでジョブ内容が解析され、ジョブ内容格納
部210によってその解析結果がジョブチケットテーブ
ル14に格納される(図5参照)。これによりジョブキ
ューイング部202がキューイングを行い、一方、ジョ
ブ受付部201の処理は次のジョブの受け付け待ちとな
る。
【0042】ジョブスケジューリング部203は、ジョ
ブキューイング部202のジョブキュー12(図5参
照)内にジョブが存在するかを常に監視しており、存在
すれば要求取り出し部212によってジョブキュー12
からジョブを取り出し、その内容をチェックする。本実
施形態では、そのチェックの結果、処理可能なジョブで
あると判断されると、スキップ回数選択部211によっ
て、ジョブ内容に応じてスキップ回数が再セットされ
る。このように、本実施形態では、上述したようなIO
Tすなわち環境によるものとジョブ内容によるものとで
スキップ回数を最適化することにより、最も確からしい
スキップ回数を決定することができる。
【0043】なお、図5に示すように、ジョブチケット
テーブル14内には、ジョブ内容の一部としてスキップ
回数も書き込まれている。このスキップ回数の情報は、
クライエンアト側でジョブを作成する際にジョブを構成
する情報の1つとして画像データに付随させておくこと
ができるが、例えば、部数、両面/片面などの一般のジ
ョブ情報に基づいてプリントサーバ側でスキップ回数を
自動算定してもよい。
【0044】さて、ここまで処理を行うと初めて、画像
生成/圧縮/書込み部213によって、上述のような画
像データの出力のための処理がなされる。その際、ペー
ジバッファ内の画像データの管理するために必要な情
報、例えば空き領域、格納画像データ番号(Plate N
o.)、次に書き込むアドレス(アドレスポインタ)、
後述のスキップポインタ等は、ページバッファ管理部2
14が一括管理している。具体的には、バッファ内のデ
ータ構造は、図5に示す管理テーブル内のバッファテー
ブル(BufferTable )16及びバッファリング情報テー
ブル(Buffering Info)18で管理されており、前者の
テーブル16にはバッファ全体に関する情報、後者のテ
ーブル18にはバッファ内に格納された各プレートに関
する情報がそれぞれ格納されている。
【0045】ジョブスケジューリング部203は、出力
の準備が整うとページバッファ管理部214を介して画
像読み出し部216に指令を与える。これによりハード
ディスクからページバッファへ画像データが所定の順序
で書き込まれた後、出力処理制御部217によって、そ
のページバッファから画像データが所定の順序で読み出
され、出力処理が行われる。
【0046】具体的に説明すると、ハードディスクから
読み出す各画像データ毎にその格納領域を確保するため
に、ジョブスケジューリング部203は、ページバッフ
ァ管理部214に空き領域のサーチ及び有効空き領域の
特定を要求する。その空き領域のサーチは、スキップ処
理(空き領域検索)部215によって行われ、その空き
領域のサーチの際に、スキップ処理が必要となれば、ス
キップ回数選択部211にセットされたスキップ回数を
上限として、そのスキップ処理が行われる。ここで、実
際のスキップ回数が、セットされたスキップ回数に至る
までに、次の画像データを格納可能な有効空き領域が見
つかれば、画像読み出し部216の書込み制御により、
その空き領域に次の画像データが書き込まれる。その一
方、そのような有効空き領域が見付からない場合には書
込み待ち状態が維持される。これらの各モジュール間の
つながりは図9〜図12に示すフローチャートで明らか
にする。なお、以上の説明から明らかなように、ページ
バッファ管理部214及び画像読み出し部216は、書
込み制御手段として機能しており、出力処理制御部21
7は読出し手段として機能している。
【0047】次に、本発明に係るページバッファ管理に
ついて図6、図7を利用して具体的に説明する。
【0048】図6には、バッファ管理モデルが示されて
いる。ページバッファ106は、いわゆるリングバッフ
ァであり、その先頭アドレス24から最終アドレス26
までがバッファ全領域22である。なお、先頭アドレス
24が絶対アドレスで示される場合にはそれはベースア
ドレスを示し、相対アドレスで示される場合にはそれは
アドレス0となる。同様に、最終アドレスが絶対アドレ
スで示される場合にはそれはベースアドレスにバッファ
全領域を加算したアドレスを示し、絶対アドレスで示さ
れる場合にはそれはバッファ全領域から1を引いたアド
レスを示す。なお、図4に示したバッファ管理部214
は、基本的に、相対アドレスを使用している。
【0049】符号18は各画像データ(プレート)の格
納領域を示している。各プレートの格納領域の先頭アド
レス及びサイズは図5に示したバッファリング情報テー
ブル18内に格納される。それに関連し、スキップ処理
(空き領域検索)部215が空き領域のサーチを行うた
めの情報として、バッファリング情報テーブル18に
は、各プレート毎にそれが読み出されて上書き可能か
(ON)、あるいはまだ読み出されておらず上書き不可
能か(OFF)の情報も格納されている。
【0050】書込みポインタPは、次の画像データ(プ
レート)の書き込むための空き領域をサーチする際の開
始アドレスを示す。この書込みポインタPは、現在示し
ているアドレスから画像データが書き込まれると、次の
空き領域の最初のアドレスへ移行する。例えば、図6の
ように書き込みポインタPが存在している状態におい
て、プレート2に続いて他のプレートが書き込まれる
と、書き込みポインタPは次の空き領域の最初のアドレ
スへ移動する。ただし、本実施形態において、スキップ
処理によって画像データを書き込んだ場合には書き込み
ポインタは移行せず、もとの位置に維持される。
【0051】なお、サーチ上、最終アドレスと先頭アド
レスは連続したアドレスとみなされるが、DMAなどを
行う都合上から、最終アドレスから先頭アドレスへ跨が
って画像データを格納することはできない。また、書き
込みポインタPと最終アドレス26との間が所定アドレ
ス長まで近付いた場合には、書き込みポインタPは、最
終アドレスから先頭アドレス側へ回り込んで、最初の空
き領域の先頭アドレスへジャンプする。
【0052】スキップポインタSは、前回のスキップ処
理により格納されたプレートの最終アドレスを示すもの
で、スキップ処理によりプレートを書き込むと、そのプ
レートの最終アドレスへ移行する。
【0053】以上のようなバッファ管理モデルにおいて
プレートの書き込みを行った場合の例が図7に示されて
いる。この例では、プレート1,2,3,4,5,6,
7,8…の順序で書き込みが行われ、プレート2,4,
6,1,3,5,…の順序で読み出しが行われている。
また、この例ではスキップ回数の上限として1が設定さ
れている。
【0054】まず、(A)では、ページバッファ106
にプレート1,2,3,4,5,6,7が格納される。
プレート7の後には比較的小さい空き領域30が存在し
ているが、プレート8を格納するのに十分な領域ではな
い。このためプレート8は書き込み待ち状態におかれ
る。書き込みポインタPは空き領域30の最初のアドレ
スを示している。
【0055】この状態から、(B)に示すように、プレ
ート2が読み出されて当該領域32が解放されると、こ
のバッファ内容の変化を契機として、プレート8を格納
するために十分な領域をもった有効空き領域のサーチが
行われる。この場合、書き込みポインタPが示す空き領
域30は、依然として容量的にプレート8の書き込みを
行うことができないが、プレート1をスキップした位置
に存在する空き領域32(プレート2のもとの格納領
域)にはプレート8を書き込むことが可能である。そこ
で、当該領域32にプレート8が前詰めで書き込まれ
る。なお、これによりプレート8とプレート3との間に
小さい空き領域34が生じる。ここで、スキップポイン
タSはスキップ処理で書き込まれたプレート8の最終ア
ドレスに設定される。
【0056】なお、仮に空き領域32がプレート8を格
納するために十分な容量をもっていない場合、既にスキ
ップ数がその上限(=1)に到達しているので、たとえ
それ以降に有効空き領域が存在していても、サーチはそ
こで終了し、プレート8は引き続いて書き込み待ち状態
におかれる。これは上述のように空き領域連続化のため
である。
【0057】(B)の状態から、(C)に示すように、
プレート4の読み出しによりその格納領域36が解放さ
れると、プレート9を格納する有効空き領域のサーチが
実行される。この場合、空き領域30には容量的に格納
不可能であり、またプレート1及びそれに連結されたプ
レート8のデータブロックをスキップして発見された空
き領域34も容量的に格納不可能と判断されるが、引き
続いてプレート9をスキップしたところに存在する空き
領域36(プレート4のもとの格納領域)にはプレート
9を格納可能であるので、その空き領域36に前詰めで
プレート9が書き込まれる。
【0058】ここで、スキップ数は、スキップポインタ
S以降のスキップ数としてカウントされ、つまりスキッ
プポインタS以前のスキップ数は関係ない。
【0059】(D)には、以上のルールに従ってバッフ
ァ管理を進行させた場合の状態が示されている。この状
態では、空き領域38の最初に書き込みポインタPが存
在し、プレート17の最終アドレスにスキップポインタ
Sが存在している。また、プレート17の後に、スキッ
プ処理の効果として形成された空き領域40、42、4
4の連続体が存在している。
【0060】この(D)の状態において、比較的大きな
データ量のプレート18を格納しようとした場合、最初
に発見された空き領域38には格納不可能であるが、プ
レート15,16,17のデータブロックに対するスキ
ップを経て発見された空き領域40は次の空き領域42
にも連続しており、プレート18を十分に格納可能であ
る。そこで、その2つの領域に前詰めでプレート18が
格納される。
【0061】図8には、サーチ終了条件を定めることな
く各プレートの書き込み制御を行った結果が比較例とし
て示されている。この手法では、プレートの書き込み及
び読み出しが次第に進行していくと、先に格納したもの
と後から格納したものが混在してしまい、更にばらばら
に解放されていくため、例えば、図8の空き領域46、
48、50、52で示すように各空き領域が分散する可
能性が高くなる。その結果、プレート18を格納しよう
として、書き込みポインタPから有効空き領域をサーチ
していっても(スキップ数の上限はない)、バッファ全
体として見れば空き領域が多いにもかかわらず、結局、
いずれの空き領域にもプレート18を書き込むことがで
きない。すなわち、この比較例ではデッドロックが発生
している。
【0062】その一方、本実施形態によれば、書き込み
ポインタPから空き領域のサーチを行う際に、スキップ
ポインタSを基準としてスキップ数の上限(サーチする
空き領域の個数の上限)を定めたので、書き込み順序が
近い関係にある2つのプレートをあまり互いに離すこと
なくページバッファ上に格納でき、その結果、空き領域
が連続する確率を高められる。これは書き込み順序が比
較的近い関係にあるプレート間ではその読み出し順序も
近い関係にあるだろうとの経験則に基づいたもので、簡
単な書き込み制御でありながら、デッドロックを有効に
防止できる。
【0063】もちろん、スキップ数の上限は、書き込み
待ちが発生してデータ処理速度があまり低下しないよう
に適宜設定するのが望ましい。
【0064】次に、本実施形態の画像処理装置の動作を
図9〜図12に基づいて説明する。図9は、図4に示し
たジョブ受付部201の動作を示すフローチャートであ
る。まず、S1では、クライアントからのジョブ処理要
求の有無が判定され、ジョブ処理要求があると、S2に
おいてジョブ内容を確認し、処理可能であればジョブ内
容をジョブ管理テーブル(ジョブチケット14)に格納
する。S3では、スキップ回数の上限としてデフォルト
値をセットする。この値は、格納された順に解放される
といった原則に対して、どの程度その原則とそぐわない
状態になり得るかによって適宜選択される。そして、S
4では、ジョブチケット14をキューイングし、S5で
は、ジョブ要求があったことをジョブスケジューリング
部203に通知し、S1に戻って次のジョブ要求を待
つ。
【0065】図10は、図4で示したジョブスケジュー
リング部203の動作を示すフローチャートである。
【0066】S6では、ジョブ受付部201からの通知
を受けると、ジョブキュー12からジョブチケット14
を取り出す。そして、S7では、ジョブ内容をチェック
し、適当なスキップ回数が与えられているかを動的にチ
ェックする。S8では、画像データを出力可能なように
処理する。この処理の詳細については図11に示されて
る。S9では、画像データを出力するために、その画像
データをページバッファ上に書き込む。この場合の処理
の詳細については図12に示されている。S10では、
上記のS8及びS9の準備が整い、出力可能になったか
どうかをチェックし、不可能であればS11に移行し、
可能であればS12が実行される。S11では、S8及
びS9の処理のいずれの準備がまだなのかを調べ、S8
又はS9に処理を戻す。そして、S12では、画像デー
タの出力処理が実行される。S13では、全ての画像デ
ータの出力が完了したかどうかがチェックされ、まだで
あればS10に戻り、全ての出力が完了した場合はS1
4に進む。このS14では、ハードディスク内の画像デ
ータが消去される。S15では、ジョブの終了処理が行
われ、具体的にはジョブチケットの消去等がなされる。
【0067】なお、S16は、S12による出力処理の
起動によって出力処理を行うモジュールを示しており、
メイン処理(図9〜12で示した動作)と並列して動作
する。出力処理の内容については、図2、図3に基づい
て説明した通りである。
【0068】図11は、図10で示したS8に相当する
画像処理部での動作を示したものである。
【0069】まず、S21ではデコンポーザが起動さ
れ、S22ではデコンポーズ処理が実行される。この処
理は、S16の出力処理と同様、メイン処理(図9〜1
2で示した動作)と並列して動作可能である。クライア
ントから送られた画像情報は、ページ記述言語であるた
め、ここではデコンポーズによってラスタデータが生成
される。S23では、ページバッファ上にデコンポーズ
結果を格納する領域を要求する。この場合、S24の判
断において、領域を確保可能であれば処理がS26に進
み、不可能であれば処理がS25に進む。なお、この領
域検索は、画像データの圧縮及びハードディスクへの書
き込みに先立って行われるもので、すなわち、画像デー
タを格納した順番と同一の順番で解放が行われるため、
上記のスキップ処理は行われない。S25では、空き領
域待ち状態になり、S26では、S22によってラスタ
データがページバッファ上に格納されるのを待つ。そし
て、S27では、格納されたラスタデータを圧縮する。
S28では、圧縮した圧縮画像データをハードディスク
に書き込む処理を起動する。なお、S29におけるハー
ドディスクに書き込む処理は、S22のデコンポーズ処
理やS16の出力処理と同様、メイン処理(図9〜12
の動作)と並列して実行される。
【0070】S30において、ハードディスクに書き込
む処理が終了すると、バッファに上書き可能になるた
め、バッファ管理テーブルを更新する。一方、S31で
は、S25でバッファの空き待ちだった場合、更新結果
に基づいて再度確保可能かどうかをS24にてチェック
する。S32では、全てのプレートについて書き込み処
理が終了したかどうかをチェックし、まだであれば、S
21に戻って処理を繰り返し、終了すればこのフローが
終了する。
【0071】図12は、図10で示したS9に相当する
画像処理部の動作を示したものである。
【0072】S41では、ハードディスクから圧縮画像
データを読み出す処理を起動する。ここで、S42に示
すハードディスクから読み出す処理は、S29の書き込
み処理と同様、メイン処理(図9〜12で示した動作)
と並列して動作する。S43では、ページバッファ上に
読み出し結果を格納する領域を要求する。このS43に
おいて、サーチ開始を示す書き込みポインタの直後に、
画像データを書き込むための十分な領域が存在していな
ければ、引き続いて、バッファ管理テーブルにセットさ
れたスキップ回数を最大限として、スキップ処理を行
う。スキップ処理については、図5及び図6を基に説明
した通りである。S44において、領域を確保可能であ
れば処理がS46に進み、不可能であれば処理がS45
に進む。S45では、スキップ処理を行っても有効な空
き領域が確保できない場合、空き領域待ち状態になる。
S46では、S42によって圧縮画像データがバッファ
上に読み出されるのを待つ。
【0073】S47は、S16で示した出力処理を行う
モジュールであり、ここで1ページの出力が終了する毎
に、その旨が通知される。S48では、1ページの出力
終了を示す情報に基づいてバッファ管理テーブルを更新
する。S49では、S45でバッファの空き待ちだった
場合、更新結果に基づいて再度確保可能かどうかをS4
4にてチェックする。そして、S50では、全ての出力
が終了したかどうかをチェックし、まだであれば、S4
1に戻って処理を繰り返し、終了すればこのフローが終
了する。
【0074】なお、実際の画像データの入出力制御に当
たっては、上述の他にもエラー解除処理、通信処理、等
が存在するが、本発明とは関係がないので省略してい
る。また、上記の実施形態では、プリンタを例として挙
げているが、バッファを有する画像処理装置であれば、
複写機、プリンタ装置、ファクシミリ装置、等どのよう
な画像処理装置であっても、本発明を適用できる。
【0075】
【発明の効果】以上説明したように、本発明によれば、
バッファへの画像データの書き込み順序とバッファから
の画像データの読み出し順序とが異なるような画像処理
装置において、バッファ上で空き領域が分散化してしま
って次の画像データを格納できなくなる問題を解消で
き、また、空き領域待ちになる画像データを極力少なく
しながらデッドロックを効果的に防止できる。
【図面の簡単な説明】
【図1】 本発明が適用されるシステム構成を示す概略
図である。
【図2】 本発明が適用されるプリンタの概略構成を示
す断面図である。
【図3】 本発明に係る画像処理装置の一実施形態を示
すハードウェアブロック図である。
【図4】 本発明に係る制御部の構成を示す図である。
【図5】 管理テーブルを示す図である。
【図6】 バッファ管理モデルを示す図である。
【図7】 本発明に係るバッファ書き込み制御を示す図
である。
【図8】 スキップ処理がなされない場合の比較例を示
す図ある。
【図9】 本発明に係る制御手順を説明するフローチャ
ートである。
【図10】 本発明に係る制御手順を説明するフローチ
ャートである。
【図11】 本発明に係る制御手順を説明するフローチ
ャートである。
【図12】 本発明に係る制御手順を説明するフローチ
ャートである。
【符号の説明】
1A〜1D プリンタ、2A〜2D プリントサーバ、
102 圧縮器、106 ページバッファ、109 伸
長器、201 ジョブ受付部、202 ジョブキューイ
ング部、203 ジョブスケジューリング部、211
スキップ回数選択部、214 ページバッファ管理部、
215 スキップ処理部、P 書き込みポインタ、S
スキップポインタ。

Claims (6)

    (57)【特許請求の範囲】
  1. 【請求項1】 複数の画像データが書き込まれる記憶部
    と、 前記記憶部へ画像データを書き込む書込み手段と、 前記記憶部から画像データを読み出す読出し手段と、 前記記憶部に格納された画像データを出力する出力手段
    と、を含み書き込まれた順序と異なる順序で出力する画
    像処理装置において、 前記書込み手段は、 前記記憶部上の空き領域をサーチする際の開始アドレス
    を管理する開始アドレス管理手段と、 前記空き領域をサーチするために前記開始アドレスを含
    む前記バッファの一部のみを参照して次に格納すべき画
    像データを格納可能な有効空き領域を特定する手段であ
    って、前記開始アドレスからサーチを開始し、所定のサ
    ーチ終了条件に達するまでサーチを行っても前記有効空
    き領域が発見されない場合にサーチを終了する空き領域
    サーチ手段と、 前記有効空き領域が発見された場合にそこに前記次の画
    像データを書き込み、前記有効空き領域が発見されなか
    った場合に前記次の画像データの書き込み待ち状態を維
    持する書込み制御手段と、 を含むことを特徴とする画像処理装置。
  2. 【請求項2】 請求項1記載の装置において、 前記記憶部への書き込みに先立って、画像データを可変
    長圧縮する圧縮手段を含み、 前記空き領域サーチ手段は、前記画像データのデータ量
    を考慮して前記有効空き領域を特定することを特徴とす
    る画像処理装置。
  3. 【請求項3】 請求項1記載の装置において、 前回書き込まれた画像データの格納領域の最終アドレス
    に相当する基準アドレスを管理する基準アドレス管理手
    段を含み、 前記空き領域サーチ手段は、前記基準アドレスから数え
    て所定数n(n≧1)番目の空き領域までサーチを行っ
    ても前記有効空き領域が発見されない場合にサーチを終
    了することを特徴とする画像処理装置。
  4. 【請求項4】 請求項3記載の装置において、 前記所定数nを設定する設定手段を有することを特徴と
    する画像処理装置。
  5. 【請求項5】 請求項4記載の装置において、 前記設定手段は、前記バッファへの画像データの書き込
    み順序と前記バッファからの画像データの読み出し順序
    の相違度に基づいて、前記所定数nを設定することを特
    徴とする画像処理装置。
  6. 【請求項6】 請求項4記載の装置において、 前記設定手段は、各画像データに付随する情報を参照し
    て動的に前記所定数nを設定することを特徴とする画像
    処理装置。
JP8029159A 1996-02-16 1996-02-16 画像処理装置 Expired - Fee Related JP3000914B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8029159A JP3000914B2 (ja) 1996-02-16 1996-02-16 画像処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8029159A JP3000914B2 (ja) 1996-02-16 1996-02-16 画像処理装置

Publications (2)

Publication Number Publication Date
JPH09224134A JPH09224134A (ja) 1997-08-26
JP3000914B2 true JP3000914B2 (ja) 2000-01-17

Family

ID=12268490

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8029159A Expired - Fee Related JP3000914B2 (ja) 1996-02-16 1996-02-16 画像処理装置

Country Status (1)

Country Link
JP (1) JP3000914B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008135913A (ja) * 2006-11-28 2008-06-12 Kyocera Mita Corp データのアクセス方法

Also Published As

Publication number Publication date
JPH09224134A (ja) 1997-08-26

Similar Documents

Publication Publication Date Title
US5142667A (en) Resource and memory management algorithms for electric printing and electronic reprographic systems
EP1494114B1 (en) Image forming apparatus with network connection
JPH10289074A (ja) 多機能印刷システムにおけるジョブ処理管理方法
JPH1131055A (ja) 多機能印刷システムにおけるキュー管理方法
US6671065B1 (en) Method and apparatus to optimize transition of resources from a lower priority to a higher priority job
US6570670B1 (en) Method and apparatus to enable job streaming for a set of commonly shared resources
US6717690B1 (en) Method and apparatus for managing job contention for system resources in an electrographic reproduction system where images are multibanded
US6483604B1 (en) Disk-based image storage system and method with prioritized loading and retrieval operations
US7746494B2 (en) Data processing apparatus, data processing method, printer driver, print control apparatus, print control method, and printing system
US5970222A (en) Memory management system for printing a print job with limited capacity
EP1104170A2 (en) Method and apparatus for managing job contention for system resources in a electrographic reproduction system where images are multibanded
EP1104168B1 (en) Method and apparatus for managing job contention for system resources in an electronic reprographic system
EP0974891A2 (en) Printing system and printer
US6614542B1 (en) Method and apparatus to improve system concurrency for a job using a set of commonly shared resources such that a specific resource is used only for a portion of the job
JP3879501B2 (ja) プリントサーバ、プリントシステム、プリント方法、プリントプログラムおよびプリントプログラムを記録したコンピュータ読取可能な記録媒体
JP3000914B2 (ja) 画像処理装置
JP2002091748A (ja) 画像処理装置
JPH0863310A (ja) 画像処理装置
US7061639B2 (en) Apparatus and method for scanning a copy job when a print path is not available
US10715695B2 (en) Image processing apparatus
US7336382B2 (en) Image forming apparatus printing with a decrease in the quantity of printing material
JP3387300B2 (ja) 画像処理装置
JPH11331528A (ja) 画像処理装置
JP2001320561A (ja) 画像処理装置
JP4133394B2 (ja) 画像形成装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees