JPH04116742A - 仮想記憶システムにおけるメモリ割り当て方式 - Google Patents
仮想記憶システムにおけるメモリ割り当て方式Info
- Publication number
- JPH04116742A JPH04116742A JP2235542A JP23554290A JPH04116742A JP H04116742 A JPH04116742 A JP H04116742A JP 2235542 A JP2235542 A JP 2235542A JP 23554290 A JP23554290 A JP 23554290A JP H04116742 A JPH04116742 A JP H04116742A
- Authority
- JP
- Japan
- Prior art keywords
- data
- group
- allocated
- reference frequency
- size
- 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
Links
- 238000000034 method Methods 0.000 claims description 6
- 230000000694 effects Effects 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- FFBHFFJDDLITSX-UHFFFAOYSA-N benzyl N-[2-hydroxy-4-(3-oxomorpholin-4-yl)phenyl]carbamate Chemical compound OC1=C(NC(=O)OCC2=CC=CC=C2)C=CC(=C1)N1CCOCC1=O FFBHFFJDDLITSX-UHFFFAOYSA-N 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、情報処理に係り、特にページング処理におけ
る、ページフォールト率を低減させる方式に関する。
る、ページフォールト率を低減させる方式に関する。
従来、ページング処理における局所参照性向上に関する
技術としては、益田隆司、亀田壽夫著「オペレーティン
グシステムの性能解析J (1982年)第93頁か
ら第97頁において論じられている。しかし、対象が手
続きコードや静的なデータ又は行列に限られており配列
、構造体及びリスト等の複合的なデータを動的に確保し
使用するプログラムについての考慮がなされていなかっ
た。
技術としては、益田隆司、亀田壽夫著「オペレーティン
グシステムの性能解析J (1982年)第93頁か
ら第97頁において論じられている。しかし、対象が手
続きコードや静的なデータ又は行列に限られており配列
、構造体及びリスト等の複合的なデータを動的に確保し
使用するプログラムについての考慮がなされていなかっ
た。
配列、構造体及びリスト等の複合的なデータを動的に確
保し使用するプログラムでは、データの発生順にメモリ
を確保し割り当てる方式が一般的であるが、この場合、
次のような不都合が生じることがある。すなわち、(1
)参照頻度の高い小さなデータと(2)参照頻度の低い
大きなデータとが交互に発生する場合では、同一ページ
に上記の(1)と(2)のデータが混在することになり
局所参照性が低下し、結果的にページフォールト率が高
くなる。また、データの発生J@にメモリを割り当てた
場合、一つのデータが二つ以上のページにまたがる可能
性があり、この時も局所参照性が低下し、ページフォー
ルト率が高くなる。
保し使用するプログラムでは、データの発生順にメモリ
を確保し割り当てる方式が一般的であるが、この場合、
次のような不都合が生じることがある。すなわち、(1
)参照頻度の高い小さなデータと(2)参照頻度の低い
大きなデータとが交互に発生する場合では、同一ページ
に上記の(1)と(2)のデータが混在することになり
局所参照性が低下し、結果的にページフォールト率が高
くなる。また、データの発生J@にメモリを割り当てた
場合、一つのデータが二つ以上のページにまたがる可能
性があり、この時も局所参照性が低下し、ページフォー
ルト率が高くなる。
本発明の目的は、このような状況を回避するために、個
々のデータの参照頻度や大きさに応じて割り当てるペー
ジを分けることで局所参照性を高め、結果的にページフ
ォールト率を低下させることにある。
々のデータの参照頻度や大きさに応じて割り当てるペー
ジを分けることで局所参照性を高め、結果的にページフ
ォールト率を低下させることにある。
上記目的は、論理ページをデータの参照頻度と大きさに
よってグループに分け、参照頻度の高いデータをできる
だけ局所化することにより達成される。
よってグループに分け、参照頻度の高いデータをできる
だけ局所化することにより達成される。
すなわち、論理ページを第3図のように三つのグループ
に分け、それぞれのグループ内のページに割り当てるデ
ータの特性を次のように規定する。
に分け、それぞれのグループ内のページに割り当てるデ
ータの特性を次のように規定する。
1のグループには、参照頻度が最も高く、−要素の大き
さが比較的小さい種類のデータを割り当てる。
さが比較的小さい種類のデータを割り当てる。
2のグループには、参照頻度が比較的高く、−要素の大
きさが比較的大きい種類のデータを割り当てる。
きさが比較的大きい種類のデータを割り当てる。
3のグループには、上記1,2以外の種類のデータを割
り当てる。
り当てる。
一方、グループ内でのメモリ割り当て方法は以下の規則
に従う。
に従う。
(1)データの発生頻度に論理アドレスの若いほうから
すきまなく割り当てることを原則とする。
すきまなく割り当てることを原則とする。
(2)一つのデータがページをまたがる場合は、上位ペ
ージの未割り当て部分をそのままにして、次のページの
先頭から割り当てる。
ージの未割り当て部分をそのままにして、次のページの
先頭から割り当てる。
(3)上位ページに未割り当て部分があり、当該データ
がその部分に納まる大きさなら、そこに割り当てる。
がその部分に納まる大きさなら、そこに割り当てる。
(4) (3)について複数の候補があるなら、論理ア
ドレスの若いほうを優先する。
ドレスの若いほうを優先する。
(5)あらかじめ用意した論理ページ群に亘って十分な
空きがなくなったときは、他のグループについて(1)
〜(4)を適用する。
空きがなくなったときは、他のグループについて(1)
〜(4)を適用する。
なお、各グループに割り当てる論理ページの数は、初期
処理にて自由に設定することが可能とする。
処理にて自由に設定することが可能とする。
一般のプログラムでは、使用するデータの参照頻度を厳
密に求めることは困難である。そのため各々のデータを
どのグループに割り当てればよいかを決定するのが雛し
く、データとグループとの対応を最適にするには、すべ
ての組合せを試す必要がある。しかし、当該プログラム
設計者自身の考察によれば、はとんどの組合せは始めか
ら除外でき、残ったいくつかの組合せだけについて実験
。
密に求めることは困難である。そのため各々のデータを
どのグループに割り当てればよいかを決定するのが雛し
く、データとグループとの対応を最適にするには、すべ
ての組合せを試す必要がある。しかし、当該プログラム
設計者自身の考察によれば、はとんどの組合せは始めか
ら除外でき、残ったいくつかの組合せだけについて実験
。
検証することで、はとんど最適な組合せを発見できるは
ずである。
ずである。
また、論理アドレス空間をいくつかのグループに分ける
ことで、分割損が発生し、論理アドレス空間全体の使用
効率が低下する恐れがあるが、これは、前項グループ内
でのメモリ割り当て方法の(5)により回避できる。
ことで、分割損が発生し、論理アドレス空間全体の使用
効率が低下する恐れがあるが、これは、前項グループ内
でのメモリ割り当て方法の(5)により回避できる。
以下に本発明の一実施例を示す、なお1本実施例は、パ
ーソナルコンピュータにおけるエキスパートシステム構
築ツールプログラムでの例である。
ーソナルコンピュータにおけるエキスパートシステム構
築ツールプログラムでの例である。
第2図に、C言語による本プログラムでのグループ設定
ルーチンとメモリ割り当てルーチンの外部仕様を示す。
ルーチンとメモリ割り当てルーチンの外部仕様を示す。
第2図の1のルーチンは、第1引数としてグループの数
、第2引数として各グループの論理ページ数を格納した
配列のポインタを指定して論理ページのグループ分けを
行う。このルーチンは、プログラムの初期処理で呼び出
され、物理ページ数やデータ量等によってグループの構
成を自由に設定することができる。
、第2引数として各グループの論理ページ数を格納した
配列のポインタを指定して論理ページのグループ分けを
行う。このルーチンは、プログラムの初期処理で呼び出
され、物理ページ数やデータ量等によってグループの構
成を自由に設定することができる。
第2図の2のルーチンは、第1引数としてグループ番号
、第2引数として割り当てるメモリの大きさを指定して
割り当てられた論理アドレスを得る。このルーチンは、
推論実行中にメモリが必要となったときに呼び出され、
本実施例の場合では第3図のように三つのグループに分
けた論理ページにメモリを割り当てる。
、第2引数として割り当てるメモリの大きさを指定して
割り当てられた論理アドレスを得る。このルーチンは、
推論実行中にメモリが必要となったときに呼び出され、
本実施例の場合では第3図のように三つのグループに分
けた論理ページにメモリを割り当てる。
次に第1図に本プログラムでのメモリ割り当てルーチン
の流れ図を示す2まず、判定21にて示すようにグルー
プ1への割り当て要求の場合1判定24にて示すように
空きがあるページを探し、空きがある場合は割り当て処
理1でグループ1に割り当て、空きがない場合はグルー
プ2への割り当て要求とする。なお、割り当て処理は前
述の規則に従って行う。本実施例の場合では、グループ
1には、セルと呼ばれる推論中の状態を記憶しておく作
業領域を割り当てた。セルは、参照回数が全体の80%
以上であり最も参照頻度が高い。
の流れ図を示す2まず、判定21にて示すようにグルー
プ1への割り当て要求の場合1判定24にて示すように
空きがあるページを探し、空きがある場合は割り当て処
理1でグループ1に割り当て、空きがない場合はグルー
プ2への割り当て要求とする。なお、割り当て処理は前
述の規則に従って行う。本実施例の場合では、グループ
1には、セルと呼ばれる推論中の状態を記憶しておく作
業領域を割り当てた。セルは、参照回数が全体の80%
以上であり最も参照頻度が高い。
判定22.25においてもグループ1と同様にグループ
2内のページから空きを探す。本実施例の場合では、グ
ループ2には、推論を制御する命令コードやフレームと
呼ばれる知識の管理テーブル等の比較的参照頻度の高い
データを割り当てた。
2内のページから空きを探す。本実施例の場合では、グ
ループ2には、推論を制御する命令コードやフレームと
呼ばれる知識の管理テーブル等の比較的参照頻度の高い
データを割り当てた。
判定23にて示すように、グループ3内のページに空き
がない場合には割り当て不可能としてエラー処理を行う
。
がない場合には割り当て不可能としてエラー処理を行う
。
本発明によれば、以下のような効果がある。
参照頻度が85%のデータが全体の38%を占める場合
、このデータを第3図に示すようなグループ1に割り当
てたときは、データの発生順に割り当てたときに比べて
、ページフォールト率が6.3%から3.2%へ2分の
1に低減する。
、このデータを第3図に示すようなグループ1に割り当
てたときは、データの発生順に割り当てたときに比べて
、ページフォールト率が6.3%から3.2%へ2分の
1に低減する。
第1図はメモリ割り当てルーチンの流れ図、第2図は本
発明の一実施例のグループ設定ルーチンとメモリ割り当
てルーチンの外部仕様を示す図、第3図はグループ分け
した論理ページの状態を示す図である。 躬 1 悶
発明の一実施例のグループ設定ルーチンとメモリ割り当
てルーチンの外部仕様を示す図、第3図はグループ分け
した論理ページの状態を示す図である。 躬 1 悶
Claims (1)
- 1、ページング方式を採用した仮想記憶システムにおい
て、データをその参照頻度と大きさとに着目していくつ
かのグループに分け、別種グループのデータが、極力同
一ページ内に存在しないようにメモリを割り当てること
で、データの局所参照性を高め、ページフォールト率を
低減させることを特徴とする、仮想記憶システムにおけ
るメモリ割り当て方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2235542A JPH04116742A (ja) | 1990-09-07 | 1990-09-07 | 仮想記憶システムにおけるメモリ割り当て方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2235542A JPH04116742A (ja) | 1990-09-07 | 1990-09-07 | 仮想記憶システムにおけるメモリ割り当て方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH04116742A true JPH04116742A (ja) | 1992-04-17 |
Family
ID=16987524
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2235542A Pending JPH04116742A (ja) | 1990-09-07 | 1990-09-07 | 仮想記憶システムにおけるメモリ割り当て方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH04116742A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1296833C (zh) * | 2002-11-05 | 2007-01-24 | 松下电器产业株式会社 | 用于存储器管理的设备和方法 |
-
1990
- 1990-09-07 JP JP2235542A patent/JPH04116742A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1296833C (zh) * | 2002-11-05 | 2007-01-24 | 松下电器产业株式会社 | 用于存储器管理的设备和方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1341083B1 (en) | Parallel-process execution method and multiprocessor-type computer | |
US4812981A (en) | Memory management system improving the efficiency of fork operations | |
JP2858795B2 (ja) | 実記憶割り当て方法 | |
KR20040069257A (ko) | 다수의 하드웨어 구성들을 가지는 재구성가능한 하드웨어아키텍처의 스케줄링 방법 | |
KR950704737A (ko) | 데이타 처리 시스템 및 운영시스템(Data processing system and operating system) | |
JP2006244479A (ja) | 実行可能プログラムをスケジューリングするためのシステム及び方法 | |
JPS5955565A (ja) | マルチフア−ムウエア方式 | |
JPH04116742A (ja) | 仮想記憶システムにおけるメモリ割り当て方式 | |
Chaudhry et al. | Getting more from out-of-core columnsort | |
JP3732648B2 (ja) | プロセス割当て方法 | |
Jones | Factors affecting the efficiency of a virtual memory | |
JPS583177A (ja) | デ−タ処理方式 | |
JPH02270032A (ja) | ローディング方式 | |
JP3163196B2 (ja) | 仮想記憶制御における命令中断情報格納制御方法 | |
JP2975253B2 (ja) | 多重化ボリューム装置 | |
JPH08190537A (ja) | マルチプロセッサシステム及びプロセススケジューリング方法 | |
JPH06266619A (ja) | ページ退避/復元装置 | |
JPS60204048A (ja) | 仮想記憶方式 | |
JPS58149565A (ja) | ベクトル・レングス制御範囲分割処理方式 | |
JP2022150968A (ja) | メモリ制御システム | |
JP2943401B2 (ja) | 仮想計算機の外部記憶装置割当処理方法 | |
JPH06175857A (ja) | プログラム生成処理装置 | |
JP2004152060A (ja) | 計算機システム、および、そのディスクサブシステム | |
JPH03127149A (ja) | 主記憶管理方法 | |
JPH10133872A (ja) | 命令バッファを有するプロセッサ装置 |