JPH07271640A - ファイルマップ装置 - Google Patents
ファイルマップ装置Info
- Publication number
- JPH07271640A JPH07271640A JP6079519A JP7951994A JPH07271640A JP H07271640 A JPH07271640 A JP H07271640A JP 6079519 A JP6079519 A JP 6079519A JP 7951994 A JP7951994 A JP 7951994A JP H07271640 A JPH07271640 A JP H07271640A
- Authority
- JP
- Japan
- Prior art keywords
- file
- map
- memory address
- data
- mapping
- 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
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
(57)【要約】
【目的】 マップ開始アドレスに関する制約をなくし、
無駄なメモリ消費の少ない効率的なファイルマップ装置
を提供する。 【構成】 二次記憶装置上のファイルデータをメモリア
ドレス空間のスワップ単位のメモリアドレス境界からス
ワップ単位でマップする第1のファイルマップ手段(例
えば、図1のOSのファイルマップ手段1)のほかに、
二次記憶装置上のファイルデータをメモリアドレス空間
に自由に設定可能なメモリアドレスから自由に設定可能
なサイズで前記メモリアドレス空間にマップする第2の
ファイルマップ手段(例えば、図1の下位ファイルマッ
プ手段2)を設け、メモリアドレス空間のマップ開始ア
ドレスおよびマップする部分のデータサイズ等のマップ
するファイルの条件に応じて適合するいずれか一方の手
段によってマップを行う。
無駄なメモリ消費の少ない効率的なファイルマップ装置
を提供する。 【構成】 二次記憶装置上のファイルデータをメモリア
ドレス空間のスワップ単位のメモリアドレス境界からス
ワップ単位でマップする第1のファイルマップ手段(例
えば、図1のOSのファイルマップ手段1)のほかに、
二次記憶装置上のファイルデータをメモリアドレス空間
に自由に設定可能なメモリアドレスから自由に設定可能
なサイズで前記メモリアドレス空間にマップする第2の
ファイルマップ手段(例えば、図1の下位ファイルマッ
プ手段2)を設け、メモリアドレス空間のマップ開始ア
ドレスおよびマップする部分のデータサイズ等のマップ
するファイルの条件に応じて適合するいずれか一方の手
段によってマップを行う。
Description
【0001】
【産業上の利用分野】本発明は、二次記憶装置上のファ
イルデータを利用者プログラム等がアクセスする際のフ
ァイルマップ装置に関するものである。
イルデータを利用者プログラム等がアクセスする際のフ
ァイルマップ装置に関するものである。
【0002】
【従来の技術】ファイルマップ装置は、利用者プログラ
ムが、二次記憶装置上のファイルデータを利用者メモリ
空間上のデータと同様な簡単な方法でアクセスする装置
として知られている。
ムが、二次記憶装置上のファイルデータを利用者メモリ
空間上のデータと同様な簡単な方法でアクセスする装置
として知られている。
【0003】例えば、二次記憶装置上のファイルサイズ
が利用者メモリ空間より大きい場合、ファイルデータの
全てを利用者メモリ空間に読み込むことはできない。こ
のような場合、利用者プログラムでは、対象となるファ
イルの一部を指定して読み込んだり、あるいは変更した
データをファイルに書き込んだりするなど、複雑な処理
を必要とする。
が利用者メモリ空間より大きい場合、ファイルデータの
全てを利用者メモリ空間に読み込むことはできない。こ
のような場合、利用者プログラムでは、対象となるファ
イルの一部を指定して読み込んだり、あるいは変更した
データをファイルに書き込んだりするなど、複雑な処理
を必要とする。
【0004】ファイルマップ装置は、二次記憶装置のフ
ァイルデータを、仮想的に連続したメモリ空間(「マッ
プアドレス空間」と呼ぶ)に対応づけることにより、利
用者プログラムからファイルへのアクセスを簡易化する
装置である。このマップアドレス空間は、ファイルデー
タの内容を保持するのではなく、マップするファイルと
利用者メモリ空間のアドレスの関係を管理することによ
り、利用者プログラムから二次記憶装置のファイルデー
タのアクセスを可能にしている。
ァイルデータを、仮想的に連続したメモリ空間(「マッ
プアドレス空間」と呼ぶ)に対応づけることにより、利
用者プログラムからファイルへのアクセスを簡易化する
装置である。このマップアドレス空間は、ファイルデー
タの内容を保持するのではなく、マップするファイルと
利用者メモリ空間のアドレスの関係を管理することによ
り、利用者プログラムから二次記憶装置のファイルデー
タのアクセスを可能にしている。
【0005】ここでファイルデータを利用者メモリ空間
に読み込んだり、利用者メモリ空間のデータをファイル
に書き込んだりする処理をスワップと呼ぶ。1回のスワ
ップは一定のサイズ毎に行われ、この1回の処理のサイ
ズをスワップ単位と呼ぶ。
に読み込んだり、利用者メモリ空間のデータをファイル
に書き込んだりする処理をスワップと呼ぶ。1回のスワ
ップは一定のサイズ毎に行われ、この1回の処理のサイ
ズをスワップ単位と呼ぶ。
【0006】特開平5ー35556号公報には、二次記
憶装置上のファイルデータも、情報処理手段が個別に利
用する利用者メモリ空間上のデータと同様な簡単な方法
でアクセクできる装置が開示されている。
憶装置上のファイルデータも、情報処理手段が個別に利
用する利用者メモリ空間上のデータと同様な簡単な方法
でアクセクできる装置が開示されている。
【0007】上記公報に記載された発明では、情報処理
手段がファイル名を指定したファイル使用要求を出す
と、ファイルの使用開始の処理やファイルのオープン処
理を自動的に行い、また、その情報処理手段が終了する
とファイルのクローズ処理や使用終了の処理を自動的に
行い、更に、二次記憶装置上のファイルのデータをその
情報処理手段の利用者メモリ空間に読み込み、そこをア
クセスすることでファイルデータのアクセスを可能にし
ている。
手段がファイル名を指定したファイル使用要求を出す
と、ファイルの使用開始の処理やファイルのオープン処
理を自動的に行い、また、その情報処理手段が終了する
とファイルのクローズ処理や使用終了の処理を自動的に
行い、更に、二次記憶装置上のファイルのデータをその
情報処理手段の利用者メモリ空間に読み込み、そこをア
クセスすることでファイルデータのアクセスを可能にし
ている。
【0008】また、業界標準と知られているUNIX
(「UNIX」は、米国AT&Tベル研究所で開発され
たソフトウェアの名称)オペレーティグシステムの一つ
であるSunOS(「SunOS」は、米国サンマイク
ロシステムズ社の商標)では、ファイルのマップ手段を
利用者プログラム向けに開示している。この手段では、
ファイル全体あるいはファイルの一部をマップする場
合、メモリアドレス空間のマップ開始アドレスは、Su
nOSが指定するスワップ単位のメモリアドレス境界に
位置しなければならない。またマップはスワップ単位の
整数倍のサイズに行われるため、スワップ単位より小さ
なファイルに対してもスワップ単位と同じサイズのメモ
リアドレス空間を必要とする。
(「UNIX」は、米国AT&Tベル研究所で開発され
たソフトウェアの名称)オペレーティグシステムの一つ
であるSunOS(「SunOS」は、米国サンマイク
ロシステムズ社の商標)では、ファイルのマップ手段を
利用者プログラム向けに開示している。この手段では、
ファイル全体あるいはファイルの一部をマップする場
合、メモリアドレス空間のマップ開始アドレスは、Su
nOSが指定するスワップ単位のメモリアドレス境界に
位置しなければならない。またマップはスワップ単位の
整数倍のサイズに行われるため、スワップ単位より小さ
なファイルに対してもスワップ単位と同じサイズのメモ
リアドレス空間を必要とする。
【0009】ここでスワップ単位のメモリアドレス境界
は、メモリアドレスをスワップ単位で割った値の端数の
ないメモリアドレスが指定される。SunOSでは、ス
ワップ単位に512x16バイトあるいは512x8バ
イトを指定しており、スワップ単位のメモリアドレス境
界はこの値の整数倍のメモリアドレスが割当てられる。
は、メモリアドレスをスワップ単位で割った値の端数の
ないメモリアドレスが指定される。SunOSでは、ス
ワップ単位に512x16バイトあるいは512x8バ
イトを指定しており、スワップ単位のメモリアドレス境
界はこの値の整数倍のメモリアドレスが割当てられる。
【0010】
【発明が解決しようとする課題】特開平5ー35556
号公報には、スワップ手段に関する技術の記載はなく、
これに関連するマップ開始アドレスの規定やスワップ単
位のサイズの基準に関する技術は開示されていない。
号公報には、スワップ手段に関する技術の記載はなく、
これに関連するマップ開始アドレスの規定やスワップ単
位のサイズの基準に関する技術は開示されていない。
【0011】前述のSunOSでは、マップ開始アドレ
スがスワップ単位のメモリアドレス境界と一致しない場
合は、マップ開始アドレスを変更しスワップ単位のメモ
リアドレス境界と一致させる処理を行うため、不必要な
部分までマップする。また特に小さなファイルをマップ
する場合おいては、スワップ単位のサイズをマップする
ため不要な部分もマップされる。このような問題のた
め、マップアドレス空間に不要な領域が含まれたり、ス
ワップ単位にデータとして不要な領域が含まれることに
より、利用者メモリの消費を増大する。
スがスワップ単位のメモリアドレス境界と一致しない場
合は、マップ開始アドレスを変更しスワップ単位のメモ
リアドレス境界と一致させる処理を行うため、不必要な
部分までマップする。また特に小さなファイルをマップ
する場合おいては、スワップ単位のサイズをマップする
ため不要な部分もマップされる。このような問題のた
め、マップアドレス空間に不要な領域が含まれたり、ス
ワップ単位にデータとして不要な領域が含まれることに
より、利用者メモリの消費を増大する。
【0012】本発明の目的は、マップ開始アドレスまた
はマップサイズに関する制約をなくし、無駄なメモリ消
費の少ない効率的なファイルマップ装置を提供すること
にある。
はマップサイズに関する制約をなくし、無駄なメモリ消
費の少ない効率的なファイルマップ装置を提供すること
にある。
【0013】
【課題を解決するための手段】上述の目的を達成するた
めに、本発明のファイルマップ装置は、二次記憶装置上
のファイルデータをメモリアドレス空間のスワップ単位
のメモリアドレス境界からスワップ単位でマップする第
1のファイルマップ手段(例えば、図1のOSのファイ
ルマップ手段1)と、二次記憶装置上のファイルデータ
をメモリアドレス空間に自由に設定可能なメモリアドレ
スから自由に設定可能なサイズでメモリアドレス空間に
マップする第2のファイルマップ手段(例えば、図1の
下位ファイルマップ手段2)と、メモリアドレス空間の
マップ開始アドレスが第1のファイルマップ手段のスワ
ップ単位のメモリアドレス境界にあるかどうかというこ
と、およびファイルのマップする部分のデータサイズに
比較して第1のファイルマップ手段によって無駄にマッ
プされるデータサイズが小さいか否かということの少な
くとも一方を評価することにより、第1のファイルマッ
プ手段がメモリアドレス空間へのファイルデータのマッ
プに適合しているかを判断する適合評価手段と、適合評
価手段により第1のファイルマップ手段が適合と判断さ
れた場合は、第1のファイルマップ手段によりメモリア
ドレス空間へのファイルデータのマップを行わせ、不適
合と判断された場合は第2のファイルマップ手段によっ
てマップを行わせる上位ファイルマップ手段とを備え
る。
めに、本発明のファイルマップ装置は、二次記憶装置上
のファイルデータをメモリアドレス空間のスワップ単位
のメモリアドレス境界からスワップ単位でマップする第
1のファイルマップ手段(例えば、図1のOSのファイ
ルマップ手段1)と、二次記憶装置上のファイルデータ
をメモリアドレス空間に自由に設定可能なメモリアドレ
スから自由に設定可能なサイズでメモリアドレス空間に
マップする第2のファイルマップ手段(例えば、図1の
下位ファイルマップ手段2)と、メモリアドレス空間の
マップ開始アドレスが第1のファイルマップ手段のスワ
ップ単位のメモリアドレス境界にあるかどうかというこ
と、およびファイルのマップする部分のデータサイズに
比較して第1のファイルマップ手段によって無駄にマッ
プされるデータサイズが小さいか否かということの少な
くとも一方を評価することにより、第1のファイルマッ
プ手段がメモリアドレス空間へのファイルデータのマッ
プに適合しているかを判断する適合評価手段と、適合評
価手段により第1のファイルマップ手段が適合と判断さ
れた場合は、第1のファイルマップ手段によりメモリア
ドレス空間へのファイルデータのマップを行わせ、不適
合と判断された場合は第2のファイルマップ手段によっ
てマップを行わせる上位ファイルマップ手段とを備え
る。
【0014】
【作用】上記構成の本発明のファイルマップ装置におい
ては、メモリアドレス空間のマップ開始アドレスが第1
のファイルマップ手段のスワップ単位のメモリアドレス
境界にあること、およびファイルのマップする部分のデ
ータサイズに比較して第1のファイルマップ手段によっ
て無駄にマップされるデータサイズが小さいことの少な
くとも一方を評価し、それらのいずれもが満たされたと
きには、第1のファイルマップ手段が二次記憶装置上の
ファイルデータをメモリアドレス空間のスワップ単位の
メモリアドレス境界からスワップ単位でマップを行う。
また、メモリアドレス空間のマップ開始アドレスが第1
のファイルマップ手段のスワップ単位のメモリアドレス
境界に一致しないこと、およびファイルのマップする部
分のデータサイズに比較して第1のファイルマップ手段
によって無駄にマップされるデータサイズが小さくない
ことの少なくとも一方が満たされていないときには、第
2のファイルマップ手段が二次記憶装置上のファイルデ
ータを設定されたアドレスから設定されたメモリサイズ
でメモリアドレス空間にマップを行う。従って、利用者
プログラムに対しマップ開始アドレスに関する制約がな
く、無駄なメモリ消費が少なくなる。
ては、メモリアドレス空間のマップ開始アドレスが第1
のファイルマップ手段のスワップ単位のメモリアドレス
境界にあること、およびファイルのマップする部分のデ
ータサイズに比較して第1のファイルマップ手段によっ
て無駄にマップされるデータサイズが小さいことの少な
くとも一方を評価し、それらのいずれもが満たされたと
きには、第1のファイルマップ手段が二次記憶装置上の
ファイルデータをメモリアドレス空間のスワップ単位の
メモリアドレス境界からスワップ単位でマップを行う。
また、メモリアドレス空間のマップ開始アドレスが第1
のファイルマップ手段のスワップ単位のメモリアドレス
境界に一致しないこと、およびファイルのマップする部
分のデータサイズに比較して第1のファイルマップ手段
によって無駄にマップされるデータサイズが小さくない
ことの少なくとも一方が満たされていないときには、第
2のファイルマップ手段が二次記憶装置上のファイルデ
ータを設定されたアドレスから設定されたメモリサイズ
でメモリアドレス空間にマップを行う。従って、利用者
プログラムに対しマップ開始アドレスに関する制約がな
く、無駄なメモリ消費が少なくなる。
【0015】
【実施例】図1は、本発明のファイルマップ装置の一実
施例の構成図を示す。本実施例は、情報処理装置のオペ
レーティグシステム(以下、「OS」と記述)のファイ
ルマップ手段を利用する場合に適応した例である。
施例の構成図を示す。本実施例は、情報処理装置のオペ
レーティグシステム(以下、「OS」と記述)のファイ
ルマップ手段を利用する場合に適応した例である。
【0016】OSのファイルマップ手段1は、二次記憶
装置上のファイルデータを、メモリアドレス空間のスワ
ップ単位のメモリアドレス境界からスワップ単位でマッ
プし、スワップ単位で二次記憶装置上のファイルデータ
を利用者メモリ空間に読み込む。このスワップ単位のサ
イズは、512x16バイトあるいは512x8バイト
のいずれかを利用者プログラムで指定することができる
ようになっている。
装置上のファイルデータを、メモリアドレス空間のスワ
ップ単位のメモリアドレス境界からスワップ単位でマッ
プし、スワップ単位で二次記憶装置上のファイルデータ
を利用者メモリ空間に読み込む。このスワップ単位のサ
イズは、512x16バイトあるいは512x8バイト
のいずれかを利用者プログラムで指定することができる
ようになっている。
【0017】スワップ単位に512x16バイトを指定
した場合を例に説明する。例えば、512バイトの小さ
なファイルをn個マップする必要のある場合は、マップ
するファイル全体のサイズの合計が512xnバイトで
あるのに対して、16倍の512x16xnバイトに対
応するメモリアドレス空間を必要とする。このように小
さなファイルを数多くマップする必要のある場合は、消
費されるメモリアドレス空間のうち実際に必要とするサ
イズに対し無駄に消費されるサイズの割合が多くなる。
した場合を例に説明する。例えば、512バイトの小さ
なファイルをn個マップする必要のある場合は、マップ
するファイル全体のサイズの合計が512xnバイトで
あるのに対して、16倍の512x16xnバイトに対
応するメモリアドレス空間を必要とする。このように小
さなファイルを数多くマップする必要のある場合は、消
費されるメモリアドレス空間のうち実際に必要とするサ
イズに対し無駄に消費されるサイズの割合が多くなる。
【0018】下位ファイルマップ手段2は、メモリ割り
付け手段3、およびファイル読み込み/書き込み手段4
を含んで構成され、二次記憶装置上のファイルデータを
メモリアドレス空間へのマップおよびマップの解除をす
る。またメモリアドレス空間にマップされたファイルデ
ータの利用者メモリ空間への読み込み、および利用者メ
モリ空間のデータのファイルデータへの書き込みを行
う。
付け手段3、およびファイル読み込み/書き込み手段4
を含んで構成され、二次記憶装置上のファイルデータを
メモリアドレス空間へのマップおよびマップの解除をす
る。またメモリアドレス空間にマップされたファイルデ
ータの利用者メモリ空間への読み込み、および利用者メ
モリ空間のデータのファイルデータへの書き込みを行
う。
【0019】下位ファイルマップ手段2のメモリ割り付
け手段3は、メモリアドレス空間に自由なメモリアドレ
スから自由なサイズで割り付けを行うことができる。ま
たファイル読み込み/書き込み手段4は、割り付けられ
たファイルデータの読み込みと書き込みを行う。従っ
て、下位ファイルマップ手段2は、マップアドレス空間
へのマップアドレスの指定に関する制限はなく、また必
要なサイズのみをマップすることができる。なお、ここ
でのマップアドレス空間のアドレスは、利用者プログラ
ムによって指定されたアドレス、あるいは指定のない場
合は、空き領域から無駄の少ない効率的なアドレスが指
定される。
け手段3は、メモリアドレス空間に自由なメモリアドレ
スから自由なサイズで割り付けを行うことができる。ま
たファイル読み込み/書き込み手段4は、割り付けられ
たファイルデータの読み込みと書き込みを行う。従っ
て、下位ファイルマップ手段2は、マップアドレス空間
へのマップアドレスの指定に関する制限はなく、また必
要なサイズのみをマップすることができる。なお、ここ
でのマップアドレス空間のアドレスは、利用者プログラ
ムによって指定されたアドレス、あるいは指定のない場
合は、空き領域から無駄の少ない効率的なアドレスが指
定される。
【0020】制約適合評価手段5は、マップ開始アドレ
スがOSのファイルマップ手段1のスワップ単位のメモ
リアドレス境界に一致する場合は、ファイルマップ手段
としてOSのファイルマップ手段1を適合とする。また
効率適合評価手段6は、無駄にマップされるデータサイ
ズがマップするサイズに比べて小さい場合は、ファイル
マップ手段としてOSのファイルマップ手段1を適合と
する。
スがOSのファイルマップ手段1のスワップ単位のメモ
リアドレス境界に一致する場合は、ファイルマップ手段
としてOSのファイルマップ手段1を適合とする。また
効率適合評価手段6は、無駄にマップされるデータサイ
ズがマップするサイズに比べて小さい場合は、ファイル
マップ手段としてOSのファイルマップ手段1を適合と
する。
【0021】上位ファイルマップ手段7は、制約適合評
価手段5および効率適合評価手6の適合評価の結果か
ら、OSのファイルマップ手段1を用いるか下位ファイ
ルマップ手段2を用いるかを選択し、適合するいずれか
一方の手段によってファイルのマップを行なう。そして
このファイルマップに対応して作成されるマップ属性デ
ータのマップ属性管理テーブル8への登録および削除の
指示を行う。
価手段5および効率適合評価手6の適合評価の結果か
ら、OSのファイルマップ手段1を用いるか下位ファイ
ルマップ手段2を用いるかを選択し、適合するいずれか
一方の手段によってファイルのマップを行なう。そして
このファイルマップに対応して作成されるマップ属性デ
ータのマップ属性管理テーブル8への登録および削除の
指示を行う。
【0022】図2は、マップ属性データのデータ構造の
一例を示す。マップ属性データは、マップするファイル
とマップメモリ空間との対応づけを示す情報(マップア
ドレス情報、ファイル情報、ファイルのマップ部分の情
報)、および使われているファイルマップ手段情報を含
み、OSのファイルマップ手段1あるいは下位ファイル
マップ手段2のいずれかの手段によって二次記憶装置上
のファイルデータがメモリアドレス空間へのマップが行
われた時に作成され、そのマップが解消される時に削除
される。
一例を示す。マップ属性データは、マップするファイル
とマップメモリ空間との対応づけを示す情報(マップア
ドレス情報、ファイル情報、ファイルのマップ部分の情
報)、および使われているファイルマップ手段情報を含
み、OSのファイルマップ手段1あるいは下位ファイル
マップ手段2のいずれかの手段によって二次記憶装置上
のファイルデータがメモリアドレス空間へのマップが行
われた時に作成され、そのマップが解消される時に削除
される。
【0023】図3は、マップ属性管理テーブル8の構造
の一例を示す。マップ属性管理テーブル8は、OSのフ
ァイルマップ手段1および下位ファイルマップ手段2の
いずれか一方によってマップされている全てのファイル
マップ属性データを保持しており、各ファイルマップ属
性データが持つマップアドレスの順に並べられている。
の一例を示す。マップ属性管理テーブル8は、OSのフ
ァイルマップ手段1および下位ファイルマップ手段2の
いずれか一方によってマップされている全てのファイル
マップ属性データを保持しており、各ファイルマップ属
性データが持つマップアドレスの順に並べられている。
【0024】ファイルをマップする際には、上位ファイ
ルマップ手段7は、マップ属性管理テーブル8内の各マ
ップ属性データのマップアドレスを検索し、マップアド
レスの順になる挿入位置にマップ属性データを挿入す
る。またマップを解消する際には、上位ファイルマップ
手段7が、解消するマップアドレスを含むマップ属性デ
ータをマップ属性管理テーブル8から削除する。
ルマップ手段7は、マップ属性管理テーブル8内の各マ
ップ属性データのマップアドレスを検索し、マップアド
レスの順になる挿入位置にマップ属性データを挿入す
る。またマップを解消する際には、上位ファイルマップ
手段7が、解消するマップアドレスを含むマップ属性デ
ータをマップ属性管理テーブル8から削除する。
【0025】図4は、図1の実施例のマップ登録の動作
を示す。制約適合評価手段5は、図5に示す制約適合評
価関数により、OSのファイルマップ手段1の制約に適
合するかを評価する(ステップS1)。制約適合評価関
数は、OSのファイルマップ手段1によるマップ開始ア
ドレスをOSのファイルマップ手段1のスワップ単位の
メモリアドレス境界に一致し、かつファイルデータの先
頭からマップする部分までのオフセットのサイズがスワ
ップ単位の整数倍の時を適合とする。
を示す。制約適合評価手段5は、図5に示す制約適合評
価関数により、OSのファイルマップ手段1の制約に適
合するかを評価する(ステップS1)。制約適合評価関
数は、OSのファイルマップ手段1によるマップ開始ア
ドレスをOSのファイルマップ手段1のスワップ単位の
メモリアドレス境界に一致し、かつファイルデータの先
頭からマップする部分までのオフセットのサイズがスワ
ップ単位の整数倍の時を適合とする。
【0026】前記制約適合評価手段5の評価結果が適合
の場合は、更に効率適合評価手段6は、図6に示す効率
適合評価関数により、OSのファイルマップ手段1の効
率評価を行う(ステップS2)。効率適合評価関数は、
OSのファイルマップ手段1ではスワップ単位でマップ
されるため、マップする部分のサイズがスワップ単位よ
り小さい場合、スワップ単位からマップする部分を引い
た残りが無駄な領域としてマップされる。図6の効率適
合評価関数の例では、この無駄な領域のサイズのマップ
する部分のサイズに対する比率が25%以内を適合とす
るものである。この比率は、スワップ単位の指定あるい
は利用者プログラムの目的に応じて適正な値を設定する
のが望ましい。
の場合は、更に効率適合評価手段6は、図6に示す効率
適合評価関数により、OSのファイルマップ手段1の効
率評価を行う(ステップS2)。効率適合評価関数は、
OSのファイルマップ手段1ではスワップ単位でマップ
されるため、マップする部分のサイズがスワップ単位よ
り小さい場合、スワップ単位からマップする部分を引い
た残りが無駄な領域としてマップされる。図6の効率適
合評価関数の例では、この無駄な領域のサイズのマップ
する部分のサイズに対する比率が25%以内を適合とす
るものである。この比率は、スワップ単位の指定あるい
は利用者プログラムの目的に応じて適正な値を設定する
のが望ましい。
【0027】以上の結果から上位ファイルマップ手段7
は、前記制約適合評価手段5と前記効率適合評価手段6
の両方の結果が適合の場合はOSのファイルマップ手段
1によりマップを行わせ(ステップS3)、不適合の場
合は下位ファイルマップ手段2によりマップを行わせる
(ステップS4)。次に、上位ファイルマップ手段7
は、前記の選択した手段すなわちOSのファイルマップ
手段1または下位ファイルマップ手段2に対応して作成
されたマップ属性データをマップ属性管理テーブル8に
登録する(ステップS5)。
は、前記制約適合評価手段5と前記効率適合評価手段6
の両方の結果が適合の場合はOSのファイルマップ手段
1によりマップを行わせ(ステップS3)、不適合の場
合は下位ファイルマップ手段2によりマップを行わせる
(ステップS4)。次に、上位ファイルマップ手段7
は、前記の選択した手段すなわちOSのファイルマップ
手段1または下位ファイルマップ手段2に対応して作成
されたマップ属性データをマップ属性管理テーブル8に
登録する(ステップS5)。
【0028】図7は、図1の実施例のマップ解消の動作
を示す。まず上位ファイルマップ手段7は、解消しよう
とするマップアドレスを含むマップ属性データをマップ
属性管理テーブル8から検索し(ステップS11)、そ
のマップ属性データが示すファイルマップ手段をチェッ
クする(ステップS12)ことにより、そのマップがO
Sのファイルマップ手段1によってマップされたもの
か、下位ファイルマップ手段2によってマップされたも
のかを判断する。次に上位ファイルマップ手段7は、O
Sのファイルマップ手段1によってマップされたものな
らば、OSのファイルマップ手段1にマップの解消を行
わせ(ステップS13)、下位ファイルマップ手段によ
ってマップされたものならば、下位ファイルマップ手段
にマップの解消を行せる(ステップS14)。次に、上
位ファイルマップ手段7は、解消するマップのマップ属
性データをマップ属性管理テーブル8から削除する(ス
テップS15)。
を示す。まず上位ファイルマップ手段7は、解消しよう
とするマップアドレスを含むマップ属性データをマップ
属性管理テーブル8から検索し(ステップS11)、そ
のマップ属性データが示すファイルマップ手段をチェッ
クする(ステップS12)ことにより、そのマップがO
Sのファイルマップ手段1によってマップされたもの
か、下位ファイルマップ手段2によってマップされたも
のかを判断する。次に上位ファイルマップ手段7は、O
Sのファイルマップ手段1によってマップされたものな
らば、OSのファイルマップ手段1にマップの解消を行
わせ(ステップS13)、下位ファイルマップ手段によ
ってマップされたものならば、下位ファイルマップ手段
にマップの解消を行せる(ステップS14)。次に、上
位ファイルマップ手段7は、解消するマップのマップ属
性データをマップ属性管理テーブル8から削除する(ス
テップS15)。
【0029】図8に下位ファイルマップ手段2における
下位マップ登録の動作を示す。最初にマップアドレス空
間に必要なメモリを割り付け(ステップS21)、次に
指定されたファイルのマップ部分を利用者メモリ空間に
読み込む(ステップS22)。
下位マップ登録の動作を示す。最初にマップアドレス空
間に必要なメモリを割り付け(ステップS21)、次に
指定されたファイルのマップ部分を利用者メモリ空間に
読み込む(ステップS22)。
【0030】図9に下位ファイルマップ手段2における
下位マップ解消の動作を示す。最初にマップ属性データ
の内容を参照し、マップアドレス空間の内容を対応づけ
られたファイルの部分への書き出しが必要がどうかを判
断し、必要ならば書き出しを行い(ステップS31)、
次にマップアドレス空間からメモリを解放する(ステッ
プS32)。
下位マップ解消の動作を示す。最初にマップ属性データ
の内容を参照し、マップアドレス空間の内容を対応づけ
られたファイルの部分への書き出しが必要がどうかを判
断し、必要ならば書き出しを行い(ステップS31)、
次にマップアドレス空間からメモリを解放する(ステッ
プS32)。
【0031】
【発明の効果】本発明のファイルマップ装置によれば、
二次記憶装置上のファイルデータをメモリアドレス空間
のスワップ単位のメモリアドレス境界からスワップ単位
でマップする第1のファイルマップ手段のほかに、二次
記憶装置上のファイルデータを、メモリアドレス空間に
自由に設定可能なメモリアドレスから自由に設定可能な
サイズで前記メモリアドレス空間にマップする第2のフ
ァイルマップ手段を設け、マップ開始アドレスおよびマ
ップする部分のデータサイズなどのマップするファイル
の条件に応じて適合するいずれか一方の手段によってマ
ップが行えるようにしたため、全体として無駄なメモリ
消費を少なくすることができる。また利用者プログラム
では、マップ開始アドレスやマップするファイルの条件
などの制約から解放されるためプログラム作成作業が容
易になる。
二次記憶装置上のファイルデータをメモリアドレス空間
のスワップ単位のメモリアドレス境界からスワップ単位
でマップする第1のファイルマップ手段のほかに、二次
記憶装置上のファイルデータを、メモリアドレス空間に
自由に設定可能なメモリアドレスから自由に設定可能な
サイズで前記メモリアドレス空間にマップする第2のフ
ァイルマップ手段を設け、マップ開始アドレスおよびマ
ップする部分のデータサイズなどのマップするファイル
の条件に応じて適合するいずれか一方の手段によってマ
ップが行えるようにしたため、全体として無駄なメモリ
消費を少なくすることができる。また利用者プログラム
では、マップ開始アドレスやマップするファイルの条件
などの制約から解放されるためプログラム作成作業が容
易になる。
【図1】本発明の一実施例の構成を示すブロック図であ
る。
る。
【図2】本発明の実施例のマップ属性データのデータ構
造の一例を示す図である。
造の一例を示す図である。
【図3】図1の実施例のマップ属性管理テーブルの構造
の一例を示す図である。
の一例を示す図である。
【図4】図1の実施例のマップ登録の動作を示す流れ図
である。
である。
【図5】図1の実施例の制約適合評価手段5で用いる制
約適合評価関数の一例である。
約適合評価関数の一例である。
【図6】図1の実施例の効率適合評価手段6で用いる効
率適合評価関数の一例である。
率適合評価関数の一例である。
【図7】図1の実施例のマップ解消の動作を示す流れ図
である。
である。
【図8】図1の下位ファイルマップ手段2のマップ登録
の動作を示す流れ図である。
の動作を示す流れ図である。
【図9】図1の下位ファイルマップ手段2のマップ解消
の動作を示す流れ図である。
の動作を示す流れ図である。
1 OSのファイルマップ手段 2 下位ファイルマップ手段 3 メモリ割り付け手段 4 ファイル読み込み/書き込み手段 5 制約適合評価手段 6 効率適合評価手段 7 上位ファイルマップ手段 8 マップ属性管理テーブル
Claims (1)
- 【請求項1】 二次記憶装置上のファイルデータを、メ
モリアドレス空間のスワップ単位のメモリアドレス境界
からスワップ単位でマップする第1のファイルマップ手
段を利用できる場合、前記二次記憶装置上のファイルデ
ータを、前記メモリアドレス空間に自由に設定可能なメ
モリアドレスから自由に設定可能なサイズで前記メモリ
アドレス空間にマップする第2のファイルマップ手段
と、前記メモリアドレス空間のマップ開始アドレスが前
記第1のファイルマップ手段のスワップ単位のメモリア
ドレス境界にあるかどうかということ、およびファイル
のマップする部分のデータサイズに比較して前記第1の
ファイルマップ手段によって無駄にマップされるデータ
サイズが小さいか否かということの少なくとも一方を評
価することにより、前記第1のファイルマップ手段が前
記メモリアドレス空間へのファイルデータのマップに適
合しているかを判断する適合評価手段と、前記適合評価
手段により前記第1のファイルマップ手段が適合と判断
された場合は、前記第1のファイルマップ手段により前
記メモリアドレス空間へのファイルデータのマップを行
わせ、不適合と判断された場合は前記第2のファイルマ
ップ手段によってマップを行わせる上位ファイルマップ
手段とを備えるファイルマップ装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6079519A JPH07271640A (ja) | 1994-03-25 | 1994-03-25 | ファイルマップ装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6079519A JPH07271640A (ja) | 1994-03-25 | 1994-03-25 | ファイルマップ装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH07271640A true JPH07271640A (ja) | 1995-10-20 |
Family
ID=13692234
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP6079519A Pending JPH07271640A (ja) | 1994-03-25 | 1994-03-25 | ファイルマップ装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH07271640A (ja) |
-
1994
- 1994-03-25 JP JP6079519A patent/JPH07271640A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6681239B1 (en) | Computer system having shared address space among multiple virtual address spaces | |
US4758951A (en) | Method for translating virtual addresses into real addresses | |
US5652873A (en) | System and method for simulating a contiguous addressable data space | |
US5765201A (en) | Changing page size in storage media of computer system | |
US8095772B2 (en) | Large memory pages for shared libraries | |
US20060187738A1 (en) | Memory management device and memory device | |
JP2002268933A (ja) | クラスタシステム | |
JP2003030025A (ja) | 動的に生成されるウエブページのための仮想ファイルシステム | |
JPH04213129A (ja) | メモリ管理システム及びメモリ管理方法 | |
EP0892351A1 (en) | Large memory allocation method and apparatus | |
US6067601A (en) | Cache memory based instruction execution | |
CN115168317A (zh) | 一种lsm树存储引擎构建方法和系统 | |
JPH07271640A (ja) | ファイルマップ装置 | |
US6701319B1 (en) | Storing apparatus and data storing structure | |
JPH08115238A (ja) | ファイルシステム | |
JPH06187201A (ja) | ファイルシステム | |
JP2833814B2 (ja) | 入出力バッファ割当て方式 | |
JP3542894B2 (ja) | ファイルシステム | |
JP2583403B2 (ja) | バッキングストア管理方式 | |
JPH0869399A (ja) | ファイル管理装置 | |
JPH04181440A (ja) | コンピュータのファイル制御方法 | |
JPH04156626A (ja) | Vtocのファイルエントリ作成方式 | |
JPH0348952A (ja) | メモリ管理方式およびそれを用いた行列、テーブル、ファイル処理ならびに情報処理方式 | |
JPH05233402A (ja) | メモリマップドファイルアクセス方式 | |
JPS62251851A (ja) | 電子計算機システムのオ−バレイ制御方式 |