(57)【要約】【課題】  画像処理装置などにおいてメモリ領域を効率的に使用すること。【解決手段】   画像データの管理に用いられる第１管理レコードを記憶するための第１管理レコード用記憶領域と、第１管理レコードにリンクした第２管理レコードを記憶するための第２管理レコード用記憶領域と、を含む記憶手段と、記憶手段において第１管理レコード及び第２管理レコードを記憶するための領域を獲得する獲得手段と、を備え、第１管理レコード及び第２管理レコードによって画像データを管理する画像処理装置であって、獲得手段は、第１管理レコード用記憶領域に第１管理レコードを記憶するための記憶域を獲得できない場合に、第２管理レコード用記憶領域に第１管理レコードを記憶するための記憶域を獲得することを特徴とする。【選択図】  図６
2006004013.tif 000002
【特許請求の範囲】
【請求項１】
画像データの管理に用いられる第１管理レコードを記憶するための第１管理レコード用記憶領域と、前記第１管理レコードにリンクした第２管理レコードを記憶するための第２管理レコード用記憶領域と、を含む記憶手段と、
前記記憶手段において前記第１管理レコード及び前記第２管理レコードを記憶するための領域を獲得する獲得手段と、
を備え、前記第１管理レコード及び前記第２管理レコードによって画像データを管理する画像処理装置であって、
前記獲得手段は、前記第１管理レコード用記憶領域に前記第１管理レコードを記憶するための記憶域を獲得できない場合に、前記第２管理レコード用記憶領域に前記第１管理レコードを記憶するための記憶域を獲得することを特徴とする画像処理装置。
【請求項２】
前記獲得手段は、前記第１管理レコード用記憶領域に第１管理レコードを記憶するための領域を獲得できない場合に、前記第２管理レコード用記憶領域に前記第１管理レコードを記憶するための記憶域として、１つの前記第２管理レコードを記憶する記憶域の整数倍の記憶域を獲得することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
ジョブを１つ以上のファイルに関連づけて管理するジョブ管理レコードを格納するためのジョブ管理レコード用メモリ領域と、
前記ファイルを１つ以上のページに関連づけて管理するファイル管理レコードを格納するためのファイル管理レコード用メモリ領域と、
前記ページを１つ以上のメモリブロックに関連づけて管理するページ管理レコードを格納するためのページ管理レコード用メモリ領域と、
前記メモリブロックを、画像データの記憶領域に関連づけて管理するメモリブロック管理レコードを格納するためのメモリブロック管理レコード用メモリ領域と、
画像データを格納するための画像データ格納用メモリ領域と、
を含むメモリと、
前記メモリに対する各管理レコードの格納を制御する制御手段と、
を有する画像処理装置であって、
前記制御手段は、前記ジョブ管理レコード、前記ファイル管理レコード、前記ページ管理レコード、及び前記メモリブロック管理レコードのうちの何れかの管理レコードを格納する際に、該管理レコードを格納するための管理レコード用メモリ領域が不足している場合に、他のいずれかの管理レコード格納用メモリ領域に、前記管理レコードを格納することを特徴とする画像処理装置。
【請求項４】
前記制御手段は、
前記他の管理レコード格納用メモリ領域において、前記管理レコードを格納するため、前記他の管理レコードの整数倍のサイズのメモリ領域を確保することを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記制御手段は、
前記他の管理レコード用メモリ領域の中から、使用部分の占有率が最も小さな管理レコード用メモリ領域を、前記管理レコードの格納に用いることを特徴とする請求項３に記載の画像処理装置。
【請求項６】
前記制御手段は、
前記他の管理レコード用メモリ領域の中から、総メモリサイズの最も大きな管理レコード用メモリ領域を、前記管理レコードの格納に用いることを特徴とする請求項３に記載の画像処理装置。
【請求項７】
前記制御手段は、
前記他の管理レコード用メモリ領域の中から、残量が最も大きな管理レコード用メモリ領域を、前記管理レコードの格納に用いることを特徴とする請求項３に記載の画像処理装置。
【請求項８】
第１管理レコードを格納するための第１管理レコード用記憶領域と、第２管理レコードを格納するための第２管理レコード用記憶領域と、を含む記憶手段を備えた画像処理装置において、前記第１管理レコード及び前記第２管理レコードによって画像データを管理するデータ管理方法であって、
前記第１管理レコード用メモリ領域に第１管理レコードを記憶するための領域を獲得する第１獲得工程と、
前記第１獲得工程で、前記第１管理レコード用メモリ領域に第１管理レコードを記憶するための領域を獲得できなかった場合に、前記第２管理レコード用メモリ領域に前記第１管理レコードを記憶するための領域を獲得する第２獲得工程と、
を含むことを特徴とするデータ管理方法。
【請求項９】
ジョブを１つ以上のファイルに関連づけて管理するジョブ管理レコードを格納するためのジョブ管理レコード用メモリ領域と、
前記ファイルを１つ以上のページに関連づけて管理するファイル管理レコードを格納するためのファイル管理レコード用メモリ領域と、
前記ページを１つ以上のメモリブロックに関連づけて管理するページ管理レコードを格納するためのページ管理レコード用メモリ領域と、
前記メモリブロックを、画像データの記憶領域に関連づけて管理するメモリブロック管理レコードを格納するためのメモリブロック管理レコード用メモリ領域と、
画像データを格納するための画像データ格納用メモリ領域と、
を含むメモリを有する画像処理装置の制御方法であって、
前記ジョブ管理レコード、前記ファイル管理レコード、前記ページ管理レコード、及び前記メモリブロック管理レコードのうちの何れかの管理レコードを格納する際に、該管理レコードを格納するための管理レコード用メモリ領域が不足している場合に、他のいずれかの管理レコード格納用メモリ領域に、前記管理レコードを格納することを特徴とする画像処理装置の制御方法。
【請求項１０】
請求項８に記載のデータ管理方法の各工程をコンピュータに実行させるプログラム。
【請求項１１】
請求項９に記載の制御方法の各工程をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像データを管理する装置及び方法に関する。
【背景技術】
【０００２】
従来から、画像データを蓄積可能な画像処理装置が知られている。しかし、従来は、装置内ファイルシステムで使用する管理レコード用のメモリ領域は、その種類（ジョブ管理レコード、ファイル管理レコード、ページ管理レコード、画像ブロック管理レコード）毎に、それぞれ固定サイズ分用意されていた。そして、ジョブ管理レコードはジョブ管理レコード用メモリ領域にのみ格納され、ファイル管理レコードはファイル管理レコード用メモリ領域にのみ格納され、ページ管理レコードはページ管理レコード用メモリ領域にのみ格納され、画像ブロック管理レコードは、画像ブロック管理レコード用メモリ領域にのみ格納されていた。
【特許文献１】特開2001-216192号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
そして、従来の画像処理装置では、画像データの格納時、上記のメモリ領域のうち何れかのレコード用の記憶域が確保できない場合、他の管理レコード用メモリ領域に余裕がある場合でもエラー終了していた。従って、装置内で予め決められたジョブ数、ファイル数、ページ数、画像データ蓄積ブロック数でしか動作できなかった。即ち、メモリを有効に活用しておらず、エラー終了しないようにするにはメモリを増設しなければならないため生産性が悪かった。
【０００４】
本発明は、上記従来技術の課題を解決するためになされたもので、その目的とするところは、画像処理装置などにおいてメモリ領域を効率的に使用することにある。
【課題を解決するための手段】
【０００５】
上記目的を達成するため、本発明に係る装置は、
画像データの管理に用いられる第１管理レコードを記憶するための第１管理レコード用記憶領域と、前記第１管理レコードにリンクした第２管理レコードを記憶するための第２管理レコード用記憶領域と、を含む記憶手段と、
前記記憶手段において前記第１管理レコード及び前記第２管理レコードを記憶するための領域を獲得する獲得手段と、
を備え、前記第１管理レコード及び前記第２管理レコードによって画像データを管理する画像処理装置であって、
前記獲得手段は、前記第１管理レコード用記憶領域に前記第１管理レコードを記憶するための記憶域を獲得できない場合に、前記第２管理レコード用記憶領域に前記第１管理レコードを記憶するための記憶域を獲得することを特徴とする。
【０００６】
前記獲得手段は、前記第１管理レコード用記憶領域に第１管理レコードを記憶するための領域を獲得できない場合に、前記第２管理レコード用記憶領域に前記第１管理レコードを記憶するための記憶域として、１つの前記第２管理レコードを記憶する記憶域の整数倍の記憶域を獲得することを特徴とする。
【０００７】
ジョブを１つ以上のファイルに関連づけて管理するジョブ管理レコードを格納するためのジョブ管理レコード用メモリ領域と、
前記ファイルを１つ以上のページに関連づけて管理するファイル管理レコードを格納するためのファイル管理レコード用メモリ領域と、
前記ページを１つ以上のメモリブロックに関連づけて管理するページ管理レコードを格納するためのページ管理レコード用メモリ領域と、
前記メモリブロックを、画像データの記憶領域に関連づけて管理するメモリブロック管理レコードを格納するためのメモリブロック管理レコード用メモリ領域と、
画像データを格納するための画像データ格納用メモリ領域と、
を含むメモリと、
前記メモリに対する各管理レコードの格納を制御する制御手段と、
を有する画像処理装置であって、
前記制御手段は、前記ジョブ管理レコード、前記ファイル管理レコード、前記ページ管理レコード、及び前記メモリブロック管理レコードのうちの何れかの管理レコードを格納する際に、該管理レコードを格納するための管理レコード用メモリ領域が不足している場合に、他のいずれかの管理レコード格納用メモリ領域に、前記管理レコードを格納することを特徴とする。
【０００８】
前記制御手段は、
前記他の管理レコード格納用メモリ領域において、前記管理レコードを格納するため、前記他の管理レコードの整数倍のサイズのメモリ領域を確保することを特徴とする。
【０００９】
前記制御手段は、
前記他の管理レコード用メモリ領域の中から、使用部分の占有率が最も小さな管理レコード用メモリ領域を、前記管理レコードの格納に用いることを特徴とする。
【００１０】
前記制御手段は、
前記他の管理レコード用メモリ領域の中から、総メモリサイズの最も大きな管理レコード用メモリ領域を、前記管理レコードの格納に用いることを特徴とする。
【００１１】
前記制御手段は、
前記他の管理レコード用メモリ領域の中から、残量が最も大きな管理レコード用メモリ領域を、前記管理レコードの格納に用いることを特徴とする。
【００１２】
上記目的を達成するため、本発明に係る方法は、
第１管理レコードを格納するための第１管理レコード用記憶領域と、第２管理レコードを格納するための第２管理レコード用記憶領域と、を含む記憶手段を備えた画像処理装置において、前記第１管理レコード及び前記第２管理レコードによって画像データを管理するデータ管理方法であって、
前記第１管理レコード用メモリ領域に第１管理レコードを記憶するための領域を獲得する第１獲得工程と、
前記第１獲得工程で、前記第１管理レコード用メモリ領域に第１管理レコードを記憶するための領域を獲得できなかった場合に、前記第２管理レコード用メモリ領域に前記第１管理レコードを記憶するための領域を獲得する第２獲得工程と、
を含むことを特徴とする。
【００１３】
ジョブを１つ以上のファイルに関連づけて管理するジョブ管理レコードを格納するためのジョブ管理レコード用メモリ領域と、
前記ファイルを１つ以上のページに関連づけて管理するファイル管理レコードを格納するためのファイル管理レコード用メモリ領域と、
前記ページを１つ以上のメモリブロックに関連づけて管理するページ管理レコードを格納するためのページ管理レコード用メモリ領域と、
前記メモリブロックを、画像データの記憶領域に関連づけて管理するメモリブロック管理レコードを格納するためのメモリブロック管理レコード用メモリ領域と、
画像データを格納するための画像データ格納用メモリ領域と、
を含むメモリを有する画像処理装置の制御方法であって、
前記ジョブ管理レコード、前記ファイル管理レコード、前記ページ管理レコード、及び前記メモリブロック管理レコードのうちの何れかの管理レコードを格納する際に、該管理レコードを格納するための管理レコード用メモリ領域が不足している場合に、他のいずれかの管理レコード格納用メモリ領域に、前記管理レコードを格納することを特徴とする。
【発明の効果】
【００１４】
本発明によれば、画像処理装置などにおいてメモリ領域を効率的に使用できる。
【発明を実施するための最良の形態】
【００１５】
以下に、図面を参照して、この発明の好適な実施の形態を例示的に詳しく説明する。ただし、この実施の形態に記載されている構成要素はあくまで例示であり、この発明の範囲をそれらのみに限定する趣旨のものではない。
【００１６】
（概要）
本発明の実施形態としてのＭＦＰ（Multi Function Peripheral）は、画像管理用レコード（ジョブ管理レコード、ファイル管理レコード、ページ管理レコード、画像ブロック管理レコード）用に固定サイズで設けられたメモリ領域を動的に使用する。そして、ジョブが発生して各管理用レコードを登録する際に、例えばジョブ管理レコード格納用メモリ領域に、そのジョブ管理レコードの記憶域が確保できない場合、他の管理用レコードのメモリ領域に、ジョブ管理レコードの記憶域を割り当てる。この時、各管理用レコード用のメモリ領域は、そのメモリ領域に主に記憶する管理用レコードのサイズ単位で割り当てられる。これにより、メモリを最大限に有効活用しつつ、フラグメンテーションの問題を回避することができる。
【００１７】
（装置構成）
図１は、本発明に係る画像処理装置の実施形態としてのＭＦＰ（多機能周辺装置）２００の概略的な構成を示すブロック図である。スキャナインタフェース部（以下、「スキャナＩ／Ｆ部」という）１０には、アナログフロントエンド（ＡＦＥ）１５を介して、ＣＣＤ１７、ＣＩＳ１８が接続し、個別の専用回路を介在することなく、その読み取りデータをＭＦＰ２００に取り込むことができる。スキャナI／Ｆ部１０のデータ処理については、後に詳細に説明する。
【００１８】
２０はスキャナ画像処理部であり、スキャナI／Ｆ部１０の処理によりメインメモリ１００に展開された画像データに対して、画像処理動作モード（カラーコピー、モノクロコピー、カラースキャン、モノクロスキャン等）に応じた画像処理を実行する処理部である。
【００１９】
プリンタ画像処理部３０は、画像処理の結果、得られた画像データをプリンタ出力するための処理ユニットであり、ＬＢＰインタフェース（Ｉ／Ｆ）４０を介して接続するレーザビームプリンタ（ＬＢＰ）４５に画像処理結果を出力するための処理を実行する。
【００２０】
５０、６０はＪＰＥＧ、ＪＢＩＧモジュールであり、所定の規格に準拠した画像データの圧縮、伸張処理を実行する処理部である。
【００２１】
７０はメモリ制御部であり、画像処理系の第１ＢＵＳ８０及びコンピュータ系の第２ＢＵＳ８５とそれぞれ接続し、メインメモリ（ＳＤＲＡＭ）１００に対するデータの書き込み、読み出しのためのＤＭＡ（Direct  Memory  Access）制御を行なう。
【００２２】
９０はＤＭＡコントローラ（ＤＭＡＣ）であり、メモリ制御部７０と協働して、各画像処理部（１０、２０、３０）とメインメモリ１００との間のデータ授受に関し、ＤＭＡ制御するための所定のアドレス情報を生成、設定する。例えば、画像読み取りデバイスの種類、ＣＣＤ１７、ＣＩＳ１８の別に応じて、スキャナＩ／Ｆ部１０で読み取り処理された画像データをメインメモリ１００にＤＭＡ転送するためのアドレス情報をＤＭＡのチャンネルごとに生成し、または、メインメモリ１００上に展開された画像データを読み出すためのアドレス情報をＤＭＡのチャンネルに応じて生成し、スキャナ画像処理部２０にＤＭＡ転送する等、メインメモリ１００と、種々のインタフェース部（１０、４０、１７０）、画像処理部（２０、３０）間におけるＤＭＡ制御を、メモリ制御部７０と共に司るユニットとして機能する。ＤＭＡＣ９０は、ＲＯＭＩＳＡ９７を介してＲＯＭ９５と接続し、画像読み取りデバイス（ＣＣＤ１７やＣＩＳ１８）に応じて、適した制御パラメータ、制御プログラムが設定される。制御パラメータ等を画像読み取りデバイスに応じて種々設定することができるので、ＣＣＤ１７、ＣＩＳ１８の個別のデータ出力形式に応じた画像データの入力処理が可能となるため、専用のインタフェース回路を設ける必要がなくなる。
【００２３】
８０は、画像処理系の各処理部（１０〜６０）間でデータを授受することが可能な第１ＢＵＳであり、８５は、ＣＰＵ１８０、通信及びユーザインタフェース制御部１７０、メカトロ系制御部１２５及びＤＭＡＣ９０が接続するコンピュータ系の第２ＢＵＳである。
【００２４】
メカトロ系制御部１２５にはモータ制御部１１０と、モータの駆動タイミングや、画像処理系の処理の同調を制御するためのタイミング制御を司る割り込みタイマー制御部１２０が含まれる。
【００２５】
ＬＣＤ制御部１３０は、画像処理装置の種々の設定、処理状況等をＬＣＤ１３５に表示するための表示制御を司るユニットである。
【００２６】
１４０、１５０は周辺機器との接続を可能にするＵＳＢインタフェース部であり、図１では、外部にＢＪ−プリンタ１７５が接続した状態を示している。
【００２７】
１６０はメディアアクセス制御（ＭＡＣ）部であり、接続する機器に対してデータをどのようなタイミングで送り出せばよいか（アクセス）等を制御するユニットである。
【００２８】
１８０はＣＰＵであり、ＭＦＰ２００の全体的な動作を制御する。
【００２９】
図２は、ＭＦＰ２００のメインメモリ１００内でジョブを管理するために用いられる管理レコード構成を示す図である。
【００３０】
図２において、２０１に示す点線で囲まれたブロックは、それぞれジョブ管理レコードを示している。それぞれのジョブ管理レコードは、コピー、ＦＡＸ、プリント等のジョブの仕様、次のジョブ管理レコードへのポインタ、前のジョブ管理レコードへのポインタ、ジョブが有するファイルの先頭ファイルのファイル管理レコードへのポインタなどを格納している。
【００３１】
また、２０２に示す点線で囲まれたブロックは、それぞれファイル管理レコードを示している。それぞれのファイル管理レコード２０２は、次のファイル管理レコードへのポインタ、前のファイル管理レコードへのポインタ、このファイルが管理するページのページ数、このファイルが管理するページの先頭ページのページ管理レコードへのポインタなどを格納している。
【００３２】
２０３に示す点線で囲まれたブロックは、それぞれページ管理レコードを示している。それぞれのページ管理レコードは、ファイル中のページ番号、画像サイズ、符号化方式等の画像属性データ、次のページ管理レコードへのポインタ、前のページ管理レコードへのポインタ、このページが管理するメモリブロックの先頭メモリブロックのメモリブロック管理レコードへのポインタなどを格納している。
【００３３】
２０４に示す点線で囲まれたブロックは、それぞれメモリブロック管理レコードを示している。それぞれのメモリブロック管理レコードは、ページ中のメモリブロック番号、次のメモリブロック管理レコードへのポインタ、前のメモリブロック管理レコードへのポインタ、画像データの格納メモリアドレスを格納している。画像データは、複数のメモリブロック管理レコードで管理されている。
【００３４】
このように、画像データをメモリブロックとして管理し、その複数のメモリブロックをページとして管理し、その複数のページをファイルとして管理し、その複数のファイルをジョブとして管理している。
【００３５】
図３は、図２で説明した画像データに関する各管理レコード用のメモリ領域を表した模式図である。
【００３６】
図３において、３０１はジョブ管理レコード用メモリ領域、３０２はファイル管理レコード用メモリ領域、３０３はページ管理レコード用メモリ領域、３０４はメモリブロック管理レコード用メモリ領域、３０５は画像データ格納用メモリ領域である。このように、メモリには、それぞれの管理レコードに対して、各々専用のメモリ領域が割り当てられている。さらに、３０６は管理レコード以外としても使用する汎用メモリ領域である。
【００３７】
図４に、本願クレームにおける画像データ管理制御に関する大まかなフローチャートを示す。
【００３８】
ジョブを受け付けて、そのジョブに関する画像データを格納する際には、まず、ステップＳ５０１にて、１つのジョブ管理レコードを記憶するための記憶域を獲得する処理を行う。ここでの獲得処理の詳しい内容については、次の図５を用いて詳述する。
【００３９】
次に、ステップＳ５０２にて、ステップＳ５０１の結果を確認する。獲得が成功すればステップＳ５０３の処理へ移行する。獲得できなければ処理を終了しエラーを返す。
【００４０】
ステップＳ５０３においては、獲得したジョブ管理レコード用の記憶域にジョブ仕様等を格納しステップＳ５０４の処理へ移行する。ステップＳ５０４では、１つのファイル管理レコードを記憶するための記憶域を獲得する処理を行う。ここでの獲得処理の詳しい内容についても、次の図５を用いて詳述する。
【００４１】
次に、ステップＳ５０５にて、ステップＳ５０４の結果を確認する。獲得が成功すればステップＳ５０６の処理へ移行する。獲得できなければ処理を終了しエラーを返す。ステップＳ５０６においては、獲得したファイル管理レコード用の記憶域にファイル属性などの情報を書き込み、更に、そのジョブの先頭ファイルに関するファイル管理レコードであれば、ステップステップＳ５０１において獲得したジョブ管理レコード用の記憶域に、先頭ファイル管理レコードへのリンクを書き込む。先頭ファイルに関するファイル管理レコードでなければ、前のファイル管理レコードへのポインタを書き込み、前のファイル管理レコードに次のファイル管理レコードへのポインタを書き込む。
【００４２】
次に、ステップＳ５０７にて、１つのページ管理レコードを記憶するための記憶域を獲得する処理を行う。ここでの獲得処理の詳しい内容についても、次の図５を用いて詳述する。
【００４３】
ステップＳ５０８にて、ステップＳ５０７の結果を確認し、獲得が成功すればステップＳ５０９の処理へ移行する。獲得できなければ獲得処理を終了しエラーを返す。
【００４４】
ステップＳ５０９においては、獲得したページ管理レコード用の記憶域にページ属性などの情報を書き込み、更に、そのファイルの先頭ページに関するページ管理レコードであれば、ステップＳ５０４において獲得したファイル管理レコード用の記憶域に、先頭ページ管理レコードへのリンクを書き込む。先頭ページに関するページ管理レコードでなければ、前のページ管理レコードへのポインタを書き込み、前のページ管理レコードに次のページ管理レコードへのポインタを書き込む。
【００４５】
ステップＳ５１０においては、１つのメモリブロック管理レコードを記憶するための記憶域を獲得する処理を行う。ここでの獲得処理の詳しい内容についても、次の図５を用いて詳述する。次に、ステップＳ５１１にて、ステップＳ５１０の結果を確認する。獲得が成功すればステップＳ５１２の処理へ移行する。獲得できなければ処理を終了しエラーを返す。
【００４６】
ステップＳ５１２においては、ここで書き込むメモリブロック管理レコードがそのページの先頭メモリブロックに関するメモリブロック管理レコードであれば、ステップＳ５０７において獲得したページ管理レコード用の記憶域に、先頭メモリブロック管理レコードへのリンクを書き込む。先頭メモリブロックに関するメモリブロック管理レコードでなければ、前のメモリブロック管理レコードへのポインタを書き込み、前のメモリブロック管理レコードに次のメモリブロック管理レコードへのポインタを書き込む。そして、ステップＳ５１３にて、画像データの全て或いは一部を画像データ格納用メモリ領域３０５に書き込みステップＳ５１４の処理へ移行する。ステップＳ５１４では、メモリブロック管理レコードに、画像データ格納用メモリ領域へのポインタを書き込み、ステップＳ５１５の処理へ移行する。
【００４７】
ステップＳ５１５では、そのページに含まれる画像データの書き込みが終了したかどうかを確認し、終了していればステップＳ５１６の処理へ移行する。終了していなければステップＳ５１０の処理へ移行する。ステップＳ５１６では、次のページがあるかどうかを確認し、なければステップＳ５１７の処理へ移行する。あればステップＳ５０７の処理へ移行する。ステップＳ５１７では、次のファイルがあるかどうかを確認し、なければ画像データ格納処理を終了して正常終了を返す。あればステップＳ５０４の処理へ移行する。
【００４８】
図５は、ＭＦＰ２００における機能的構成を示すブロック図である。
【００４９】
ＭＦＰ２００は、機能的構成として、ジョブ管理レコードの記憶域を獲得する獲得部４０１と、ファイル管理レコードの記憶域を獲得する獲得部４０２と、ページ管理レコードの記憶域を獲得する獲得部４０３と、メモリブロック管理レコードの記憶域を獲得する獲得部４０４とを有する。
【００５０】
また、ジョブ管理レコード格納用メモリ領域３０１を管理するためのジョブ管理レコード格納用メモリ領域管理部４０５と、ファイル管理レコード格納用メモリ領域３０２を管理するためのファイル管理レコード格納用メモリ領域管理部４０６と、ページ管理レコード格納用メモリ領域３０３を管理するためのページ管理レコード格納用メモリ領域管理部４０７と、メモリブロック管理レコード用メモリ領域３０４を管理するためのメモリブロック管理レコード用メモリ領域管理部４０８と、を含む。
【００５１】
また更に、各管理レコードの記憶域を獲得するために検索すべきメモリ領域の順序を設定する設定部４０９を備えている。
【００５２】
獲得部４０１〜４０４のそれぞれは、管理部４０５〜４０８に対し、管理レコードを記憶するための記憶域を各メモリ領域において獲得するよう、そのサイズを指定した獲得指示を送ることができる。
【００５３】
管理部４０５〜４０８は、何れかの獲得部４０１〜４０４から、獲得指示を受けると、指定サイズ以上であって、かつ、その管理部に対応する管理レコード１つ分のサイズの整数倍の記憶域をメモリ領域に確保することができる。
【００５４】
これらの４０１〜４０９に示す各機能要素は、ＣＰＵ１８０がＲＯＭ９５に格納されたプログラムモジュールを実行することによって、その機能を実現するものである。
【００５５】
次に、この機能構成を用いた記憶域獲得処理の流れについて説明する。まず、図４のステップＳ５０１に相当する、ジョブ管理レコードの記憶域の獲得処理について説明する。
【００５６】
何らかのジョブを受け付けた場合、ジョブ管理レコード記憶域獲得部４０１は、そのジョブのジョブ管理レコードを格納するための記憶域が、ジョブ管理レコード格納用メモリ領域３０１に存在するか否かを、ジョブ管理レコード格納用メモリ領域管理部４０２に問い合わせる。
【００５７】
ジョブ管理レコード格納用メモリ領域３０１に、ジョブ管理レコードを記憶するための記憶域を確保できる場合には、その記憶域を確保してレコード格納処理に進む。つまり、図４のステップＳ５０３に進む。
【００５８】
一方、ジョブ管理レコード格納用メモリ領域３０１に、ジョブ管理レコードを記憶するための記憶域が残っていない場合には、その旨をジョブ管理レコード格納用メモリ領域管理部４０５がジョブ管理レコード記憶域獲得部４０１に伝える。ジョブ管理レコード記憶域獲得部４０１は、他のメモリ領域においてその記憶域を獲得すべく、一旦、順序設定部４０９に、次に問い合わせるべきメモリ領域は３０２〜３０４の何れであるか、を問い合わせる。
【００５９】
順序設定部４０９が、次にファイル管理レコード格納用メモリ領域３０２に問い合わせるべきとの回答を行なった場合には、ジョブ管理レコード記憶域獲得部４０１は、ファイル管理レコード格納用メモリ領域管理部４０６に、１つのジョブ管理レコードを格納するための記憶域がファイル管理レコード格納用メモリ領域３０２に存在するか否かを、問い合わせる。
【００６０】
ファイル管理レコード格納用メモリ領域３０２に、ジョブ管理レコードを記憶するための記憶域を確保できる場合には、その記憶域を確保してレコード格納処理（図４のステップＳ５０３）に進む。ただし、このとき、ファイル管理レコード格納用メモリ領域管理部４０６は、ファイル管理レコード格納用メモリ領域３０２において、ジョブ管理レコードの１レコード分の記憶域そのものではなく、ジョブ管理レコードの１レコード分の記憶域を含む、ファイル管理レコードのｎレコード分の記憶域（ｎは１以上の整数）を確保する。つまり、ファイル管理レコード格納用メモリ領域３０２においては、あくまでも、ファイル管理レコードの記憶域のサイズ単位で、領域の獲得や開放が行なわれる。
【００６１】
一方、ファイル管理レコード格納用メモリ領域３０２に、ジョブ管理レコードを記憶するための記憶域が残っていない場合には、その旨をファイル管理レコード格納用メモリ領域管理部４０６がジョブ管理レコード記憶域獲得部４０１に伝える。ジョブ管理レコード記憶域獲得部４０１は、他のメモリ領域においてその記憶域を獲得すべく、一旦、順序設定部４０９に、次に問い合わせるべきメモリ領域は３０３〜３０４の何れであるか、を問い合わせる。
【００６２】
同様にして、１つのジョブ管理レコードを記憶するための記憶域が、ページ管理レコード格納用メモリ領域３０３やメモリブロック管理レコード用メモリ領域３０４から獲得できるか否かを順番に判定し、いずれかのメモリ領域からその記憶域を獲得しようとする。ただし、これらの場合にも、ページ管理レコード格納用メモリ領域３０３やメモリブロック管理レコード用メモリ領域３０４で確保するのは、ジョブ管理レコードの１レコード分の記憶域そのものではなく、ジョブ管理レコードの１レコード分の記憶域を含む、ページ管理レコードのｎレコード分の記憶域や、メモリブロック管理レコードのｎレコード分の記憶域（ｎは１以上の整数）である。つまり、各管理レコード格納用メモリ領域３０１〜３０４においては、あくまでも、そこに格納すべき管理レコードの１レコードのサイズ単位で、領域の獲得や開放が行なわれる。
【００６３】
なお、もし、何れのメモリ領域にも１つのジョブ管理レコードを記憶するための記憶域が確保できない場合には、図４のステップＳ５０２においてＮＯの判定となり、エラーを返す。
【００６４】
以上、ジョブ管理レコードの記憶域の獲得処理（Ｓ５０１）について説明したが、ファイル管理レコードの記憶域の獲得処理（Ｓ５０４）や、ページ管理レコードの記憶域の獲得処理（Ｓ５０７）や、メモリブロック管理レコードの記憶域の獲得処理（Ｓ５１０）についても、同様の処理が行なわれる。つまり、まず、専用のメモリ領域において、空き領域を探し、そこで記憶域が確保できない場合に他のメモリ領域において記憶域を確保しようとする。他のメモリ領域を参照する順番は、順序設定部４０９において決定される。
【００６５】
ここで、管理レコード格納用メモリ領域から管理レコードの記憶域を獲得しようとする順番について説明する。例えば、以下の４パターンが考えられる。
【００６６】
（１）管理レコードのリンク順である。例えば、ジョブ管理レコードには、ファイル管理レコードへのポインタが含まれているので、ジョブ管理レコード格納用メモリ領域３０１が不足している場合には、ファイル管理レコード格納用メモリ領域３０２からの獲得を図る。それにも失敗した場合には、次に、ページ管理レコード格納用メモリ領域３０３、メモリブロック管理レコード格納用メモリ領域３０４の順に、ジョブ管理レコードの記憶域の確保を図る。
【００６７】
（２）ジョブ管理レコード用メモリ領域３０１、ファイル管理レコード用メモリ領域３０２、ページ管理レコード用メモリ領域３０３、メモリブロック管理レコード用メモリ領域３０４の間で、使用率（メモリ領域全体から見た使用領域の占有率）の少ない順番である。
【００６８】
（３）ジョブ管理レコード用メモリ領域３０１、ファイル管理レコード用メモリ領域３０２、ページ管理レコード用メモリ領域３０３、メモリブロック管理レコード用メモリ領域３０４の間で、総メモリサイズの大きい順番である。
【００６９】
（４）ジョブ管理レコード用メモリ領域３０１、ファイル管理レコード用メモリ領域３０２、ページ管理レコード用メモリ領域３０３、メモリブロック管理レコード用メモリ領域３０４の間で、残量の多い順番である。
【００７０】
なお、図５には示されていないが、専用のメモリ領域が不足した場合、画像データ格納用メモリ領域３０５や汎用メモリ領域３０６の空き具合を確認して、それらの領域に各管理レコードの記憶域を確保しても良い。その場合、順序設定部４０９は、これらのメモリ領域３０５、３０６も含めて、何れのメモリ領域から順番に記憶域の確保を図るかを決定することになる。
【００７１】
図６は、各管理レコード用メモリ領域３０１〜３０４をどのように使用するかについて順を追って説明するための図である。ただし、ここで示すメモリ領域間のサイズ比や１つの管理レコードのサイズ比や、記憶される管理レコードの数などは例示に過ぎない。
【００７２】
ジョブ管理レコード、ファイル管理レコード、ページ管理レコード、メモリブロック管理レコードは、それぞれ、１単位のサイズが異なる。そして、各メモリ領域は、それぞれの管理レコードの整数個分のサイズとなっている。通常の使用では、ジョブ管理レコード用メモリ領域３０１にはジョブ管理レコードのみが格納され、ファイル管理レコード用メモリ３０２にはファイル管理レコードのみが格納され、ページ管理レコード用メモリ領域３０３にはページ管理レコードのみが格納され、メモリブロック管理レコード用メモリ領域３０４にはメモリブロック管理レコードのみが格納される。従って、４０１に示すように、各メモリ領域には、各管理レコードのサイズ単位に区切りがあるかのように考えることができる。
【００７３】
６０１に示す空の状態から、２つのジョブが発生すると、管理レコード用のメモリ領域は例えば、６０２に示す状態になる。次に、１つのジョブが実行されてレコードが開放されると、例えば、６０３に示す状態となる。そして、新たに１つのジョブを記憶すると、例えば、６０４に示す状態となる。ここまでの流れは従来と同様である。６０４に示す状態では、ページ管理レコード用メモリ領域がフルの状態になっている。従って、更にジョブが発生すると、ページ管理レコード用メモリ領域には、ページ管理レコードを格納する記憶域を確保することができない。従って、従来の処理ではこの時点でエラー終了していた。
【００７４】
しかし、本実施形態においては、６０５に示すようにメモリブロック管理レコード用メモリ領域内に、ページ管理レコードを記憶する記憶域を確保することが可能である。そして、その場合、メモリブロック管理レコード１つ分のサイズの整数倍（この図では２倍）の記憶域を確保する。従って、メモリブロック管理レコード２つ分の領域６０６にページ管理レコード１つを記憶し、その後の領域６０７に、そのページ管理レコードにリンクするメモリブロック管理レコードが記憶される。次のページ管理レコードについては、更に、メモリブロック管理レコード２つ分の領域６０８にページ管理レコード１つを記憶し、その後の領域６０９に、そのページ管理レコードにリンクするメモリブロック管理レコードが記憶される。
【００７５】
その後、３つのジョブが実行されると、６１０に示すようにメモリ領域が開放され、更に１つのジョブが実行されると、６１１に示すようにメモリ領域が開放される。
【００７６】
（他の実施形態）
以上、本発明の実施形態について詳述したが、本発明は、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【００７７】
なお、本発明は、前述した実施形態の機能を実現するプログラムを、システム或いは装置に直接或いは遠隔から供給し、そのシステム或いは装置が、供給されたプログラムコードを読み出して実行することによっても達成される。従って、本発明の機能処理をコンピュータで実現するために、コンピュータにインストールされるプログラムコード自体も本発明の技術的範囲に含まれる。
【００７８】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等、プログラムの形態を問わない。
【００７９】
プログラムを供給するための記録媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などがある。
【００８０】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明のクレームに含まれるものである。
【００８１】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【００８２】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
【００８３】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現される。
【図面の簡単な説明】
【００８４】
【図１】本発明の実施の形態としてのＭＦＰのハードウェア構成を示す概略ブロック図である。
【図２】本発明の実施の形態としてのＭＦＰで実行される画像管理方法を示す図である。
【図３】管理レコードとして使用するメモリ領域を表した模式図である。
【図４】画像データ管理制御に関するフローチャートである。
【図５】本発明の実施の形態としてのＭＦＰの機能的構成を示すブロック図である。
【図６】本発明の実施の形態による、管理レコードの格納の流れを説明する図である。
【図１】
2006004013.tif 000003
【図２】
2006004013.tif 000004
【図３】
2006004013.tif 000005
【図４】
2006004013.tif 000006
【図５】
2006004013.tif 000007
【図６】
2006004013.tif 000008