[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP2010244303A - メモリ管理装置及び画像形成装置 - Google Patents

メモリ管理装置及び画像形成装置 Download PDF

Info

Publication number
JP2010244303A
JP2010244303A JP2009092409A JP2009092409A JP2010244303A JP 2010244303 A JP2010244303 A JP 2010244303A JP 2009092409 A JP2009092409 A JP 2009092409A JP 2009092409 A JP2009092409 A JP 2009092409A JP 2010244303 A JP2010244303 A JP 2010244303A
Authority
JP
Japan
Prior art keywords
area
memory
management
memory space
forming apparatus
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.)
Pending
Application number
JP2009092409A
Other languages
English (en)
Inventor
Ryosuke Ogishi
良輔 大岸
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 Mita 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 Kyocera Mita Corp filed Critical Kyocera Mita Corp
Priority to JP2009092409A priority Critical patent/JP2010244303A/ja
Priority to US12/689,835 priority patent/US8473691B2/en
Priority to CN2010101113827A priority patent/CN101819554B/zh
Publication of JP2010244303A publication Critical patent/JP2010244303A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

【課題】 画像形成装置において、大容量の画像データ等を扱うための連続した大容量のメモリ空間の確保を容易にすること。
【解決手段】 従来の仮想メモリシステムでは、OSがメモリ空間を管理するために、取得するメモリの容量制限やOS管理におかれたメモリ取得・解放動作によって引き起こされたフラグメンテーション等により、連続した大容量のメモリを取得することが困難であったが、物理メモリ空間をOS管理領域とOS非管理領域に分けて仮想メモリ空間に割当て前記OS非管理領域へのアプリケーションプログラムからのアクセスを可能とするOS非管理メモリ領域管理部を有することにより課題を解決した。さらに、OSメモリ領域管理部はウィンドウ領域を経由して、デバッグ用途などでのカーネルから非管理領域へのアクセスも可能となる。
【選択図】図2

Description

仮想メモリシステムにおけるメモリ利用方式の技術に関するものである。
通常仮想メモリ空間を意識したメモリマップ構成では、物理メモリの取り扱いはOSが管理するマッピング機構にその制御が委ねられるので、ユーザが自由に取り扱うことができずプロセス間の連携ができず取り扱えるメモリ量が限られる。
OSが管理するメモリ空間では、メモリの使用・解放を繰り返す方法により細かにメモリが消費されてしまい、メモリ領域のフラグメンテーションが発生して、例えば画像形成装置等の大容量の画像データを扱う機器では、連続した大容量メモリを確保することができず、データ処理の低速化を発生させる原因となっていた。
従来技術として、ページ・テーブルのために物理メモリを余計に消費することのない仮想メモリ方式を提供するための以下の方法がある。アドレス変換テーブル生成器は、システム・バスに接続されており、TLB(Translation Look-aside Buffer)ミス発生時に、CPUによってアクセスされる。そして、アクセスを受ける度に、あらかじめ設定された規則に従って該当するページ・テーブル・エントリを生成する。アドレス変換テーブル生成器にアクセスすることで、メモリ内の領域を使用せず済む。アドレス変換テーブル生成器におけるページ・テーブルの生成規則は、CPUから設定可能とする(特許文献1参照)。
しかし、上記方法はページ・テーブルのメモリ消費を抑える技術であり、これによって確保されるメモリ領域は非常に小さな量であり、画像形成装置で扱われる画像データが必要とする連続した大容量のメモリ空間を確保することはできない。
特開2004−355187号公報
解決しようとする課題は、仮想メモリシステムにおいてユーザが使用する大容量の連続したデータ領域を確保することができなかった点である。
本発明のメモリ管理装置は、仮想メモリ空間を有してメモリ領域の管理を行うメモリ管理装置であって、物理メモリ空間の一部をオペレーティングシステム(OS)が管理する管理領域として確保して当該管理領域を仮想メモリ空間に割当て、前記オペレーティングシステムによるメモリ空間の取得・解放を可能とさせるOS管理領域アクセス手段と、前記物理メモリ空間の管理領域外を非管理領域として確保して当該非管理領域を仮想メモリ空間に割当て、メモリ空間の取得・解放を可能とするOS非管理領域アクセス手段とを有し、前記OS管理領域アクセス手段は、前記オペレーティングシステムが前記非管理領域への参照を可能とするためのウィンドウ領域を有し、該ウィンドウ領域を経由して前記メモリのOS非管理領域へのデータの読込及び書込を可能とさせることを特徴とする。
本発明の画像形成装置は、物理メモリ空間をオペレーティングシステム(OS)が管理可能な管理領域と管理を行わない非管理領域に分けて、前記管理領域を仮想メモリ空間に割当てて前記管理領域内のメモリ空間の取得・解放を可能とさせるOSメモリ領域管理部と、前記非管理領域を仮想メモリ空間に割当てて、アプリケーションプログラムからの前記非管理領域内のメモリ空間の取得・解放を可能とさせるOS非管理メモリ領域管理部とを有し、前記OSメモリ領域管理部は、前記オペレーティングシステムが前記非管理領域への参照を可能とするためのウィンドウ領域を有し、該ウィンドウ領域を経由して前記メモリのOS非管理領域へのデータの読込及び書込を可能とさせることを特徴とする。
本発明の画像形成装置の前記OSメモリ領域管理部は、前記ウィンドウ領域のサイズを必要最小限とすることを特徴としてもよい。
本発明の画像形成装置は、前記非管理領域のメモリ空間にハードウェアからの直接アクセスが可能なDMA転送部を有することを特徴としてもよい。
本発明の画像形成装置は、前記非管理領域に書き込まれた画像データをDMA転送部によって転送されて該画像データの印刷を行う印刷部を有することを特徴としてもよい。
本発明の画像形成装置は、画像を読み込んで画像データに変換するスキャナ部
を有し、前記DMA転送部は、前記スキャナ部により変換された画像データをDMA転送によって前記非管理領域に書き込むことを特徴としてもよい。
本発明のメモリ管理装置は、仮想メモリ空間を有してメモリ領域の管理を行うメモリ管理装置であって、物理メモリ空間の一部をオペレーティングシステム(OS)が管理する管理領域として確保して当該管理領域を仮想メモリ空間に割当て、前記オペレーティングシステムによるメモリ空間の取得・解放を可能とさせるOS管理領域アクセス手段と、前記物理メモリ空間の管理領域外を非管理領域として確保して当該非管理領域を仮想メモリ空間に割当て、メモリ空間の取得・解放を可能とするOS非管理領域アクセス手段とを有し、前記OS管理領域アクセス手段は、前記オペレーティングシステムが前記非管理領域への参照を可能とするためのウィンドウ領域を有し、該ウィンドウ領域を経由して前記メモリのOS非管理領域へのデータの読込及び書込を可能とさせることを特徴とする。
このため、OSが全てのメモリ領域を管理することに起因するメモリ取得の容量制限や、メモリのフラグメンテーション発生などに影響されずに、OS非管理領域のメモリを用いて連続した大容量のメモリを利用可能となる。さらに、OS管理領域アクセス手段はウィンドウ領域を用いることにより、デバッグ用途などでのカーネルから非管理領域へのアクセスも可能となる。
本発明の画像形成装置は、物理メモリ空間をオペレーティングシステム(OS)が管理可能な管理領域と管理を行わない非管理領域に分けて、前記管理領域を仮想メモリ空間に割当てて前記管理領域内のメモリ空間の取得・解放を可能とさせるOSメモリ領域管理部と、前記非管理領域を仮想メモリ空間に割当てて、アプリケーションプログラムからの前記非管理領域内のメモリ空間の取得・解放を可能とさせるOS非管理メモリ領域管理部とを有し、前記OSメモリ領域管理部は、前記オペレーティングシステムが前記非管理領域への参照を可能とするためのウィンドウ領域を有し、該ウィンドウ領域を経由して前記メモリのOS非管理領域へのデータの読込及び書込を可能とさせることを特徴とする。
このため、OSが全てのメモリ領域を管理することに起因するメモリ取得の容量制限や、メモリのフラグメンテーション発生などに影響されずに、OS非管理領域のメモリを用いて連続した大容量のメモリを利用可能となる。さらに、OS管理領域アクセス手段はウィンドウ領域を用いることにより、デバッグ用途などでのカーネルから非管理領域へのアクセスも可能となる。
本発明の画像形成装置の前記OSメモリ領域管理部は、前記ウィンドウ領域のサイズを必要最小限とすることを特徴としてもよい。
このため、ウィンドウ領域に確保されるアドレス空間が実メモリと重なってしまい、メモリ領域が圧迫されるのを抑制可能となり、実メモリ空間を有効に活用できる。
本発明の画像形成装置は、前記非管理領域のメモリ空間にハードウェアからの直接アクセスが可能なDMA転送部を有することを特徴としてもよい。
このため、DMA転送による高速のメモリアクセスを利用して、前記非管理領域のメモリに対してデータの読込・書込みを高速で可能となる。
本発明の画像形成装置は、前記非管理領域に書き込まれた画像データをDMA転送部によって転送されて該画像データの印刷を行う印刷部を有することを特徴としてもよい。
このため、印刷のための画像データとして大容量のデータ領域を非管理領域内に確保して高速のデータ転送が可能となり、印刷部の高性能化に対応する高速度のデータ転送が可能となる。
本発明の画像形成装置は、画像を読み込んで画像データに変換するスキャナ部を有し、前記DMA転送部は、前記スキャナ部により変換された画像データをDMA転送によって前記非管理領域に書き込むことを特徴としてもよい。
このため、スキャナによって得られた大容量の画像データを高速に処理可能となる。
本発明実施例の画像形成装置(メモリ管理装置)の機能ブロック図である。 (A)従来例によるI/O等を除いて全てのメモリ領域をOS管理下においた場合のメモリマップである。(B)本発明実施例1によるデータ参照のための領域であるウィンドウ領域を有するメモリ管理方法でのメモリマップである。(C)本発明実施例2によるウィンドウ領域を最小限にしたメモリマップである。 (A)本発明実施例による物理メモリが1Gバイトの場合のメモリ使用区分の例である。(B)本発明実施例による物理メモリが2Gバイトの場合のメモリ使用区分の例である。(C)本発明実施例による物理メモリが3Gバイトの場合のメモリ使用区分の例である。 本発明実施例の画像形成装置(メモリ管理装置)における、(A)電源立ち上げ時の初期化動作におけるメモリ管理動作のフローチャートである。(B)スキャナ部による画像読み込み時における動作のフローチャートである。
従来の仮想メモリシステムではOSがメモリ空間を管理するために、取得するメモリの容量制限やOS管理におかれたメモリ取得・解放動作によって引き起こされたフラグメンテーション等により、連続した大容量のメモリを取得することが困難であったが、物理メモリ空間をOS管理領域とOS非管理領域に分けて仮想メモリ空間に割当て、前記OS非管理領域へのアプリケーションプログラムからのアクセスを可能とするOS非管理メモリ領域管理部を有することにより課題を解決した。
実施例1のメモリ管理装置の仮想メモリの方式について、図2(A)に示す従来例のメモリマップと、図2(B)に示す実施例1のメモリマップを用いて説明する。実施例1と実施例2の機能ブロックの構成、動作の流れは同じであるので、実施例2において説明する。
図2中において、PROGはプログラムの、APLはアプリケーションの、WINDはウィンドウ領域の略である。
図2において、アドレス空間は32ビットで示される範囲にあり、その上位8ビットのアドレスについて、図中に”00”から”FF”のように16進数により表記した。残りの24ビットは全て”0”であるので省略した。
図2(A)は、従来例によるI/O等を除いて全てのメモリ領域をOS管理下においた場合のメモリマップである。この場合には、標準状態では、ユーザ側にて十分仮想空間を取り扱えるが、すべてがOS管理下にあるのでDMA転送領域など連続領域を動的に確保することは難しい。また、OSの管理によってメモリの取得・解放が繰り返されることでフラグメンテーションが発生してしまい、ユーザが大容量のメモリ領域を取ることができなくなってしまう。
そこで、物理メモリからDMA転送専用領域を確保し、そこをOS管理外の共有メモリとして取り扱う方法をとる。
実施例1のメモリ管理装置では、メモリマップ図2(B)に示すように、独自にOS管理外のメモリ領域を参照するための領域であるウィンドウ領域(図中でのWIND)を有する。
メモリ管理装置は、物理メモリ空間をオペレーティングシステム(OS)が管理可能な管理領域と管理を行わない非管理領域に分けて、前記管理領域を仮想メモリ空間に割当てて前記管理領域内のメモリ空間の取得・解放を可能とさせるOSメモリ領域管理部と、前記非管理領域を仮想メモリ空間に割当てて、アプリケーションプログラムからの前記非管理領域内のメモリ空間の取得・解放を可能とさせるIOMEM(OS非管理メモリ領域管理部)とを有して仮想アドレス空間を管理領域と非管理領域(以降、共有メモリとも呼ぶ)に分ける。
しかしこのままでは、非管理領域(共有メモリ)のアドレス空間にOS側(カーネル)からアクセス手段が無くなってしまう。そこで、実施例1では、管理領域のアドレス空間(以降、カーネル空間と呼ぶ)と非管理領域のアドレス空間(以降、ユーザ空間と呼ぶ)をカーネルから取り扱うことができるように、カーネルの物理空間から一定オフセットをずらした領域(図2(B)0x94000000から0xE0000000の1.2GB)に物理メモリをマッピングしたウィンドウ(WIND)領域を備えた。
このウィンドウ領域を持たせることによりカーネル空間からのデバッグや、ユーザプロセスからの書込みを反映させるためのキャッシュフラッシュ動作、また非DMA(Direct Memory Access)のCPUによるデータ転送を容易に実行することができるようになる。
本発明実施例2の画像形成装置における、メモリ管理方式について以下に説明する。
実施例1の画像形成装置におけるメモリ管理方式では、ウィンドウ領域を1.2GB(ギガバイト)と非常に大きく取ってしまったため、仮想空間でのユーザ利用可能領域が大きく圧迫される。
そこで、カーネル空間での共有メモリ内データへの参照を必要最小量に限定することでウィンドウ領域を削減する。具体的な例として図2(C)に示すように、ウィンドウ領域(0xD4000000から0xE0000000の192MB)を作成する。これにより、DMAによる転送用とその他用途のメモリを利用しつつも、ユーザ空間を十分確保することが可能である。
実施例2では、以下の方法によりユーザに割当てるメモリ領域(ユーザ空間)を確保する。
(1)OS(Operating System)の初期化時に予めプロセスにて共有する目的が明確になっているサイズの共有メモリをOS管理外の領域に確保する。
(2)この管理領域外のメモリは、OSの制約を受けることなくユーザ空間へマッピングすることが可能になり、ユーザ空間からのメモリ確保時にメモリ不足の事態を招くこがなくなる。またOS管理外とすることでより広範にメモリをマッピングすることができる。
(3)より仮想メモリを有効利用するために上記管理外の領域を確保し、物理メモリを直接閲覧するためのカーネル仮想領域を削減するが、管理外領域に確保した物理メモリは主にDMAなどハードウェア・アクセスに限定した領域に割り当てることによって、直接参照する可能性は低いため、この拡張のデメリットは少ない。
さらに必要最小限のウィンドウ領域を有することにより、実施例1と同じくカーネル側からのユーザ空間(OS非管理領域)へのアクセスが可能となる。実施例2では、実施例1に比較してウィンドウ領域が狭いためにユーザ空間のメモリ量も十分に確保することが可能となる。
ウィンドウ領域の必要最小限となる領域のサイズは、画像形成装置デバイスの特性に依存する。デバイスが直接にDMAアクセスするために必要な最低量が、例えば画像形成装置内のスキャナからのDMA転送のために必要なサイズ等により決定される。
さらに、DMAで転送されたデータをユーザアプリケーションから参照する際には、CPUキャッシュと実メモリとの同期をとるためにキャッシュインバリッド処理が必要となる。このキャッシュインバリッドには、仮想アドレスとしてのウィンドウ領域が必要であり、無い場合はコヒーレンシ維持のために動的な確保、解放処理が必要となるため処理パフォーマンスに影響する。これを避けるために、ウィンドウ領域中にあらかじめコヒーレンシ用途のための領域を確保しておく必要がある。
上記のDMA転送のための必要領域及びキャッシュコヒーレンシを保つためのキャッシュインバリッド処理のための必要領域からウィンドウ領域の必要最小限量が決定される。
実施例2のようにウィンドウ領域を最小限とすることにより、共有メモリ空間(OS非管理領域)が増やせることについて、図3のメモリマップを用いて説明する。
図3(A)は、物理メモリが1GBの場合のメモリの使用割当の例、(B)は、物理メモリが2GBの場合の例、(C)は、物理メモリが3GBの場合の例である。物理メモリ量が1GB又は2GBの場合には、いずれもウィンドウ領域が、メモリアドレスの0x80000000以降にあるためにアドレスの重複が発生しない。この場合、実施例1のようにウィンドウ領域が1.2GBであっても、実施例2のようにウィンドウ領域が192MBであっても問題は発生しない。
しかし、図3(C)に示すように、物理メモリが3GBある場合には、実施例1のように、ウィンドウ領域が0x94000000から開始している場合には、ウィンドウ領域とOS非管理のメモリ領域が重なってしまい、共有メモリの全てを使うことができない。
しかし、実施例2のようにウィンドウ領域を必要最小限とし、開始アドレスを0xD4000000のように、メモリの最終アドレス0xC0000000以降に割当てられているために、アドレスの重複が発生せずに図3(C)のように、例えばOS管理領域を320MB、OS非管理のメモリ領域を2.7GBと大きく取ることが可能であるために、画像形成装置での画像データのように大きなデータを用いる際には非常に有効である。
[構成]
以下に本発明実施例2としての画像形成装置(メモリ管理装置)について説明する。
図1に画像形成装置101の機能ブロック図を示す。
画像形成装置101は、スキャナ部111、HDD(Hard Disk Drive)113、DMA(Direct Memory Access)転送部115、印刷部117、主メモリ119、制御部120、ソフトウェア121、OS(Operating System)123、OSメモリ領域管理部125、IOMEM(OS非管理メモリ領域管理部)127、アプリケーションプログラム129、スキャナデータ読取プログラム131、データ圧縮プログラム133を有する。
以下に各機能ブロックについて説明する。
スキャナ部111は、画像データをスキャンして電子データに変換する。画像データはサイズが大きく、また、連続したメモリ領域を確保して該画像データを書き込む必要があるために、OS非管理メモリ領域にDMA転送部により書き込みが行われる。
HDD(Hard Disk Drive)113は、回転磁気ディスクによる二次記憶装置であり、画像形成装置を動作させるためのプログラムやデータを記憶する。
DMA(Direct Memory Access)転送部115は、例えばスキャナ部111で取得したデータを、CPU(制御部120内に含まれる)を通さずに直接主メモリ119に書込み・読取を可能とさせる機能部である。これにより高速のデータ転送が可能となる。
印刷部117は、画像データを用紙に印刷を行う機能部である。
主メモリ119は、DRAM(Dynamic Random Access Memory)から構成され、一次記憶装置として画像形成装置101のソフトウェア121を必要に応じて記憶させたり、データの書込み・読み取りを行わせるために記憶する記憶装置である。
制御部120は、CPU(Central Processing Unit)と周辺制御回路からなり、画像形成装置101の動作を制御する。
ソフトウェア121は、画像形成装置101の動作を司るためのソフトウェアであり、OS(Operating System)123、アプリケーションプログラム129、その他などからなる。詳細は各項目に後述する。
OS(Operating System)123は、画像形成装置101のハードウェア・ソフトウェアの動作を管理・制御するための基本ソフトウェアである。OS123中には、次項に説明するOSメモリ領域管理部125を有する。
OSメモリ領域管理部(OSメモリ領域管理手段)125は、OSが管理するメモリ領域を確保して割り当て、プログラム等からのメモリの使用要求があると空き領域を見つけて取得し、メモリの使用が済めば、同領域を解放する。従来のメモリ管理方式では、I/O使用領域などの一部を除いたメモリ空間は全てOSメモリ領域管理部125により管理されていたが、本実施例画像形成装置では、カーネルやプログラム等が使用する一部の領域のみをOSメモリ領域管理部125が管理する。
さらにOSメモリ領域管理部125は、装置の起動時にユーザ空間にOS側(カーネル)がアクセス可能とするための共有のアドレス空間であるウィンドウ領域を生成し、カーネルは、同ウィンドウ領域を用いて非管理領域にアクセス可能となる。
IOMEM(OS非管理メモリ領域管理部;OS非管理領域アクセス手段)127は、本発明の最も特徴的な機能部であり、OSの非管理下におかれたメモリ領域(I/O領域は除く)を確保して、当該メモリ領域(OS非管理メモリ領域)を仮想メモリ空間に割当てる。割当てにはMMAP動作を行ってメモリの確保割り当てを行う。当該メモリ領域は、ハードウェア(スキャナ部や印刷部)からは、DMAによる直接アクセスが可能であり、ユーザプログラム(アプリケーションプログラム129)からは、IOMEMを経由してメモリ領域の取得(malloc())・解放(free())が可能である。
例えば、スキャナ部で読み取る画像データ等は、画像サイズ、解像度、カラー深度等によっては非常に大きな値となりうるので、これらの大容量データが連続したメモリ空間を確保可能とするために、IOMEMを通してユーザプログラム(例えば後述のスキャナデータ読取プログラム131)から直接メモリ領域の取得・解放を行わせる。
アプリケーションプログラム129は、画像形成装置101の動作を行うために必要なプログラムで例えば次項に示すようなスキャナデータ読取プログラム131やデータ圧縮プログラム133やその他のプログラムを含む。詳細は、次項に説明する。
スキャナデータ読取プログラム131は、スキャナ部111で読み取った大容量の画像データをDMA転送部115により、直接主メモリ119に書き込ませる機能を実現させる。
データ圧縮プログラム133は、画像データ等のデータ圧縮を行うための機能を実現させる。
[フローチャート]
図4(A)に本発明実施例の画像形成装置101の初期化動作についてのフローチャートを示し、以下に各動作について説明する。
S11:画像形成装置の電源が投入されると、OS123が動作を開始し、OSメモリ領域管理部125が主メモリ119上の一部の領域をOS管理領域として確保する。
S13:IOMEM127は、連続の大容量メモリの使用のために、主メモリから残りのメモリ領域をマッピングして、ユーザプログラムからの使用に備える。
以上の一連の動作により電源投入時のメモリの初期化動作を終了する。
図4(B)に本発明実施例の画像形成装置101において、画像データをスキャンする場合の動作を例にとってそのメモリの使用について説明する。
S21:スキャナ部111で画像データの読み込みを開始する。この際にスキャナデータ読取プログラムは、IOMEM127を経由して画像データを書き込むための大容量の連続したメモリ領域を主メモリ119上のOS非管理のメモリ領域に取得する。
S23:S21動作中に読み込んだ画像データをDMA転送部115により、S11で取得したOS非管理のメモリ領域に転送する。
S25:データ圧縮プログラム133は、前記OS非管理メモリ領域に転送された画像データにIOMEM127を経由してアクセスして読み込む。
S27:データ圧縮プログラム133は、前記読み込んだ画像データを圧縮して、OS管理のメモリ領域に一時書込みを行う。
S29:データ圧縮プログラム133は、S27で一時書込みされた圧縮データをHDD113に書き込む。S27とS29は、並行に動作を行ってHDDに書き込まれたデータについては、メモリから消去するため、OSメモリ領域は大きく消費されることはない。
以上の一連の動作により、IOMEM127により確保された大容量のOS非管理のメモリ領域をDMA転送部115やスキャナデータ読取プログラム131、データ圧縮プログラムにより使用可能となる。
[実施例の効果]
本発明実施例の画像形成装置により以下のことが可能となる。
ユーザ空間とOS管理のカーネル空間でのメモリの共有をもたらすためのウィンドウ領域を持つ必要がなくなるので、仮想メモリ空間での重複したアドレス空間であるウィンドウ領域によって、仮想メモリ空間が消費されてしまう問題が解消される。
メモリ領域を全てOSの管理下とすると、メモリ領域の取得(malloc())は、OSの制約を受けて取得容量サイズに制限を受けたりするが、IOMEMを利用することによりそのような制限は無くなる。
OS管理下のメモリ領域では、フラグメンテーションが発生してしまい、例え前記した取得容量サイズ制限内であっても、連続したメモリ領域が取得不可能な場合が発生するがIOMEMにより、ユーザプログラム側(アプリケーションプログラム)が、メモリ取得をコントロールすることにより、フラグメンテーションの発生等を防ぎ、連続した大容量のメモリ空間の取得が可能となる。
OS非管理領域についても、ウィンドウ領域を経由してOS側(例えばカーネル)からのアクセスを可能とさせるため、デバッグ用途などでのカーネルから非管理領域へのアクセスも可能となる。
[その他]
本発明実施例の説明においては、画像形成装置について説明を行ったが、画像形成装置に限らず、メモリを有する電子機器内のメモリ管理装置であってもよい。
101 画像形成装置(メモリ管理装置)
111 スキャナ部
113 HDD(Hard Disk Drive)
115 DMA(Direct Memory Access)転送部
117 印刷部
119 主メモリ
120 制御部(CPUを含む)
121 ソフトウェア
123 OS(Operating System)
125 OSメモリ領域管理部(OS管理領域アクセス手段)
127 IOMEM(OS非管理メモリ領域管理部;OS非管理領域アクセス手段)
129 アプリケーションプログラム
131 スキャナデータ読取プログラム
133 データ圧縮プログラム

Claims (6)

  1. 仮想メモリ空間を有してメモリ領域の管理を行うメモリ管理装置であって、
    物理メモリ空間の一部をオペレーティングシステム(OS)が管理する管理領域として確保して当該管理領域を仮想メモリ空間に割当て、前記オペレーティングシステムによるメモリ空間の取得・解放を可能とさせるOS管理領域アクセス手段と、
    前記物理メモリ空間の管理領域外を非管理領域として確保して当該非管理領域を仮想メモリ空間に割当て、メモリ空間の取得・解放を可能とするOS非管理領域アクセス手段とを有し、
    前記OS管理領域アクセス手段は、前記オペレーティングシステムが前記非管理領域への参照を可能とするためのウィンドウ領域を有し、該ウィンドウ領域を経由して前記メモリのOS非管理領域へのデータの読込及び書込を可能とさせる
    ことを特徴とするメモリ管理装置。
  2. 物理メモリ空間をオペレーティングシステム(OS)が管理可能な管理領域と管理を行わない非管理領域に分けて、前記管理領域を仮想メモリ空間に割当てて前記管理領域内のメモリ空間の取得・解放を可能とさせるOSメモリ領域管理部と、
    前記非管理領域を仮想メモリ空間に割当てて、アプリケーションプログラムからの前記非管理領域内のメモリ空間の取得・解放を可能とさせるOS非管理メモリ領域管理部とを有し、
    前記OSメモリ領域管理部は、前記オペレーティングシステムが前記非管理領域への参照を可能とするためのウィンドウ領域を有し、該ウィンドウ領域を経由して前記メモリのOS非管理領域へのデータの読込及び書込を可能とさせる
    ことを特徴とする画像形成装置。
  3. 請求項2の画像形成装置であって、
    前記OSメモリ領域管理部は、前記ウィンドウ領域のサイズを必要最小限とする
    ことを特徴とする画像形成装置。
  4. 請求項2又は3の画像形成装置であって、
    前記非管理領域のメモリ空間にハードウェアからの直接アクセスが可能なDMA転送部を有する
    ことを特徴とする画像形成装置。
  5. 請求項4の画像形成装置であって、
    前記非管理領域に書き込まれた画像データを前記DMA転送部によって転送されて該画像データの印刷を行う印刷部を有する
    ことを特徴とする画像形成装置。
  6. 請求項4又は5の画像形成装置であって、
    画像を読み込んで画像データに変換するスキャナ部を有し、
    前記DMA転送部は、前記スキャナ部により変換された画像データをDMA転送によって前記非管理領域に書き込む
    ことを特徴とする画像形成装置。
JP2009092409A 2009-02-27 2009-04-06 メモリ管理装置及び画像形成装置 Pending JP2010244303A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2009092409A JP2010244303A (ja) 2009-04-06 2009-04-06 メモリ管理装置及び画像形成装置
US12/689,835 US8473691B2 (en) 2009-02-27 2010-01-19 Memory management device, image forming apparatus, and image forming method
CN2010101113827A CN101819554B (zh) 2009-02-27 2010-02-02 存储器管理装置、图像形成装置以及图像形成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009092409A JP2010244303A (ja) 2009-04-06 2009-04-06 メモリ管理装置及び画像形成装置

Publications (1)

Publication Number Publication Date
JP2010244303A true JP2010244303A (ja) 2010-10-28

Family

ID=43097255

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009092409A Pending JP2010244303A (ja) 2009-02-27 2009-04-06 メモリ管理装置及び画像形成装置

Country Status (1)

Country Link
JP (1) JP2010244303A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019046221A (ja) * 2017-09-04 2019-03-22 富士ゼロックス株式会社 画像処理装置、半導体装置及びプログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01241649A (ja) * 1988-03-23 1989-09-26 Nec Corp 仮想空間管理方式
JPH03223945A (ja) * 1989-12-28 1991-10-02 Hitachi Ltd 仮想記憶管理方法
JP2003248626A (ja) * 2002-02-25 2003-09-05 Ricoh Co Ltd 画像形成装置及びメモリ管理方法
JP2005028687A (ja) * 2003-07-10 2005-02-03 Ricoh Co Ltd 画像処理装置,情報処理装置およびメモリディスク管理方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01241649A (ja) * 1988-03-23 1989-09-26 Nec Corp 仮想空間管理方式
JPH03223945A (ja) * 1989-12-28 1991-10-02 Hitachi Ltd 仮想記憶管理方法
JP2003248626A (ja) * 2002-02-25 2003-09-05 Ricoh Co Ltd 画像形成装置及びメモリ管理方法
JP2005028687A (ja) * 2003-07-10 2005-02-03 Ricoh Co Ltd 画像処理装置,情報処理装置およびメモリディスク管理方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019046221A (ja) * 2017-09-04 2019-03-22 富士ゼロックス株式会社 画像処理装置、半導体装置及びプログラム
JP7000748B2 (ja) 2017-09-04 2022-01-19 富士フイルムビジネスイノベーション株式会社 画像処理装置、半導体装置及びプログラム

Similar Documents

Publication Publication Date Title
US8990525B2 (en) Virtual memory management apparatus
JP4756562B2 (ja) 独立論理アドレス空間とそれぞれに対するアクセス管理を提供する方法および装置
JP5664347B2 (ja) 仮想メモリシステム、仮想メモリの制御方法、およびプログラム
US8473691B2 (en) Memory management device, image forming apparatus, and image forming method
JP3264319B2 (ja) バスブリッジ
US20100312955A1 (en) Memory system and method of managing the same
KR101355105B1 (ko) 캐시 일관성 보장을 위한 공유 가상 메모리 관리 장치
JP7387873B2 (ja) ネットワーク化された入出力メモリ管理ユニット
US9146879B1 (en) Virtual memory management for real-time embedded devices
CN112445767A (zh) 内存管理方法及装置、电子设备、存储介质
US8892810B2 (en) Semiconductor device and memory protection method
US20040231000A1 (en) Video aperture management
US9552295B2 (en) Performance and energy efficiency while using large pages
US8347064B1 (en) Memory access techniques in an aperture mapped memory space
US10331570B2 (en) Real time memory address translation device
JP2010198569A (ja) メモリ管理装置及び画像形成装置
JP2010244303A (ja) メモリ管理装置及び画像形成装置
CN101013404A (zh) 面向异构多核体系的分页式存储空间管理方法
US6918023B2 (en) Method, system, and computer program product for invalidating pretranslations for dynamic memory removal
JP5627754B2 (ja) 仮想記憶管理装置及び記憶管理装置
JP7118827B2 (ja) 情報処理装置、メモリ制御方法およびプログラム
JP5511747B2 (ja) 画像形成装置および画像形成プログラム
JP2004355187A (ja) 仮想メモリ・システム、仮想メモリのアドレス管理方法、並びにアドレス変換テーブル生成装置
JPH06131264A (ja) キャッシュメモリ制御方式
Horman Understanding Virtual Memory In Red Hat Enterprise Linux 4

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110822

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130118

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130122

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130325

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130416

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130614

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20131217