JP2014164358A - 画像処理装置 - Google Patents

画像処理装置 Download PDF

Info

Publication number
JP2014164358A
JP2014164358A JP2013032650A JP2013032650A JP2014164358A JP 2014164358 A JP2014164358 A JP 2014164358A JP 2013032650 A JP2013032650 A JP 2013032650A JP 2013032650 A JP2013032650 A JP 2013032650A JP 2014164358 A JP2014164358 A JP 2014164358A
Authority
JP
Japan
Prior art keywords
data
area
virtual address
mapping
address space
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.)
Granted
Application number
JP2013032650A
Other languages
English (en)
Other versions
JP5892961B2 (ja
Inventor
Masato Tanba
正登 丹波
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.)
Kyocera Document Solutions Inc
Original Assignee
Kyocera Document Solutions 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 Kyocera Document Solutions Inc filed Critical Kyocera Document Solutions Inc
Priority to JP2013032650A priority Critical patent/JP5892961B2/ja
Publication of JP2014164358A publication Critical patent/JP2014164358A/ja
Application granted granted Critical
Publication of JP5892961B2 publication Critical patent/JP5892961B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】 画像処理装置において、プロセッサーやメモリーなどのリソースに対する負荷を小さくしつつ、属性データと画像データとを仮想アドレス空間内でそれぞれ連続させる。
【解決手段】 画像形成装置1において、データ生成部32は、複数ページ画像のそれぞれについて、ページ画像内の各画素の色および/または階調を示す画像データとページ画像内の各画素の属性を示す属性データとを、順番に生成しRAM12に記憶する。そして、マッピング設定部33は、複数ページ画像についての属性データが仮想アドレス空間で連続するように、また、複数ページ画像についての画像データが仮想アドレス空間で連続するように、マッピングデータを設定する。
【選択図】 図1

Description

本発明は、画像処理装置に関するものである。
近年、複合機などの画像形成装置には、オペレーティングシステムが実装されており、オペレーティングシステムによる仮想記憶方式のメモリー管理が実現されている(例えば特許文献1参照)。
特開2001−213011号公報
画像形成装置などの画像処理装置では、ページ記述言語で記述された印刷データに対してラスタライズ処理を行うことで、色情報および/または階調情報を有する画像データと、属性情報を有する属性データとが順番に生成され、メモリーなどに記憶される。その際、ラスタライズ処理のページ順に沿って画像データおよび属性データが配列されて記憶される。
図7は、画像データおよび属性データの記憶状態の一例を示す図である。図7において、属性データ101a,102a,103aは、第1ページから第3ページまでの各ページの属性データであり、画像データ101b,102b,103bは、第1ページから第3ページまでの各ページの画像データである。
上述のように属性データ101a〜103aおよび画像データ101b〜103bが配列されて記憶される場合、図7に示すように、属性データ101a〜103aと画像データ101b〜103bが交互に配列される。しかしながら、属性データ101a〜103aと画像データ101b〜103bとで異なる処理を行う場合、その処理を高速に行うために、属性データ101a〜103aと画像データ101b〜103bとを、仮想アドレス空間内でそれぞれ連続させておく必要がある。
このため、図7に示すように、memcpyなどのシステムコールを使用して、それぞれが連続するように、属性データ101a〜103aと画像データ101b〜103bとを移動させている。
しかしながら、memcpyなどのシステムコールを使用して属性データ101a〜103aおよび画像データ101b〜103bを移動させる場合、そのシステムコールの実行によるプロセッサーやメモリーなどのリソースに対する負荷が大きいため、他の処理が遅延する可能性がある。
本発明は、上記の問題に鑑みてなされたものであり、プロセッサーやメモリーなどのリソースに対する負荷を小さくしつつ、属性データと画像データとを仮想アドレス空間内でそれぞれ連続させるようにすることができる画像処理装置を得ることを目的とする。
本発明に係る画像処理装置は、第1プロセスと第2プロセスとに共有される共有メモリー領域が確保される記憶装置と、複数ページ画像のそれぞれについて、前記ページ画像内の各画素の色および/または階調を示す画像データと前記ページ画像内の各画素の属性を示す属性データとを、順番に生成し前記記憶装置に記憶するデータ生成部と、前記第1プロセスにおいて、前記記憶装置の物理アドレス空間と前記第1プロセスの仮想アドレス空間との対応関係を示すマッピングデータを、前記複数ページ画像についての前記画像データおよび/または前記属性データが前記仮想アドレス空間で連続するように設定し前記共有メモリー領域に記憶するマッピング設定部と、前記第1プロセスとは異なる第2プロセスにおいて、あるデータ領域についての前記第1プロセスの仮想アドレス空間における領域特定情報を取得し、前記共有メモリー領域内の前記マッピングデータを参照して、取得した前記領域特定情報に基づき、前記データ領域に対応する前記物理アドレス空間での領域を特定し、特定した前記物理アドレス空間における領域を、前記第2プロセスの仮想アドレス空間にマッピングするマッピング参照部とを備える。
本発明によれば、画像処理装置において、プロセッサーやメモリーなどのリソースに対する負荷を小さくしつつ、属性データと画像データとを仮想アドレス空間内でそれぞれ連続させるようにすることができる。
図1は、本発明の実施の形態に係る画像処理装置の構成を示すブロック図である。 図2は、図1に示す画像処理装置におけるメインプロセスでのマッピング設定部の動作について説明するフローチャートである。 図3は、図1に示す画像処理装置によるメインプロセスでの仮想アドレスの再マッピングについて説明する図である。 図4は、図1に示す画像処理装置によるメインプロセスでの仮想アドレスの再マッピング前後の画像データおよび属性データの記憶状態の一例を示す図である。 図5は、図1に示す画像処理装置において、メインプロセスで管理されているデータを他のプロセスからのアクセスする際の処理について説明するシーケンス図である。 図6は、図5に示す他のプロセスの仮想アドレス空間へのデータ領域のマッピングの一例について説明する図である。 図7は、画像データおよび属性データの記憶状態の一例を示す図である。
以下、図に基づいて本発明の実施の形態を説明する。
図1は、本発明の実施の形態に係る画像処理装置の構成を示すブロック図である。図1に示す画像処理装置1は、プリンター、複合機などの画像形成装置に内蔵され、ネットワークインターフェイス2、印刷装置3などに接続されている。画像処理装置1は、コンピューター、ASIC(Application Specific Integrated Circuit)などで構成されている。ネットワークインターフェイス2は、図示せぬホスト装置などとネットワークを介して通信を行う通信装置である。ネットワークインターフェイス2は、例えば、図示せぬホスト装置から、ページ記述言語で記述された印刷データを受信する。印刷装置3は、画像処理装置1から画像データを供給され、その画像データに対する各種処理(ハーフトーニングなど)を行い、処理後のデータに基づいて印刷を実行する。
この画像処理装置1は、演算処理装置11、RAM(Random Access Memory)12、および補助記憶装置13を有する。
演算処理装置11は、CPU(Central Processing Unit)、ASICなどで、各種処理を実行する処理部を実現する。RAM12は、演算処理装置11による処理に関連する各種データを一時的に記憶する揮発性の記憶装置である。補助記憶装置13は、演算処理装置11のCPUにより実行されるプログラムや、各種データを記憶している不揮発性の記憶装置である。補助記憶装置13としては、ROM(Read Only Memory)、フラッシュメモリー、ハードディスクドライブなどが使用される。
演算処理装置11では、例えば、Linux(登録商標)などのマルチプロセス方式のオペレーティングシステムが稼動し、メインプロセス21において、アドレス管理部31、データ生成部32、およびマッピング設定部33が実現され、他の1または複数のプロセス22のそれぞれにおいて、マッピング参照部41およびデータ処理部42が実現される。
アドレス管理部31は、RAM12の物理アドレス空間と仮想アドレス空間との対応関係を示すマッピングデータに基づいて、仮想アドレス空間と物理アドレス空間との間のアドレス変換を行う。このマッピングデータは、オペレーティングシステムによる共有メモリー領域に記憶される。
このマッピングデータには、各データ領域について、そのデータ領域の物理アドレス空間での領域特定情報と仮想アドレス空間での領域特定情報とが互いに関連付けられている。
通常、Linux(登録商標)などのマルチプロセス方式のオペレーティングシステムでは、複数のプロセスが、それぞれ、独立した仮想アドレス空間を使用し、それぞれの仮想アドレス空間を、互いに異なる物理アドレス領域に関連付けている。したがって、通常、あるプロセスは、他のプロセスの仮想アドレスを関知していないため、他のプロセスのデータに対するアクセスを直接的に行うことはできない。このため、複数のプロセスがアクセス可能な共有メモリー領域などを使用してプロセス間通信が実現されている。
この実施の形態では、メインプロセス21およびプロセス22に共有される共有メモリー領域がRAM12に確保され、上述のマッピングデータが、その共有メモリー領域に記憶される。これにより、メインプロセス21およびプロセス22からマッピングデータがアクセス可能となっている。
データ生成部32は、複数ページ画像のそれぞれについて、ページ画像内の各画素の色および/または階調を示す画像データとページ画像内の各画素の属性を示す属性データとを、順番に生成しRAM12に記憶する。この実施の形態では、データ生成部32は、ページ記述言語で記述された印刷データからバンドごとに画像データと属性データとを生成しRAM12に記憶する。なお、属性データは、画像処理において色処理、階調処理などの設定に使用される。属性データは、例えば文字に属する画素か否かといった画素ごとの情報を含む。また、データ生成部32は、予め指定されている物理アドレスに画像データおよび属性データを書き込むようにしてもよいし、予め指定されている仮想アドレスに画像データおよび属性データを書き込むようにしてもよい。
マッピング設定部33は、メインプロセス21において、複数ページ画像についての属性データおよび/または画像データが仮想アドレス空間で連続するように、共有メモリー領域内にマッピングデータを設定する。つまり、このマッピングデータは、メインプロセス21のマッピングデータである。
この実施の形態では、マッピング設定部33は、仮想アドレス空間内において所定サイズの仮想アドレス領域を確保し、画像データがその仮想アドレス領域内の所定の第1の仮想アドレスから連続するように、属性データがその仮想アドレス領域内の所定の第2の仮想アドレスから連続するようにマッピングデータを設定する。
マッピング参照部41は、メインプロセス21とは異なるプロセス22において、(a)あるデータ領域(プログラム上では、あるデータ変数、あるデータ配列など)についてのメインプロセス21の仮想アドレス空間における領域特定情報を取得し、(b)共有メモリー領域内のマッピングデータを参照して、取得した領域特定情報に基づき、そのデータ領域に対応する物理アドレス空間での領域を特定し、(c)特定した物理アドレス空間における領域を、当該プロセス22の仮想アドレス空間にマッピングする。
なお、メインプロセス21は、1つであるが、プロセス22は、1つでも複数でもよい。
ここでは、データ領域は、例えば、上述の1ページ分の画像データまたは1ページ分の属性データの領域である。
データ処理部42は、プロセス22において、メインプロセス21によって管理されているデータ(ここでは、上述の画像データおよび属性データの少なくとも一方)に対して所定の処理を実行する。データ処理部42により実行される処理は、プロセス22ごとに異なるものでもよいし、同一のものでもよい。
この実施の形態では、メインプロセス21の仮想アドレス空間での注目領域についての領域特定情報として、マッピング設定部33により確保される仮想アドレス領域の先頭から注目領域の先頭までのオフセットと、注目領域のサイズとの対が使用される。
そのため、この実施の形態では、マッピング参照部41は、領域特定情報として、メインプロセス21の仮想アドレス空間における仮想アドレス領域の先頭から、プロセス22からアクセスしたいデータ領域の先頭までのオフセット、およびそのデータ領域のサイズを取得し、取得したオフセットおよびサイズを検索キーとして、マッピングデータ内に登録されている、メインプロセス21の仮想アドレス空間での注目領域についての領域特定情報を検索し、ヒットした領域特定情報に関連付けられている物理アドレス領域の領域特定情報(例えば、領域の先頭アドレスと領域サイズ)を、そのプロセス22からアクセスしたいデータ領域の領域特定情報として特定する。
さらに、この実施の形態では、マッピング設定部33は、共有メモリー領域内のマッピングデータを参照して、指定されたデータ領域のオフセットおよびサイズを特定し、領域特定情報としてマッピング参照部41に供給する。
さらに、この実施の形態では、マッピング参照部41は、当該プロセス22内で、データ処理部42によるそのデータ領域に対するデータアクセス要求が発生したときに、上述のように特定した物理アドレス空間での領域を、プロセス22の仮想アドレス空間にマッピングし、そのデータアクセス要求によるデータアクセスが終了した後に、その物理アドレス空間での領域を、当該プロセス22の仮想アドレス空間からアンマッピングする。
また、この実施の形態では、この仮想アドレス領域は、データ生成部32により生成される画像データおよび属性データに割り当てられる、RAM12の物理アドレス領域より広く確保される。
次に、上記画像処理装置1の動作について説明する。
ここでは、メインプロセス21の仮想アドレス空間と物理アドレス空間とのマッピングと、他のプロセス22によるデータアクセスについて説明する。
(1)メインプロセス21の仮想アドレス空間と物理アドレス空間とのマッピング
まず、データ生成部32は、ネットワークインターフェイス2により受信された印刷データに対してラスタライズ処理を行い、印刷データから画像データと属性データをバンドごとに生成し、印刷画像の1ページごとにRAM12に記憶する。
印刷データに基づき全ページの画像データと属性データが生成され、RAM12に記憶されると、マッピング設定部33は、マッピングデータの設定を次にようにして行う。
図2は、図1に示す画像処理装置1のメインプロセス21でのマッピング設定部33の動作について説明するフローチャートである。
まず、マッピング設定部33は、先頭ページの属性データの先頭物理アドレスおよびデータ長を特定するとともに(ステップS1)、先頭ページの画像データの先頭物理アドレスおよびデータ長を特定する(ステップS2)。
次に、マッピング設定部33は、後続のページのデータが存在するか否かを判定し(ステップS3)、後続のページのデータが存在すれば、次のページの属性データの先頭物理アドレスおよびデータ長を特定するとともに(ステップS4)、そのページの画像データの先頭物理アドレスおよびデータ長を特定する(ステップS5)。その後、ステップS3に戻り、最終ページまで、マッピング設定部33は、各ページの、属性データの先頭物理アドレスおよびデータ長、並びに、画像データの先頭物理アドレスおよびデータ長を特定する。特定したアドレスおよびデータ長は、RAM12の所定の領域に記憶される。
なお、属性データおよび画像データのデータ長は、それぞれ固定であれば、最初に1度だけ特定すればよい。
そして、すべてのページについて、属性データの先頭アドレスおよびデータ長、並びに、画像データの先頭アドレスおよびデータ長を特定すると、マッピング設定部33は、マッピングデータを変更して、先頭ページについての、属性データの仮想アドレスを再マッピングするとともに(ステップS6)、画像データの仮想アドレスを再マッピングする(ステップS7)。
図3は、図1に示す画像処理装置1のメインプロセス21での仮想アドレスの再マッピングについて説明する図である。図3(A)は、物理アドレス空間内の属性データ101a〜103aと画像データ101b〜103bを示す図である。図3(B)は、再マッピング前の、仮想アドレス空間内の属性データ101a〜103aと画像データ101b〜103bを示す図である。図3(C)は、再マッピング後の、仮想アドレス空間内の属性データ101a〜103aと画像データ101b〜103bを示す図である。
このとき、図3に示すように、先頭ページの属性データ101aの先頭物理アドレスPA1aから属性データ101aのデータ長L1a分の物理アドレスの範囲は、再マッピング前は仮想アドレスVA1aからデータ長L1a分の仮想アドレスの範囲に関連付けられているが、再マッピング後は仮想アドレスVA11a(つまり、上述の第2の仮想アドレス)からデータ長L1a分の仮想アドレスの範囲に関連付けられる。なお、先頭ページの属性データ101aの仮想記憶領域を移動しない場合には、先頭ページの属性データ101aについては再マッピングを行わないようにしてもよい(この場合、VA1a=VA11a)。
同様に、先頭ページの画像データ101bの先頭物理アドレスPA1bから画像データ101bのデータ長L1b分の物理アドレスの範囲は、再マッピング前は仮想アドレスVA1bからデータ長L1b分の仮想アドレスの範囲に関連付けられているが、再マッピング後は仮想アドレスVA11b(つまり、上述の第1の仮想アドレス)からデータ長L1b分の仮想アドレスの範囲に関連付けられる。
次に、マッピング設定部33は、後続のページのデータが存在するか否かを判定し(ステップS8)、後続のページのデータが存在すれば、マッピング設定部33は、マッピングデータを変更して、次のページについての、属性データの仮想アドレスを再マッピングするとともに(ステップS9)、画像データの仮想アドレスを再マッピングする(ステップS10)。このとき、仮想アドレス空間において、このページの属性データが、1つ前のページの属性データに連続するように、再マッピングが行われる。また、同様に、仮想アドレス空間において、このページの画像データが、1つ前のページの画像データに連続するように、再マッピングが行われる。
そして、すべてのページについて再マッピングが行われると、マッピング設定部33は、この処理を終了する。
図3(A)および図3(B)に示す場合、第2ページの属性データ102aの先頭物理アドレスPA2aから属性データ102aのデータ長L2a分の物理アドレスの範囲は、再マッピング前は仮想アドレスVA2aからデータ長L2a分の仮想アドレスの範囲に関連付けられているが、再マッピング後は仮想アドレスVA12aからデータ長L2a分の仮想アドレスの範囲に関連付けられる。再マッピング後の仮想アドレスVA12aは、次式で、1つ前のページの属性データ101aの仮想アドレスVA11aおよびデータ長L1aから特定される。
VA12a=VA11a+L1a
同様に、第2ページの画像データ102bの先頭物理アドレスPA2bから画像データ102bのデータ長L2b分の物理アドレスの範囲は、再マッピング前は仮想アドレスVA2bからデータ長L2b分の仮想アドレスの範囲に関連付けられているが、再マッピング後は仮想アドレスVA12bからデータ長L2b分の仮想アドレスの範囲に関連付けられる。再マッピング後の仮想アドレスVA12bは、次式で、1つ前のページの画像データ101bの仮想アドレスVA11bおよびデータ長L1bから特定される。
VA12b=VA11b+L1b
第3ページ以降の属性データおよび画像データについても同様に再マッピングが行われる。
図4は、図1に示す画像処理装置1によるメインプロセス21での仮想アドレスの再マッピング前後の画像データおよび属性データの記憶状態の一例を示す図である。
図4に示すように、この実施の形態では、再マッピングは、所定サイズで予め確保された仮想アドレス領域111内で行われる。上述のようにして、マッピングデータを変更することで、物理アドレス空間では属性データ101a〜103aを移動させることなく、仮想アドレス空間において属性データ101a〜103aを連続させている。同様に、マッピングデータを変更することで、物理アドレス空間では画像データ101b〜103bを移動させることなく、仮想アドレス空間において画像データ101b〜103bを連続させている。
このようにして、メインプロセス21における仮想アドレス空間と物理アドレス空間とのマッピングが行われる。
(2)他のプロセス22によるデータアクセス
図5は、図1に示す画像処理装置において、メインプロセス21で管理されているデータを他のプロセス22からのアクセスする際の処理について説明するシーケンス図である。図6は、図5に示す他のプロセス22の仮想アドレス空間へのデータ領域のマッピングの一例について説明する図である。
プロセス22において、マッピング参照部41は、データ処理部42によるデータ領域(メインプロセス21の管理するデータ領域)に対するデータアクセス要求を検出すると(あるいは、その前に予め)、そのデータ領域についてのメインプロセス21の仮想アドレス空間における領域特定情報をマッピング設定部33に要求する(ステップS21)。
マッピング設定部33は、そのデータ領域の領域特定情報の要求を受け付けると、そのデータ領域を特定し、共有メモリー領域内のマッピングデータを参照して、図6に示すように、メインプロセス21内でのそのデータ領域(例えば図6における領域201)のオフセットおよびサイズを特定し(ステップS22)、領域特定情報としてマッピング参照部41に供給する(ステップS23)。
マッピング参照部41は、その領域特定情報を受け付けると、共有メモリー領域内のマッピングデータ内で、取得した領域特定情報を検索キーとして検索を行い、その領域特定情報に合致する仮想アドレス空間での領域に関連付けられている物理アドレス空間での領域を、指定したデータ領域に対応する物理アドレス空間での領域として特定する(ステップS24)。
そして、マッピング参照部41は、特定した物理アドレス空間での領域を、当該プロセス22の仮想アドレス空間にマッピングする(ステップS25)。図6に示す例では、ステップS24およびステップS25の処理において、プロセス22のデータ処理部42が物理アドレス空間の画像データ102bにアクセスしたい場合、まず、マッピング参照部41は、メインプロセス21の仮想アドレス内の領域201のオフセットおよびサイズを取得し、そのオフセットおよびサイズに関連付けてマッピングデータに登録されている物理アドレス空間での領域を特定し、その領域に対して仮想アドレス空間内の領域202をマッピングする。なお、このとき、データ処理部42が参照する既知の仮想アドレスに、その領域をマッピングするようにしてもよい。
このようにしてマッピングが完了した後、データ処理部42は、そのデータ領域の仮想アドレスを指定して、そのデータ領域内のデータにアクセスし、所定のデータ処理を実行する(ステップS26)。このとき、その指定された仮想アドレスが、上述のマッピングに基づいて、物理アドレスに変換され、RAM12上のデータへのアクセスが実行される。
その後、マッピング参照部41は、データアクセス要求によるデータアクセスの終了を検出すると、特定したその物理アドレス空間での領域を、プロセス22の仮想アドレス空間からアンマッピングする(ステップS27)。
このようにして、他のプロセス22は、メインプロセス21において管理されている画像データ、属性データなどにアクセスし、データ処理を実行する。
以上のように、上記実施の形態によれば、マッピング設定部33は、複数ページ画像についての属性データが仮想アドレス空間で連続するように、また、複数ページ画像についての画像データが仮想アドレス空間で連続するように、マッピングデータを設定する。
これにより、物理アドレス空間における移動を伴うmemcpyなどのシステムコールを使用しないため、プロセッサーやメモリーなどのリソースに対する負荷を小さくしつつ、属性データと画像データとを仮想アドレス空間内でそれぞれ連続させるようにすることができる。したがって、例えば、異なる圧縮方式で画像データおよび属性データを圧縮し次段の処理に渡す場合、特にそれぞれをバンドごとにパイプライン処理を行うときには、画像データおよび属性データをそれぞれ連続的に読み出せるため、高速に処理を行うことができる。
さらに、上記実施の形態によれば、マッピング参照部41は、メインプロセス21とは異なるプロセス22において、(a)あるデータ領域についてのメインプロセス21の仮想アドレス空間における領域特定情報を取得し、(b)共有メモリー領域内のマッピングデータを参照して、取得した領域特定情報に基づき、そのデータ領域に対応する物理アドレス空間での領域を特定し、(c)特定した物理アドレス空間における領域を、当該プロセス22の仮想アドレス空間にマッピングする。
これにより、マルチプロセス環境下で上述のようにメインプロセス21においてマッピングの最適化を行っても、他のプロセス22から、メインプロセス21で管理されているデータへのアクセスが可能となる。
なお、上述の実施の形態は、本発明の好適な例であるが、本発明は、これらに限定されるものではなく、本発明の要旨を逸脱しない範囲において、種々の変形、変更が可能である。
例えば、上記実施の形態において、マッピング設定部33は、画像データおよび属性データに関するマッピングのために仮想アドレス空間を確保する際に、その仮想アドレス空間において既に使用されている部分が存在する場合には、マッピングデータを変更して、既に使用されている部分の仮想アドレスを別の仮想アドレスに置き換えるようにしてもよい。これにより、既存のデータを破壊することなく、属性データと画像データとを仮想アドレス空間内でそれぞれ連続させるようにすることができる。
また、上記実施の形態において、マッピング設定部33は、上述の第1および第2の仮想アドレスの一方を、画像データのサイズと属性データのサイズとに基づいて設定するようにしてもよい。例えば、予め確保された仮想アドレス空間の先頭を第2の仮想アドレスとし、予め確保された仮想アドレス空間のサイズに1ページ分の画像データのサイズと1ページ分の画像データのサイズおよび属性データのサイズの和との比を乗じて得られるサイズだけ先頭からオフセットさせた位置を第1の仮想アドレスとする。これにより、予め確保された仮想アドレス領域に記憶可能な画像データおよび属性データのページ数が最大となる。
また、上記実施の形態において、属性データと画像データとを、別々に確保した2つの仮想アドレス領域に記憶するようにしてもよい。
本発明は、例えば、画像形成装置に適用可能である。
1 画像処理装置
12 RAM(記憶装置の一例)
21 メインプロセス(第1プロセスの一例)
22 プロセス(第2プロセスの一例)
31 アドレス管理部
32 データ生成部
33 マッピング設定部
41 マッピング参照部
101a〜103a 属性データ
101b〜103b 画像データ
111 仮想アドレス領域

Claims (8)

  1. 第1プロセスと第2プロセスとに共有される共有メモリー領域が確保される記憶装置と、
    複数ページ画像のそれぞれについて、前記ページ画像内の各画素の色および/または階調を示す画像データと前記ページ画像内の各画素の属性を示す属性データとを、順番に生成し前記記憶装置に記憶するデータ生成部と、
    前記第1プロセスにおいて、前記記憶装置の物理アドレス空間と前記第1プロセスの仮想アドレス空間との対応関係を示すマッピングデータを、前記複数ページ画像についての前記画像データおよび/または前記属性データが前記仮想アドレス空間で連続するように設定し前記共有メモリー領域に記憶するマッピング設定部と、
    前記第1プロセスとは異なる第2プロセスにおいて、あるデータ領域についての前記第1プロセスの仮想アドレス空間における領域特定情報を取得し、前記共有メモリー領域内の前記マッピングデータを参照して、取得した前記領域特定情報に基づき、前記データ領域に対応する前記物理アドレス空間での領域を特定し、特定した前記物理アドレス空間における領域を、前記第2プロセスの仮想アドレス空間にマッピングするマッピング参照部と、
    を備えることを特徴とする画像処理装置。
  2. 前記マッピング設定部は、前記仮想アドレス空間内において所定サイズの仮想アドレス領域を確保し、前記画像データが前記仮想アドレス領域内の所定の第1の仮想アドレスから連続するように、前記属性データが前記仮想アドレス領域内の所定の第2の仮想アドレスから連続するように前記マッピングデータを設定し、
    前記マッピング参照部は、前記領域特定情報として、前記第1プロセスの仮想アドレス空間における前記仮想アドレス領域の先頭から前記データ領域までのオフセット、および前記データ領域のサイズを取得し、取得した前記領域特定情報で前記マッピングデータを検索して、前記データ領域に対応する前記物理アドレス空間での領域を特定すること、
    を特徴とする請求項1記載の画像処理装置。
  3. 前記マッピング設定部は、前記マッピングデータを参照して前記オフセットおよび前記サイズを特定し、前記領域特定情報として前記マッピング参照部に供給することを特徴とする請求項2記載の画像処理装置。
  4. 前記マッピング参照部は、前記第2プロセス内で、前記データ領域に対するデータアクセス要求が発生したときに、特定した前記物理アドレス空間での領域を、前記第2プロセスの仮想アドレス空間にマッピングし、前記データアクセス要求によるデータアクセスが終了した後に、特定した前記物理アドレス空間での領域を、前記第2プロセスの仮想アドレス空間からアンマッピングすることを特徴とする請求項1記載の画像処理装置。
  5. 前記仮想アドレス領域は、前記データ生成部により生成される前記画像データおよび前記属性データに割り当てられる、前記記憶装置の物理アドレス領域より広いことを特徴とする請求項2記載の画像処理装置。
  6. 前記第1の仮想アドレスおよび前記第2の仮想アドレスの一方は、前記画像データのサイズと前記属性データのサイズとに基づいて設定されることを特徴とする請求項2記載の画像処理装置。
  7. 前記マッピング設定部は、前記仮想アドレス領域を確保する際に、その仮想アドレス領域において既に使用されている部分が存在する場合には、前記マッピングデータを変更して、前記既に使用されている部分の仮想アドレスを別の仮想アドレスに置き換えることを特徴とする請求項2記載の画像処理装置。
  8. 前記データ生成部は、ページ記述言語で記述された印刷データからバンドごとに前記画像データと前記属性データとを生成し前記記憶装置に記憶することを特徴とする請求項1から請求項7のうちのいずれか1項記載の画像処理装置。
JP2013032650A 2013-02-21 2013-02-21 画像処理装置 Expired - Fee Related JP5892961B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013032650A JP5892961B2 (ja) 2013-02-21 2013-02-21 画像処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013032650A JP5892961B2 (ja) 2013-02-21 2013-02-21 画像処理装置

Publications (2)

Publication Number Publication Date
JP2014164358A true JP2014164358A (ja) 2014-09-08
JP5892961B2 JP5892961B2 (ja) 2016-03-23

Family

ID=51614942

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013032650A Expired - Fee Related JP5892961B2 (ja) 2013-02-21 2013-02-21 画像処理装置

Country Status (1)

Country Link
JP (1) JP5892961B2 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003248626A (ja) * 2002-02-25 2003-09-05 Ricoh Co Ltd 画像形成装置及びメモリ管理方法
US20030177332A1 (en) * 2002-02-25 2003-09-18 Noriyuki Shiota Information processing apparatus in which processes can reduce overhead of memory access and efficiently share memory
JP2003316588A (ja) * 2002-02-25 2003-11-07 Ricoh Co Ltd 情報処理装置及びメモリマップ方法
JP2004240616A (ja) * 2003-02-05 2004-08-26 Mitsubishi Electric Corp メモリコントローラ及びメモリアクセス制御方法
JP2013012075A (ja) * 2011-06-29 2013-01-17 Kyocera Document Solutions Inc 画像処理装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003248626A (ja) * 2002-02-25 2003-09-05 Ricoh Co Ltd 画像形成装置及びメモリ管理方法
US20030177332A1 (en) * 2002-02-25 2003-09-18 Noriyuki Shiota Information processing apparatus in which processes can reduce overhead of memory access and efficiently share memory
JP2003316588A (ja) * 2002-02-25 2003-11-07 Ricoh Co Ltd 情報処理装置及びメモリマップ方法
JP2004240616A (ja) * 2003-02-05 2004-08-26 Mitsubishi Electric Corp メモリコントローラ及びメモリアクセス制御方法
JP2013012075A (ja) * 2011-06-29 2013-01-17 Kyocera Document Solutions Inc 画像処理装置

Also Published As

Publication number Publication date
JP5892961B2 (ja) 2016-03-23

Similar Documents

Publication Publication Date Title
CN105868028B (zh) 一种进程间共享数据的方法、装置及终端
JP5593060B2 (ja) 画像処理装置、および画像処理装置の動作方法
JP4758794B2 (ja) メモリ領域割り当て制御装置、メモリ領域割り当て制御プログラム、及びメモリ領域割り当て制御方法
US20150113230A1 (en) Directory storage method and query method, and node controller
JP2017501504A5 (ja)
US9256439B2 (en) Parallel processing of two-dimensional data, storage of plural data of the processing results in a cache line and transfer of the data to a memory as in the cache line
JP5832556B2 (ja) 画像処理装置および画像形成装置
JP2014044527A (ja) 情報処理装置及びその制御方法、並びに、そのプログラムと記憶媒体
JP4123368B2 (ja) 情報処理装置
US20170039138A1 (en) Information processing system, information processing method, and recording medium storing an information processing program
JP5393813B2 (ja) メモリー管理装置および画像処理装置
JP5892961B2 (ja) 画像処理装置
CN107025180B (zh) 内存管理方法和装置
US10692171B2 (en) Method of operating virtual address generator and method of operating system including the same
EP2453360A2 (en) Method and apparatus for translating memory access address
JP5501298B2 (ja) 画像処理装置
WO2015161804A1 (zh) 一种Cache分区的方法及装置
JP5958195B2 (ja) 仮想記憶管理システム、仮想記憶管理装置、仮想記憶初期化方法および仮想記憶初期化プログラム
JP2011259511A (ja) 画像処理装置及び画像処理方法
JP2017058738A (ja) 情報処理装置および画像形成装置
US20140306977A1 (en) Image processing apparatus, image processing method, image processing system, and computer readable storage medium
JP6156635B2 (ja) 画像処理装置及び制御プログラム
JP6002649B2 (ja) 画像処理装置
JP4350470B2 (ja) 画像処理装置、画像処理方法及びプログラム
JP2009147439A (ja) 画像形成装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150119

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151021

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151029

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151208

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: 20160128

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160223

R150 Certificate of patent or registration of utility model

Ref document number: 5892961

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees