JPH08115263A - メモリ装置 - Google Patents

メモリ装置

Info

Publication number
JPH08115263A
JPH08115263A JP6252207A JP25220794A JPH08115263A JP H08115263 A JPH08115263 A JP H08115263A JP 6252207 A JP6252207 A JP 6252207A JP 25220794 A JP25220794 A JP 25220794A JP H08115263 A JPH08115263 A JP H08115263A
Authority
JP
Japan
Prior art keywords
memory
data
stored
file
files
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
JP6252207A
Other languages
English (en)
Inventor
Jun Fukui
純 福井
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP6252207A priority Critical patent/JPH08115263A/ja
Publication of JPH08115263A publication Critical patent/JPH08115263A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【目的】 各ファイルに対して割り当てるメモリブロッ
ク数を、アクセス内容に応じて動的に変化させるメモリ
装置を提供することにある。 【構成】 アクセスされたデータのコピーを記憶するた
めのRAM12に設けられた各メモリブロックに、どの
ファイルのどの部分のデータが記憶されているか示す管
理情報が記憶しておき、新たなデータをメモリに書き込
む必要が生じたときには、その管理情報を基に、基準割
当数以上のメモリブロックを使用しているファイルのデ
ータの記憶に用いられているメモリブロックを開放し
て、その開放したメモリブロックに、アクセスされたデ
ータのコピーが保存されるようにメモリ装置を構成す
る。なお、基準割当数は、ファイル数と掛け合わした値
がメモリブロック数を下回るように設定される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、メモリ装置に係わり、
たとえば、磁気ディスク装置などの記憶装置と、その記
憶装置内部に記憶された情報を処理する装置との間に設
けられるメモリ装置に関する。
【0002】
【従来の技術】情報処理装置が処理できるデータ量は、
アドレスビット数や、実装されているメモリサイズによ
って制限されているため、情報処理装置では、必要とす
るデータだけを、外部記憶装置から半導体メモリ上に読
み込み、その半導体メモリ上に読み込まれたデータに対
する処理を行うように構成されている。この場合、磁気
ディスク装置などが、外部記憶装置として用いられるこ
とが多いが、ディスク装置では、データをアクセスする
際に、目的とするデータが記憶された位置にヘッドを移
動させるといった機械的な動作が必要とされるため、そ
のアクセス速度は、半導体メモリのアクセス速度と比し
て非常に遅いものとなっている。
【0003】このため、ディスク装置と情報処理装置の
間に、ディスク装置から読み出したデータを、一時的に
記憶するための半導体メモリを備えたメモリ装置を設
け、そのメモリ装置内に、必要としているデータのコピ
ーが存在した場合には、ディスク装置からのデータの読
み出しを行わずに、そのデータのコピーを用いて、アク
セス要求に応答するといったことが行われている。
【0004】通常、このようなメモリ装置内のメモリは
所定サイズのメモリブロックに分割されており、新たな
データを記憶する必要が生じた場合には、FIFO(Fi
rstIn First Out) またはLRU(Least Recently Used)
と呼ばれるアルゴリズムに従って、そのデータの記憶
に用いるメモリブロックが決定されている。
【0005】図11を用いて、LRUアルゴリズムを用
いたメモリ装置の概要を説明する。この図は、各メモリ
ブロックに記憶されているデータを管理するためにメモ
リ装置内に作成されるテーブルの内容が、データのアク
セスによって変化する様子を模式的に示したものであ
る。図示したように、LRUアルゴリズムを用いたメモ
リ装置内では、各メモリブロック21に対して、そのメ
モリブロックに記憶されているデータのディスクアドレ
ス23と、そのメモリブロックがアクセスされた時間順
を示す情報であるLRU順位24が記憶されたテーブル
が用意されている。なお、LRU順位とメモリブロック
とを対応させる方法には、さまざまなものがあるが、こ
こでは、LRU順位として数値情報が用いられているも
のとし、小さな数値が与えられているメモリブロックの
方が過去にアクセスされたメモリブロックであるものと
する。
【0006】また、実際には、このテーブルの内容だけ
から、各メモリブロックに記憶されたデータがどのファ
イルに関係するものであるかを判断することはできない
のであるが、説明の便宜上、ファイルAに関するデータ
が記憶されているディスクアドレスを“a1”、“a
2”といったように、先頭に“a”を付して表わし、フ
ァイルBに関するデータが記憶されているディスクアド
レスを“b1”、“b2”といったように、その先頭に
“b”を付して表わすことにする。
【0007】LRUアルゴリズムを用いるメモリ装置で
は、最もLRU順位が高い(最も過去にアクセスされ
た)メモリブロックが、新たなデータを記憶するために
用いられる。たとえば、各メモリブロックに図11の左
に示したようにデータが記憶されている状態で、ディス
クアドレスb4のデータの読み出し要求がなされた場
合、メモリ装置は、そのディスクアドレスに一致してい
るアドレスがテーブル内に記憶されていないので、メモ
リ内に該当するデータは存在していないと判断し、ディ
スク装置からアドレスb4のデータを読み出して、要求
元からのアクセス要求に応答する。
【0008】そして、LRU順位が最も高い(最も過去
にアクセスされた)メモリブロック、すなわち、メモリ
ブロックIを開放し、そのメモリブロックに、アドレス
b4のデータを格納するとともに、テーブルの内容を、
メモリブロックIにアドレスb4のデータが格納されて
おり、また、そのメモリブロックが最も最近アクセスさ
れていることを示すものに更新する。
【0009】その後、アドレスb5、b6のデータの読
み出し要求がなされた場合には、同様の手順によって、
それらのデータは、メモリブロックIIおよびIII に書き
込まれていき、メモリ内の全てのブロックがファイルB
に関するデータの格納に用いられるようになり、ファイ
ルAに関するデータは、メモリ上から消去されてしま
う。
【0010】このように、LRUアルゴリズムを用いる
メモリ装置では、新たなデータを保存するためのメモリ
ブロックは、メモリブロックに記憶された内容によら
ず、メモリブロックのアクセス順に応じて選択されるた
め、一旦、メモリ上に記憶されたデータが、再度、アク
セスされることなく、メモリ上から消去されてしまう場
合が生ずる。また、FIFOアルゴリズム(メモリ上に
書き込まれた時間順で開放するメモリブロックが選択さ
れるアルゴリズム)を用いるメモリ装置でも、同様に、
一旦、メモリ上に記憶されたデータが、アクセスされる
ことなく、メモリ上から消去されてしまう場合が生ず
る。
【0011】メモリ上から消去されたデータが、再度、
使用されることがないデータである場合には、このよう
な現象は、何の問題も生じない。しかし、情報処理を行
う際には、複数のファイルを繰り返し使用することが多
く、そのような処理を行っている際に、上記のような現
象が生じた場合、データを直接、ディスク装置から読み
出すといった処理を繰り返さなければならないことにな
り、メモリ装置を設けているにもかかわらずアクセス速
度が向上しないことになってしまう。
【0012】このような問題を解決するために、特開平
2−59921号公報に記載の技術では、メモリ装置内
に記憶されるファイルのそれぞれに対して同数のメモリ
ブロックを割り当てる。
【0013】図12を用いて、特開平2−59921号
公報に記載の技術の概要を説明する。なお、図中、1つ
の枠が1つのメモリブロックを示すものとし、各枠内に
記してあるローマ数字がメモリブロック番号を示すもの
とする。
【0014】特開平2−59921号公報に記載の技術
では、たとえば、対象となるファイルがファイルA、B
の2つであるときには、図12の左側に示したように、
各ファイルに対して全メモリブロック数を2等分した、
3つずつのメモリブロックが割り当てられる。また、新
たなファイルCのアクセス要求があったときには、3つ
のファイルに対して同数のメモリブロックが割り当てら
れるように、ファイルAおよびファイルBに割り当てら
れていたメモリブロックが、1個ずつファイルCに割り
当てられる。そして、各ファイルに関するデータの記憶
は、そのファイルに対して割り当てられたメモリブロッ
クのみを用いて行われる。
【0015】
【発明が解決しようとする課題】上述の、特開平2−5
9921号公報に記載の技術では、各ファイルに同数の
メモリブロックが割り当てられるため、アクセスを行っ
たファイルの内容の一部は、常に、メモリ上に保存され
ていることになり、複数のファイルを順に用いた処理な
どを実行する際に、過去にアクセスしたデータがメモリ
上に記憶されている可能性を高くすることができる。
【0016】しかしながら、この技術では、各ファイル
に割り当てられるメモリブロック数が、ファイル数に応
じて決定されてしまうため、6個のメモリブロックを有
するメモリ装置を、この技術を用いて構成した場合、フ
ァイル数が2個であるときには、それぞれのファイルサ
イズがどのようなものであっても、常に3個ずつのメモ
リブロックが割り当てられることになる。たとえば、メ
モリブロック5個分の容量をもつファイルAと、メモリ
ブロック1個分の容量をもつファイルBに対するアクセ
スがなされているときにも、それぞれのファイルに3個
ずつのメモリブロックが割り当てられてしまい、6個の
メモリブロックのうち、ファイルBに割り当てられたメ
モリブロックの2個が使用されない状態で、機能するこ
とになってしまう。
【0017】また、2つのファイルサイズが同じ場合で
あっても、一方のファイルが頻繁にアクセスされるもの
である場合には、そのファイルに関するデータの記憶に
多くのメモリブロックが使用されることが望ましいが、
この技術では、ほとんどアクセスされないファイルに
も、頻繁にアクセスされるファイルと同数のメモリブロ
ックが割り当てられてしまう。
【0018】このように、特開平2−59921号公報
に記載の技術では、対象とするファイル(およびその使
用法)によっては、その効率が、LRUやFIFOを用
いた通常のメモリ装置に比して劣化する場合も生じてし
まう。
【0019】そこで、本発明の目的は、上述のような問
題を解消できる、各ファイルに対して割り当てるメモリ
ブロック数を、アクセス内容に応じて動的に変化させる
メモリ装置を提供することにある。
【0020】
【課題を解決するための手段】請求項1記載の発明は、
(イ)所定サイズのデータを記憶するための複数個のメ
モリブロックを備えるメモリと、(ロ)このメモリ内の
各メモリブロックに、どのファイルのどの部分のデータ
が記憶されているか示す管理情報が記憶される管理情報
記憶手段と、(ハ)メモリ内に記憶されているファイル
数と基準割当数を掛けた値が、メモリ内に設けられてい
るメモリブロック数を下回るように、基準割当数を設定
する設定手段と、(ニ)情報処理装置からデータの読み
出し要求があった場合に、管理情報を基に、要求された
データがメモリ内に記憶されているか否かを判断する判
断手段と、(ホ)この判断手段によって要求されたデー
タがメモリ内に記憶されていないと判断された場合に、
要求されたデータを記憶装置から読み出してその読み出
し要求に応答するとともに、管理情報を基に、基準割当
数以上のメモリブロックを使用しているファイルのデー
タの記憶に用いられているメモリブロックを特定し、そ
の特定したブロックに読み出したデータを書き込む第1
応答手段と、(ヘ)判断手段によって要求されたデータ
がメモリ内に記憶されていると判断された場合に、その
メモリ内に記憶されているデータを記憶装置に供給する
第2応答手段とを具備する。
【0021】すなわち、請求項1記載の発明のメモリ装
置では、アクセスされたデータのコピーを記憶するため
のメモリと、メモリ内の各メモリブロックに、どのファ
イルのどの部分のデータが記憶されているか示す管理情
報が記憶される管理情報記憶手段を設けられており、新
たなデータをメモリに書き込む必要が生じたときには、
その管理情報を基に、基準割当数以上のメモリブロック
を使用しているファイルのデータの記憶に用いられてい
るメモリブロックが開放されて、その開放されたメモリ
ブロックに、アクセスされたデータのコピーが保存され
る。なお、基準割当数は、ファイル数と掛け合わした値
がメモリブロック数を下回るように設定される。
【0022】請求項2記載の発明は、(イ)所定サイズ
のデータを記憶するための複数個のメモリブロックを備
えるメモリと、(ロ)このメモリ内の各メモリブロック
に、どのファイルのどの部分のデータが記憶されている
か示す管理情報が記憶される管理情報記憶手段と、
(ハ)メモリ内に記憶されているファイル数と基準割当
数を掛けた値が、メモリ内に設けられているメモリブロ
ック数を下回るように、基準割当数を設定する設定手段
と、(ニ)情報処理装置からデータの読み出し要求があ
った場合に、管理情報を基に、要求されたデータがメモ
リ内に記憶されているか否かを判断する判断手段と、
(ホ)この判断手段によって要求されたデータがメモリ
内に記憶されていないと判断された場合に、要求された
データを記憶装置から読み出してその読み出し要求に応
答するとともに、管理情報を基に、読み出し要求があっ
たデータのファイルとは、異なるファイルであって、基
準割当数以上のメモリブロックを使用しているファイル
のデータの記憶に用いられているメモリブロックを特定
し、その特定したブロックに読み出したデータを書き込
む第1応答手段と、(ヘ)判断手段によって要求された
データがメモリ内に記憶されていると判断された場合
に、そのメモリ内に記憶されているデータを記憶装置に
供給する第2応答手段とを具備する。
【0023】すなわち、請求項2記載の発明のメモリ装
置では、アクセスされたデータのコピーを記憶するため
のメモリと、メモリ内の各メモリブロックに、どのファ
イルのどの部分のデータが記憶されているか示す管理情
報が記憶される管理情報記憶手段が設けられており、新
たなデータをメモリに書き込む必要が生じたときには、
その管理情報を基に、そのデータのファイルとは異なる
ファイルであって、基準割当数以上のメモリブロックを
使用しているファイルのデータの記憶に用いられている
メモリブロックが開放され、その開放されたメモリブロ
ックに、アクセスされたデータのコピーが保存される。
【0024】請求項3記載の発明は、(イ)所定サイズ
のデータを記憶するための複数個のメモリブロックを備
えるメモリと、(ロ)このメモリ内の各メモリブロック
に、どのファイルのどの部分のデータが記憶されている
か示す管理情報が記憶される管理情報記憶手段と、
(ハ)新たなファイルに関する読み出し要求があった際
に、管理情報記憶手段に記憶された管理情報を基に、メ
モリ内に記憶されることになる総ファイル数を算出し、
その総ファイル数が予め定められた規定値を上回る場合
には、メモリ内に記憶されているファイルのうち1つの
ファイルのデータの記憶に用いられているメモリブロッ
クを開放する開放手段と、(ニ)メモリ内に記憶されて
いるファイル数と基準割当数を掛けた値が、メモリ内に
設けられているメモリブロック数を下回るように、基準
割当数を設定する設定手段と、(ホ)情報処理装置から
データの読み出し要求があった場合に、管理情報を基
に、要求されたデータがメモリ内に記憶されているか否
かを判断する判断手段と、(ヘ)この判断手段によって
要求されたデータがメモリ内に記憶されていないと判断
された場合に、要求されたデータを記憶装置から読み出
してその読み出し要求に応答するとともに、管理情報を
基に、基準割当数以上のメモリブロックを使用している
ファイルのデータの記憶に用いられているメモリブロッ
クを特定し、その特定したブロックに読み出したデータ
を書き込む第1応答手段と、(ト)判断手段によって要
求されたデータがメモリ内に記憶されていると判断され
た場合に、そのメモリ内に記憶されているデータを記憶
装置に供給する第2応答手段とを具備する。
【0025】すなわち、請求項3記載の発明のメモリ装
置では、アクセスされたデータのコピーを記憶するため
のメモリと、メモリ内の各メモリブロックにどのファイ
ルのどの部分のデータが記憶されているか示す管理情報
が記憶される管理情報記憶手段が設けられており、新た
なデータをメモリに書き込む必要が生じたときには、そ
の管理情報を基に、基準割当数以上のメモリブロックを
使用しているファイルのデータの記憶に用いられている
メモリブロックが開放されて、その開放されたメモリブ
ロックに、アクセスされたデータのコピーが保存され
る。また、新たなファイルの読み出し要求があった場合
において、メモリ内に保存されることになるファイル数
が規定値を上回る場合に、そのメモリ内に記憶されてい
るファイルのうち1つのファイルのデータの記憶に用い
られているメモリブロックを全て開放する開放手段も備
えられており、メモリ内に規定値を超える数のファイル
に関するデータが記憶されることがないように制御され
る。
【0026】
【実施例】以下、実施例につき本発明を詳細に説明す
る。
【0027】図1に、本発明の一実施例によるメモリ装
置の概略構成を示す。図示したように、実施例のメモリ
装置は、ランダム・アクセス・メモリ(RAM)12と
メモリ制御装置13とリード・オンリ・メモリ(RO
M)14とインタフェース15 1 、152 によって構成
されており、メモリ装置11は、インタフェース1
1、152 を介して、それぞれ、情報処理装置21と
ディスク装置22に接続されて使用される。
【0028】RAM12は、ディスク装置22から読み
出されたデータのコピー、あるいは、ディスク装置22
に書き込まれるデータのコピーが一時的に記憶されるメ
モリであり、RAM12には、所定サイズのデータが格
納できる複数のメモリブロックが設けられている。ま
た、RAM12には、各メモリブロックに格納されてい
るデータを管理するための情報が記憶される領域も設け
られている。
【0029】メモリ制御装置13は、RAM12内の各
メモリブロックを、そのメモリブロック内に記憶されて
いるデータに対応するデータのディスク装置におけるア
ドレスと、そのデータが属するファイル名と、LRU順
位と、割当数によって管理しており、それらの情報を用
いて、ディスク装置22あるいはRAM12を制御し、
情報処理装置21からのアクセス要求に応答する制御装
置であり、その動作手順を規定するプログラムはROM
14内に格納されている。
【0030】図2および図3を用いて、メモリ制御装置
が、各メモリブロックを管理するために用いる情報の詳
細を説明する。
【0031】実施例のメモリ装置では、メモリブロック
を管理するための管理情報は、2つのテーブルに別けて
記憶されており、一方のテーブル(図2:以下、ブロッ
ク管理テーブルと表記する。)には、メモリブロック番
号21に対する、そのメモリブロック内に記憶されたデ
ータが属するファイル名22と、そのデータのディスク
装置内でのアドレス23とLRU順位24との関係が記
憶され、他方のテーブル(図3:以下、ファイル管理テ
ーブルと表記する。)には、ファイル名22と割当数2
5の対応関係が記憶される。
【0032】これらの情報のうち、LRU順位24は、
メモリブロックを、アクセスが行われた時間順で順位づ
けるための情報である。なお、実際のブロック管理テー
ブルでは、テーブル自体を二重連結リスト構造とするこ
とにより、各メモリブロックとLRU順位とを対応づけ
ているのであるが、説明の便宜上、図2に示したよう
に、単に、各メモリブロックに対して、そのアクセス順
に応じた数値(数値が小さい方のメモリブロックが、過
去にアクセスされたメモリブロックであるものとす
る。)が記憶されているものとする。また、ブロック管
理テーブル内の、ファイル名22は、そのメモリブロッ
クが使用されているか否かを示す情報としても用いられ
ており、ファイル名22が、所定の情報となっていた場
合、メモリ制御装置は、そのメモリブロックが使用され
ていないブロックであると判断する。
【0033】ファイル管理テーブル(図3)内に、ファ
イル名に対応付けられて記憶されている割当数は、その
ファイルの内容を記憶するために、何個のメモリブロッ
クが使用されているかを示す情報である。たとえば、図
2に示したように、3つのファイルAないしCが、それ
ぞれ、“1”、“3”、“2”個のメモリブロックを使
用している場合には、図3に示したようなファイル管理
テーブルが作成される。
【0034】メモリ制御装置は、これら2種のテーブル
の内容を参照・更新することによって、要求されたデー
タのコピーの記憶に用いるメモリブロックを選択しなが
ら、情報処理装置からのアクセス要求に応答していく。
以下、その動作手順を詳細に説明する。
【0035】図4に、メモリ制御装置の総合的な動作の
流れを示す。メモリ制御装置は、情報処理装置(データ
要求元)からアクセス要求がなされると、ファイル管理
テーブルの内容を基に、そのアクセス要求が、新たなフ
ァイルに対するものであるか否かを判断(ステップS1
01)し、新たなファイルに対するものでなあった場合
(Y)には、RAM内に記憶されるファイル数が規定値
以下となるか否かを判断(ステップS102)して、規
定値以下となる場合(Y)には、基準割当数の変更を行
い(ステップS103)、ステップS106に進む。
【0036】また、ファイル数が規定値を超える場合
(ステップS102;N)には、LRU順位が最も高い
メモリブロックに記憶されているデータが属するファイ
ルの内容を記憶するために用いられているメモリブロッ
クを全て開放(ステップS104)して、ステップS1
06に進む。
【0037】なお、ステップS102で参照されている
規定数は、RAM内に設けられるメモリブロック数に応
じて、予め設定される情報であり、ここまでの動作手順
から明らかなように、規定数は、RAM内に記憶される
ファイル数を制限する情報として用いられている。
【0038】ステップS103で変更されている基準割
当数は、メモリブロックを開放する際に、それぞれのフ
ァイルに対して残す(開放してはならない)メモリブロ
ック数を規定する情報である。この基準割当数は、〔基
準割当数〕×〔ファイル数〕<〔メモリブロック数〕と
いう関係を満たすように、ファイル数に応じて、その内
容が設定されるべき情報であり、実施例のメモリ装置で
は、RAM内のメモリブロックの総数Mを、RAM内に
記憶されることになるファイル数Nに“1”を加えた値
で割ったときの商が、基準割当数として設定されるよう
になっている。
【0039】たとえば、全くデータの記憶がなされてい
ない状態から、6個のメモリブロック(M=6)を有す
るメモリ装置に対して、最初のファイルに対するアクセ
ス要求がなされたときには、N=1であるから、基準割
当数として、3(=6/2)が設定され、さらに、新た
なファイルに対するアクセス要求がなされたときには、
基準割当数は、2(=6/3)に変更される。この基準
割当数は、開放すべきメモリブロックを選択する際に参
照される。
【0040】また、アクセス要求が、新たなファイルに
対するものでなかった場合(ステップS101;N)に
は、ブロック管理テーブルを参照して、そのデータがR
AM内に記憶されているか否かを判断(ステップS10
5)し、RAM内に記憶されていたとき(Y)には、該
当データをRAMから読み出して、そのデータをデータ
要求元(情報処理装置)に供給(ステップS111)
し、そのデータが格納されていたメモリブロックのLR
U順位が最も低くなるように、ブロック管理テーブルの
内容を更新(ステップS112)して、処理を終了す
る。
【0041】RAM内に要求されたデータのコピーが存
在していなかった場合(ステップS105;N)には、
データを格納できるメモリブロックがRAM内に存在し
ているか否かを判断(ステップS106)し、空きブロ
ックが存在していたとき(Y)には、その空きブロック
を、要求されたデータを格納するブロックとして選択
(ステップS107)する。そして、該当データをディ
スク装置から読み出し、そのデータを選択したメモリブ
ロックに書き込むととともに、データ要求元に供給(ス
テップS109)し、ファイル管理テーブルとブロック
管理テーブルの内容を更新(ステップS110)して、
処理を終了する。
【0042】新たなファイルに関するデータの読み出し
要求がなされた結果、あるファイルの内容の記憶に用い
られていたメモリブロックが開放された場合(ステップ
S104)にも、ステップS106からの処理が行われ
る。ただし、この場合、空きブロックが存在するため、
ステップS106における分岐は、常に“Y”側に行わ
れ、データは、空きブロックの1つへ書き込まれること
になる。
【0043】RAM内に空いているメモリブロックが存
在していない場合(ステップS106;N)には、メモ
リブロック選択処理(ステップS107)が行われ、そ
の処理において、開放されたメモリブロックに対して、
ステップS109からの処理が行われる。
【0044】図5に、メモリブロック選択処理の詳細を
示す。メモリブロック選択処理では、メモリ制御装置
は、まず、LRU順位が最も高い(最も過去にアクセス
された)メモリブロックに関するファイル名などをブロ
ック管理テーブルから読み出し、そのファイル名を検索
キーとして、ファイル管理テーブルから、そのファイル
に対して記憶されている割当数を読み出す(ステップS
201)。
【0045】そして、その割当数が、基準割当数以下で
あった場合(ステップS202;N)には、LRU順位
が次位のブロックに関する情報を読み出して(ステップ
S205)、ステップS202に戻る。
【0046】割当数が、基準割当数を超えるものである
場合(ステップS202;Y)には、そのファイルがア
クセス要求がなされているファイルと同一のものである
か否かを判断(ステップS203)し、同一ファイルで
ない場合(N)には、そのメモリブロックを開放(ステ
ップS206)して、メモリブロック選択処理を終了す
る(図4のステップS109に進む。)。
【0047】同一ファイルであった場合(ステップS2
03;Y)において、開放可能なファイルが1つである
か否か、すなわち、ファイル管理テーブル中に、割当数
として、基準割当数を上回る値が記憶されているファイ
ルが1つであるか複数であるかを判断(ステップS20
4)して、開放可能なファイルが1つである場合(ステ
ップS204;Y)には、そのメモリブロックを開放
(ステップS206)して、処理を終了する。また、開
放可能なファイルが複数ある場合(ステップS204;
N)には、要求されたデータの格納に適当な他のメモリ
ブロックが存在することになるため、ステップS205
に進み、LRU順位が次位のメモリブロックに関する管
理情報の読み出しを行う。
【0048】実施例のメモリ装置は、このような流れに
従って動作するように構成されているため、要求された
データが、どのファイルに属するものであるかによっ
て、開放されるメモリブロックが異なることになる。
【0049】たとえば、図2に示したような形で、RA
M内にデータが記憶されているときに、ファイルAに関
するあらたなデータ(ディスク装置のアドレスa2に記
憶されているファイルAに関するデータ)の読み出し要
求がなされた場合を考える。
【0050】この場合には、図4に示した流れ図におい
て、ステップS101、S105、S106の判断が行
われた後に、図5に示したメモリブロック選択処理が実
行されることになり、メモリブロック選択処理におい
て、メモリブロックIに関する、ファイル名、割当数等
が読み出されることになる。そして、ファイルAの割当
数(=1)が、基準割当数(=1)を上回っていないた
め、ステップS202における分岐は“N”側に行わ
れ、次順位のメモリブロック、すなわち、メモリブロッ
クIIに関するファイル名、割当数等が読み出される。
【0051】メモリブロックIIには、図2に示してある
ように、ファイルBのデータが記憶されており、また、
ファイルBの割当数(=3)は、基準割当数(=1)を
上回っているため、このメモリブロックに関しては、ス
テップS202における分岐は“Y”側に行われること
になる。また、要求されたデータはファイルAに関する
ものであり、そのメモリブロックに記憶されているデー
タはファイルBに関するものであるので、ステップS2
03の判断は“N”となり、結局、ディスク装置のアド
レスa2に記憶されているファイルAのデータは、メモ
リブロックIIに記憶され、ブロック管理テーブルの内容
は、図6に示したようなものに変更されることになる。
【0052】また、図2に示したような形で、RAM内
にデータが記憶されているときに、ファイルBに関する
新たなデータ(ディスク装置のアドレスb4に記憶され
ているファイルBに関するデータ)の読み出し要求がな
された場合には、上述のケースと同等に、最初に、メモ
リブロックIに関する、ファイル名、割当数等が読み出
され、ファイルAの割当数(=1)が、基準割当数(=
1)を上回っていないため、メモリブロックIIに関する
ファイル名、割当数等が読み出される。
【0053】メモリブロックIIに記憶されているファイ
ルBの割当数(=3)は、基準割当数(=1)を上回っ
ているものの、要求されているファイルと、メモリブロ
ックIIに記憶されているファイルが同一(ステップS2
03;Y)であり、また、開放可能なファイルは2つ
(ファイルBとC)存在している(ステップS204;
N)ため、次順位のメモリブロックに関する管理情報の
読み出しが行われる。
【0054】また、メモリブロックIII とIVにも、ファ
イルBに関するデータが記憶されているため、さらに次
順位のメモリブロック、すなわち、メモリブロックVの
管理情報が読み出されることになる。そして、メモリブ
ロックVの割当数(=2)は、基準割当数(=1)を上
回っており、また、要求されているファイルと、記憶さ
れていたファイルも異なっている。このため、ディスク
装置のアドレスb4に記憶されているファイルBのデー
タは、メモリブロックVに記憶され、ブロック管理テー
ブルの内容は、図7に示したようなものに変更されるこ
とになる。
【0055】この図7に示した状態では、ファイルA、
Cの割当数は、共に“1”となっているため、開放可能
なファイルは1つしか存在していないことになる。この
ような状態において、ファイルBに関する新たなデータ
の読み出し要求が行われたときに、図5のステップS2
04の判断は、“Y”となる。たとえば、図7の状態か
ら、ディスク装置のアドレスb5に記憶されているファ
イルBに関するデータの読み出し要求がなされた場合に
は、図8に示すように、要求されたデータは、ファイル
Bに関するデータが記憶されているメモリブロックのう
ち、LRU順位が最も高いメモリブロックIIに格納され
る。
【0056】さらに、図8に示したように各メモリブロ
ックが使用されている状態で、新たなファイルDに関す
る、アドレスd1のデータの読み出し要求がなされた場
合には、設定されている規定値によって、そのデータの
記憶に用いられるメモリブロックが異なることになる。
【0057】たとえば、規定値が“3”に設定されてい
れば、LRU順位が最も高いメモリブロックに記憶され
ているファイルに関するデータが記憶されているメモリ
ブロックが全て(この場合は、1個だけ)開放され、図
9に示したように、開放されたメモリブロックIに、ア
ドレスd1のデータが記憶される。
【0058】また、規定値が“4”に設定されていれ
ば、メモリブロックIの開放は行われず、図10に示し
たように、メモリブロックIII が開放されて、アドレス
d1のデータが記憶されることになる。
【0059】このように、実施例のメモリ装置では、フ
ァイル名を、データを記憶させるメモリブロックを選択
する際の条件として用いて、基準割当数以上のメモリブ
ロックが割り当てられているファイルの記憶に使用され
ているメモリブロックを、新たなデータの記憶に用いる
ようになっているので、他のファイルのデータをメモリ
上から全て消去してしまうことなく、アクセスの多いフ
ァイルに、多くのメモリブロックを割り当てるといった
ことができるようになっている。
【0060】なお、実施例のメモリ装置では、要求され
たデータとは異なるファイルであって、基準割当数以上
のメモリブロックが割り当てられているファイルのデー
タを記憶しているメモリブロックを開放するように構成
してあるが、若干、効率は劣るものの、単に、基準割当
数以上のメモリブロックが割り当てられているファイル
のデータを記憶しているメモリブロックを開放するよう
に構成しても良い。また、管理情報を2つのテーブルに
分けずに、ブロック管理テーブルとファイル管理テーブ
ルの内容をまとめた1つのテーブルを作成し、その内容
を参照して動作するように構成することもできる。
【0061】また、各メモリブロックに対してLRU順
位を記憶させるのではなく、そのメモリブロックにデー
タが書き込まれた順番を記憶させて、その順番に従っ
て、上記のような条件を満たすメモリブロックを探索す
るように構成してもよい。さらに、実施例のメモリ装置
を情報処理装置の一部分として構成してもよく、逆に、
記憶装置の一部分として構成してもよい。
【0062】
【発明の効果】請求項1ないし請求項3記載の発明のよ
れば、基準割当数以上のメモリブロックが割り当てられ
ているファイルのデータを記憶しているメモリブロック
に新たなデータが記憶されるので、各ファイルに同数の
メモリブロックを割り当てる従来のメモリ装置で発生す
るような問題が生ずることがなく、情報処理装置におけ
る作業を効率的に行えるようになる。
【0063】また、請求項2記載の発明のように、基準
割当数以上のメモリブロックが割り当てられているファ
イルであって、要求されたデータとは異なるファイルの
データが記憶されたメモリブロックに新たなデータが記
憶されるようにメモリ装置を構成した場合には、要求さ
れたデータがメモリ上に存在する確率が更に高いメモリ
装置を得ることができる。
【0064】さらに、請求項3記載の発明のように、メ
モリ内に記憶されるファイル数が制限されるようにメモ
リ装置を構成した場合には、繰り返し使用しないファイ
ルの記憶に用いられたメモリブロックが、開放されてい
くことになるので、有限の個数しかないメモリブロック
を有効に活用できることになる。
【図面の簡単な説明】
【図1】 本発明の一実施例によるメモリ装置の構成を
示すブロック図である。
【図2】 実施例のメモリ装置がメモリブロックを管理
するために用いるブロック管理テーブルの概要を示す説
明図である。
【図3】 実施例のメモリ装置がメモリブロックを管理
するために用いるファイル管理テーブルの概要を示す説
明図である。
【図4】 実施例のメモリ装置の総合的な動作の流れを
示した流れ図である。
【図5】 実施例のメモリ装置のメモリブロック選択処
理の動作の流れを示した流れ図である。
【図6】 実施例のメモリ装置内に、図2に示したよう
にデータが記憶されていた際に、ファイルAに対する新
たなデータの読み出し要求が行われた場合に、結果とし
て得られるファイル管理テーブルの概要を示した説明図
である。
【図7】 実施例のメモリ装置内に、図2に示したよう
にデータが記憶されていた際に、ファイルBに対する新
たなデータの読み出し要求が行われた場合に、結果とし
て得られるファイル管理テーブルの概要を示した説明図
である。
【図8】 実施例のメモリ装置内に、図7に示したよう
にデータが記憶されていた際に、ファイルBに対する新
たなデータの読み出し要求が行われた場合に、結果とし
て得られるファイル管理テーブルの概要を示した説明図
である。
【図9】 実施例のメモリ装置内に、図8に示したよう
にデータが記憶されており、規定値が“3”に設定され
ていた際に、ファイルDに対する新たなデータの読み出
し要求が行われた場合に、結果として得られるファイル
管理テーブルの概要を示した説明図である。
【図10】 実施例のメモリ装置内に、図8に示したよ
うにデータが記憶されており、規定値が“4”以上に設
定されていたときに、ファイルDに対する新たなデータ
の読み出し要求が行われたときに、結果として得られる
ファイル管理テーブルの概要を示した説明図である。
【図11】 従来のLRUアルゴリズムを用いたメモリ
装置における、メモリブロック選択手順を示す説明図で
ある。
【図12】 特開平2−59921号公報に記載された
技術の概要を示す説明図である。
【符号の説明】
11…メモリ装置、12…RAM、13…メモリ制御装
置、14…ROM、15…インターフェース、21…メ
モリブロック、22…ファイル名、23…ディスクアド
レス、24…LRU順位、25…割当数、31…情報処
理装置、32…ディスク装置

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 複数のファイルが記憶される記憶装置
    と、その記憶装置内のファイルをアクセスする情報処理
    装置の間に設けられるメモリ装置であって、 所定サイズのデータを記憶するための複数個のメモリブ
    ロックを備えるメモリと、 このメモリ内の各メモリブロックに、どのファイルのど
    の部分のデータが記憶されているか示す管理情報が記憶
    される管理情報記憶手段と、 前記メモリ内に記憶されているファイル数と基準割当数
    を掛けた値が、メモリ内に設けられているメモリブロッ
    ク数を下回るように、基準割当数を設定する設定手段
    と、 前記情報処理装置からデータの読み出し要求があった場
    合に、前記管理情報を基に、要求されたデータが前記メ
    モリ内に記憶されているか否かを判断する判断手段と、 この判断手段によって要求されたデータが前記メモリ内
    に記憶されていないと判断された場合に、要求されたデ
    ータを前記記憶装置から読み出してその読み出し要求に
    応答するとともに、前記管理情報を基に、前記基準割当
    数以上のメモリブロックを使用しているファイルのデー
    タの記憶に用いられているメモリブロックを特定し、そ
    の特定したブロックに読み出したデータを書き込む第1
    応答手段と、 前記判断手段によって要求されたデータが前記メモリ内
    に記憶されていると判断された場合に、そのメモリ内に
    記憶されているデータを前記記憶装置に供給する第2応
    答手段とを具備することを特徴とするメモリ装置。
  2. 【請求項2】 複数のファイルが記憶される記憶装置
    と、その記憶装置内のファイルをアクセスする情報処理
    装置の間に設けられるメモリ装置であって、 所定サイズのデータを記憶するための複数個のメモリブ
    ロックを備えるメモリと、 このメモリ内の各メモリブロックに、どのファイルのど
    の部分のデータが記憶されているか示す管理情報が記憶
    される管理情報記憶手段と、 前記メモリ内に記憶されているファイル数と基準割当数
    を掛けた値が、メモリ内に設けられているメモリブロッ
    ク数を下回るように、基準割当数を設定する設定手段
    と、 前記情報処理装置からデータの読み出し要求があった場
    合に、前記管理情報を基に、要求されたデータが前記メ
    モリ内に記憶されているか否かを判断する判断手段と、 この判断手段によって要求されたデータが前記メモリ内
    に記憶されていないと判断された場合に、要求されたデ
    ータを前記記憶装置から読み出してその読み出し要求に
    応答するとともに、前記管理情報を基に、読み出し要求
    があったデータのファイルとは、異なるファイルであっ
    て、前記基準割当数以上のメモリブロックを使用してい
    るファイルのデータの記憶に用いられているメモリブロ
    ックを特定し、その特定したブロックに読み出したデー
    タを書き込む第1応答手段と、 前記判断手段によって要求されたデータが前記メモリ内
    に記憶されていると判断された場合に、そのメモリ内に
    記憶されているデータを前記記憶装置に供給する第2応
    答手段とを具備することを特徴とするメモリ装置。
  3. 【請求項3】 複数のファイルが記憶される記憶装置
    と、その記憶装置内のファイルをアクセスする情報処理
    装置の間に設けられるメモリ装置であって、 所定サイズのデータを記憶するための複数個のメモリブ
    ロックを備えるメモリと、 このメモリ内の各メモリブロックに、どのファイルのど
    の部分のデータが記憶されているか示す管理情報が記憶
    される管理情報記憶手段と、 新たなファイルに関する読み出し要求があった際に、前
    記管理情報記憶手段に記憶された管理情報を基に、前記
    メモリ内に記憶されることになる総ファイル数を算出
    し、その総ファイル数が予め定められた規定値を上回る
    場合には、前記メモリ内に記憶されているファイルのう
    ち1つのファイルのデータの記憶に用いられているメモ
    リブロックを開放する開放手段と、 前記メモリ内に記憶されているファイル数と基準割当数
    を掛けた値が、メモリ内に設けられているメモリブロッ
    ク数を下回るように、基準割当数を設定する設定手段
    と、 前記情報処理装置からデータの読み出し要求があった場
    合に、前記管理情報を基に、要求されたデータが前記メ
    モリ内に記憶されているか否かを判断する判断手段と、 この判断手段によって要求されたデータが前記メモリ内
    に記憶されていないと判断された場合に、要求されたデ
    ータを前記記憶装置から読み出してその読み出し要求に
    応答するとともに、前記管理情報を基に、読み出し要求
    があったデータのファイルとは、異なるファイルであっ
    て、前記基準割当数以上のメモリブロックを使用してい
    るファイルのデータの記憶に用いられているメモリブロ
    ックを特定し、その特定したブロックに読み出したデー
    タを書き込む第1応答手段と、 前記判断手段によって要求されたデータが前記メモリ内
    に記憶されていると判断された場合に、そのメモリ内に
    記憶されているデータを前記記憶装置に供給する第2応
    答手段とを具備することを特徴とするメモリ装置。
JP6252207A 1994-10-18 1994-10-18 メモリ装置 Pending JPH08115263A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6252207A JPH08115263A (ja) 1994-10-18 1994-10-18 メモリ装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6252207A JPH08115263A (ja) 1994-10-18 1994-10-18 メモリ装置

Publications (1)

Publication Number Publication Date
JPH08115263A true JPH08115263A (ja) 1996-05-07

Family

ID=17233997

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6252207A Pending JPH08115263A (ja) 1994-10-18 1994-10-18 メモリ装置

Country Status (1)

Country Link
JP (1) JPH08115263A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999040516A1 (en) * 1998-02-04 1999-08-12 Hitachi, Ltd. Disk cache control method, disk array device, and storage device
US7281087B2 (en) 2002-10-17 2007-10-09 Nec Corporation Disk array device managing cache memory by dividing cache memory into a plurality of cache segments
JP2014067331A (ja) * 2012-09-27 2014-04-17 Kddi Corp 記憶装置、アクセスパターンの秘匿方法およびプログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999040516A1 (en) * 1998-02-04 1999-08-12 Hitachi, Ltd. Disk cache control method, disk array device, and storage device
US7281087B2 (en) 2002-10-17 2007-10-09 Nec Corporation Disk array device managing cache memory by dividing cache memory into a plurality of cache segments
JP2014067331A (ja) * 2012-09-27 2014-04-17 Kddi Corp 記憶装置、アクセスパターンの秘匿方法およびプログラム

Similar Documents

Publication Publication Date Title
US5448728A (en) Storage medium control system for controlling a write-once read-many storage medium
US6587915B1 (en) Flash memory having data blocks, spare blocks, a map block and a header block and a method for controlling the same
US7191306B2 (en) Flash memory, and flash memory access method and apparatus
JP5053552B2 (ja) 異種の非揮発性メモリを持つデータ記憶装置とその駆動方法
US6473842B1 (en) Virtual memory managing system for managing swap-outs by page units and a batch swap-out by task units
US5390315A (en) Allocation of uniform contiguous blocks of DASD storage by maintaining both a bit and a bit map record of available storage
JPH07175698A (ja) ファイルシステム
JPH0628257A (ja) キャッシュメモリ内のデータ交換方法
JP4186509B2 (ja) ディスクシステムとそのキャッシュ制御方法
US7752206B2 (en) Method and data processing system for managing a mass storage system
JP2655755B2 (ja) バッファ・メモリ管理方法,及び該方法を実施するためのコンピュータシステム
US7293144B2 (en) Cache management controller and method based on a minimum number of cache slots and priority
JPH08115263A (ja) メモリ装置
KR950033947A (ko) 프린터 및 캐시 메모리 공간 할당 방법
JP3112709B2 (ja) 追記型記憶媒体のアクセス装置
US4833603A (en) Apparatus and method for implementation of a page frame replacement algorithm in a data processing system having virtual memory addressing
JPH06214874A (ja) メモリ管理方式
JP3498021B2 (ja) メモリ制御方式
JP3020512B2 (ja) フアイルデータ管理方法
JPH09319658A (ja) 可変ページサイズのメモリ管理方式
JP3772003B2 (ja) メモリ管理システムおよびデータ管理方法
JPH05258585A (ja) ファイル装置
JPH0644139A (ja) ディスクキャッシュシステムおよびそのページ置き換え制御方法
JP2002132548A (ja) 記憶装置および方法
JP2000148587A (ja) 記憶装置および記憶領域の決定方法