JPH06231045A - Disk cache control system - Google Patents

Disk cache control system

Info

Publication number
JPH06231045A
JPH06231045A JP5018465A JP1846593A JPH06231045A JP H06231045 A JPH06231045 A JP H06231045A JP 5018465 A JP5018465 A JP 5018465A JP 1846593 A JP1846593 A JP 1846593A JP H06231045 A JPH06231045 A JP H06231045A
Authority
JP
Japan
Prior art keywords
data
disk device
cache
disk
cache memory
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
JP5018465A
Other languages
Japanese (ja)
Inventor
Kazuyuki Kaneko
和行 金子
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP5018465A priority Critical patent/JPH06231045A/en
Publication of JPH06231045A publication Critical patent/JPH06231045A/en
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

PURPOSE:To easily obtain the compatibility of data in cache memory with data in a disk device in a system in which the disk device is shared with plural hosts incorporated with the cache memory. CONSTITUTION:A first area 8 which stores the number of times of issuance of a reserve command which occupies the disk device at every disk device, a second area 9 which stores the number of times of issuance of the reserve command when access to data with the minimum access in the cache memory is performed, and a third area 5 which stores the number of times of issuance of the reserve command issued until that time at every data in an LRU link 4 in which all the data in the cache memory are arranged in sequence of access are provided at a cache managing table to manage disk cache.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】この発明はディスクキャッシュ制
御方式、特に2台以上のCPUがディスク装置を共有し
て用いる場合のキャッシュメモリのデータとディスク装
置のデータの整合をとるためのディスクキャッシュ制御
方式に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a disk cache control system, and more particularly to a disk cache control system for coordinating cache memory data and disk device data when two or more CPUs share a disk device. It is about.

【0002】[0002]

【従来の技術】図4はCPUを含む2台のホストがディ
スク装置を共有して用いるシステム構成を表わす図であ
り、図4において、1A,1BはCPU1a−1,1b
−1とディスク制御装置1a−2,1b−2とからなる
ホスト、1a−3,1b−3はそれぞれディスク制御装
置1a−2,1b−2内に設けられたキャッシュメモ
リ、2はホスト1A,1Bが共有するディスク装置であ
り、図示例は1つであるが、ホスト1A,1Bがそれぞ
れ複数個のディスク装置を共有することができる。
2. Description of the Related Art FIG. 4 is a diagram showing a system configuration in which two hosts including a CPU share a disk device and are used. In FIG. 4, 1A and 1B are CPUs 1a-1 and 1b.
-1 and a host consisting of disk control devices 1a-2 and 1b-2, 1a-3 and 1b-3 are cache memories provided in the disk control devices 1a-2 and 1b-2, 2 is a host 1A, 1B is a shared disk device, and the illustrated example is one, but the hosts 1A and 1B can each share a plurality of disk devices.

【0003】上記キャッシュメモリ1a−3,1b−3
は、ホスト1A,1Bがディスク装置2からデータをア
クセスする時にそのデータを格納する。通常、一度使用
されたデータは、近い将来に再び使用される可能性が高
いといわれており、以後のデータのアクセス時に、この
キャッシュメモリ1a−3,1b−3からデータがアク
セスできる場合が多くなる。また、このキャッシュメモ
リ1a−3,1b−3は、ディスク装置2よりかなり高
速にアクセスできるものなので、アクセスしたいデータ
がキャッシュメモリ1a−3,1b−3内にある時に
は、かなり高速にデータのアクセスができる。
The cache memories 1a-3 and 1b-3
Stores the data when the hosts 1A and 1B access the data from the disk device 2. Usually, it is said that once used data is likely to be used again in the near future, and in many cases, the data can be accessed from the cache memories 1a-3 and 1b-3 at the time of subsequent data access. Become. Further, since the cache memories 1a-3 and 1b-3 can be accessed much faster than the disk device 2, when the data to be accessed is in the cache memories 1a-3 and 1b-3, the data can be accessed at a considerably high speed. You can

【0004】図5は上記キャッシュメモリ1a−3,1
b−3において、LRU(Least Recentl
y Used)アルゴリズムを実現するためのLRUリ
ンク4を表わす図であり、キャッシュメモリ中のすべて
のデータがデータブロック4a〜4nにアクセス順に並
設されている。
FIG. 5 shows the above cache memories 1a-3,1.
b-3, LRU (Least Recent)
y Used) FIG. 4 is a diagram showing an LRU link 4 for implementing the algorithm, in which all data in the cache memory are arranged in parallel in data blocks 4a to 4n in the order of access.

【0005】ここで、ホスト1Aがディスク装置2を用
いる場合には、他のホスト1Bがこのディスク装置2を
使用できないよう自系専有とし(リザーブという)、使
用後は専有状態から解放する(リリースという)という
ように各ホスト1A,1Bがディスク装置2を排他的に
用いている。
Here, when the host 1A uses the disk device 2, the host 1B makes its own system so that another disk 1 cannot use the disk device 2 (referred to as reserve), and releases from the exclusive state after use (release). That is, each host 1A, 1B exclusively uses the disk device 2.

【0006】ホスト1Aのディスク制御装置1a−2が
キャッシュメモリ1a−3を内蔵する場合、このキャッ
シュメモリ1a−3はディスク装置2中のデータのコピ
ーを持っており、このキャッシュメモリを用いたLRU
アルゴリズム操作は次のように行なう。
When the disk controller 1a-2 of the host 1A has a cache memory 1a-3 built therein, this cache memory 1a-3 has a copy of the data in the disk device 2, and the LRU using this cache memory is used.
The algorithm operation is performed as follows.

【0007】読み出すデータがキャッシュメモリ1a−
3中に存在する場合(キャッシュヒット)には、ディス
ク装置2をアクセスせずにキャッシュメモリ1a−3の
データを用い、このデータがLRUリンク4の先頭のデ
ータブロックに移るようにポインタを更新する。データ
がキャッシュメモリ1a−3中に存在しない場合(キャ
ッシュミス)、ディスク装置2からデータを読み出す。
このときLRUリンク4の最後にあるデータブロックに
ディスク装置2から読み出したデータを上書きし、さら
にこのデータがLRUリンク4の先頭のデータブロック
に移るようポインタを更新する。
The data to be read is the cache memory 1a-
3 exists (cache hit), the data of the cache memory 1a-3 is used without accessing the disk device 2, and the pointer is updated so that this data moves to the first data block of the LRU link 4. . If the data does not exist in the cache memory 1a-3 (cache miss), the data is read from the disk device 2.
At this time, the data block at the end of the LRU link 4 is overwritten with the data read from the disk device 2, and the pointer is updated so that this data moves to the head data block of the LRU link 4.

【0008】また、ディスク装置2にデータを書き込む
場合、キャッシュヒットした際にはディスク装置2にデ
ータを書き込むとともにキャッシュメモリ1a−3にも
データを書き込む。さらにこのデータがLRUリンク4
の先頭のデータブロックに移るようポインタを更新す
る。キャッシュミスの場合にはキャッシュメモリ1a−
3に対する操作は行なわない。
When writing data to the disk device 2, when a cache hit occurs, the data is written to the disk device 2 and also to the cache memory 1a-3. Furthermore, this data is LRU link 4
Update the pointer to move to the first data block of. In the case of a cache miss, the cache memory 1a-
The operation for 3 is not performed.

【0009】このようにキャッシュヒットの場合には、
ディスク装置2にアクセスすることなく、キャッシュメ
モリ1a−3のデータを用いるため、他のホスト1Bが
ディスク装置2のデータを書き換えた後、同じアドレス
のデータをホスト1Aが読み出す場合、書き換えられた
ディスク装置2のデータではなく、このホスト1A内の
キャッシュメモリ1a−3のデータを読み出す。この場
合、ホスト1Aに転送されるデータとディスク装置2の
データが異なってしまうことになる。このためキャッシ
ュメモリ1a−3のデータとディスク装置2のデータの
整合性を保つため、ディスク装置2をリザーブする際
に、キャッシュメモリ1a−3中の該当するディスク装
置2のデータのコピーを保持している部分をすべて解放
し、リザーブ後、あるデータを最初に読み出す際には必
ずディスク装置2から読み出し、キャッシュメモリ1a
−3に格納するものとしていた。
In this way, in the case of a cache hit,
Since the data of the cache memory 1a-3 is used without accessing the disk device 2, when the host 1A reads the data of the same address after another host 1B rewrites the data of the disk device 2, the rewritten disk Instead of the data of the device 2, the data of the cache memory 1a-3 in this host 1A is read. In this case, the data transferred to the host 1A and the data in the disk device 2 will be different. Therefore, in order to maintain the consistency between the data in the cache memory 1a-3 and the data in the disk device 2, a copy of the data in the corresponding disk device 2 in the cache memory 1a-3 is retained when the disk device 2 is reserved. When the first read of a certain data after releasing all the reserved parts, it is always read from the disk device 2 and the cache memory 1a
It was supposed to be stored in -3.

【0010】そして、上記キャッシュメモリ1a−3中
からデータを解放する処理はLRUリンク4のデータブ
ロック4a〜4nを辿り、該当するディスク装置2に対
するデータであった場合には解放するという操作を繰り
返すことによって行なうものである。
In the process of releasing the data from the cache memory 1a-3, the data blocks 4a to 4n of the LRU link 4 are traced, and when the data is for the corresponding disk device 2, the operation of releasing the data is repeated. It is done by things.

【0011】[0011]

【発明が解決しようとする課題】従来のディスクキャッ
シュ制御方式は上記のように構成されているので、キャ
ッシュメモリ中からリザーブをしたディスク装置のデー
タを保持している部分の解放を行なうために、LRUリ
ンクのデータブロックをすべて辿らなければならず、L
RUリンクが大きい場合にはリザーブ処理を行なう度に
多くの処理時間を要するという問題点があった。
Since the conventional disk cache control system is constructed as described above, in order to release the portion holding the data of the reserved disk device from the cache memory, All the data blocks of the LRU link must be traversed,
When the RU link is large, there is a problem that a lot of processing time is required every time the reserve processing is performed.

【0012】本発明は上記のような問題点を解消するた
めになされたもので、請求項1の発明はキャッシュメモ
リのデータとディスク装置のデータとの整合を容易に保
ち、その整合のためのオーバヘッド時間を短縮すること
を目的とする。
The present invention has been made to solve the above-mentioned problems, and the invention of claim 1 easily maintains the matching between the data of the cache memory and the data of the disk device, and for the matching. The purpose is to reduce the overhead time.

【0013】請求項2の発明は上記整合のためのオーバ
ヘッド時間をより短縮することを目的とする。
It is an object of the invention of claim 2 to further reduce the overhead time for the matching.

【0014】[0014]

【課題を解決するための手段】請求項1記載の発明に係
るディスクキャッシュ制御方式は、ディスクキャッシュ
を管理するためのキャッシュ管理テーブル中に、前記デ
ィスク装置を占有するリザーブコマンドの発行回数をデ
ィスク装置毎に記憶する第1の領域と、キャッシュメモ
リ中に存在するデータの中で最もアクセスされていない
ものにアクセスした際のリザーブコマンドの発行回数を
ディスク装置毎に記憶する第2の領域と、前記キャッシ
ュメモリ中のすべてのデータをアクセス順に並べたLR
Uリンク中のデータ毎に、それまでに発行したリザーブ
コマンドの発行回数を記憶する第3の領域とを備えたも
のである。
According to a disk cache control method of a first aspect of the present invention, in a cache management table for managing a disk cache, the number of times a reserve command that occupies the disk device is issued is set to the disk device. A first area to be stored for each disk device; a second area to store the number of times a reserve command is issued when accessing the least accessed data in the cache memory for each disk device; LR in which all data in the cache memory are arranged in order of access
The third area is provided for storing the number of times the reserve command has been issued so far, for each piece of data in the U-link.

【0015】請求項2記載の発明に係るディスクキャッ
シュ制御方式は、ディスクキャッシュを管理するための
キャッシュ管理テーブル中に、前記ディスク装置を占有
するリザーブコマンドの発行回数をディスク装置毎に記
憶する第1の領域と、キャッシュメモリ中に存在するデ
ータの中で最もアクセスされていないものにアクセスし
た際のリザーブコマンドの発行回数をディスク装置毎に
記憶する第2の領域と、前記キャッシュメモリ中のデー
タをディスク装置毎にアクセス順に並べたサブLRUリ
ンク中のデータ毎に、それまでに発行したリザーブコマ
ンド発行回数を記憶する第3の領域とを備えたものであ
る。
According to a second aspect of the present invention, there is provided a disk cache control system in which a cache management table for managing a disk cache stores the number of times of issuing a reserve command occupying the disk device for each disk device. Area, a second area for storing, for each disk device, the number of times the reserve command is issued when accessing the least accessed data in the cache memory, and the data in the cache memory. A third area is provided for storing the number of times the reserve command has been issued so far, for each piece of data in the sub-LRU link arranged in the order of access for each disk device.

【0016】[0016]

【作用】請求項1記載の発明におけるディスクキャッシ
ュ制御方式は、前記リザーブコマンドの発行およびディ
スクアクセスの度にこれ等のリザーブコマンド発行回数
を更新し、キャッシュ管理テーブル中の第1の領域に記
憶されたリザーブコマンドの発行回数と、キャッシュメ
モリ中のすべてのデータをアクセス順に並べたLRUリ
ンク中のデータ毎に設けられた第3の領域に記憶したリ
ザーブコマンドの発行回数を比較することにより、前記
キャッシュメモリ中のデータが前記ディスク装置を専有
している状態において該ディスク装置から該キャッシュ
メモリに転送されたものか否かを判定することができ、
キャッシュメモリのデータとディスク装置のデータの整
合を容易に保つことができ、その整合のためのオーバヘ
ッド時間を短縮することができる。
According to the disk cache control method of the present invention, the number of times the reserve command is issued is updated each time the reserve command is issued and the disk is accessed and stored in the first area of the cache management table. By comparing the number of times of issuing the reserve command with the number of times of issuing the reserve command stored in the third area provided for each data in the LRU link in which all the data in the cache memory are arranged in the order of access, It is possible to determine whether or not the data in the memory is transferred from the disk device to the cache memory in the state where the data is exclusively used by the disk device,
The data in the cache memory and the data in the disk device can be easily matched, and the overhead time for the matching can be shortened.

【0017】請求項2記載の発明におけるディスクキャ
ッシュ制御方式は、前記リザーブコマンドの発行および
ディスクアクセスの度にこれ等のリザーブコマンド発行
回数を更新し、キャッシュ管理テーブル中の第1の領域
に記憶されたリザーブコマンドの発行回数と、キャッシ
ュメモリ中のデータをディスク装置毎にアクセス順に並
べたサブLRUリンク中のデータ毎に設けられた第3の
領域に記憶したリザーブコマンドの発行回数を比較する
ことにより、前記キャッシュメモリ中のデータが前記デ
ィスク装置を専有している状態において該ディスク装置
から該キャッシュメモリに転送されたものか否かを判定
することができ、キャッシュメモリのデータとディスク
装置のデータの整合を容易に保つことができるととも
に、リザーブ回数がオーバフローした場合およびキャッ
シュミスの場合の処理を簡略化して、オーバヘッド時間
をより短縮することができる。
According to a second aspect of the present invention, in the disk cache control method, the reserve command issuance times are updated each time the reserve command is issued and the disk is accessed, and the reserve command is stored in the first area of the cache management table. By comparing the number of times of issuing the reserve command with the number of times of issuing the reserve command stored in the third area provided for each data in the sub LRU link in which the data in the cache memory is arranged in the access order for each disk device. It is possible to determine whether or not the data in the cache memory has been transferred from the disk device to the cache memory in the state where the data is exclusively used in the disk device. Consistency can be maintained easily and the number of reserves If the overflows and a simplified process in case of a cache miss, it is possible to further reduce the overhead time.

【0018】[0018]

【実施例】【Example】

実施例1.以下、この発明の一実施例を図について説明
する。図1は例えばホスト1A,1BのCPU1a−
1,1b−1に設けられたディスクキャッシュ管理テー
ブルの構成を表わす図である。キャッシュメモリ中のす
べてのデータをアクセス順に並べたLRUリンク4は、
データが何回目のリザーブをした時点でキャッシュメモ
リ1a−3,1b−3に書き込まれたものかを示す第3
の領域としてのリザーブID(RID:Reserve
ID)5、キャッシュメモリ1a−3,1b−3中の
データが複数個あるディスク装置2のどのディスク装置
2のどのアドレスに対応するかを示すユニット番号・デ
ィスクアドレス6、LRUリンク4を構成するための前
方、後方ポインタ7とを有している。
Example 1. An embodiment of the present invention will be described below with reference to the drawings. FIG. 1 shows, for example, the CPU 1a-of the hosts 1A and 1B.
It is a figure showing the structure of the disk cache management table provided in 1, 1b-1. The LRU link 4, which arranges all the data in the cache memory in the order of access,
A third indication indicating at what time the data is reserved in the cache memories 1a-3 and 1b-3
Reserve ID (RID: Reserve)
ID) 5, a unit number / disk address 6 indicating which address of which disk device 2 of the disk device 2 having a plurality of data in the cache memories 1a-3 and 1b-3, and an LRU link 4 are configured. Front and rear pointers 7 for.

【0019】8はディスク装置2に対し行なったリザー
ブ回数(CRSV:CurrentReserve)を
ユニットつまりディスク装置毎に管理する第1の領域
(以下ではユニット番号をiとしたときCRSV〔i〕
と表わす)、9はキャッシュメモリ3中に存在するデー
タのうち最も古いものを書き込んだ際のリザーブ回数
(ORSV:Old Reserve)をユニット毎に
管理する第2の領域(以下ではユニット番号をiとした
ときORSV〔i〕と表わす)である。
Reference numeral 8 denotes a first area for managing the number of reserves (CRSV: Current Reserve) performed on the disk device 2 for each unit, that is, for each disk device (hereinafter, CRSV [i] when the unit number is i).
9 is a second area for managing the number of reserves (ORSV: Old Reserve) when writing the oldest data existing in the cache memory 3 for each unit (hereinafter, the unit number is i). It is expressed as ORSV [i] when done.

【0020】次にホスト1Aがディスク装置2からデー
タを読み出そうとした場合の動作を、図2のフローチャ
ート図について説明する。動作開始後、ST2−1にお
いてホスト1Aがユニット番号iのディスク装置2から
読み出そうとしたデータがキャッシュメモリ1a−3中
に存在するかどうか判定する。存在する場合(キャッシ
ュヒット)にはST2−2においてこのデータに対する
RID5とCRSV〔i〕8の値を比較する。
Next, the operation when the host 1A tries to read data from the disk device 2 will be described with reference to the flow chart of FIG. After the operation is started, in ST2-1, it is determined whether or not the data which the host 1A tried to read from the disk device 2 of the unit number i exists in the cache memory 1a-3. If it exists (cache hit), the values of RID5 and CRSV [i] 8 for this data are compared in ST2-2.

【0021】両者が一致しない場合には、このデータは
ディスク装置2をリザーブする前にキャッシュメモリ1
a−3に格納されたデータであるため、ST2−3にお
いてキャッシュメモリ1a−3中のデータは用いずに、
ディスク装置2から読み出したデータをホスト1Aに転
送するとともにキャッシュメモリ1a−3にもこのデー
タを上書きする。さらにST2−4において、RID5
の値をCRSV〔i〕の値とする。次いで、ST2−5
において、このデータがLRUリンク4の先頭のデータ
ブロックに移るように、LRUアルゴリズムによってポ
インタを更新する。また、上記ST2−2における比較
の結果、一致した場合には直ちにST2−5を実行す
る。
If the two do not match, this data is stored in the cache memory 1 before the disk device 2 is reserved.
Since the data is stored in a-3, the data in the cache memory 1a-3 is not used in ST2-3.
The data read from the disk device 2 is transferred to the host 1A and the cache memory 1a-3 is also overwritten with this data. Furthermore, in ST2-4, RID5
Is the value of CRSV [i]. Then ST2-5
At, the pointer is updated by the LRU algorithm so that this data moves to the first data block of the LRU link 4. Further, as a result of the comparison in ST2-2, if they match, ST2-5 is immediately executed.

【0022】上記ST2−1における判定の結果、N
O、つまり、キャッシュメモリ1a−3中にはデータが
存在しない場合(キャッシュミス)には、ST2−6に
おいて、LRUリンク4の最後尾のデータブロックを解
放し、フリーエリアとする。そして、ST2−7におい
て、LRUリンク4のデータブロックを最後尾から逆に
辿り、最初に見つかった同じユニットに対するデータの
RID5の値をORSV〔i〕9の値とする。さらにS
T2−8において、ディスク装置2からデータを読み出
しホスト1a−3に転送するとともに上記フリーエリア
にデータを格納し、しかる後上記ST2−4以降の処理
を行なう。
As a result of the judgment in ST2-1, N
If it is O, that is, if there is no data in the cache memory 1a-3 (cache miss), the last data block of the LRU link 4 is released in ST2-6 to make it a free area. Then, in ST2-7, the data block of the LRU link 4 is traced backward from the end, and the value of RID5 of the data for the same unit found first is set as the value of ORSV [i] 9. Furthermore S
At T2-8, the data is read from the disk device 2 and transferred to the host 1a-3, the data is stored in the free area, and then the processes from ST2-4 are performed.

【0023】ディスク装置2にデータを書き込む場合、
キャッシュヒットの場合にはディスク装置2、キャッシ
ュメモリ1a−3のどちらにもデータを書き込み、さら
にこのデータがLRUリンク4の先頭のデータブロック
に移るようポインタを更新し、この際、RID5の値を
CRSV〔i〕8の値とする。キャッシュミスの場合に
はディスク装置2にのみ書き込みキャッシュメモリ1a
−3はアクセスしない。
When writing data to the disk device 2,
In the case of a cache hit, the data is written to both the disk device 2 and the cache memory 1a-3, and the pointer is updated so that this data moves to the head data block of the LRU link 4. At this time, the value of RID5 is changed. The value is CRSV [i] 8. In the case of a cache miss, the write cache memory 1a is written only in the disk device 2.
-3 does not access.

【0024】ユニット番号iのディスク装置2をリザー
ブした場合には、CRSV〔i〕8の値に1を加える。
このとき、CRSV〔i〕8の値とORSV〔i〕9の
値が一致した場合、リザーブ回数がオーバフローしたこ
とを意味し、このときはLRUリンク4を最後尾のデー
タブロックから辿り、同じユニット番号iのデータでC
RSV〔i〕9の値に等しいRID5の値はすべて
「1」を減じておくことにより、このデータがアクセス
された場合にはキャッシュメモリ1a−3のデータでは
なくディスク装置2のデータを読み出すようにすること
ができる。
When the disk device 2 having the unit number i is reserved, 1 is added to the value of CRSV [i] 8.
At this time, if the value of CRSV [i] 8 and the value of ORSV [i] 9 match, it means that the number of reserves has overflowed. At this time, the LRU link 4 is traced from the last data block and the same unit is searched. C in the data of number i
The value of RID5 equal to the value of RSV [i] 9 is all decremented by "1" so that when this data is accessed, the data of the disk device 2 is read instead of the data of the cache memory 1a-3. Can be

【0025】実施例2.上記実施例では図3(a)に示
すように、ユニット番号0、ユニット番号1のディスク
装置2に対応するキャッシュメモリ中のすべてのデータ
をアクセス順に並べてLRUリンクを形成したが、この
他に図3(b),(c)に示すごとく、キャッシュメモ
リ中のデータをユニット番号0、ユニット番号1毎、つ
まりディスク装置毎にアクセス順に並べてサブLRUリ
ンク10,11を形成してもよい。この場合、上記リザ
ーブ時のCRSV〔i〕8の値とORSV〔i〕9の値
が一致した場合及びキャッシュミスの場合のORSV
〔i〕9の値の更新の際のLRUリンクを辿る操作が、
当該ユニット番号0またはユニット番号1のサブLRU
リンク10,11だけを辿れば良く、処理が簡略化され
てオーバヘッド時間をより短縮することができる。
Example 2. In the above embodiment, as shown in FIG. 3A, all the data in the cache memory corresponding to the disk device 2 with unit number 0 and unit number 1 are arranged in the access order to form the LRU link. As shown in 3 (b) and 3 (c), the data in the cache memory may be arranged in order of access for each unit number 0 and unit number 1, that is, for each disk device to form the sub LRU links 10 and 11. In this case, the ORSV when the value of CRSV [i] 8 and the value of ORSV [i] 9 at the time of the above-mentioned reserve match and when there is a cache miss
[I] The operation of following the LRU link when updating the value of 9 is
Sub LRU whose unit number is 0 or unit number 1
Only the links 10 and 11 need to be traced, the processing is simplified, and the overhead time can be further shortened.

【0026】実施例3.またキャッシュミスの場合、上
記実施例のようにLRUリンク4を辿ってORSV
〔i〕9の値を更新するのではなく、新たにLRUリン
ク4の最後尾となったデータのRID5の値をそのユニ
ットに対するORSV〔j〕9の値とすることによって
も同様の効果を奏する。なお、この場合LRUリンク4
を辿る操作は不要である。
Example 3. In the case of a cache miss, the ORSV is traced by following the LRU link 4 as in the above embodiment.
The same effect can be obtained by setting the value of RID5 of the data which is the last data of the LRU link 4 as the value of ORSV [j] 9 for the unit, instead of updating the value of [i] 9. . In this case, LRU link 4
The operation of tracing is unnecessary.

【0027】[0027]

【発明の効果】以上のように請求項1記載の発明によれ
ば、ディスクキャッシュを管理するためのキャッシュ管
理テーブル中に、前記ディスク装置を占有するリザーブ
コマンドの発行回数をディスク装置毎に記憶する第1の
領域と、キャッシュメモリ中に存在するデータの中で最
もアクセスされていないものにアクセスした際のリザー
ブコマンドの発行回数をディスク装置毎に記憶する第2
の領域と、前記キャッシュメモリ中のすべてのデータを
アクセス順に並べたLRUリンク中のデータ毎に、それ
までに発行したリザーブコマンドの発行回数を記憶する
第3の領域とを備え、前記リザーブコマンドの発行およ
びディスクアクセスの度にこれ等のリザーブコマンド発
行回数を更新し、前記第1の領域のリザーブコマンド発
行回数と前記第3の領域に記憶したリザーブコマンドの
発行回数の比較により、前記キャッシュメモリ中のデー
タが前記ディスク装置を専有している状態において該デ
ィスク装置から該キャッシュメモリに転送されたものか
否かを判定するように構成したので、キャッシュヒット
の際にキャッシュメモリ中のデータが有効か無効かを判
断でき、ディスク装置をリザーブする度にキャッシュメ
モリをフラッシュする必要がなく、キャッシュメモリの
データとディスク装置のデータをの整合を容易に保ち、
その整合のためのオーバヘッド時間を短縮できるという
効果がある。
As described above, according to the first aspect of the invention, the number of times of issuing reserve commands occupying the disk device is stored for each disk device in the cache management table for managing the disk cache. A first area and the number of times the reserve command is issued when accessing the least-accessed data in the cache memory is stored for each disk device
And a third area for storing the number of times the reserve command has been issued so far, for each data in the LRU link in which all the data in the cache memory are arranged in the order of access. These reserve command issuance counts are updated each time issuance and disk access are performed, and the reserve command issuance count in the first area is compared with the reserve command issuance count stored in the third area to compare the reserve command issuance count in the cache memory. Since it is configured to judge whether or not the data of the above is transferred to the cache memory from the disk device in the state where the disk device is occupied, whether the data in the cache memory is valid at the time of a cache hit. You can judge whether it is invalid and flush the cache memory every time you reserve the disk device No need, easily ensure the integrity of the data in the data and the disk device of the cache memory,
There is an effect that the overhead time for the matching can be shortened.

【0028】また、請求項2記載の発明によれば、ディ
スクキャッシュを管理するためのキャッシュ管理テーブ
ル中に、前記ディスク装置を占有するリザーブコマンド
の発行回数をディスク装置毎に記憶する第1の領域と、
キャッシュメモリ中に存在するデータの中で最もアクセ
スされていないものにアクセスした際のリザーブコマン
ドの発行回数をディスク装置毎に記憶する第2の領域
と、前記キャッシュメモリ中のデータをディスク装置毎
にアクセス順に並べたサブLRUリンク中のデータ毎
に、それまでに発行したリザーブコマンド発行回数を記
憶する第3の領域とを備え、前記リザーブコマンドの発
行およびディスクアクセスの度にこれ等のリザーブ回数
の更新を行い、前記第1の領域のリザーブコマンド発行
回数と前記第3の領域に記憶したリザーブコマンドの発
行回数の比較により、前記キャッシュメモリ中のデータ
が前記ディスク装置を専有している状態において該ディ
スク装置から該キャッシュメモリに転送されたものか否
かを判定するように構成したので、キャッシュヒットの
際にキャッシュメモリ中のデータが有効か無効かを判断
でき、ディスク装置をリザーブする度にキャッシュメモ
リをフラッシュする必要がなく、キャッシュメモリのデ
ータとディスク装置のデータとの整合を容易に保つとと
もにリザーブ回数がオーバフローした場合およびキャッ
シュミスの場合の処理をより簡略化してオーバヘッド時
間をより短縮できるという効果がある。
According to the second aspect of the invention, in the cache management table for managing the disk cache, the first area for storing the number of times of issuing the reserve command occupying the disk device for each disk device. When,
A second area for storing, for each disk device, the number of times the reserve command is issued when accessing the least accessed data in the cache memory, and the data in the cache memory for each disk device. A third area for storing the number of reserve command issuances issued so far for each piece of data in the sub-LRU link arranged in the order of access, and the number of reserve counts is issued each time the reserve command is issued and the disk is accessed. By updating and comparing the number of times of issuing the reserve command in the first area with the number of times of issuing the reserve command stored in the third area, it is possible to determine whether the data in the cache memory occupies the disk device. It is configured to determine whether the data is transferred from the disk device to the cache memory. Therefore, it is possible to judge whether the data in the cache memory is valid or invalid at the time of a cache hit, and it is not necessary to flush the cache memory every time the disk device is reserved, and the cache memory data and the disk device data can be matched. It is possible to easily maintain the above, and to simplify the processing when the number of reserves overflows or in the case of a cache miss, thereby shortening the overhead time.

【図面の簡単な説明】[Brief description of drawings]

【図1】ディスクキャッシュ管理テーブルの構成を表わ
す図である。
FIG. 1 is a diagram showing a configuration of a disk cache management table.

【図2】キャッシュヒット時のフローを表わす図であ
る。
FIG. 2 is a diagram showing a flow at the time of a cache hit.

【図3】LRUリンクおよびサブLRUリンクを表わす
図である。
FIG. 3 is a diagram representing LRU links and sub-LRU links.

【図4】システム構成を表わす図である。FIG. 4 is a diagram showing a system configuration.

【図5】LRUリンクを表わす図である。FIG. 5 is a diagram showing an LRU link.

【符号の説明】[Explanation of symbols]

1 ホスト 2 ディスク装置 4 LRUリンク 5 RID(領域) 6 ユニット番号・ディスクアドレス 7 前方、後方ポインタ 8 CRSV(領域) 9 ORSV(領域) 10 サブLRUリンク 11 サブLRUリンク 1 host 2 disk device 4 LRU link 5 RID (area) 6 unit number / disk address 7 forward and backward pointers 8 CRSV (area) 9 ORSV (area) 10 sub-LRU link 11 sub-LRU link

【手続補正書】[Procedure amendment]

【提出日】平成5年6月11日[Submission date] June 11, 1993

【手続補正1】[Procedure Amendment 1]

【補正対象書類名】明細書[Document name to be amended] Statement

【補正対象項目名】0021[Correction target item name] 0021

【補正方法】変更[Correction method] Change

【補正内容】[Correction content]

【0021】両者が一致しない場合には、このデータは
ディスク装置2をリザーブする前にキャッシュメモリ1
a−3に格納されたデータであるため、ST2−3にお
いてキャッシュメモリ1a−3中のデータは用いずに、
ディスク装置2から読み出したデータをホスト1Aに転
送するとともにキャッシュメモリ1a−3にもこのデー
タを上書きする。さらにST2−4において、RID5
の値をCRSV〔i〕の値とする。次いで、ST2−5
において、このデータがLRUリンク4の先頭のデータ
ブロックに移るように、LRUアルゴリズムによってポ
インタを更新する。また、上記ST2−2における比較
の結果、一致した場合にはST2−9においてキャッシ
ュメモリ1a−3からデータをホスト1Aに転送し、
T2−5を実行する。
If the two do not match, this data is stored in the cache memory 1 before the disk device 2 is reserved.
Since the data is stored in a-3, the data in the cache memory 1a-3 is not used in ST2-3.
The data read from the disk device 2 is transferred to the host 1A and the cache memory 1a-3 is also overwritten with this data. Furthermore, in ST2-4, RID5
Is the value of CRSV [i]. Then ST2-5
At, the pointer is updated by the LRU algorithm so that this data moves to the first data block of the LRU link 4. In addition, as a result of the comparison in ST2-2, if they match , the cache is transferred in ST2-9.
Data from the memory 1a-3 to the host 1A, and S
Execute T2-5.

【手続補正2】[Procedure Amendment 2]

【補正対象書類名】図面[Document name to be corrected] Drawing

【補正対象項目名】図2[Name of item to be corrected] Figure 2

【補正方法】変更[Correction method] Change

【補正内容】[Correction content]

【図2】 [Fig. 2]

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】 2台以上のCPUがディスク装置を共有
して用いる場合のディスクキャッシュ制御方式におい
て、ディスクキャッシュを管理するためのキャッシュ管
理テーブル中に、前記ディスク装置を占有するリザーブ
コマンドの発行回数をディスク装置毎に記憶する第1の
領域と、キャッシュメモリ中に存在するデータの中で最
もアクセスされていないものにアクセスした際のリザー
ブコマンドの発行回数をディスク装置毎に記憶する第2
の領域と、前記キャッシュメモリ中のすべてのデータを
アクセス順に並べたLRUリンク中のデータ毎に、それ
までに発行したリザーブコマンドの発行回数を記憶する
第3の領域とを備え、前記リザーブコマンドの発行およ
びディスクアクセスの度にこれ等のリザーブコマンド発
行回数を更新し、前記第1の領域に記憶したリザーブコ
マンド発行回数と前記第3の領域に記憶したリザーブコ
マンドの発行回数の比較により、前記キャッシュメモリ
中のデータが前記ディスク装置を専有している状態にお
いて該ディスク装置から該キャッシュメモリに転送され
たものか否かを判定することを特徴とするディスクキャ
ッシュ制御方式。
1. In a disk cache control method in which two or more CPUs share a disk device, the number of times a reserve command that occupies the disk device is issued in a cache management table for managing the disk cache. For each disk device, and a second area for storing, for each disk device, the number of times the reserve command is issued when accessing the least accessed data in the cache memory.
Area and a third area for storing the number of times the reserve command has been issued so far for each data in the LRU link in which all the data in the cache memory are arranged in the order of access. The number of reserve command issuances is updated each time issuance and disk access is performed, and the number of reserve command issuances stored in the first area is compared with the number of reserve command issuances stored in the third area to compare the cache A disk cache control method, wherein it is determined whether or not the data in the memory is transferred from the disk device to the cache memory in a state where the data is exclusively occupied by the disk device.
【請求項2】 2台以上のCPUがディスク装置を共有
して用いる場合のディスクキャッシュ制御方式におい
て、ディスクキャッシュを管理するためのキャッシュ管
理テーブル中に、前記ディスク装置を占有するリザーブ
コマンドの発行回数をディスク装置毎に記憶する第1の
領域と、キャッシュメモリ中に存在するデータの中で最
もアクセスされていないものにアクセスした際のリザー
ブコマンドの発行回数をディスク装置毎に記憶する第2
の領域と、前記キャッシュメモリ中のデータをディスク
装置毎にアクセス順に並べたサブLRUリンク中のデー
タ毎に、それまでに発行したリザーブコマンド発行回数
を記憶する第3の領域とを備え、前記リザーブコマンド
の発行およびディスクアクセスの度にこれ等のリザーブ
回数の更新を行い、前記第1の領域に記憶したリザーブ
コマンド発行回数と前記第3の領域に記憶したリザーブ
コマンドの発行回数の比較により、前記キャッシュメモ
リ中のデータが前記ディスク装置を専有している状態に
おいて該ディスク装置から該キャッシュメモリに転送さ
れたものか否かを判定することを特徴とするディスクキ
ャッシュ制御方式。
2. In a disk cache control method in the case where two or more CPUs share a disk device and use it, the number of times a reserve command that occupies the disk device is issued in a cache management table for managing the disk cache. For each disk device, and a second area for storing, for each disk device, the number of times the reserve command is issued when accessing the least accessed data in the cache memory.
And a third area for storing the number of times the reserve command has been issued so far, for each data in the sub-LRU link in which the data in the cache memory is arranged in the access order for each disk device. These reserve counts are updated each time a command is issued and a disk is accessed, and the reserve count issuance stored in the first area is compared with the reserve command issuance count stored in the third area. A disk cache control method, wherein it is determined whether or not the data in the cache memory is transferred from the disk device to the cache memory in a state where the data is exclusively occupied by the disk device.
JP5018465A 1993-02-05 1993-02-05 Disk cache control system Pending JPH06231045A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5018465A JPH06231045A (en) 1993-02-05 1993-02-05 Disk cache control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5018465A JPH06231045A (en) 1993-02-05 1993-02-05 Disk cache control system

Publications (1)

Publication Number Publication Date
JPH06231045A true JPH06231045A (en) 1994-08-19

Family

ID=11972391

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5018465A Pending JPH06231045A (en) 1993-02-05 1993-02-05 Disk cache control system

Country Status (1)

Country Link
JP (1) JPH06231045A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013129420A1 (en) * 2012-02-28 2013-09-06 株式会社シー・オー・コンヴ Network booting system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013129420A1 (en) * 2012-02-28 2013-09-06 株式会社シー・オー・コンヴ Network booting system
JP2013178683A (en) * 2012-02-28 2013-09-09 Co-Conv Kk Network boot system

Similar Documents

Publication Publication Date Title
CA1124888A (en) Integrated multilevel storage hierarchy for a data processing system with improved channel to memory write capability
US6119209A (en) Backup directory for a write cache
US20110173393A1 (en) Cache memory, memory system, and control method therefor
JPH1078918A (en) Check point processing accerelator and computer system to which the same device is applied
JPS5845611A (en) Peripheral memory system
CN108319430B (en) Method and device for processing IO (input/output) request
JP3236287B2 (en) Multiprocessor system
CA2182841C (en) Multi-processor system and method for synchronizing among processors
US7447856B2 (en) Copy engine and a method for data movement
JPH03225542A (en) Memory of data and processing circuit for bit encode data
US6507894B1 (en) Information processing apparatus and process
JP3009430B2 (en) Processor and cache memory control method thereof
US7213109B1 (en) System and method for providing speculative ownership of cached data based on history tracking
JPH06231045A (en) Disk cache control system
US7107404B2 (en) Method and system for data processing for controlling a cache memory
JPH0354649A (en) Buffer storage control system
US6381657B2 (en) Sharing list for multi-node DMA write operations
JP4131579B2 (en) Data management system and data management method
EP0604030A2 (en) Copy back cache tag memory
JPH0677240B2 (en) Cache memory control circuit
JPS59217284A (en) System controllr of data processor
JPH04296950A (en) Cache memory device
JPH0156411B2 (en)
JPH05342107A (en) Cache memory controller
JPH0148571B2 (en)