JP2019129425A - メモリー管理装置及びメモリー管理プログラム - Google Patents

メモリー管理装置及びメモリー管理プログラム Download PDF

Info

Publication number
JP2019129425A
JP2019129425A JP2018010353A JP2018010353A JP2019129425A JP 2019129425 A JP2019129425 A JP 2019129425A JP 2018010353 A JP2018010353 A JP 2018010353A JP 2018010353 A JP2018010353 A JP 2018010353A JP 2019129425 A JP2019129425 A JP 2019129425A
Authority
JP
Japan
Prior art keywords
area
memory
job
interrupt job
control unit
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
JP2018010353A
Other languages
English (en)
Inventor
エドウィン イラガン
Edwin Ilagan
エドウィン イラガン
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 JP2018010353A priority Critical patent/JP2019129425A/ja
Publication of JP2019129425A publication Critical patent/JP2019129425A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

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

Abstract

【課題】割り込みジョブに対するメモリー領域の割り当てを適切に行う。【解決手段】メモリー管理部118により、RAM115(揮発性メモリー)に対し、非割り込みジョブにメモリー領域115a(第1のメモリー領域)を割り当て、システム制御部121により、非割り込みジョブを受け付けると、メモリー管理部118に対し、メモリー領域115b(第2のメモリー領域)を割り込みジョブ予約領域として確保させる。また、システム制御部121は、メモリー管理部118に対し、非割り込みジョブの実行中に割り込みジョブを受け付けると、メモリー領域115b(第2のメモリー領域)を割り込みジョブ用として割り当てさせる。RAM115のワーク領域に生じる断片化が広がっている場合でも、RAM115に対する非割り込みジョブの割り当てが行われると、直ちに割り込みジョブのための割り込みジョブ予約領域が確保される。【選択図】図1

Description

本発明は、割り込みジョブに対するメモリー管理に適したメモリー管理装置及びメモリー管理プログラムに関する。
たとえば、電子機器の一つである、MFP(Multifunction Peripheral)等の画像形成装置においては、印刷機能、コピー機能、FAX(Facsimile)機能、スキャナー機能、ネットワーク経由でのデータ送受信機能等が搭載されている機種がある。また、これらの各種機能を備えた画像形成装置では、画像処理で用いられる揮発性メモリーであるRAM(Random Access Memory)のメモリー領域の割り当てを効率的に行うことで、各種ジョブの処理能力が高められている。
ところで、このような画像形成装置では、割り込みジョブを実行する場合、先行ジョブにより使用されていないRAMの空き領域に、割り込みジョブ用のメモリー領域を確保する必要がある。ただし、割り込みジョブ用のメモリー領域を確保できない場合には、割り込みジョブの実行が拒否される。この場合、割り込みジョブが取り扱う画像データのサイズを小さくすることで、割り込みジョブ用のメモリー領域を確保できることがある。ところが、割り込みジョブが取り扱う画像データのサイズを小さくすると、画質が劣化してしまうという不具合を生じることがある。
このような不具合を解消するようにしてものとして、特許文献1では、メモリー管理部により、割り込みジョブについてのデフォルト割り当てサイズ以上の空き領域があるか否かを判定し、割り込みジョブについてのデフォルト割り当てサイズ以上の空き領域がある場合には、デフォルト割り当てサイズの記憶領域をメモリーにおいて確保し、割り当てについてのデフォルト割り当てサイズ以上の空き領域がない場合には、デフォルト割り当てサイズより小さく、かつ所定のジョブ種別のジョブを実行可能な所定の割込時割り当てサイズの記憶領域をメモリーにおいて確保する画像形成装置を提案している。
特開2013−017010号公報
上述した特許文献1の画像形成装置では、割込時割り当てサイズの記憶領域で実行可能な割り込みジョブが実行されるため、画質を劣化させることがなくなる。なお、割込時割り当てサイズは、原稿サイズがA4であってモノクロコピーを実行可能なサイズとなっている。また、デフォルト割り当てサイズは、割り込み時ではない場合(つまり先行ジョブが存在しない場合)に、ジョブに割り当てられる記憶領域のサイズとなっている。また、割込時割り当てサイズは、デフォルト割り当てサイズより小さい値となっている。
ところで、特許文献1の画像形成装置では、メモリーにデフォルト割り当てサイズ以上の空き領域がない場合、所定のジョブ種別のジョブを実行可能な所定の割込時割り当てサイズの記憶領域の空き領域を確保している。このため、デフォルト割り当てサイズの記憶領域が割り当てられない場合でも、割込時割り当てサイズの記憶領域で割り込みジョブを実行できる。
ところが、この画像形成装置では、メモリーのワーク領域に生じる断片化を考慮していない。すなわち、メモリー領域へのアクセス効率、メモリー領域へのアクセスを制御するプロセッサーやASIC(Application Specific Integrated Circuit)の仕様等の理由により、各ジョブに対して物理的に連続したメモリー領域(連続した物理メモリー領域)を割り当てることが求められる。このため、メモリーの使用に伴って断片化が広がった場合、処理が優先されるべき割り込みジョブにメモリー領域を割り当てることが不可能となるおそれがある。このようなことから、メモリーのワーク領域に生じる断片化が広がった場合であっても、割り込みジョブに対するメモリー領域の割り当てを適切に行うことができる装置の開発が望まれている。
本発明は、このような状況に鑑みてなされたものであり、上記問題点を解消することができるメモリー管理装置及びメモリー領域割り当てプログラムを提供することを目的とする。
本発明のメモリー管理装置は、揮発性メモリーに対し、非割り込みジョブに第1のメモリー領域を割り当てるメモリー管理部と、前記非割り込みジョブを受け付けると、前記メモリー管理部に対し、第2のメモリー領域を割り込みジョブ予約領域として確保させるシステム制御部とを備え、前記システム制御部は、前記メモリー管理部に対し、前記非割り込みジョブの実行中に割り込みジョブを受け付けると、前記第2のメモリー領域を前記割り込みジョブ用として割り当てさせることを特徴とする。
また、前記システム制御部は、前記メモリー管理部に対し、前記第2のメモリー領域を解放させ、前記解放された第2のメモリー領域を前記割り込みジョブ用として割り当てさせることを特徴とする。
また、前記システム制御部は、前記メモリー管理部に対し、受け付けた前記割り込みジョブのサイズが前記第2のメモリー領域のサイズより小さい場合、前記第2のメモリー領域内に前記割り込みジョブ用のメモリー領域を割り当てさせることを特徴とする請求項1又は2に記載のメモリー管理装置。
また、前記第1のメモリー領域及び前記第2のメモリー領域は、物理的に連続したメモリー領域に対応することを特徴とする。
本発明のメモリー管理プログラムは、メモリー管理装置の揮発性メモリーの領域の割り当てを制御するコンピューターに実行させるメモリー管理プログラムであって、メモリー管理部により、揮発性メモリーに対し、非割り込みジョブに第1のメモリー領域を割り当てる工程と、システム制御部により、前記非割り込みジョブを受け付けると、前記メモリー管理部に対し、第2のメモリー領域を割り込みジョブ予約領域として確保させる工程とを有し、前記システム制御部は、前記メモリー管理部に対し、前記非割り込みジョブの実行中に割り込みジョブを受け付けると、前記第2のメモリー領域を前記割り込みジョブ用として割り当てさせることを特徴とする。
本発明のメモリー管理装置及びメモリー管理プログラムでは、メモリー管理部により、揮発性メモリーに対し、非割り込みジョブに第1のメモリー領域を割り当て、システム制御部により、非割り込みジョブを受け付けると、メモリー管理部に対し、第2のメモリー領域を割り込みジョブ予約領域として確保させる。また、システム制御部は、メモリー管理部に対し、非割り込みジョブの実行中に割り込みジョブを受け付けると、第2のメモリー領域を割り込みジョブ用として割り当てさせる。
これにより、揮発性メモリーのワーク領域に生じる断片化が広がっている場合でも、揮発性メモリーに対する非割り込みジョブの割り当てが行われると、直ちに割り込みジョブのための割り込みジョブ予約領域が確保される。
本発明のメモリー管理装置及びメモリー管理プログラムによれば、揮発性メモリーに対する非割り込みジョブの割り当てが行われると、直ちに割り込みジョブのための割り込みジョブ予約領域が確保されるので、割り込みジョブに対するメモリー領域の割り当てを適切に行うことができる。
本発明のメモリー管理装置をMFPに適用した場合の一実施形態を説明するための図である。 図1のメモリー管理部によるRAMの一般的なメモリー管理について説明するものであって、図2(a)は断片化が少ないメモリーの場合での割り込みジョブに対するメモリー領域の割り当てについて説明するための図であり、図2(b)は断片化が多いメモリーの場合での割り込みジョブに対するメモリー領域の割り当てについて説明するための図である。 図1のメモリー管理部によるRAMのメモリー管理について説明するものであって、図3(a)は割り込みジョブ予約領域の確保について説明するための図であり、図3(b)は確保した割り込みジョブ予約領域に対する割り込みジョブの割り当てについて説明するための図である。 図1のRAMに対する割り込みジョブ予約領域の確保の一例について説明するためのフローチャートである。 図1のRAMに対する割り込みジョブ予約領域の確保の他の例について説明するためのフローチャートである。
以下、本発明のメモリー管理装置の一実施形態を、図1〜図5を参照しながら説明する。なお、以下の説明においてのメモリー管理装置の一例としては、たとえば印刷機能、コピー機能、FAX(Facsimile)機能、スキャナー機能、ネットワーク経由でのデータ送受信機能等を搭載した複合的な周辺機器であるMFP(Multifunction Peripheral)であるものとする。
まず、図1に示すように、MFP100は、スキャナー部101、プリンター部102、FAX部103、I/F(インターフェース)104、パネル部105及びHDD106の動作を制御する制御部110を備えている。
スキャナー部101は、イメージセンサー(図示省略)によって読み取られる、図示しない用紙上の画像をデジタルの画像データに変換し、制御部110に入力するデバイスである。プリンター部102は、制御部110から出力される印刷データに基づき、図示しない用紙上に画像を印刷するデバイスである。FAX部103は、制御部110から出力されるデータを、電話回線を通じ相手方となるファクシミリへと送信し、また、相手方ファクシミリからのデータを受信して制御部110に入力するデバイスである。
I/F104は、ネットワークを介し、図示しない他のMFPやユーザー端末等との通信を受け持つ。なお、I/F104は、図示しないコンテンツサーバーやウェブサーバー等との通信を受け持ってもよい。パネル部105は、たとえばMFP100の印刷機能、コピー機能、FAX機能、スキャナー機能、ネットワーク経由でのデータ送受信機能や、各種設定のための表示を行うタッチパネルとハードウェアキーとを有するデバイスである。
制御部110は、認証プログラム等のアプリケーションプログラム、画像形成プログラム、及び制御プログラム等を実行してMFP100全体の動作を制御するプロセッサーである。制御部110は、スキャナー制御部111、プリンター制御部112、FAX制御部113、通信制御部114、RAM(Random Access Memory)115、EEPROM(electrically erasable and programmable read-only memory)116、画像処理部117、メモリー管理部118、パネル操作制御部119、HDD制御部120、システム制御部121を備えている。また、これらは、データバス122に接続されている。
スキャナー制御部111は、スキャナー部101の読み取り動作を制御する。プリンター制御部112は、プリンター部102の印刷動作を制御する。FAX制御部113は、FAX部103によるデータの送受信動作を制御する。通信制御部114は、I/F104を介し、ネットワーク経由でのデータ等の送受信の制御を行う。RAM115は、プログラムを実行するためのワークメモリーである。また、RAM115には、詳細については後述するが、メモリー管理部118により、たとえば割り込みジョブの使用に適したメモリー領域が割り当てられる。EEPROM116には、各部の動作チェックや起動シーケンスを生成する制御プログラム等が記憶されている。
画像処理部117は、スキャナー部101によって読み取られた画像データに対する画像処理(ラスタライズ)を行う。また、画像処理部117は、HDD106のユーザーボックスに登録された印刷ジョブに対する画像処理(ラスタライズ)を行う。なお、システム制御部121は、ジョブの実行を制御する。このとき、システム制御部121は、画像処理部117が画像処理した印刷データを、一旦、RAM115に記憶させる。
メモリー管理部118は、詳細については後述するが、システム制御部121の指示に従い、RAM115のメモリー領域の割り当てを行う。パネル操作制御部119は、パネル部105の表示動作を制御する。また、パネル操作制御部119は、パネル部105を介し、印刷、コピー、FAX、スキャン、ネットワーク経由でのデータ送受信等の設定を受け付ける。HDD制御部120は、HDD106に対するデータの読み出し及び書き込み等を制御する。システム制御部121は、各部の連携動作等を制御する。また、システム制御部121は、非割り込みジョブや割り込みジョブを受け付けると、メモリー管理部118に対し、RAM115のメモリー領域の割り当てを指示する。
次に、図2を参照し、メモリー管理部118によるRAM115のメモリー領域の一般的な割り当てについて説明する。まず、図2(a)により、断片化が少ないメモリーの場合での割り込みジョブに対するメモリー領域の割り当てについて説明する。すなわち、メモリー管理部118は、RAM115に対し、ジョブ割り当て領域115Aとワーク領域115Bとを割り当てる。ジョブ割り当て領域115Aは、受け付けたジョブのデータを記憶する領域であって、各ジョブに対して、物理的に連続するメモリー領域が割り当てられている。ワーク領域115Bは、ジョブ割り当て領域115Aに記憶されたジョブのデータが読み出されて、画像処理に使用される領域である。ここで、ジョブ割り当て領域115Aには、非割り込みジョブ1〜m(m<n、1〜mは、システム制御部121が非割り込みジョブを受け付けた順番を示す。)に対してそれぞれ物理的に連続したメモリー領域115a〜115cが割り当てられているとする。なお、非割り込みジョブ1〜mは、図示しないジョブキューに登録された順に割り当てられるものとする。また、メモリー管理部118は、ワーク領域115Bに生じる断片化が少ない場合、ジョブのデータのサイズを満たす物理的に連続した空き領域がメモリー領域に存在する可能性が高い。このため、割り込みジョブが受け付けられると、物理的に連続した空き領域が存在すれば、割り込みジョブに対してメモリー領域115dを割り当てることができる。このように、本実施形態において、メモリー管理部118は、非割り込みジョブ及び割り込みジョブにジョブ割り当て領域115Aの物理的に連続したメモリー領域を割り当てる。
これに対し、ワーク領域115Bへのデータの読み書きが増加すると、ワーク領域115Bに多くの断片化が生じる可能性がある。このような場合、ジョブのデータのサイズを満たす物理的に連続した空き領域が確保できなくなる可能性がある。図2(b)のように、非割り込みジョブ1〜n(n>m、1〜nは、システム制御部121が非割り込みジョブを受け付けた順番を示す。)の数が多くなると、ワーク領域115Bの断片化による物理的に連続した空き領域の確保が困難になる。このように、ワーク領域115Bに多くの断片化が生じると、ジョブ割り当て領域115Aがひっ迫する。この場合、メモリー管理部118は、割り込みジョブが受け付けられたとき、その割り込みジョブのサイズがメモリー領域115dより大きい場合、メモリー領域115dに割り込みジョブを割り当てることができなくなる。なお、非割り込みジョブ1〜nは、上記同様に、図示しないジョブキューに登録された順に割り当てられるものとする。
そこで、本実施形態では、図3のように、ワーク領域115Bに多くの断片化が生じても、割り込みジョブの領域割り当てを確実に行うようにしている。すなわち、図3(a)のように、非割り込みジョブ1(最初に受け付けられた非割り込みジョブ)のメモリー領域115aに物理的に連続するメモリー領域115bに、割り込みジョブ予約領域を確保している。また、メモリー領域115bに続けて非割り込みジョブ2〜非割り込みジョブnを割り当てるようにしている。なお、非割り込みジョブ1〜nは、上記同様に、図示しないジョブキューに登録された順に割り当てられるとする。また、割り込みジョブのための領域115bは、RAM115のサイズにもよるが、十分なサイズとなるように確保することが好ましい。すなわち、割り込みジョブがコピージョブである場合、過去の使用履歴から最大の使用サイズを満たすことができるサイズとなるように領域115bを確保することが好ましい。
これにより、ワーク領域115Bの断片化により、ジョブ割り当て領域115Aがひっ迫しても、十分なサイズの割り込みジョブのための領域115bを確保できるため、割り込みジョブが受け付けられた場合、その確保された領域115bに割り込みジョブを確実に割り当てることができる。
図3(b)は、割り込みジョブを割り当てた場合を示している。すなわち、システム制御部121は、割り込みジョブを受け付けると、割り込みジョブのサイズと、確保している割り込みジョブのための領域115bのサイズとを比較する。そして、システム制御部121は、受け付けた割り込みジョブのサイズが、確保している割り込みジョブのための領域115bのサイズ以下である場合、メモリー管理部118に対し、メモリー領域115dに対する割り込みジョブの割り当てを指示する。このとき、メモリー管理部118は、割り込みジョブのための領域115bを解放し、メモリー領域115d内に割り込みジョブのサイズに見合った領域115b1を割り当てる。これにより、ワーク領域115Bに多くの断片化が生じても、割り込みジョブの領域割り当てを確実に行うことができる。なお、システム制御部121は、ジョブキューが空になった場合、メモリー管理部118に対し、メモリー領域115a〜115dの解放を指示する。
次に、図4を参照し、RAM115に対する割り込みジョブ予約領域の確保の一例について説明する。図4に示す処理は、非割り込みジョブ又は割り込みジョブが発生する度に、ジョブ毎に実行される。なお、以下では、非割り込みジョブを印刷ジョブとし、割り込みジョブをコピージョブとした場合で説明する。また、以下では、図3(a)に示したジョブ割り当て領域115Aに、メモリー領域115a等が割り当てられていないものとして説明する。
(ステップS101)
システム制御部121は、ジョブを受け付けたかどうかを判断する。
この場合、システム制御部121は、ジョブを受け付けていないとき、ジョブを受け付けるまで処理を待機する(ステップS101:No)。
これに対し、システム制御部121は、ジョブを受け付けたとき(ステップS101:Yes)、ステップS102に移行する。
(ステップS102)
システム制御部121は、割り込みジョブかどうかを判断する。
この場合、システム制御部121は、パネル操作制御部119がパネル部105を介して割り込みコピーのボタン操作を受け付けたことを示す通知が無ければ、非割り込みジョブと判断し(ステップS102:No)、ステップS103に移行する。また、システム制御部121は、通信制御部114がI/F104を介して受信したジョブのデータに割り込みジョブであることを示す情報(コマンド、コード等)が含まれていなければ、非割り込みジョブと判断し(ステップS102:No)、ステップS103に移行する。
これに対し、システム制御部121は、パネル操作制御部119がパネル部105を介して割り込みコピーのボタン操作を受け付けたことを示す通知が有れば、割り込みジョブと判断し(ステップS102:Yes)、ステップS108に移行する。また、システム制御部121は、通信制御部114がI/F104を介して受信したジョブのデータに割り込みジョブであることを示す情報(コマンド、コード等)が含まれていれば、割り込みジョブと判断し(ステップS102:Yes)、ステップS108に移行する。
(ステップS103)
システム制御部121は、メモリー管理部118に対し、非割り込みジョブに対するメモリー領域115aの割り当てを指示する。
このとき、メモリー管理部118は、図3(a)に示したように、RAM115のジョブ割り当て領域115Aに非割り込みジョブに対するメモリー領域(以降、「メモリー領域115a等」と記述する。)を割り当て、非割り込みジョブのデータをメモリー領域115aに記憶する。このとき、システム制御部121は、非割り込みジョブをジョブキューに登録する。その後、システム制御部121は、処理をステップS104に移行する。
なお、システム制御部121は、ジョブ割り当て領域115Aに非割り込みジョブのデータのサイズを満たす物理的に連続した空き領域がない場合、非割り込みジョブをジョブキューに登録し、メモリー管理部118に非割り込みジョブに対するメモリー領域の割り当てを待機させる。
(ステップS104)
システム制御部121は、割り込みジョブ予約領域が確保されているかどうかを判断する。
この場合、システム制御部121は、メモリー管理部118が割り込みジョブ予約領域を予約しているとき、割り込みジョブ予約領域が確保されていると判断し(ステップS101:Yes)、ステップS106に移行する。
これに対し、システム制御部121は、メモリー管理部118が割り込みジョブ予約領域を予約していないとき、割り込みジョブ予約領域が確保されていないと判断し(ステップS101:No)、ステップS105に移行する。
(ステップS105)
システム制御部121は、メモリー管理部118に対し、割り込みジョブ予約領域を確保させる。
このとき、メモリー管理部118は、図3(a)に示したように、RAM115のジョブ割り当て領域115Aに割り込みジョブに対するメモリー領域115bを確保する。その後、システム制御部121は、処理をS106に移行する。
(ステップS106)
システム制御部121は、非割り込みジョブの処理状況を監視し、メモリー管理部118に対し、非割り込みジョブ終了後、終了した非割り込みジョブに割り当てられたメモリー領域115a等を解放させ、ステップS107に移行する。
(ステップS107)
システム制御部121は、ジョブキューが空かどうかを判断する。
この場合、システム制御部121は、ジョブキューを確認し、ジョブキューが空と判断すると(ステップS107:Yes)、ステップS108に移行する。
これに対し、システム制御部121は、ジョブキューを確認し、ジョブキューが空でないと判断すると(ステップS107:No)、処理を終了する。
(ステップS108)
システム制御部121は、メモリー管理部118に対し、割り込みジョブ予約領域を解放させる。
このとき、メモリー管理部118は、図3(a)に示したRAM115のジョブ割り当て領域115Aに割り込みジョブに対するメモリー領域115bが確保されている場合、メモリー管理部118に対し、RAM115のジョブ割り当て領域115Aに割り当てられているメモリー領域115b(割り込みジョブ予約領域)を解放する。その後、システム制御部121は、処理を終了する。
(ステップS109)
システム制御部121は、割り込みジョブ予約領域が確保されているかどうかを判断する。
この場合、システム制御部121は、メモリー管理部118が割り込みジョブ予約領域を予約していないとき、割り込みジョブ予約領域が確保されていないと判断し(ステップS109:No)、ステップS110に移行する。メモリー管理部118が割り込みジョブ予約領域を予約していないときとは、典型的には、ジョブ割り当て領域115Aに、メモリー領域115a等が割り当てられていない状態において、割り込みジョブが最初に受け付けられた場合である。
これに対し、システム制御部121は、メモリー管理部118が割り込みジョブ予約領域を予約しているとき、割り込みジョブ予約領域が確保されていると判断し(ステップS109:Yes)、ステップS111に移行する。
(ステップS110)
システム制御部121は、メモリー管理部118に対し、割り込みジョブに対するメモリー領域の割り当てを指示する。このとき、メモリー管理部118は、RAM115のジョブ割り当て領域115Aに割り込みジョブに対するメモリー領域(図2に示したメモリー領域115dに相当)を割り当て、割り込みジョブのデータをメモリー領域115dに記憶する。その後、システム制御部121は、処理をステップS111に移行する。
(ステップS111)
システム制御部121は、メモリー管理部118に対し、割り込みジョブに対するメモリー領域の割り当てを指示する。
このとき、メモリー管理部118は、図3(a)に示したように、RAM115のジョブ割り当て領域115Aのメモリー領域115b(割り込みジョブ予約領域)を解放し、に割り込みジョブにメモリー領域115bを割り当て、割り込みジョブのデータを図3(b)に示すメモリー領域115b1に記憶する。その後、システム制御部121は、処理をステップS112に移行する。
(ステップS112)
システム制御部121は、割り込みジョブの処理状況を監視し、メモリー管理部118に対し、割り込みジョブ終了後、終了した割り込みジョブに割り当てたられたメモリー領域を解放させる。
このとき、メモリー管理部118は、RAM115のジョブ割り当て領域115Aに割り当てられている割り込みジョブに対するメモリー領域(図2(a)に示したメモリー領域115dに相当する領域又は図3(b)に示した115b1)を解放する。その後、システム制御部121は、処理をステップS113に移行する。
(ステップS113)
システム制御部121は、ジョブキューが空かどうかを判断する。
この場合、システム制御部121は、ジョブキューを確認し、ジョブキューが空と判断すると(ステップS113:Yes)、処理を終了する。
これに対し、システム制御部121は、ジョブキューを確認し、ジョブキューが空でないと判断すると(ステップS113:No)、ステップS114に移行する。
(ステップS114)
システム制御部121は、メモリー管理部118に対し、割り込みジョブ予約領域を確保させる。
このとき、メモリー管理部118は、図3(a)に示したように、RAM115のジョブ割り当て領域115Aに割り込みジョブに対するメモリー領域115bを確保する。その後、システム制御部121は、処理を終了する。
次に、図5を参照し、RAM115に対する割り込みジョブ予約領域の確保の他の例について説明する。図5に示す処理は、割り込みジョブが発生する度に、ジョブ毎に実行される。
(ステップS201)
システム制御部121は、割り込みジョブを受け付けたかどうかを判断する。
この場合、システム制御部121は、割り込みジョブを受け付けていないとき、割り込みジョブを受け付けるまで処理を待機する(ステップS201:No)。
これに対し、システム制御部121は、ジョブキューが割り込みジョブを受け付けたとき(ステップS201:Yes)、ステップS202に移行する。
(ステップS202)
システム制御部121は、メモリー領域の割り当てが可能かどうかを判断する。
この場合、システム制御部121は、メモリー管理部118が管理しているジョブ割り当て領域115Aに、割り込みジョブのデータのサイズを満たす物理的に連続した空き領域が有るかどうかを確認し、割り込みジョブのサイズを満たす物理的に連続した空き領域が無い場合はメモリー領域の割り当てが不可能であると判断し(ステップS202:No)、ステップS203に移行する。
これに対し、システム制御部121は、メモリー管理部118が管理しているジョブ割り当て領域115Aに、割り込みジョブのサイズを満たす物理的に連続した空き領域が有るかどうかを確認し、割り込みジョブのサイズを満たす物理的に連続した空き領域が有る場合はメモリー領域の割り当てが可能であると判断し(ステップS202:Yes)、ステップS207に移行する。
(ステップS203)
システム制御部121は、割り込みジョブのサイズが割り込みジョブ予約領域のサイズより小さいかどうかを判断する。
この場合、システム制御部121は、図3(b)に示したように、割り込みジョブのサイズが割り込みジョブ予約領域のサイズより小さいとき(ステップS203:Yes)、ステップS205に移行する。
これに対し、システム制御部121は、図3(b)に示したように、割り込みジョブのサイズが割り込みジョブ予約領域のサイズより大きいとき(ステップS203:No)、ステップS204に移行する。
(ステップS204)
システム制御部121は、割り込みジョブをジョブキューに登録する。
この場合、システム制御部121は、割り込みジョブをジョブキューに登録すると、ステップS202に戻り、メモリー領域の割り当てが可能となるまで待機する。この場合、システム制御部121は、先行する非割り込みジョブを実行し、非割り込みジョブが終了した後、非割り込みジョブに割り当てられたメモリー領域115a等が解放されると、処理をステップS202に移行する。
(ステップS205)
システム制御部121は、割り込みジョブ予約領域が確保されているかどうかを判断する。
この場合、システム制御部121は、メモリー管理部118が割り込みジョブ予約領域を予約していないとき、割り込みジョブ予約領域が確保されていないと判断し(ステップS205:No)、ステップS204に移行する。
これに対し、システム制御部121は、メモリー管理部118が割り込みジョブ予約領域を予約しているとき、割り込みジョブ予約領域が確保されていると判断し(ステップS205:Yes)、ステップS206に移行する。
(ステップS206)
システム制御部121は、メモリー管理部118に対し、割り込みジョブ予約領域を解放させる。
このとき、メモリー管理部118は、図3(b)に示したRAM115のジョブ割り当て領域115Aに割り当てられている割り込みジョブに対するメモリー領域115bを解放する。
(ステップS207)
システム制御部121は、メモリー管理部118に対し、割り込みジョブにメモリー領域を割り当てさせる。
このとき、メモリー管理部118は、ステップS206の後、図3(b)に示した割り込みジョブのための領域115bを解放した後、メモリー領域115d内に割り込みジョブのサイズに見合った領域115b1を割り当てる。
また、メモリー管理部118は、ステップS202で「YES」の場合、RAM115のジョブ割り当て領域115Aの物理的に連続した空き領域を割り込みジョブに対するメモリー領域(図2(a)に示すメモリー領域115dに相当)として割り当てる。
システム制御部121は、割り込みジョブにメモリー領域を割り当てた後、図4に示すステップS112以降の処理を実行する。
なお、本実施形態において、システム制御部121は、メモリー管理部118に対し、非割り込みジョブ又は割り込みジョブがそれぞれ終了する度に、RAM115のワーク領域115Bを解放させてもよいし、ジョブキューが空になった場合にワーク領域115Bを解放させてもよい。ワーク領域115Bが解放されたことによって形成される物理的に連続した空き領域を、ジョブ割り当て領域115Aのメモリー領域として割り込みジョブ又は非割り込みジョブを割り当てることができる。
このように、本実施形態では、メモリー管理部118により、RAM115(揮発性メモリー)に対し、非割り込みジョブにメモリー領域115a(第1のメモリー領域)を割り当て、システム制御部121により、非割り込みジョブを受け付けると、メモリー管理部118に対し、メモリー領域115b(第2のメモリー領域)を割り込みジョブ予約領域として確保させる。また、システム制御部121は、メモリー管理部118に対し、非割り込みジョブの実行中に割り込みジョブを受け付けると、メモリー領域115b(第2のメモリー領域)を割り込みジョブ用として割り当てさせる。
これにより、RAM115(揮発性メモリー)のワーク領域に生じる断片化が広がっている場合でも、RAM115(揮発性メモリー)に対する非割り込みジョブの割り当てが行われると、直ちに割り込みジョブのための割り込みジョブ予約領域が確保されるので、割り込みジョブに対するメモリー領域115b(第2のメモリー領域)の割り当てを適切に行うことができる。
なお、本実施形態では、メモリー管理装置をMFP100とした場合としているが、この例に限らず、多機能プリンターや、PC(Personal Computer)等の他のメモリー管理装置に適用してもよい。
100 MFP
101 スキャナー部
102 プリンター部
103 FAX部
104 I/F
105 パネル部
106 HDD
110 制御部
111 スキャナー制御部
112 プリンター制御部
113 FAX制御部
114 通信制御部
115 RAM
116 EEPROM
115A ジョブ割り当て領域
115B ワーク領域
115a〜115e メモリー領域
115b1 領域
117 画像処理部
118 メモリー管理部
119 パネル操作制御部
120 HDD制御部
121 システム制御部
122 データバス

Claims (5)

  1. 揮発性メモリーに対し、非割り込みジョブに第1のメモリー領域を割り当てるメモリー管理部と、
    前記非割り込みジョブを受け付けると、前記メモリー管理部に対し、第2のメモリー領域を割り込みジョブ予約領域として確保させるシステム制御部とを備え、
    前記システム制御部は、前記メモリー管理部に対し、前記非割り込みジョブの実行中に割り込みジョブを受け付けると、前記第2のメモリー領域を前記割り込みジョブ用として割り当てさせる
    ことを特徴とするメモリー管理装置。
  2. 前記システム制御部は、前記メモリー管理部に対し、前記第2のメモリー領域を解放させ、前記解放された第2のメモリー領域を前記割り込みジョブ用として割り当てさせることを特徴とする請求項1に記載のメモリー管理装置。
  3. 前記システム制御部は、前記メモリー管理部に対し、受け付けた前記割り込みジョブのサイズが前記第2のメモリー領域のサイズより小さい場合、前記第2のメモリー領域内に前記割り込みジョブ用のメモリー領域を割り当てさせることを特徴とする請求項1又は2に記載のメモリー管理装置。
  4. 前記第1のメモリー領域及び前記第2のメモリー領域は、物理的に連続したメモリー領域に対応することを特徴とする請求項1〜3の何れか一項に記載のメモリー管理装置。
  5. メモリー管理装置の揮発性メモリーの領域の割り当てを制御するコンピューターに実行させるメモリー管理プログラムであって、
    メモリー管理部により、揮発性メモリーに対し、非割り込みジョブに第1のメモリー領域を割り当てる工程と、
    システム制御部により、前記非割り込みジョブを受け付けると、前記メモリー管理部に対し、第2のメモリー領域を割り込みジョブ予約領域として確保させる工程とを有し、
    前記システム制御部は、前記メモリー管理部に対し、前記非割り込みジョブの実行中に割り込みジョブを受け付けると、前記第2のメモリー領域を前記割り込みジョブ用として割り当てさせる
    ことを特徴とするメモリー管理プログラム。
JP2018010353A 2018-01-25 2018-01-25 メモリー管理装置及びメモリー管理プログラム Pending JP2019129425A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018010353A JP2019129425A (ja) 2018-01-25 2018-01-25 メモリー管理装置及びメモリー管理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018010353A JP2019129425A (ja) 2018-01-25 2018-01-25 メモリー管理装置及びメモリー管理プログラム

Publications (1)

Publication Number Publication Date
JP2019129425A true JP2019129425A (ja) 2019-08-01

Family

ID=67472497

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018010353A Pending JP2019129425A (ja) 2018-01-25 2018-01-25 メモリー管理装置及びメモリー管理プログラム

Country Status (1)

Country Link
JP (1) JP2019129425A (ja)

Similar Documents

Publication Publication Date Title
US8584137B2 (en) Image processing system for judging whether a partial job should be processed by an own device or another device
US20110051189A1 (en) Image communication apparatus, control method, and storage medium
EP3557403B1 (en) Image forming system and image forming method
US9026576B2 (en) Image processing device, job processing method, and program
JP2015223006A (ja) 機器連携システム、機能提供方法
JP2019129425A (ja) メモリー管理装置及びメモリー管理プログラム
JP5538334B2 (ja) 画像形成装置及びジョブ制御プログラム
US11632484B2 (en) Image processing apparatus and non-transitory computer readable medium for preventing disclosure of contents of image data
JP6669101B2 (ja) 電子機器及び起動シーケンス生成プログラム
JP6460032B2 (ja) 画像形成装置、画像形成システム及び画像形成プログラム
JP2019036905A (ja) 電子機器及びメモリー管理プログラム
JP2020144565A (ja) 電子機器及び起動シーケンス生成プログラム
US9491325B2 (en) Image processing apparatus, image processing method for the same, and recording medium
EP3644191A1 (en) Memory system and electronic device
JP6680253B2 (ja) 画像形成装置及び画像形成プログラム
JP2020031307A (ja) 電子機器及びメモリー管理プログラム
JP5656761B2 (ja) 画像形成装置
JP6579087B2 (ja) 電子機器及び起動シーケンス生成プログラム
JP2019067335A (ja) 電子機器及びメモリー領域割り当てプログラム
JP6733592B2 (ja) 画像形成装置及び画像形成プログラム
JP2010068486A (ja) 画像処理装置、画像処理方法
JPH11175293A (ja) 画像処理装置
JP2018088053A (ja) 画像形成装置及び画像形成プログラム
US20180217796A1 (en) Print apparatus and memory managing method for print apparatus
JP2020057960A (ja) 電子機器及びメモリー管理プログラム