Warning: fopen(data/log202007061309.log): failed to open stream: No space left on device in /home/jp321/public_html/header.php on line 106

Warning: flock() expects parameter 1 to be resource, boolean given in /home/jp321/public_html/header.php on line 107

Warning: fclose() expects parameter 1 to be resource, boolean given in /home/jp321/public_html/header.php on line 112
メモリ使用量の制御装置、メモリ使用量の制御方法、ソフトウエアプログラム、計算機システム - エヌイーシーシステムテクノロジー株式会社
米国特許情報 | 欧州特許情報 | 国際公開(PCT)情報 | Google の米国特許検索
 
     特許分類
A 農業
B 衣類
C 家具
D 医学
E スポ−ツ;娯楽
F 加工処理操作
G 机上付属具
H 装飾
I 車両
J 包装;運搬
L 化学;冶金
M 繊維;紙;印刷
N 固定構造物
O 機械工学
P 武器
Q 照明
R 測定; 光学
S 写真;映画
T 計算機;電気通信
U 核技術
V 電気素子
W 発電
X 楽器;音響


  ホーム -> 計算機;電気通信 -> エヌイーシーシステムテクノロジー株式会社

発明の名称 メモリ使用量の制御装置、メモリ使用量の制御方法、ソフトウエアプログラム、計算機システム
発行国 日本国特許庁(JP)
公報種別 公開特許公報(A)
公開番号 特開2003−5986(P2003−5986A)
公開日 平成15年1月10日(2003.1.10)
出願番号 特願2001−188401(P2001−188401)
出願日 平成13年6月21日(2001.6.21)
代理人 【識別番号】100082935
【弁理士】
【氏名又は名称】京本 直樹 (外2名)
【テーマコード(参考)】
5B060
5B098
【Fターム(参考)】
5B060 AA09 AA12 
5B098 GA04 GC10 GD04 JJ08
発明者 下之 隆久
要約 課題
メモリ使用量が増加すると、オペレーティングシステムはプログラムが使用可能なメモリの割り当てを動的に拡張するため、他に対して割り当てられるワーキングサイズは減少し、ジョブの安定性が損なわれる。

解決手段
サービス部12は、ジョブ管理テーブル定義部13との通信機能を有し、定義されているジョブの状態を監視,制御する。ジョブ14のメモリ使用量が、ジョブ管理テーブル定義部13で定義されたジョブのしきい値を超えた場合、ジョブ14内の各プログラムへのワーキングサイズを制御部11によって割り当てられている現在値のまま維持する制御を行う。ジョブ管理テーブル16には、サービス部12がメモリの制御を行う対象とするジョブの構成,制御の条件が定義されている。
特許請求の範囲
【請求項1】 複数のプログラムで構成されるジョブが動作するシステムにおけるメモリ使用量の制御装置であって、前記ジョブを構成する前記プログラムの前記メモリ使用量の合計が、制限値を上回った時点、または、確保値を下回った時点に、前記プログラムのワーキングサイズを、前記時点のまま維持するよう維持制御を行い、前記ジョブの前記メモリ使用量が前記制限値を下回った時点、または、前記確保値を上回った時点に、前記維持制御を解除することを特徴とするメモリ使用量の制御装置。
【請求項2】 複数のプログラムで構成されるジョブが動作するシステムにおけるメモリ使用量の制御装置であって、全ての前記プログラムのベースとなって制御する部分であり、前記プログラムへのメモリ割り当て機能を有する制御部と、ジョブ管理テーブル定義部との通信機能を有し、前記ジョブの状態を監視し、前記ジョブの前記メモリ使用量が、前記ジョブ管理テーブル定義部で定義された制限値を上回った時点、または、確保値を下回った時点に、前記プログラムへのワーキングサイズを前記時点におけるメモリ割り当て量に維持する制御を行うサービス部と、前記サービス部との通信機能を有し、前記サービス部が制御する前記ジョブの定義を行うジョブ管理テーブル定義部と、前記ジョブ管理テーブル定義部によって定義され、前記サービス部により参照され、前記メモリ使用量の制御を行う対象とする前記ジョブの構成と制御の条件が定義されているジョブ管理テーブルとから構成することを特徴とするメモリ使用量の制御装置。
【請求項3】 前記制御部、前記サービス部、前記ジョブ管理テーブル定義部をプログラム処理としたことを特徴とする請求項2記載のメモリ使用量の制御装置。
【請求項4】 複数のプログラムで構成されるジョブが動作するシステムにおけるメモリ使用量の制御方法であって、前記ジョブについて、前記ジョブの構成と前記メモリ量の割り当て制御を開始するための第一の条件と第二の条件からなる制御条件をジョブ管理テーブルに定義する第一のステップと、前記ジョブ管理テーブルから前記ジョブの構成および前記制御条件を取得す第二のステップと、前記ジョブの前記メモリ使用量を取得し、前記ジョブ管理テーブルに定義されている前記制御条件と比較する第三のステップと、前記ジョブのメモリ使用量が前記第一の条件を上回った時点、または、前記第二の条件を下回った時点に、前記プログラムの前記時点でのワーキングサイズを取得し、前記ワーキングサイズのまま維持し、メモリ使用量に応じたメモリの動的な割り当て機能を無効にする第四のステップと、前記ジョブのメモリ使用量が、ジョブ管理テーブルに定義されている前記第一の条件を下回った時点、または、前記第二の条件を上回った時点に、前記メモリの動的割り当て機能を有効にする第五のステップとから構成することを特徴とするメモリ使用量の制御方法【請求項5】 コンピュータに、複数のプログラムで構成されるジョブが動作するシステムにおけるメモリ使用量を制御するソフトウエアプログラムであって、前記ジョブについて、前記ジョブの構成と前記メモリ量の割り当て制御を開始するための第一の条件と第二の条件からなる制御条件をジョブ管理テーブルに定義する第一の処理と、前記ジョブ管理テーブルから前記ジョブの構成および前記制御条件を取得す第二の処理と、前記ジョブの前記メモリ使用量を取得し、前記ジョブ管理テーブルに定義されている前記制御条件と比較する第三の処理と、前記ジョブのメモリ使用量が前記第一の条件を上回った時点、または、前記第二の条件を下回った時点に、前記プログラムの前記時点でのワーキングサイズを取得し、前記ワーキングサイズのまま維持し、メモリ使用量に応じたメモリの動的な割り当て機能を無効にする第四の処理と、前記ジョブのメモリ使用量が、ジョブ管理テーブルに定義されている前記第一の条件を下回った時点、または、前記第二の条件を上回った時点に、前記メモリの動的割り当て機能を有効にする第五の処理を実行させるソフトウエアプログラム。
【請求項6】 請求項1、2または3記載のメモリ使用量の制御装置を有することを特徴とする計算機システム。
発明の詳細な説明
【0001】
【発明の属する技術分野】本発明はジョブのメモリ使用量の制御に関し、特にジョブが安定して動作するためのメモリ量の制御に関する。
【0002】
【従来の技術】ジョブを構成するプログラムが使用するメモリ量は、プログラムによって異なり、プログラムのメモリ使用量が増加すると、オペレーティングシステム(以降、“OS”と記載)はプログラムが使用可能なメモリの割り当て範囲(使用可能なサイズの上限,下限)を動的に拡張する(以降、OSが割り当てたメモリ範囲を“ワーキングサイズ”と記載)。その結果、他のプログラムに対して割り当てられるワーキングサイズは減少し、ジョブ全体としての安定性が損なわれる要因となる。
【0003】図7は、ユーザがジョブに指定した値の平均値を全プログラムのワーキングサイズの設定値として利用する時のメモリ割り当てを示す図である。この例では、ジョブを構成するプログラム数が5、合計メモリ使用量が105、制限値が100で平均値が20、確保が50で平均値が10である。制御で使用するワーキングサイズは、10から20の間となる。この場合、ジョブA、Dには影響なし、ジョブEには5の余裕、ジョブBには5の抑制、ジョブCは25の抑制となり、ジョブの負担となる。
【0004】特開平10−283208号公報「動的ワーキングセット変更方式、動的ワーキングセット変更方法、動的ワーキングセット変更プログラムを記録した記録媒体」には、アンソーシャブルが指定されているジョブのワーキングサイズの下限値を動的に変更する方式が開示されている。
【0005】
【発明が解決しようとする課題】オペレーティングシステムがプログラムが使用可能なメモリの割り当て範囲を動的に拡張すると、他のプログラムに対して割り当てられるワーキングサイズは減少し、ジョブ全体としての安定性が損なわれる要因となった。
【0006】しきい値の平均値を全プログラムのワーキングサイズの設定値として利用する場合には、ジョブを構成するプログラムのメモリ使用量は個々に異なるため、プログラムのメモリ使用量に応じた割り当てができず、結果として、ジョブのユーザ指定の制限値に到達しない場合もあり、有効な方法とはいえなかった。
【0007】特開平10−283208号公報「動的ワーキングセット変更方式、動的ワーキングセット変更方法、動的ワーキングセット変更プログラムを記録した記録媒体」は、ジョブのユーザ指定の制限値に到達しない場合については何ら開示されていない。
【0008】
【課題を解決するための手段】本発明第一のメモリ使用量の制御装置は、複数のプログラムで構成されるジョブが動作するシステムにおけるメモリ使用量の制御装置であって、前記ジョブを構成する前記プログラムの前記メモリ使用量の合計が、制限値を上回った時点、または、確保値を下回った時点に、前記プログラムのワーキングサイズを、前記時点のまま維持するよう維持制御を行い、前記ジョブの前記メモリ使用量が前記制限値を下回った時点、または、前記確保値を上回った時点に、前記維持制御を解除する。
【0009】本発明第二のメモリ使用量の制御装置は、複数のプログラムで構成されるジョブが動作するシステムにおけるメモリ使用量の制御装置であって、全ての前記プログラムのベースとなって制御する部分であり、前記プログラムへのメモリ割り当て機能を有する制御部と、ジョブ管理テーブル定義部との通信機能を有し、前記ジョブの状態を監視し、前記ジョブの前記メモリ使用量が、前記ジョブ管理テーブル定義部で定義された制限値を上回った時点、または、確保値を下回った時点に、前記プログラムへのワーキングサイズを前記時点におけるメモリ割り当て量に維持する制御を行うサービス部と、前記サービス部との通信機能を有し、前記サービス部が制御する前記ジョブの定義を行うジョブ管理テーブル定義部と、前記ジョブ管理テーブル定義部によって定義され、前記サービス部により参照され、前記メモリ使用量の制御を行う対象とする前記ジョブの構成と制御の条件が定義されているジョブ管理テーブルとから構成する。
【0010】本発明第三のメモリ使用量の制御装置は、本発明第二のメモリ使用量の制御装置であって、前記制御部、前記サービス部、前記ジョブ管理テーブル定義部をプログラム処理とした。
【0011】本発明第一のメモリ使用量の制御方法は、複数のプログラムで構成されるジョブが動作するシステムにおけるメモリ使用量の制御方法であって、前記ジョブについて、前記ジョブの構成と前記メモリ量の割り当て制御を開始するための第一の条件と第二の条件からなる制御条件をジョブ管理テーブルに定義する第一のステップと、前記ジョブ管理テーブルから前記ジョブの構成および前記制御条件を取得す第二のステップと、前記ジョブの前記メモリ使用量を取得し、前記ジョブ管理テーブルに定義されている前記制御条件と比較する第三のステップと、前記ジョブのメモリ使用量が前記第一の条件を上回った時点、または、前記第二の条件を下回った時点に、前記プログラムの前記時点でのワーキングサイズを取得し、前記ワーキングサイズのまま維持し、メモリ使用量に応じたメモリの動的な割り当て機能を無効にする第四のステップと、前記ジョブのメモリ使用量が、ジョブ管理テーブルに定義されている前記第一の条件を下回った時点、または、前記第二の条件を上回った時点に、前記メモリの動的割り当て機能を有効にする第五のステップとから構成することを特徴とするメモリ使用量の制御方法本発明第一のソフトウエアプログラムは、コンピュータに、複数のプログラムで構成されるジョブが動作するシステムにおけるメモリ使用量を制御するプログラムであって、前記ジョブについて、前記ジョブの構成と前記メモリ量の割り当て制御を開始するための第一の条件と第二の条件からなる制御条件をジョブ管理テーブルに定義する第一の処理と、前記ジョブ管理テーブルから前記ジョブの構成および前記制御条件を取得す第二の処理と、前記ジョブの前記メモリ使用量を取得し、前記ジョブ管理テーブルに定義されている前記制御条件と比較する第三の処理と、前記ジョブのメモリ使用量が前記第一の条件を上回った時点、または、前記第二の条件を下回った時点に、前記プログラムの前記時点でのワーキングサイズを取得し、前記ワーキングサイズのまま維持し、メモリ使用量に応じたメモリの動的な割り当て機能を無効にする第四の処理と、前記ジョブのメモリ使用量が、ジョブ管理テーブルに定義されている前記第一の条件を下回った時点、または、前記第二の条件を上回った時点に、前記メモリの動的割り当て機能を有効にする第五の処理を実行させるソフトウエアプログラム。
【0012】本発明第一の計算機システムは、本発明第一,二または三のメモリ使用量の制御装置を有する。
【0013】
【発明の実施の形態】次に本発明の実施の形態について図面を参照して説明する。図1は、本発明実施の形態のメモリ使用量の制御方法の概要を示す図である。本発明では、ジョブのメモリ使用量(ジョブを構成するプログラムのメモリ使用量合計)が、ユーザが設定した上限(以降、“制限値”と記載)を上回った場合、または、設定した下限(以降、“確保値”と記載)を下回った場合(以降、制限値と確保値をまとめて“しきい値”と記載)、ジョブ内の各プログラムへのメモリ割り当てを、その時点のワーキングサイズのまま維持するよう制御を行う。ジョブのメモリ使用量がしきい値内に回復した時点で各プログラムのメモリ制御は解除される。
【0014】図2は、各プログラムに割り当てられているワーキングサイズの現在値を利用し、各プログラムの使用量に応じて配分する時のメモリ割り当てを示す図である。
【0015】図3は、本発明実施の形態のメモリ使用量制御装置1の構成を示すブロック図である。図3を参照すると、本実施例は、制御部11と、サービス部12と、ジョブ管理テーブル16と、ジョブ管理テーブル定義部13と、ジョブ14と、ジョブ15から構成されている。
【0016】図2のプログラムA,プログラムB,プログラムC,プログラムD,プログラムEはジョブを構成するプログラムで、それぞれ必要なメモリ容量は異なる。図4においてジョブのメモリ使用量は105であり、制限値,確保値はそれぞれ100,50に設定されている。この場合、このジョブのメモリ使用量は、制限値を超えているため制御の対象となる。サービス部12は、ジョブを構成する各プログラムに対して現在制御部11から割り当てられているワーキングサイズを取得し、その各々の値を使ってプログラムのワーキングサイズを現状のまま維持する制御を行う。プログラムAを例にとると、メモリ使用量の現在値は15であり、ワーキングサイズは14から16の間であるが、もしプログラムAのメモリ必要量が増えたとしても、ジョブのメモリ使用量が制限値内に収まるまで、ワーキングサイズは現状の14から16のまま維持される。これによりメモリは各プログラムの使用量のバランスに応じて配分される。これにより、ジョブが安定する。
【0017】これらは次のように動作する。制御部11は、全てのプログラムのベースとなって制御する部分であり、プログラムへのメモリ割り当て機能を有する。制御部11は通常オペレーティングシステムにより実現される。
【0018】上述した構成要素について説明する。サービス部12は、後述するジョブ管理テーブル定義部13との通信機能を有し、定義されている14ジョブの状態を監視,制御するサービス部12である。ジョブ14のメモリ使用量が、ジョブ管理テーブル定義部13で定義されたジョブ14のしきい値を超えた場合、ジョブ14内の各プログラムへのワーキングサイズを制御部11によって割り当てられている現在値のまま維持する制御を行う。
【0019】ジョブ管理テーブル定義部13は、サービス部12との通信機能を有し、サービス部12が制御するジョブ4の定義を行う。
【0020】ジョブ管理テーブル16は、ジョブ管理テーブル定義部13によって定義され、サービス部12により参照されるジョブ14の管理テーブルである。ジョブ管理テーブル16には、サービス部12がメモリの制御を行う対象とするジョブ14の構成,制御の条件が定義されている。
【0021】ジョブ14,ジョブ15は、サービス部12によって制御されるジョブである。
【0022】次に、図3と4を参照して、本実施例の全体の動作について詳細に説明する。図4は、本発明実施の形態のメモリ使用量の制御方法の動作を示すフローチャートである。
【0023】ジョブ管理テーブル定義部13によって、ジョブ14,ジョブ15をジョブ管理テーブル16に定義する(ステップA−1)。ジョブ管理テーブル16には、ジョブ14を構成するプログラム,サービス部12が制御を開始するための条件(しきい値)を指定する。
【0024】サービス部12は、ジョブ管理テーブル定義部13により定義されたジョブ管理テーブル16からジョブ14,ジョブ15の構成および制御条件を取得する(ステップA−2)。さらに、サービス部12は各ジョブ14,ジョブ15のメモリ使用量を制御部11より取得し、ジョブ管理テーブル16に定義されているしきい値と比較する(ステップA−3)。ジョブのメモリ使用量が上位のしきい値を超えている場合、あるいは、下位のしき値を下回っている場合、ジョブ14,ジョブ15に定義されている各プログラムの現在のワーキングサイズを制御部11より取得し、使用量がしきい値内に収まるまで、取得したプログラムのワーキングサイズのまま維持し、制御部11による使用メモリに応じた動的な割り当て機能を無効にする(ステップA−4)。
【0025】ジョブのメモリ使用量が、ジョブ管理テーブル16に定義されているしきい値内に収まるとサービス部12は各プログラムへの制御を中止し、無効にしていた制御部11による動的割り当て機能を有効にする(ステップA−5)。
【0026】図5は、本発明実施の形態のメモリ使用量の制御方法の詳細動作を示すフローチャートである。まず、ジョブ管理テーブル定義部13によって、ジョブ14,ジョブ15をジョブ管理テーブル16に定義する(ステップB−0)。ジョブ管理テーブル16から制限値と確保値を読み込む(ステップB−2)。現在の使用中のメモリ使用量を取得する(ステップB−3)。制限値以内かどうか判断し(ステップB−4)、制限値以内ならば継続制御フラグをOFFにする(ステップB−5)。制限値を超えているならばワーキングサイズ制御スレッドが動作中か判断し(ステップB−9)、実行中でないならばワーキングサイズ制御スレッド(ステップB−11からB−17)を動作させる。実行中ならばメモリ使用量監視を終了する(ステップB−8)。
【0027】制限値以内かどうか判断し(ステップB−4)、制限値以内ならば確保値以内か判断する(ステップB−6)。確保値以内ならば制御継続フラグをOFFにし(ステップB−7)、メモリ使用量監視を終了する(ステップB−8)。
【0028】確保値を超えているならばワーキングサイズ制御スレッドが動作中か判断し(ステップB−10)、実行中でないならばワーキングサイズ制御スレッド(ステップB−11からB−17)を動作させる。実行中ならばメモリ使用量監視を終了する(ステップB−8)。
【0029】ワーキングサイズ制御スレッドについて説明する。ワーキングサイズ制御スレッドが開始されると(ステップB−11)、制御継続フラグをonにする(ステップB−12)。次に、使用に割り当てられているワーキングサイズを取得し(ステップB−13)、そのままを維持する(ステップB−14)。継続制御フラグがOnか判定し(ステップB−15)、onでないならばワーキングサイズ制御スレッドを終了する(ステップB−18)。継続制御フラグがOnか判定し(ステップB−15)、onならばワーキングサイズを現在値とし(ステップB−16)それを維持し(ステップB−17)、ワーキングサイズ制御スレッドを終了する(ステップB−18)
上述の各ステップはコンピュータ60のソフトウエアにより実現することができる。図6は、本発明実施の形態のメモリ制御方法を実行するコンピュータ60とそのソフトウエアプログラムが記録された記録媒体61を示す図である。
【0030】前述したメモリ使用量制御装置1を計算機システムに組み込むことができる。また、上述の制御部11、サービス部12、ジョブ管理テーブル定義部13をソフトウエアにより実現することが可能である。
【0031】
【発明の効果】本発明第一の効果は、ジョブを構成するプログラムに対し、制御部11が割り当てたワーキングサイズのバランスを保ったままの状態で制御が可能ということである。その理由は、ジョブのメモリ使用量がしきい値を超えた場合、各プログラムのメモリ割り当てを均一値ではなく、制御部11が現在各プログラムに割り当てているワーキングサイズで個々に維持する制御方法を採っているためである。
【0032】本発明第二の効果は、ジョブごとの安定化が図ることができることである。




 

 


     NEWS
会社検索順位 特許の出願数の順位が発表

URL変更
平成6年
平成7年
平成8年
平成9年
平成10年
平成11年
平成12年
平成13年


 
   お問い合わせ info@patentjp.com patentjp.com   Copyright 2007-2013