JP6524928B2 - 画像処理装置及びメモリ制御プログラム並びにメモリ制御方法 - Google Patents

画像処理装置及びメモリ制御プログラム並びにメモリ制御方法 Download PDF

Info

Publication number
JP6524928B2
JP6524928B2 JP2016009363A JP2016009363A JP6524928B2 JP 6524928 B2 JP6524928 B2 JP 6524928B2 JP 2016009363 A JP2016009363 A JP 2016009363A JP 2016009363 A JP2016009363 A JP 2016009363A JP 6524928 B2 JP6524928 B2 JP 6524928B2
Authority
JP
Japan
Prior art keywords
image processing
swap
area
swap file
memory 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
JP2016009363A
Other languages
English (en)
Other versions
JP2017130071A (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 Inc
Original Assignee
Konica Minolta 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 Inc filed Critical Konica Minolta Inc
Priority to JP2016009363A priority Critical patent/JP6524928B2/ja
Publication of JP2017130071A publication Critical patent/JP2017130071A/ja
Application granted granted Critical
Publication of JP6524928B2 publication Critical patent/JP6524928B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Memory System (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

本発明は、画像処理装置及びメモリ制御プログラム並びにメモリ制御方法に関し、特に、メインメモリ内に画像処理用メモリ領域を有する画像処理装置及び画像処理用メモリ領域の使用を制御するメモリ制御プログラム並びにメモリ制御方法に関する。
MFP(Multi-Functional Peripherals)では、プリント、コピー、スキャン等のジョブ制御に際して、常に所定のパフォーマンスを満足する必要があるため、ジョブ制御に掛かる画像処理で使用するメモリ領域を、他の制御に転用される事のない、画像処理用メモリ領域としてきた。従って、ジョブ制御を実施していない状態においても、常時、一定サイズのメモリ領域が確保された状態となる。
一方、近年のMFPには、ジョブ制御以外にも、サーバ機能のように一定以上のパフォーマンスが要求される機能が搭載されつつあり、このようなMFPにおいて、従来のような画像処理用メモリ領域を確保する制御では、メモリの利用効率が低下し、メモリ資源を有効利用できない。特に、OS(Operating System)が画像処理用メモリ領域をスワップ領域として使用することができず、ジョブ制御以外のサーバ機能などを効率的に実施することができない。
このような問題に対して、例えば、下記特許文献1には、プロセスが使用するメモリの使用率を監視し、前記メモリに保存されたデータをスワップデバイスへスワップアウトさせるスワップ処理を制御するOS部と、前記スワップデバイスにアクセス可能なスワップデバイスドライバ部と、前記スワップアウトされたデータの圧縮及び伸張を行うデータ圧縮/伸張部と、前記圧縮されたデータの圧縮率に基づいてスワップアウト対象の優先度を決定する優先度操作部を備え、前記OS部は、前記優先度操作部によって決定された前記優先度に基づいてデータのスワップアウトを行うデータ圧縮伸張装置が開示されている。
特開2008−226082号公報
しかしながら、特許文献1の方法では、データを圧縮してメモリ上に空き領域を作成するため、メモリ上に作られる空き領域のサイズを保証するのが難しい。また、特許文献1の方法では、所定サイズの空き領域が作成されるまで、データをスワップアウトさせることができないため、スワップ処理時間を保証することができず、その空き領域を使用して動作させるプロセスの処理開始までの時間を保証することができない。
本発明は、上記問題点に鑑みてなされたものであって、その主たる目的は、従来と同等のジョブ処理パフォーマンスを維持しつつ、パフォーマンスが要求される他の機能を効率的に実施することができる画像処理装置及びメモリ制御プログラム並びにメモリ制御方法を提供することにある。
本発明の一側面は、プロセッサとメインメモリと2次記憶装置と画像処理デバイスとを少なくとも備える画像処理装置であって、前記メインメモリは、前記プロセッサにより実行されるOSが使用するOS用メモリ領域と、前記画像処理デバイスが画像処理に際して使用する画像処理用メモリ領域と、を備え、前記画像処理用メモリ領域は、前記画像処理デバイスが実行可能なジョブの種別毎に分割され、前記画像処理装置は、前記画像処理用メモリ領域が前記画像処理デバイスに使用されていない時は、前記画像処理用メモリ領域を、前記OS上で動作する特定のプロセスが使用するためのOSのスワップ領域として使用し、前記スワップ領域にスワップファイルを生成し、前記スワップ領域に生成したスワップファイルを、前記2次記憶装置にバックアップし、前記画像処理用メモリ領域が前記画像処理デバイスに使用される時に、前記OSのスワップファイル参照先を、前記スワップ領域に生成したスワップファイルから、前記2次記憶装置にバックアップしたスワップファイルに切り替える制御部を備え、前記制御部は、前記OSのスワップファイル参照先を前記2次記憶装置にバックアップしたスワップファイルに切り替える際に、前記画像処理デバイスが実行するジョブの種別を判断し、判断した種別のジョブを処理するために使用される画像処理用メモリ領域を特定し、前記特定した画像処理用メモリ領域内の前記スワップ領域のスワップファイルのみ、前記OSのスワップファイル参照先を、前記2次記憶装置上にバックアップしたスワップファイルに切り替えることを特徴とする。
本発明の一側面は、プロセッサとメインメモリと2次記憶装置と画像処理デバイスとを少なくとも備える画像処理装置で動作するメモリ制御プログラムであって、前記メインメモリは、前記プロセッサにより実行されるOSが使用するOS用メモリ領域と、前記画像処理デバイスが画像処理に際して使用する画像処理用メモリ領域と、を備え、前記画像処理用メモリ領域は、前記画像処理デバイスが実行可能なジョブの種別毎に分割され、前記画像処理装置の前記プロセッサに、前記画像処理デバイスの動作を監視し、前記画像処理用メモリ領域が前記画像処理デバイスに使用されていないと判断した時は、前記画像処理用メモリ領域を、前記OS上で動作する特定のプロセスが使用するためのOSのスワップ領域として使用し、前記スワップ領域にスワップファイルを生成する第1処理、前記スワップ領域に生成したスワップファイルを、前記2次記憶装置にバックアップする第2処理、前記画像処理デバイスの動作を監視し、前記画像処理用メモリ領域が前記画像処理デバイスに使用されると判断した時に、前記OSのスワップファイル参照先を、前記スワップ領域に生成したスワップファイルから、前記2次記憶装置にバックアップしたスワップファイルに切り替える第3処理、を実行させ、前記第3処理では、前記画像処理装置が実行するジョブの種別を判断し、判断した種別のジョブを処理するために使用される画像処理用メモリ領域を特定し、前記特定した画像処理用メモリ領域内の前記スワップ領域のスワップファイルのみ、前記OSのスワップファイル参照先を、前記2次記憶装置上にバックアップしたスワップファイルに切り替えることを特徴とする。
本発明の一側面は、プロセッサとメインメモリと2次記憶装置と画像処理デバイスとを少なくとも備える画像処理装置におけるメモリ制御方法であって、前記メインメモリは、前記プロセッサにより実行されるOSが使用するOS用メモリ領域と、前記画像処理デバイスが画像処理に際して使用する画像処理用メモリ領域と、を備え、前記画像処理用メモリ領域は、前記画像処理デバイスが実行可能なジョブの種別毎に分割され、前記画像処理装置は、前記画像処理用メモリ領域が前記画像処理デバイスに使用されていない時は、前記画像処理用メモリ領域を、前記OS上で動作する特定のプロセスが使用するためのOSのスワップ領域として使用し、前記スワップ領域にスワップファイルを生成する第1処理と、前記スワップ領域に生成したスワップファイルを、前記2次記憶装置にバックアップする第2処理と、前記画像処理用メモリ領域が前記画像処理デバイスに使用される時に、前記OSのスワップファイル参照先を、前記スワップ領域に生成したスワップファイルから、前記2次記憶装置にバックアップしたスワップファイルに切り替える第3処理と、を実行し、前記第3処理では、前記画像処理装置が実行するジョブの種別を判断し、判断した種別のジョブを処理するために使用される画像処理用メモリ領域を特定し、前記特定した画像処理用メモリ領域内の前記スワップ領域のスワップファイルのみ、前記OSのスワップファイル参照先を、前記2次記憶装置上にバックアップしたスワップファイルに切り替えることを特徴とする。
本発明の画像処理装置及びメモリ制御プログラム並びにメモリ制御方法によれば、従来と同等のジョブ処理パフォーマンスを維持しつつ、パフォーマンスが要求される他の機能を効率的に実施することができる。
その理由は、画像処理装置は、メインメモリに設けた画像処理用メモリ領域を、プリント、コピー、スキャン等のジョブ制御にかかる画像処理に使用していない時は、OS上で動作する特定のプロセスが使用するためのOSのスワップ領域として使用し、当該スワップ領域に生成したスワップファイルを2次記憶装置にバックアップし、画像処理装置がジョブを受信するなどして画像処理用メモリ領域を使用する際、OSのスワップファイル参照先を、スワップ領域に生成したスワップファイルから、2次記憶装置にバックアップしたスワップファイルに切り替える制御を行うからである。また、画像処理装置は、画像処理用メモリ領域が画像処理に使用されなくなった時は、画像処理用メモリ領域をスワップ領域として使用し、2次記憶装置にバックアップしたスワップファイルをスワップ領域にコピーし、OSのスワップファイル参照先を、2次記憶装置にバックアップしたスワップファイルから、スワップ領域にコピーしたスワップファイルに切り替える制御を行うからである。また、画像処理装置は、受信したジョブの種別に基づき、該ジョブ制御にかかる画像処理に使用される画像処理用メモリ領域を特定し、特定された画像処理用メモリ領域のスワップ領域のスワップファイルについてのみ、OSのスワップファイル参照先を、2次記憶装置上にバックアップしたスワップファイルに切り替える制御を行うからである。
本発明の第1の実施例に係る画像形成装置の概略構成を示すブロック図である。 本発明の第1の実施例に係るメインメモリ構成を示す模式図である。 本発明の第1の実施例に係るドライブ構成を示す模式図である。 本発明の第1の実施例に係るジョブ制御未実施時のスワップ制御を示す模式図である。 本発明の第1の実施例に係るメモリ制御(ジョブ制御未実施時のスワップ制御)を示すフローチャート図である。 本発明の第1の実施例に係るメモリ制御(スワップファイルのバックアップ制御)を示すフローチャート図である。 本発明の第1の実施例に係るジョブ制御実施時のスワップ制御を示す模式図である。 本発明の第1の実施例に係るメモリ制御(ジョブ制御実施時のスワップファイル参照先切り替え制御)を示すフローチャート図である。 本発明の第1の実施例に係るジョブ制御完了後のスワップファイル参照先切り替え制御を示す模式図である。 本発明の第1の実施例に係るメモリ制御(ジョブ制御完了後のスワップファイル参照先切り替え制御)を示すフローチャート図である。 本発明の第2の実施例に係るジョブ制御未実施時の領域別スワップ制御を示す模式図である。 本発明の第2の実施例に係るジョブ種別に基づくスワップファイル参照先切り替え時のスワップ制御を示す模式図である。 本発明の第2の実施例に係るメモリ制御(ジョブ種別に基づくスワップファイル参照先切り替え時のスワップ制御)を示すフローチャート図である。
背景技術で示したように、MFPでは、プリント、コピー、スキャン等のジョブ制御の際に画像処理を行うが、画像処理では、常に所定のパフォーマンスを満足する必要があるため、DMA(Direct Memory Access)により、所定サイズのデータ(例えば、256ライン分のデータ)が一塊として転送される。このDMA転送では、画像処理デバイスがCPUを介さずにメモリに直接アクセスするため、メモリ内に、物理的に連続しているメモリ領域(画像処理用メモリ領域)を確保している。しかしながら、近年のMFPは、上記のジョブを処理する機能に加えて、サーバ機能などの一定以上のパフォーマンスを要求される機能が搭載されつつあり、メモリ内に画像処理用メモリ領域を確保する構成では、OSがデータスワップを行うためのメモリ領域を十分に確保することができず、サーバ機能などを効率的に実施することができない。
そこで、本発明の一実施の形態では、ジョブを処理する機能に加えて、Webサーバやファイルサーバ等のサーバ機能のようなパフォーマンスが要求される他の機能を有するMFPなどの画像処理装置において、OSのカーネルが使用しないメモリ領域(OS管理外領域と呼ぶ。)に確保される画像処理用メモリ領域を、仮想RAMディスクとして使用し、仮想RAMディスク上にOSのスワップファイルを作成し、OS管理外領域をOSのメモリ拡張として使用する。そして、スワップファイルを常時、2次記憶装置にバックアップし、画像処理用メモリ領域を使用するジョブ(プリント、コピー、スキャン等のジョブ)を受信した場合は、OSのスワップファイル参照先を、仮想RAMディスク上のスワップファイルから2次記憶装置上のスワップファイルに切り替える。
このような制御を行うことにより、OS管理外領域に確保した画像処理用メモリ領域を、OS上で動作する他のプロセスがOSのスワップ領域として使用することができるようになり、OSのカーネルが使用するメモリ領域(OS管理内領域と呼ぶ。)が枯渇した場合においても、パフォーマンスを維持することができる。また、プリント、コピー、スキャン等のジョブ制御に際して画像処理用メモリ領域を使用する際は、OSのスワップファイル参照先を2次記憶上のスワップファイルに切り替えることにより、画像処理用メモリ領域を高速に解放することができるため、従来と同等のパフォーマンスで画像処理を行うことができる。
上記した本発明の実施の形態についてさらに詳細に説明すべく、本発明の第1の実施例に係る画像処理装置及びメモリ制御プログラム並びにメモリ制御方法について、図1乃至図10を参照して説明する。図1は、本実施例の画像形成装置の概略構成を示すブロック図であり、図2は、メインメモリ構成を示す模式図、図3は、ドライブ構成を示す模式図である。また、図4、図7、図9は、スワップ制御を示す模式図であり、図5、図6、図8、図10は、スワップ制御を示すフローチャート図である。
以下、本実施例では、メモリ制御を行う装置として、画像形成装置を例にして説明する。本実施例の画像形成装置10は、図1に示すように、CPU(Central Processing Unit)11、メインメモリ12、不揮発メモリ13、2次記憶装置14、ネットワークI/F部15、UI(User Interface)部16、画像入力装置17、画像処理装置18、画像出力装置19などで構成される。
マイクロプロセッサなどで構成されるCPU11と、DRAM(Dynamic Random Access Memory)などで構成されるメインメモリ12と、NAND型やNOR型のフラッシュメモリなどで構成される不揮発メモリ13と、で制御部が構成され、CPU11は、不揮発メモリ13や2次記憶装置14からプログラムを読み出し、メインメモリ12に展開して実行することにより、画像形成装置10全体の制御を行う。
特に、本実施例では、制御部(CPU11により実行されるメモリ制御プログラム)は、画像入力装置17、画像処理装置18、画像出力装置19などの画像処理デバイスの動作を監視し、後述する画像処理用メモリ領域が画像処理デバイスに使用されていないと判断した時は、画像処理用メモリ領域を、OS上で動作する特定のプロセスが使用するためのOSのスワップ領域として使用し、スワップ領域にスワップファイルを生成する第1処理と、スワップ領域に生成したスワップファイルを2次記憶装置14にバックアップする第2処理と、画像処理デバイスの動作を監視し、画像処理用メモリ領域が画像処理デバイスに使用されると判断した時に、OSのスワップファイル参照先を、スワップ領域に生成したスワップファイルから、2次記憶装置14にバックアップしたスワップファイルに切り替える第3処理と、第3処理後、画像処理デバイスの動作を監視し、画像処理用メモリ領域が画像処理デバイスに使用されなくなったと判断した時は、画像処理用メモリ領域をスワップ領域として使用し、2次記憶装置14にバックアップしたスワップファイルをスワップ領域にコピーし、OSのスワップファイル参照先を、2次記憶装置14にバックアップしたスワップファイルから、スワップ領域にコピーしたスワップファイルに切り替える第4処理と、を実行する。
2次記憶装置14は、HDD(Hard Disk Drive)やSSD(Solid State Drive)などで構成され、OS、プリント/コピー/スキャン等のジョブ処理機能を実行するプログラム、Webサーバ/ファイルサーバ等のサーバ機能を実行するプログラムを記憶すると共に、バックアップ(スワップアウト)されたスワップファイルなどを記憶する。
ネットワークI/F部15は、NIC(Network Interface Card)やモデムなどで構成され、画像形成装置10を通信ネットワークに接続し、図示しないクライアント端末やサーバ装置などの外部装置とのアクセスを可能にする。
UI部16は、液晶表示装置等の表示部上に、透明電極が格子状に配置された感圧式の操作部を備えたタッチパネルなどで構成され、画像形成装置10を操作するための画面などを表示すると共に、各種設定や指示などを可能にする。
画像入力装置17は、例えば、スキャナなどの画像処理デバイスであり、原稿台に載置された原稿をスキャンし、光学的に読み取った画像データを画像処理装置18に出力(画像処理が不要な場合はメインメモリ12に格納)する。
画像処理装置18は、例えば、ASIC(Application Specific Integrated Circuit)などの画像処理デバイスであり、必要に応じて、画像入力装置17から転送された画像データに対して、エッジ強調処理や、スムージング処理、色変換処理等の画像処理を行う。また、画像処理装置18は、他の装置から、PostScriptやPCL(Printer Control Language)に代表されるPDL(Page Description Language)で記述された印刷ジョブを取得した場合は、印刷ジョブに含まれる各ページをラスタライズしてページ毎の画像データを生成するRIP(Raster Image Processor)部として機能し、生成した画像データに対して上記画像処理を行う。そして、画像処理後の画像データをメインメモリ12に格納する。
画像出力装置19は、例えば、印刷エンジンなどの画像処理デバイスであり、メインメモリ12に格納された画像データに基づいて、用紙への印刷処理を行う。具体的には、電子写真方式の場合は、帯電装置により帯電された感光体ドラムに、露光装置から画像データに応じた光を照射して静電潜像を形成し、現像装置で帯電したトナーを付着させて現像し、そのトナー像を転写ベルトに1次転写し、転写ベルトから用紙に2次転写し、更に定着装置で用紙上のトナー像を定着させる処理を行う。
なお、図1は、本実施例の画像形成装置10の一例であり、その構成は適宜変更可能である。例えば、図1では、画像形成装置10に画像入力装置17や画像出力装置19を含む構成としたが、画像入力装置17や画像出力装置19を画像形成装置10とは別体の装置とし、画像形成装置10と有線又は無線で接続される構成としてもよい。画像出力装置19を別体の装置とした場合、画像形成装置10は、画像出力装置19に出力する画像データを生成する(すなわち、画像処理までを行う)画像処理装置となる。
次に、本実施例のメモリ構成について説明する。図2に示すように、本実施例では、メインメモリ12を、CPU11により実行されるOS(OSのカーネル)、及びOS上で動作する各アプリケーションプロセスが使用する、OS用メモリ領域(OS管理内領域)と、画像形成装置10の画像処理機能(画像入力装置17、画像処理装置18、画像出力装置19などの画像処理デバイス)が画像処理に際して使用する、画像処理用メモリ領域(OS管理外領域)と、に分割して使用する。
ここで、画像処理用メモリ領域はOS管理外領域であるため、従来、OS及びOS上で動作する各アプリケーションプロセスは、画像処理用メモリ領域をOSが認識するメインメモリ12の一部として使用することができない。これに対して、本実施例では、画像処理用メモリ領域を仮想RAMディスクとして使用し、図3に示すように、OSからは、システム上に、仮想RAMディスク、及び、2次記憶装置14の2種類のディスクドライブが存在するように認識させる。すなわち、画像処理用メモリ領域を、OSのメモリ拡張領域として使用する。
以下、上記構成のメインメモリ12の使用制御について、図4、図7、図9の模式図、及び、図5、図6、図8、図10のフローチャート図を参照して説明する。CPU11は、不揮発メモリ13や2次記憶装置14に記憶したメモリ制御プログラムをメインメモリ12に展開して実行することにより、図5、図6、図8、図10のフローチャート図に示す各ステップの処理を実行する。なお、CPU11(メモリ制御プログラム)は、画像処理デバイスの動作を監視することにより、画像処理デバイスが画像処理用メモリ領域を使用しているか否かを判断する。
[ジョブ制御未実施時のスワップ制御]
画像形成装置10が、プリント、コピー、スキャン等のジョブ制御を実施していない時は、画像処理デバイスにより画像処理が実行されないため、メインメモリ12の画像処理用メモリ領域は使用されない。そこで、本実施例では、図4に示すように、画像処理用メモリ領域を使用した仮想RAMディスク上に作成したスワップファイルを、OSのスワップファイル参照先に設定し、OS上で動作する各プロセスが使用するメモリ領域が枯渇した際、各プロセスが使用するメモリ上のデータを、仮想RAMディスク上のスワップファイルに退避する(図4のデータスワップ参照)。
具体的には、図5に示すように、まず、CPU11(メモリ制御プログラム)は、各プロセスが使用するメモリサイズを取得し(S101)、取得したメモリサイズとメインメモリ12のOS管理内領域の空き容量とを比較することにより、データ退避が必要であるか否かを判断する(S102)。各プロセスが使用するメモリサイズの領域をメインメモリ12のOS管理内領域に確保できる場合は、メインメモリ12上のデータ退避が必要ないため(S102のNo)、S101に戻って、次のプロセスが使用するメモリサイズを取得する。一方、各プロセスが使用するメモリサイズの領域をメインメモリ12に確保できない場合は、CPU11(メモリ制御プログラム)は、メインメモリ12上のデータ退避が必要と判断し(S102のYes)、メインメモリ12上のデータをスワップファイル参照先のスワップファイル(画像処理用メモリ領域が使用されていない場合は、画像処理用メモリ領域を使用した仮想RAMディスク上に作成したスワップファイル)に退避させる(S103)。
このように、OS管理内領域のメモリが枯渇した場合においても、OS管理外領域である画像処理用メモリ領域を、OSのスワップ領域として使用することにより、OS上で動作する各アプリケーションプロセスのパフォーマンスを維持することができる。
[スワップファイルのバックアップ制御]
本実施例では、画像処理用メモリ領域を使用した仮想RAMディスク上にスワップファイルを作成するが、プリント、コピー、スキャン等のジョブ制御の実施に際して画像処理用メモリ領域を使用すると、仮想RAMディスク上のスワップファイルに退避させたデータが消去されてしまう。そこで、本実施例では、図4に示すように、スワップファイルを、常時、2次記憶装置14にバックアップする(図4のバックアップ参照)。
具体的には、図6に示すように、CPU11(メモリ制御プログラム)は、メインメモリ12上のデータを、画像処理用メモリ領域を使用した仮想RAMディスク上に作成したスワップファイルに退避させてからの経過時間を監視し、予め定めた一定時間が経過したかを判断する(S201)。一定時間が経過したら(S201のYes)、CPU11(メモリ制御プログラム)は、スワップファイル参照先が2次記憶装置14であるかを判断する(S202)。スワップファイル参照先が2次記憶装置14の場合は(S202のYes)、一連の処理を終了し、スワップファイル参照先が2次記憶装置14でない(すなわち、メインメモリ12の画像処理用メモリ領域を使用した仮想RAMディスク)の場合は(S202のNo)、CPU11(メモリ制御プログラム)は、2次記憶装置14上のスワップファイルと仮想RAMディスク上のスワップファイルとを比較して、スワップファイルに変更があるか否かを判断する(S203)。スワップファイルに変更がない場合は(S203のNo)、バックアップは不要であるため、S201に戻って同様の処理を繰り返す。一方、スワップファイルに変更がある場合は(S203のYes)、CPU11(メモリ制御プログラム)は、仮想RAMディスク上のスワップファイル(全部又は変更があった部分)を2次記憶装置14にバックアップし(S204)、S201に戻って同様の処理を繰り返す。
このように、仮想RAMディスク上のスワップファイルを、2次記憶装置14に常時バックアップすることにより、スワップファイルに退避させたデータの消去を未然に防止することができる。
[ジョブ制御時のスワップ制御]
画像形成装置10が、プリント、コピー、スキャン等のジョブ制御を実施する際、当該ジョブ制御に際して、画像処理デバイスがメインメモリ12の画像処理用メモリ領域を使用して画像処理を実行する。よって、ジョブ制御時は、仮想RAMディスクとして使用していた画像処理用メモリ領域を解放し、画像処理デバイスが使用できる状態とする必要がある。そこで、本実施例では、図7に示すように、ジョブ制御時にスワップファイル参照先を仮想RAMディスク上から2次記憶装置14上に切り替えるようにする。
具体的には、図8に示すように、CPU11(メモリ制御プログラム)は、プリント、コピー、スキャン等のジョブを受信(外部装置からジョブのデータを受信又はUI部16からジョブの指示を受信)すると(S301)、そのジョブの処理に、メインメモリ12の画像処理用メモリ領域を使用するか否か(すなわち、プリント、コピー、スキャン等のジョブであるか否か)を判断する(S302)。ジョブの処理にメインメモリ12の画像処理用メモリ領域を使用する場合(S302のYes)、CPU11(メモリ制御プログラム)は、OSのスワップファイル参照先を、画像処理用メモリ領域を使用した仮想RAMディスク上のスワップファイルから、2次記憶装置14上にバックアップしたスワップファイルに変更する(S303)。そして、上記のスワップファイル参照先の切り替え制御の実施後、OS管理内領域のメモリが枯渇した際、図7に示すように、2次記憶装置14上のスワップファイルにデータの退避を行う(図7のデータスワップ参照)。
このように、仮想RAMディスク上のスワップファイルが、OSから参照されない状態とすることにより、プリント、コピー、スキャン等のジョブ制御を従来と同等のパフォーマンスで実施することができる。
[ジョブ制御完了後のスワップ制御]
画像形成装置10がジョブ制御を完了した後は、画像処理デバイスにより画像処理用メモリ領域が使用されなくなる。そこで、本実施例では、図9に示すように、OSのスワップファイル参照先を、2次記憶装置14上にバックアップしたスワップファイルから、再度、メインメモリ12の画像処理用メモリ領域を使用した仮想RAMディスク上のスワップファイルに切り替える制御を実施する。
具体的には、図10に示すように、CPU11(メモリ制御プログラム)は、プリント、コピー、スキャン等のジョブ制御が完了したかを判断する(S401)。ジョブ制御が完了したら(S401のYes)、CPU11(メモリ制御プログラム)は、2次記憶装置14上のスワップファイルを、メインメモリ12の画像処理用メモリ領域を使用した仮想RAMディスクにコピーし(S402、図9の(1)参照)、コピー完了後、OSのスワップファイル参照先を、2次記憶装置14上のスワップファイルから仮想RAMディスク上のスワップファイルに切り替える(S403、図9の(2)参照)。そして、OSのスワップファイル参照先の切り替え制御完了後は、図5に示すスワップ制御と、図6に示すスワップファイルのバックアップ制御を実施する。
このように、ジョブ制御完了後に、OSのスワップファイル参照先を、2次記憶装置14上にバックアップしたスワップファイルから、再度、メインメモリ12の画像処理用メモリ領域を使用した仮想RAMディスク上のスワップファイルに切り替える制御を行うことにより、OS上で動作する各アプリケーションプロセスのパフォーマンスを維持することができる。
以上説明したように、メインメモリ12の画像処理用メモリ領域を、OS上で動作する各アプリケーションプロセスがOSのスワップ領域として使用できるようにすることにより、OSのカーネルが使用するメモリ領域(OS管理内領域)が枯渇した場合においても、各アプリケーションプロセスのパフォーマンスを維持することができる。また、プリント、コピー、スキャン等のジョブ制御の際に画像処理用メモリ領域を使用する時は、OSのスワップファイル参照先を2次記憶装置14上のスワップファイルに切り替える制御を行うことにより、画像処理用メモリ領域を高速に解放して、従来と同等のパフォーマンスで画像処理を行うことができる。
次に、本発明の第2の実施例に係る画像処理装置及びメモリ制御プログラム並びにメモリ制御方法について、図11乃至図13を参照して説明する。図11、図12は、スワップ制御を示す模式図であり、図13は、スワップ制御を示すフローチャート図である。
前記した第1の実施例では、メインメモリ12の画像処理用メモリ領域を1つとして説明したが、プリントやコピー、スキャンなどの複数の機能を備える画像形成装置10では、画像処理用メモリ領域を機能毎に設けることもできる。
その場合、画像形成装置10の構成は第1の実施例と同様であるが、制御部(CPU11により実行されるメモリ制御プログラム)は、OSのスワップファイル参照先を、スワップ領域に生成したスワップファイルから、2次記憶装置14にバックアップしたスワップファイルに切り替える第3処理において、画像処理デバイスが実行するジョブの種別を判断し、判断した種別のジョブを処理するために使用される画像処理用メモリ領域を特定し、OSのスワップファイル参照先を、特定した画像処理用メモリ領域内のスワップ領域のスワップファイルのみ、2次記憶装置14上にバックアップされたスワップファイルに切り替える第4処理を更に実行する。
以下、図11、図12の模式図、及び、図13のフローチャート図を参照して説明する。CPU11は、不揮発メモリ13や2次記憶装置14に記憶したメモリ制御プログラムをメインメモリ12に展開して実行することにより、図13のフローチャート図に示す各ステップの処理を実行する。
[ジョブ種別に基づくスワップ先切り替え制御]
画像形成装置10が、プリント、コピー、スキャン等のジョブ制御を実施する際、ジョブの種別により異なる制御が実施され、その際に使用される画像処理用メモリ領域も、ジョブ種別により異なる。そこで、本実施例では、図11に示すように、予め、画像処理用メモリ領域を、ジョブ種別毎に使用されるメモリ領域(プリント画像処理用領域、コピー画像処理用領域、スキャン画像処理用領域など)に分割する。そして、分割された各々の画像処理用メモリ領域を、異なる仮想RAMディスクとして使用し、各仮想RAMディスクにスワップファイルを生成し、各スワップファイルをOSのスワップファイル参照先として設定する。また、各々の仮想RAMディスク上のスワップファイルは、常時、2次記憶装置14にバックアップを実施する。
そして、図12に示すように、画像形成装置10がジョブを受信(外部装置からジョブのデータを受信又はUI部16からジョブの指示を受信)した際、受信したジョブの種別に基づいて、該ジョブ制御に掛かる画像処理が使用する画像処理用メモリ領域(ここではプリント画像処理用領域)を特定し、特定された領域に保存されたスワップファイル(ここではスワップファイル1)についてのみ、OSのスワップファイル参照先を、画像処理用メモリ領域上のスワップファイルから2次記憶装置14上にバックアップされたスワップファイルに切り替える制御を実施する。
具体的には、図13に示すように、CPU11(メモリ制御プログラム)は、プリント、コピー、スキャン等のジョブを受信すると(S501)、そのジョブの処理に、メインメモリ12の画像処理用メモリ領域を使用するか否か(すなわち、プリント、コピー、スキャン等のジョブであるか否か)を判断する(S502)。ジョブの処理にメインメモリ12の画像処理用メモリ領域を使用する場合(S502のYes)、CPU11(メモリ制御プログラム)は、ジョブの種別を判断し、判断した種別のジョブの処理に使用する画像処理用メモリ領域を特定する(S503)。そして、CPU11(メモリ制御プログラム)は、OSのスワップファイル参照先を、特定した画像処理用メモリ領域を使用した仮想RAMディスク上のスワップファイルから、2次記憶装置14上にバックアップした、対応するスワップファイルに変更する(S504)。
その後、画像処理用メモリ領域を使用するジョブの処理が完了したら、第1の実施例と同様に、そのジョブに対応する画像処理用メモリ領域を仮想RAMディスクとして使用し、各仮想RAMディスクにスワップファイルを生成し、各スワップファイルをOSのスワップファイル参照先として設定する。また、各々の仮想RAMディスク上のスワップファイルを2次記憶装置14にバックアップする。
このように、ジョブ制御、及び、ジョブ制御に掛かる画像処理を実施する際、画像処理用メモリ領域のうち、当該ジョブ制御、及び、当該ジョブ制御に掛かる画像処理が使用する画像処理用メモリ領域のみを選択的に解放することにより、ジョブ制御実施時においても、一部の画像処理用メモリ領域を、OSのスワップ領域として継続的に使用できるようになり、OS上で動作する各アプリケーションプロセスのパフォーマンスの低下を最小限に抑制することができる。また、ジョブ制御完了後のスワップファイル参照先切り替え制御においても、2次記憶装置14上のスワップファイルを画像処理用メモリ領域にコピーする制御の負荷を軽減することができる。
なお、本発明は上記実施例に限定されるものではなく、本発明の趣旨を逸脱しない限りにおいて、画像形成装置10の構成やメインメモリ12の制御方法は適宜変更可能である。
例えば、上記実施例では、画像形成装置10におけるメインメモリ12の使用制御について説明したが、画像処理デバイスを備える任意の画像処理装置に対して、本発明のメモリ制御方法を同様に適用することができる。
また、上記実施例では、メインメモリ12に画像処理用メモリ領域を設ける場合について説明したが、データの暗号化/復号化を行うデバイスが使用する暗号化/復号化処理用メモリ領域を設ける場合に対しても、本発明のメモリ制御方法を同様に適用することができる。
本発明は、メインメモリ内に画像処理用メモリ領域を有する画像処理装置及び画像処理用メモリ領域の使用を制御するメモリ制御プログラム並びに当該メモリ制御プログラムを記録した記録媒体並びにメモリ制御方法に利用可能である。
10 画像形成装置
11 CPU
12 メインメモリ
13 不揮発メモリ
14 2次記憶装置
15 ネットワークI/F部
16 UI部
17 画像入力装置
18 画像処理装置
19 画像出力装置

Claims (6)

  1. プロセッサとメインメモリと2次記憶装置と画像処理デバイスとを少なくとも備える画像処理装置であって、
    前記メインメモリは、前記プロセッサにより実行されるOSが使用するOS用メモリ領域と、前記画像処理デバイスが画像処理に際して使用する画像処理用メモリ領域と、を備え、前記画像処理用メモリ領域は、前記画像処理デバイスが実行可能なジョブの種別毎に分割され、
    前記画像処理装置は、
    前記画像処理用メモリ領域が前記画像処理デバイスに使用されていない時は、前記画像処理用メモリ領域を、前記OS上で動作する特定のプロセスが使用するためのOSのスワップ領域として使用し、前記スワップ領域にスワップファイルを生成し、
    前記スワップ領域に生成したスワップファイルを、前記2次記憶装置にバックアップし、
    前記画像処理用メモリ領域が前記画像処理デバイスに使用される時に、前記OSのスワップファイル参照先を、前記スワップ領域に生成したスワップファイルから、前記2次記憶装置にバックアップしたスワップファイルに切り替える制御部を備え
    前記制御部は、
    前記OSのスワップファイル参照先を前記2次記憶装置にバックアップしたスワップファイルに切り替える際に、前記画像処理デバイスが実行するジョブの種別を判断し、判断した種別のジョブを処理するために使用される画像処理用メモリ領域を特定し、前記特定した画像処理用メモリ領域内の前記スワップ領域のスワップファイルのみ、前記OSのスワップファイル参照先を、前記2次記憶装置上にバックアップしたスワップファイルに切り替える、
    ことを特徴とする画像処理装置。
  2. 前記制御部は、
    前記OSのスワップファイル参照先を前記2次記憶装置にバックアップしたスワップファイルに切り替えた後、前記画像処理用メモリ領域が前記画像処理デバイスに使用されなくなった時は、前記画像処理用メモリ領域を前記スワップ領域として使用し、前記2次記憶装置にバックアップしたスワップファイルを前記スワップ領域にコピーし、前記OSのスワップファイル参照先を、前記2次記憶装置にバックアップしたスワップファイルから、前記スワップ領域にコピーしたスワップファイルに切り替える、
    ことを特徴とする請求項1に記載の画像処理装置。
  3. プロセッサとメインメモリと2次記憶装置と画像処理デバイスとを少なくとも備える画像処理装置で動作するメモリ制御プログラムであって、
    前記メインメモリは、前記プロセッサにより実行されるOSが使用するOS用メモリ領域と、前記画像処理デバイスが画像処理に際して使用する画像処理用メモリ領域と、を備え、前記画像処理用メモリ領域は、前記画像処理デバイスが実行可能なジョブの種別毎に分割され、
    前記画像処理装置の前記プロセッサに、
    前記画像処理デバイスの動作を監視し、前記画像処理用メモリ領域が前記画像処理デバイスに使用されていないと判断した時は、前記画像処理用メモリ領域を、前記OS上で動作する特定のプロセスが使用するためのOSのスワップ領域として使用し、前記スワップ領域にスワップファイルを生成する第1処理、
    前記スワップ領域に生成したスワップファイルを、前記2次記憶装置にバックアップする第2処理、
    前記画像処理デバイスの動作を監視し、前記画像処理用メモリ領域が前記画像処理デバイスに使用されると判断した時に、前記OSのスワップファイル参照先を、前記スワップ領域に生成したスワップファイルから、前記2次記憶装置にバックアップしたスワップファイルに切り替える第3処理、を実行させ、
    前記第3処理では、
    前記画像処理装置が実行するジョブの種別を判断し、判断した種別のジョブを処理するために使用される画像処理用メモリ領域を特定し、前記特定した画像処理用メモリ領域内の前記スワップ領域のスワップファイルのみ、前記OSのスワップファイル参照先を、前記2次記憶装置上にバックアップしたスワップファイルに切り替える、
    ことを特徴とするメモリ制御プログラム。
  4. 前記画像処理装置の前記プロセッサに、更に、
    前記第3処理後、前記画像処理デバイスの動作を監視し、前記画像処理用メモリ領域が前記画像処理デバイスに使用されなくなったと判断した時は、前記画像処理用メモリ領域を前記スワップ領域として使用し、前記2次記憶装置にバックアップしたスワップファイルを前記スワップ領域にコピーし、前記OSのスワップファイル参照先を、前記2次記憶装置にバックアップしたスワップファイルから、前記スワップ領域にコピーしたスワップファイルに切り替える第4処理を実行させる、
    ことを特徴とする請求項3に記載のメモリ制御プログラム。
  5. プロセッサとメインメモリと2次記憶装置と画像処理デバイスとを少なくとも備える画像処理装置におけるメモリ制御方法であって、
    前記メインメモリは、前記プロセッサにより実行されるOSが使用するOS用メモリ領域と、前記画像処理デバイスが画像処理に際して使用する画像処理用メモリ領域と、を備え、前記画像処理用メモリ領域は、前記画像処理デバイスが実行可能なジョブの種別毎に分割され、
    前記画像処理装置は、
    前記画像処理用メモリ領域が前記画像処理デバイスに使用されていない時は、前記画像処理用メモリ領域を、前記OS上で動作する特定のプロセスが使用するためのOSのスワップ領域として使用し、前記スワップ領域にスワップファイルを生成する第1処理と、
    前記スワップ領域に生成したスワップファイルを、前記2次記憶装置にバックアップする第2処理と、
    前記画像処理用メモリ領域が前記画像処理デバイスに使用される時に、前記OSのスワップファイル参照先を、前記スワップ領域に生成したスワップファイルから、前記2次記憶装置にバックアップしたスワップファイルに切り替える第3処理と、を実行し、
    前記第3処理では、
    前記画像処理装置が実行するジョブの種別を判断し、判断した種別のジョブを処理するために使用される画像処理用メモリ領域を特定し、前記特定した画像処理用メモリ領域内の前記スワップ領域のスワップファイルのみ、前記OSのスワップファイル参照先を、前記2次記憶装置上にバックアップしたスワップファイルに切り替える、
    ことを特徴とするメモリ制御方法。
  6. 前記画像処理装置は、更に、
    前記第3処理後、前記画像処理用メモリ領域が前記画像処理デバイスに使用されなくなった時は、前記画像処理用メモリ領域を前記スワップ領域として使用し、前記2次記憶装置にバックアップしたスワップファイルを前記スワップ領域にコピーし、前記OSのスワップファイル参照先を、前記2次記憶装置にバックアップしたスワップファイルから、前記スワップ領域にコピーしたスワップファイルに切り替える第4処理を実行する、
    ことを特徴とする請求項5に記載のメモリ制御方法。
JP2016009363A 2016-01-21 2016-01-21 画像処理装置及びメモリ制御プログラム並びにメモリ制御方法 Active JP6524928B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016009363A JP6524928B2 (ja) 2016-01-21 2016-01-21 画像処理装置及びメモリ制御プログラム並びにメモリ制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016009363A JP6524928B2 (ja) 2016-01-21 2016-01-21 画像処理装置及びメモリ制御プログラム並びにメモリ制御方法

Publications (2)

Publication Number Publication Date
JP2017130071A JP2017130071A (ja) 2017-07-27
JP6524928B2 true JP6524928B2 (ja) 2019-06-05

Family

ID=59394889

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016009363A Active JP6524928B2 (ja) 2016-01-21 2016-01-21 画像処理装置及びメモリ制御プログラム並びにメモリ制御方法

Country Status (1)

Country Link
JP (1) JP6524928B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11797292B2 (en) 2020-10-20 2023-10-24 Canon Kabushiki Kaisha Information processing apparatus using swap file, control method therefor, and storage medium

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019140492A (ja) * 2018-02-08 2019-08-22 コニカミノルタ株式会社 画像処理装置
JP7073788B2 (ja) 2018-03-06 2022-05-24 富士フイルムビジネスイノベーション株式会社 情報処理装置及びプログラム
JP7103167B2 (ja) * 2018-11-02 2022-07-20 京セラドキュメントソリューションズ株式会社 画像処理装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5209993B2 (ja) * 2008-03-03 2013-06-12 キヤノン株式会社 情報処理装置及びその制御方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11797292B2 (en) 2020-10-20 2023-10-24 Canon Kabushiki Kaisha Information processing apparatus using swap file, control method therefor, and storage medium

Also Published As

Publication number Publication date
JP2017130071A (ja) 2017-07-27

Similar Documents

Publication Publication Date Title
US8176344B2 (en) Information processing apparatus and control method thereof
JP6524928B2 (ja) 画像処理装置及びメモリ制御プログラム並びにメモリ制御方法
US20140043632A1 (en) Image forming apparatus, method of controlling the same, and image forming system
JP6750465B2 (ja) ロール紙印刷装置、ロール紙印刷制御プログラム及びロール紙印刷制御方法
JP6136020B2 (ja) 画像形成装置及び並列処理の制御方法並びに制御プログラム
US20140043631A1 (en) Image forming apparatus and method of controlling the same
US20170060644A1 (en) Image processing apparatus, control task allocation method, and recording medium
JP6996189B2 (ja) プリントコントローラー、画像形成システム及び画像形成装置
JP5232728B2 (ja) 画像形成装置
JP2008067299A (ja) 画像形成装置
US10956090B2 (en) Memory system and electronic apparatus
JP6922607B2 (ja) 画像形成装置、ジョブ処理方法及びジョブ処理制御プログラム
JP5589582B2 (ja) 画像処理装置及びプログラム
JP6740821B2 (ja) 印刷システム、印刷制御方法及び印刷制御プログラム
JP6459543B2 (ja) 画像形成装置及びジョブ処理制御方法並びにジョブ処理制御プログラム
JP2015076694A (ja) 画像形成装置
JP6128104B2 (ja) 画像処理装置、その制御方法、およびプログラム
JP7144734B2 (ja) 画像処理装置
JP6459570B2 (ja) 画像形成装置及び起動制御方法並びに起動制御プログラム
JP2011048590A (ja) 画像形成装置
JP2008195041A (ja) 画像形成装置、情報処理方法、情報処理プログラム
JP5720525B2 (ja) 画像処理装置及び起動制御プログラム
JP6733592B2 (ja) 画像形成装置及び画像形成プログラム
JP2016126600A (ja) 印刷システム及び印刷制御方法並びに印刷制御プログラム
JP6206056B2 (ja) 処理プログラム及び処理装置並びに処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180914

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190226

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190327

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190422

R150 Certificate of patent or registration of utility model

Ref document number: 6524928

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150