JP3457394B2 - Information storage device - Google Patents
Information storage deviceInfo
- Publication number
- JP3457394B2 JP3457394B2 JP22162994A JP22162994A JP3457394B2 JP 3457394 B2 JP3457394 B2 JP 3457394B2 JP 22162994 A JP22162994 A JP 22162994A JP 22162994 A JP22162994 A JP 22162994A JP 3457394 B2 JP3457394 B2 JP 3457394B2
- Authority
- JP
- Japan
- Prior art keywords
- cache
- block
- data
- failure
- information storage
- 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.)
- Expired - Fee Related
Links
- 230000015654 memory Effects 0.000 claims description 48
- 238000011084 recovery Methods 0.000 claims description 36
- 238000012545 processing Methods 0.000 claims description 26
- 230000008439 repair process Effects 0.000 claims description 17
- 238000001514 detection method Methods 0.000 claims 1
- 238000000034 method Methods 0.000 description 33
- 230000008569 process Effects 0.000 description 24
- 238000012546 transfer Methods 0.000 description 10
- 230000005856 abnormality Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 239000000872 buffer Substances 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 244000309464 bull Species 0.000 description 2
- 235000011835 quiches Nutrition 0.000 description 2
- 241000519695 Ilex integra Species 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000007429 general method Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Debugging And Monitoring (AREA)
Description
【0001】[0001]
【産業上の利用分野】本発明はダーティなデータのみを
二重化して信頼性を向上させ、クリーンなデータは二重
化しないで一重化するようにした情報記憶装置に関す
る。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an information storage device in which only dirty data is duplicated to improve reliability and clean data is unified without duplication.
【0002】[0002]
【従来の技術】従来、記憶装置の信頼性を向上するため
に記憶媒体を二重化し、もし片方の記録媒体に障害が発
生しても、データを失わないようにし、復旧処理によっ
て予備の記憶媒体に正常な記憶媒体からデータをコピー
し二重化を維持するものがある。2. Description of the Related Art Conventionally, in order to improve the reliability of a storage device, the storage medium is duplicated so that data is not lost even if a failure occurs in one of the storage media, and a spare storage medium is restored by a recovery process. There is one that copies data from a normal storage medium and maintains duplication.
【0003】特開平5−27918公報では、記憶媒体
上のファイルラベルと呼ぶ領域に、ファイルが二重化さ
れているか否かの情報を記録しておき、障害が発生した
場合に、二重化されているファイルに関しては復旧する
ものがある。しかし、この方法では障害が発生した場合
に二重化されていないファイルは失われてしまうという
問題がある。In Japanese Patent Laid-Open No. 5-27918, information on whether a file is duplicated is recorded in an area called a file label on a storage medium, and when a failure occurs, the duplicated file is recorded. There is something that will be restored. However, this method has a problem in that a file that has not been duplicated is lost when a failure occurs.
【0004】復旧処理に関しては、復旧処理中に通常の
アクセスを停止しないことを目的とし、復旧した箇所と
未復旧の箇所の境界という概念を用いて、復旧処理中に
アクセスが要求されたブロックについて復旧すべきか否
かを判定するもの(特開平5−35413号公報)や、
通常アクセスを停止せずさらに復旧時間の短縮を目的と
して、通常アクセスがライトの場合には、正常な記憶媒
体からデータを生成せずに直接予備記憶媒体に書き込む
もの(特開平5−88988公報)がある。Regarding the restoration processing, the purpose is not to stop normal access during the restoration processing, and the concept of the boundary between the restored portion and the unrestored portion is used, and a block for which access is requested during the restoration processing is performed. A method for determining whether or not to recover (Japanese Patent Laid-Open No. 5-35413),
For the purpose of further shortening the recovery time without stopping the normal access, when the normal access is a write, the data is directly written to the spare storage medium without generating the data from the normal storage medium (Japanese Patent Laid-Open No. 5-88988). There is.
【0005】また、容量の大きな低速な記憶媒体上のデ
ータを高速にアクセスする一般的な方法として、容量は
小さいが高速な記録媒体をキャッシュとして使用するも
のがある。キャッシュに対して、低速な媒体を二次記憶
と呼ぶ。ホストのアクセス頻度の高いデータをキャッシ
ュにコピーしておき、リード時では、キャッシュにデー
タがあれば(これをキャッシュにヒットすると呼ぶ)高
速のアクセスが可能である。ライト時ではキャッシュへ
データをライトした時点でホストに終了を通知し、ライ
トの速度を向上させる。このキャッシュ上のデータの状
態をダーティであると呼び、ホストに終了通知した後で
二次記憶にライトしておく。このデータのようにキャッ
シュのデータと二次記憶のデータの内容が等しいときの
デ−タの状態をクリーンと呼ぶ。As a general method for accessing data on a low-speed storage medium having a large capacity at a high speed, there is a method of using a high-speed recording medium having a small capacity as a cache. A medium that is slower than the cache is called secondary storage. Data that is frequently accessed by the host is copied to the cache, and at the time of reading, high-speed access is possible if there is data in the cache (this is called hitting the cache). At the time of writing, the host is notified of the end when the data is written to the cache, and the writing speed is improved. The state of the data on the cache is called dirty, and is written to the secondary storage after the host is notified of the end. The state of data when the contents of the cache data and the contents of the secondary storage are the same as this data is called clean.
【0006】[0006]
【発明が解決しようとする課題】しかし、キャッシュの
信頼性を向上するために二重化する場合には、次のよう
な問題がある。まず第1にキャッシュ内のデータを全て
二重化するとクリーンなデータも二重化され、二次記憶
にあるオリジナルのデータを合わせると三重化になって
しまい、余分なデータ領域をもつことになる。無駄を省
くためには、上述した特開平5−27918号公報のよ
うに二重化と非二重化ファイルの共存が必要であるが、
二重化されていないファイルのデータも復旧する必要が
ある。また、キャッシュではファイルよりも細かいブロ
ック単位での管理が要求される。However, when the cache is duplicated in order to improve its reliability, there are the following problems. First of all, if all the data in the cache is duplicated, the clean data is also duplicated, and if the original data in the secondary storage is combined, it becomes tripled, resulting in an extra data area. In order to reduce waste, it is necessary to coexist a duplicated file and a non-duplicated file as in the above-mentioned Japanese Patent Laid-Open No. 5-27918.
It is also necessary to recover the data of files that are not duplicated. Also, the cache requires management in block units smaller than files.
【0007】第2に、障害復旧中にアクセスを停止しな
い場合は、復旧処理をするデータの順番が、アクセス頻
度に関係ない場合、アクセス要求があってからデータを
復旧する可能性が高く、復旧に要する時間によってキャ
ッシュとしての効果が弱くなる。Secondly, if the access is not stopped during the recovery from the failure, and the order of the data to be recovered is not related to the access frequency, there is a high possibility that the data will be recovered after the access is requested. Depending on the time required for, the effect as a cache becomes weak.
【0008】また、障害にそなえて通常予備の記憶媒体
を用意して置く必要がある。さもないと障害が発生した
時点で、二重化の状態に復旧することができず、残った
キャッシュに障害が発生するとデータが失われる。つま
り、二重化と予備をあわせてキャッシュデータの3倍の
記憶量がキャッシュ用に必要になるという問題点があ
る。In addition, it is usually necessary to prepare and place a spare storage medium in case of a failure. Otherwise, at the time of failure, it will not be possible to recover to the duplicated state and data will be lost if the remaining cache fails. That is, there is a problem that a storage amount three times as large as the cache data is required for the cache for both the duplication and the backup.
【0009】本発明は上記の点に鑑みてなされたもの
で、その目的はダ−ティなデ−タのみキャッシュを二重
化し、クリ−ンなデ−タは二重化しないで一重化するよ
うにして小容量高速記憶媒体の領域を有効に利用するこ
とができる情報記憶装置を提供することにある。The present invention has been made in view of the above points, and an object of the present invention is to make a cache only a dirty data and to make a clean data a single one without duplication. An object of the present invention is to provide an information storage device that can effectively use the area of a small-capacity high-speed storage medium.
【0010】[0010]
【0011】[0011]
【課題を解決するための手段】請求項1に係わる情報記
憶装置は、外部装置からのデ−タを記憶する情報記憶媒
体と、この情報記憶媒体のキャッシュとして用いられる
第1乃至第3のキャッシュメモリと、前記第1及び第2
のキャッシュメモリにデ−タを記憶する際に、前記情報
記憶媒体からのデ−タは、前記第1及び第2のキャッシ
ュメモリの内の1つのキャッシュメモリに記憶する第1
の処理手段と、前記第1及び第2のキャッシュメモリに
デ−タを記憶する際に、前記外部装置からのデ−タは、
前記第1及び第2のキャッシュメモリに同一のデ−タを
記憶する第2の処理手段と、前記第1及び第2のキャッ
シュメモリの内の1つのキャッシュメモリに障害が発生
したことを検知する検知手段と、前記検知手段によって
キャッシュメモリに障害が発生したことが検知された場
合に、障害が発生したキャッシュメモリに記憶されてい
るデ−タの内で、前記情報記憶媒体からのデ−タは、前
記情報記録媒体から再度読出してデ−タを前記第3のキ
ャッシュメモリに記憶させ、前記外部装置からのデ−タ
は、障害が発生していないキャッシュメモリに記憶され
ている同一デ−タを第3のキャッシュメモリに記憶させ
る第3の処理手段とを具備したことを特徴とする。An information storage device according to a first aspect of the present invention is an information storage medium for storing data from an external device , and first to third caches used as caches for the information storage medium. A memory, and the first and second
When data is stored in the first cache memory, the data from the information storage medium is first stored in one of the first and second cache memories.
And the data from the external device when storing the data in the first and second cache memories.
It is detected that a failure has occurred in the second processing means for storing the same data in the first and second cache memories and in one of the first and second cache memories. The detecting means and, when the detecting means detects that a failure has occurred in the cache memory, among the data stored in the failed cache memory, the data from the information storage medium. Reads the data from the information recording medium again and stores the data in the third cache memory, and the data from the external device is the same data stored in the cache memory in which no failure has occurred. Data is stored in a third cache memory.
【0012】請求項2に係わる情報記憶装置は、請求項
1記載の情報記憶装置において、前記障害が発生したキ
ャッシュメモリのデ−タをブロック単位で前記第3のキ
ャッシュメモリに復旧する復旧手段と、前記ブロックを
アクセス頻度の順番に並べたリストと、このリストを作
成する手段とを具備し、前記復旧手段は前記リストを参
照してアクセス頻度の高いブロックから復旧することを
特徴とする。[0012] Information storage apparatus according to claim 2, claim
The information storage device according 1, data of the cache memory where the failure has occurred - a recovery unit to recover the data in the third cache memory in blocks, and ordered list of the blocks in the order of access frequency, the and means for creating a list, said recovery means is characterized by recovering a high block access frequency by referring to the list.
【0013】請求項3に係わる情報記憶装置は、請求項
1記載の情報記憶装置において、前記障害が発生したキ
ャッシュメモリのデ−タをブロック単位で前記第3のキ
ャッシュメモリに復旧する復旧手段を有し、前記復旧手
段はクリーンデータの修復をダーティデータの修復より
も優先させることを特徴とする。[0013] Information storage apparatus according to claim 3, claim
1. The information storage device according to 1, further comprising a recovery unit for recovering the data of the cache memory in which the failure has occurred to the third cache memory in block units, and the recovery unit restores clean data from dirty data. wherein the Ru prioritize than repair.
【0014】請求項4に係わる情報記憶装置は、請求項
1記載の情報記憶装置において、前記障害が発生したキ
ャッシュメモリのデータをブロック単位で前記第3のキ
ャッシュメモリに復旧する復旧手段を有し、前記復旧手
段はダーティデータの修復をクリーンデータの修復より
も優先させることを特徴とする[0014] Information storage apparatus according to claim 4, claim
The information storage device according to 1, having a recovery means for recovering the data of the key <br/> Yasshu memory where the failure has occurred in the third cache memory in blocks, said recovery means of the dirty data recovery Than repairing clean data
Is also characterized by prioritizing
【0015】[0015]
【0016】[0016]
【0017】[0017]
【作用】請求項1において、外部装置からのデ−タを記
憶する情報記憶媒体のキャッシュとして用いられる第1
及び第2のキャッシュメモリにデ−タを記憶する際に、
第1の処理手段により情報記憶媒体からのデ−タは、前
記第1及び第2のキャッシュメモリの内の1つのキャッ
シュメモリに記憶させるようにし、第1及び第2のキャ
ッシュメモリにデ−タを記憶する際に、第2の処理手段
により外部装置からのデ−タは、前記第1及び第2のキ
ャッシュメモリに同一のデ−タを記憶させ、キャッシュ
メモリに障害が発生したことが検知された場合に、第3
の処理手段により障害が発生したキャッシュメモリに記
憶されているデ−タの内で、情報記憶媒体からのデ−タ
は、情報記録媒体から再度読出してデ−タを第3のキャ
ッシュメモリに記憶させ、外部装置からのデ−タは、障
害が発生していないキャッシュメモリに記憶されている
同一デ−タを第3のキャッシュメモリに記憶させるよう
にしている。According to a first aspect of the present invention, the first information storage medium is used as a cache for storing data from an external device.
And when storing data in the second cache memory,
The data from the information storage medium is stored in one of the first and second cache memories by the first processing means, and the data is stored in the first and second cache memories. When storing the data, the second processing means stores the same data in the first and second cache memories, and detects that the cache memory has failed. If the third
Among the data stored in the cache memory in which the failure has occurred by the processing means, the data from the information storage medium is read again from the information recording medium and the data is stored in the third cache memory. As the data from the external device, the same data stored in the cache memory in which no failure has occurred is stored in the third cache memory.
【0018】請求項2において、第3のキャッシュメモ
リへのデ−タの復旧はアクセス頻度の高いブロックから
復旧するようにしている。請求項3において、復旧手段
はクリーンデータの修復を、ダーティデータの修復より
も優先させるようにしている。According to the second aspect of the present invention, the restoration of the data to the third cache memory is performed from the block having a high access frequency. In claim 3 , the restoration means gives priority to the restoration of clean data over the restoration of dirty data.
【0019】請求項4において、復旧手段はダーティデ
ータの修復を、クリーンデータの修復よりも優先させる
ようにしている。In claim 4 , the restoration means gives priority to the restoration of dirty data over the restoration of clean data .
【0020】[0020]
【実施例】以下図面を参照して本発明の一実施例に係わ
る情報記憶装置について説明する。図1は情報記憶装置
のシステム構成図である。図1において、1 は本発明装
置が接続されるホスト(図示しない)とのデータの交換
を行うホストI/O(入出力)部である。このI/O部
1 内にはホストとのリ−ドあるいはライトデ−タを一時
記憶しておくバッファ2 が設けられている。DESCRIPTION OF THE PREFERRED EMBODIMENTS An information storage device according to an embodiment of the present invention will be described below with reference to the drawings. FIG. 1 is a system configuration diagram of an information storage device. In FIG. 1, reference numeral 1 is a host I / O (input / output) unit for exchanging data with a host (not shown) to which the device of the present invention is connected. This I / O department
A buffer 2 is provided in 1 for temporarily storing the read or write data with the host.
【0021】また、3 は三つの磁気記憶ディスクのよう
な高速の記憶媒体のキャッシュ3a,3b,3cからなるデータ
キャッシュ部である。ここで、キャッシュ3a,3b,3cにそ
れぞれキャッシュ番号0 ,1 ,2 を付する。Further, 3 is a data cache unit comprising caches 3a, 3b, 3c of a high speed storage medium such as three magnetic storage disks. Here, cache numbers 0, 1, and 2 are assigned to the caches 3a, 3b, and 3c, respectively.
【0022】また、4 はMOのような低速大容量媒体を
複数使い、データに冗長コードをつけ加えて信頼性を向
上させた高信頼低速大容量記憶装置しての二次記憶装置
である。ここで、MOにはメディア番号が付けられてお
り、二次記憶装置4 のブロックアドレスは上位がメディ
ア番号を意味し、下位がメディア内のブロックアドレス
を表すようになっている。そして、ホストがアクセスす
る際は、この二次記憶装置4 のブロックアドレスによっ
て指定する。また、この実施例では、二次記憶装置4 の
ブロックサイズとキャッシュのブロックサイズを等しい
としているが、一方が他方の正数倍になっていても問題
はない。Reference numeral 4 is a secondary storage device as a highly reliable low-speed large-capacity storage device in which a plurality of low-speed large-capacity media such as MO are used and a redundant code is added to data to improve reliability. Here, a media number is attached to the MO, and the block address of the secondary storage device 4 is such that the higher order means the media number and the lower order shows the block address in the medium. Then, when the host makes an access, it is designated by the block address of the secondary storage device 4. Further, in this embodiment, the block size of the secondary storage device 4 and the block size of the cache are the same, but there is no problem if one is a positive multiple of the other.
【0023】また、6 は本装置を統括して制御する制御
部である。この制御部6 は、CPU7 、ROM8 、RA
M9 、管理テーブル10、カウンタ11、キャッシュステー
タステーブル12、修復モード13、障害発生フラグ14から
構成される。Further, reference numeral 6 is a control unit for integrally controlling this apparatus. The control unit 6 includes a CPU 7, ROM8, RA
It comprises M9, a management table 10, a counter 11, a cache status table 12, a repair mode 13, and a failure occurrence flag 14.
【0024】制御部6 はホストI/O部1 からコマンド
の読み出し、ホストI/O部1 とキャッシュ3 と二次記
憶装置4 の3者間のデータ転送、キャッシュ3 の管理、
キャッシュ3 の障害復旧処理を行なう。The control unit 6 reads commands from the host I / O unit 1, transfers data between the host I / O unit 1, the cache 3 and the secondary storage device 4, manages the cache 3,
Performs failure recovery processing for cache 3.
【0025】CPU7 はROM8 に記憶されているプロ
グラムを実行し、装置全体の制御を行う。RAM9 はプ
ログラムを実行させるための領域である。管理テーブル
10はキャッシュ3 を管理するためのテーブル(管理テー
ブル番号0と管理テーブル番号1の二つのテーブルから
なる)である。カウンタ11は各キャッシュ3a,3b,3cへ
のアクセスの回数を計数するカウンタである。キャッシ
ュステータステーブル12は各キャッシュ3a,3b,3cの状
態を格納するテ−ブルである。修復モード記憶部13
は、設定された3つの修復モ−ド(信頼性重視・性能重
視・自動)を記憶しておくメモリ領域である。The CPU 7 executes a program stored in the ROM 8 and controls the entire device. RAM9 is an area for executing a program. Management table
Reference numeral 10 is a table for managing the cache 3 (consisting of two tables of management table number 0 and management table number 1). The counter 11 is a counter that counts the number of accesses to each cache 3a, 3b, 3c. The cache status table 12 is a table for storing the states of the caches 3a, 3b, 3c. Repair mode storage unit 13
Is a memory area for storing the three set repair modes (reliability-oriented, performance-oriented, and automatic).
【0026】なお、管理テーブル10、カウンタ11、キ
ャッシュステータステーブル12、修復モード13、障害発
生フラグ14はバッテリ15 でバックアップされたNVM
(Nonvolatile Memory )上のある。The management table 10, the counter 11, the cache status table 12, the repair mode 13, and the failure flag 14 are the NVM backed up by the battery 15.
There is on (Nonvolatile Memory).
【0027】次に、図2を参照してキャッシュステータ
ステーブル12について詳細に説明する。このキャッシュ
ステータステ−ブル12は各キャッシュ3a,3b,3c毎に管
理テーブル番号22、フェーズ23、モード24を備えてい
る。Next, the cache status table 12 will be described in detail with reference to FIG. The cache status table 12 has a management table number 22, a phase 23 and a mode 24 for each of the caches 3a, 3b and 3c.
【0028】まず、管理テーブル番号22は、キャッシュ
3a,3b,3cの情報を格納して管理している管理テーブル
の番号を表す。フェーズ22は『使用中・故障中・スタン
バイ・復旧中・キャッシュ無し』の5つのキャッシュ3
a,3b,3cの状態をとる。ここで、『使用中』とは対応
する媒体がキャッシュとして使用されていること、『故
障中』とは媒体に障害が発生し使用を停止しているこ
と、『スタンバイ』とは障害復旧用であり使用を停止し
ていること、『復旧中』とはリザーブ状態から故障中の
キャッシュの交替をするためにデータを復旧しているこ
と(復旧が終了すれば使用中に遷移する)、『キャッシ
ュ無し』とは故障中の媒体を交換しているような場合で
システムに対応する媒体がないことをそれぞれ示す。First, the management table number 22 is the cache
Indicates the number of the management table that stores and manages the information of 3a, 3b, and 3c. Phase 22 has 5 caches: "in use, out of order, standby, recovering, no cache" 3
Takes the states of a, 3b, and 3c. Here, "in use" means that the corresponding medium is used as a cache, "in failure" means that the medium has a failure and is not in use, and "standby" means that it is for failure recovery. Yes Usage is stopped, "Recovering" means that data is being recovered to replace the failed cache from the reserved state (transition to in-use when recovery is complete), "Cache" “None” indicates that there is no medium corresponding to the system when the medium in failure is being replaced.
【0029】モード24には『クリーンオンリ・ダーティ
オンリ・混在・使用禁止』の4つモ−ドがある。ここ
で、『クリーンオンリ』とはクリーンなデータ(キャッ
シュに障害が発生しても二次記憶からデータを復旧でき
る)のみを格納すること、『ダーティオンリ』とはダー
ティなデータ(キャッシュに障害が発生した場合には、
二次記憶からデータを復旧することはできないので、別
のキャッシュにそのデータをバックアップ(二重化)し
ておく必要がある)のみを格納すること、『混在』とは
その両者を格納することを示している。The mode 24 has four modes of "clean only, dirty only, mixed, prohibited use". Here, "clean only" means storing only clean data (data can be restored from secondary storage even if a cache failure occurs), and "dirty only" means dirty data (when the cache fails. If it happens,
Since data cannot be recovered from secondary storage, it is necessary to store only that data in another cache (duplication), and "mixed" means to store both. ing.
【0030】同じ管理テーブル番号をもつキャッシュの
フェーズが両方とも使用中である場合、その二つのキャ
ッシュは全て二重化されており、同一ブロックアドレス
のブロックでデータの二重化を行う(従来からある二重
化と同じである)。When both phases of the cache having the same management table number are in use, the two caches are all duplicated, and the data of the block having the same block address is duplicated (same as the conventional duplicated). Is).
【0031】使用中のキャッシュが二つあっても異なる
管理テーブル番号を有しているならば、これらのキャッ
シュ上のデータ全てが二重化されているわけではなく、
各ブロック単位で二重化しているブロックと二重化して
いないブロックが混在している。If two caches in use have different management table numbers, not all the data on these caches are duplicated,
Blocks that are duplicated and blocks that are not duplicated coexist in each block.
【0032】また、フェーズ23が『復旧中』または『リ
ザーブ』の記憶媒体をリザーブキャッシュと呼ぶことに
する。図2のキャッシュステ−タステ−ブルによれば、
キャッシュ番号0のキャッシュ3aは、管理テーブル0に
管理され、『混在』モードであり、媒体に異常ない。A storage medium whose phase 23 is "restoring" or "reserved" is called a reserve cache. According to the cache status table of FIG.
The cache 3a with the cache number 0 is managed by the management table 0, is in the "mixed" mode, and has no abnormality in the medium.
【0033】また、キッシュ番号1番のキャッシュ3bは
管理テーブル1に管理され、『混在』モードであり、媒
体に異常ない。次に、図3を参照して管理テ−ブル10に
ついて詳細に説明する。管理テーブル10は管理テーブル
番号が0の管理テーブル30a と管理テーブル番号が1の
管理テーブル30b の2つからなる。管理テーブル10の一
つの段が一つのキャッシュのブロックに対応し、ブロッ
クアドレスの順番に並べられている。これによって、ブ
ロックアドレスと管理テーブル内の段が対応づけられて
いる。Further, the cache 3b having the quiche number 1 is managed by the management table 1, is in the "mixed" mode, and there is no abnormality in the medium. Next, the management table 10 will be described in detail with reference to FIG. The management table 10 is composed of two management tables, a management table 30a having a management table number of 0 and a management table 30b having a management table number of 1. One stage of the management table 10 corresponds to one cache block and is arranged in the order of block addresses. As a result, the block address is associated with the stage in the management table.
【0034】二次記憶ブロックアドレス31は、キャッシ
ュのデータを二次記憶装置4 へ格納するときの二次記憶
装置4 上のアドレスである。ここで、二次記憶ブロック
アドレスが『−1』の場合は、この段に対応するブロッ
クアドレスのキャッシュブロックが使用されていないこ
と(空きブロックと呼ぶ)を示している。なお、初期化
時はテーブル内の全ての二次記憶ブロックアドレス31は
『−1』にされている。The secondary storage block address 31 is an address on the secondary storage device 4 when storing cache data in the secondary storage device 4. Here, when the secondary storage block address is "-1", it indicates that the cache block of the block address corresponding to this stage is not used (called an empty block). At the time of initialization, all the secondary storage block addresses 31 in the table are set to "-1".
【0035】また、バックアップブロックアドレス32
は、二重化ブロックでない場合には『−1』を格納し、
二重化ブロックの場合は、二重化した相手のブロックの
ブロックアドレスを格納している。なお、キャッシュ方
式ではキャッシュ上のデータがクリーンなデータである
か、ダーティなデータであるかを管理する必要がある
が、本発明では、クリーンなブロックは二重化せずダー
ティなブロックは必ず二重化するので、この管理テーブ
ルのバックアップブロックアドレス32によって、その管
理ができる。The backup block address 32
Stores "-1" if it is not a duplicated block,
In the case of a duplicated block, the block address of the duplicated partner block is stored. In the cache method, it is necessary to manage whether the data on the cache is clean data or dirty data.However, in the present invention, clean blocks are not duplicated and dirty blocks are always duplicated. By the backup block address 32 of this management table, it can be managed.
【0036】また、ダーティブロックがキャッシュアウ
トされる場合は、二次記憶装置4 にこのブロックのデー
タをコピーする必要があるが、クリーンブロックがキャ
ッシュアウトされる場合には二次記憶装置4 にそのブロ
ックと同じデータが残っているのでコピーする必要はな
い。When the dirty block is cached out, the data of this block needs to be copied to the secondary storage device 4, but when the clean block is cached out, the data is copied to the secondary storage device 4. Since the same data as the block remains, there is no need to copy it.
【0037】また、アクセス頻度リスト34は全てのキャ
ッシュ上のデータをアクセス頻度の高い順番つなげるも
ので、前接続ブロック33が順番が一つ前の(アクセス頻
度が高い)ブロックを管理している管理テーブルの管理
テーブル番号33a とブロックアドレス33b を表し、後接
続ブロック34が順番が一つ後の(アクセス頻度が低い)
ブロックを管理している管理テーブルの管理テーブル番
号34a とブロックアドレス34b を表す。ここで、キャッ
シュアウトするブロックはアクセス頻度の低い順番に選
ぶ。この実施例ではアクセス頻度にLRU(Least Rece
ntly Used )を使用している。LRUはアクセスされた
時刻の最も古いブロックがアクセス頻度の低いものであ
るとする方式である。Further, the access frequency list 34 connects all the data on the caches in the order of high access frequency, and the previous connection block 33 manages the block one order before (the access frequency is high). The table management table number 33a and block address 33b are shown, and the post-connection block 34 is one after the other (access frequency is low).
It represents the management table number 34a and the block address 34b of the management table that manages the block. Here, the blocks to be cashed out are selected in the order of low access frequency. In this embodiment, the access frequency is set to LRU (Least Rece
ntly Used) is used. LRU is a method in which the block with the oldest access time is the one with a low access frequency.
【0038】また、ステータス36は、『データ無効』
(キャッシュの障害が発生してデータが無効である)、
『二重化データ無効』(対応する二重化したブロックに
障害)、、『異常無し』の三つの値をとる。The status 36 is "data invalid".
(Data is invalid due to cache failure),
It takes three values: "redundant data invalid" (failure in the corresponding duplicated block) and "no error".
【0039】次に、図4を参照してアクセス頻度リスト
情報40について詳細に説明する。図4において、アクセ
ス頻度リスト情報40はアクセス頻度の先頭つまりアクセ
ス頻度が最も高いブロックのテーブル番号とブロックア
ドレスをアクセス頻度リスト先頭ブロック番号41を格納
すると共に、リストの末尾つまりアクセス頻度が最も低
いブロックのテーブル番号とブロックアドレスをアクセ
ス頻度末尾ブロック番号42を格納する。なお、初期化時
にはアクセス頻度リスト先頭ブロック番号41及びアクセ
ス頻度末尾ブロック番号42には『−1』が格納されてい
る。(−1であることはキャッシュ上にデータがない場
合である。)
次に、図3の管理テ−ブル(テ−ブル番号0)、管理テ
−ブル(テ−ブル番号1)で示される具体的内容につい
て説明する。前述したように、キャッシュステータステ
ーブル12によって、テーブル番号0の管理テーブルとテ
ーブル番号1の管理テーブルは、それぞれキャッシュ0
とキャッシュ1に対応したテ−ブルである。管理テーブ
ルが管理するキャッシュは1つずつであるので、二重化
した場合は、キャッシュ0とキャッシュ1内のブロック
で二重化される。Next, the access frequency list information 40 will be described in detail with reference to FIG. In FIG. 4, the access frequency list information 40 stores the table number and the block address of the head of the access frequency, that is, the block with the highest access frequency, and the access block number 41, which is the head of the access frequency list. The table number and block address of the access frequency end block number 42 are stored. At the time of initialization, “−1” is stored in the access frequency list top block number 41 and the access frequency end block number 42. (It is -1 when there is no data in the cache.) Next, the management table (table number 0) and the management table (table number 1) in FIG. 3 are shown. The specific content will be described. As described above, according to the cache status table 12, the management table with the table number 0 and the management table with the table number 1 are cache 0 respectively.
And a table corresponding to cache 1. Since the management table manages one cache at a time, when duplicated, the blocks in cache 0 and cache 1 are duplicated.
【0040】管理テ−ブル30aによれば、キャッシュ0
のブロックアドレス5のブロックは、メディア番号0の
メディアのブロックアドレス100に格納されるデータ
であり、バックアップブロックアドレスが『−1』であ
るので、二重化ブロックではなく、異常はない。さら
に、キャッシュ0のブロックアドレス10のブロック
は、メディア番号1のメディアのブロックアドレス20
に格納されるデータであり、二重化されたブロックがも
う一方のテーブルに対応するキャッシュ1のブロックア
ドレス30のブロックであり、異常はない。さらに、キ
ャッシュ0のブロックアドレス50のブロックは、メデ
ィア番号4のブロックアドレス15に格納されるデータ
であり、二重化ブロックではなく、異常はない。According to the management table 30a, the cache 0
The block having the block address 5 is the data stored in the block address 100 of the medium having the medium number 0, and the backup block address is "-1". Therefore, it is not a duplicated block and there is no abnormality. Further, the block with the block address 10 of the cache 0 is the block address 20 of the medium with the media number 1.
The data that is stored in the second block is the block of the block address 30 of the cache 1 corresponding to the other table, and there is no abnormality. Further, the block of the block address 50 of the cache 0 is the data stored in the block address 15 of the media number 4, is not a duplicated block, and has no abnormality.
【0041】また、管理テ−ブル30b によれば、キャッ
シュ1のブロックアドレス10のブロックは、メディア
番号2のブロックアドレス10に格納されるデータであ
り、二重化ブロックではなく、異常はない。さらに、キ
ャッシュ1のブロックアドレス30のブロックは、メデ
ィア番号1のメディアのブロックアドレス20のブロッ
クに格納されるデータであり、二重化されたブロックが
もう一方のテーブルに対応するキャッシュ0のブロック
アドレス10のブロックであり、異常はない。According to the management table 30b, the block of the block address 10 of the cache 1 is the data stored in the block address 10 of the medium number 2, is not a duplicated block, and has no abnormality. Further, the block of the block address 30 of the cache 1 is the data stored in the block of the block address 20 of the medium of the medium number 1, and the duplicated block of the block address 10 of the cache 0 corresponding to the other table. It is a block and there is no abnormality.
【0042】アクセス頻度の高いブロックを順番になら
べると、図4のアクセス頻度リスト情報40及び管理テ−
ブル30a ,30b より、キャッシュ0のブロックアドレス
5のブロック→キャッシュ1のブロックアドレス10の
ブロック→キャッシュ0のブロックアドレス10のブロ
ック→キャッシュ0のブロックアドレス100のブロッ
ク→……キャッシュ0のブロックアドレス400のブロ
ック→キャッシュ0のブロックアドレス50のブロック
になる。つまり、キャッシュからブロックを追い出す場
合には、アクセス頻度末尾ブロック番号42のテ−ブル番
号及びブロックアドレスで示されたキャッシュ0のブロ
ックアドレス50のブロックが最初に追い出される。When the blocks with high access frequency are arranged in order, the access frequency list information 40 and management table shown in FIG.
From blocks 30a and 30b, block of block address 5 of cache 0 → block of block address 10 of cache 1 → block of block address 10 of cache 0 → block of block address 100 of cache 0 → ... block address of cache 0 400 Block → the block of cache 0 has a block address of 50. That is, when a block is flushed from the cache, the block of the block address 50 of the cache 0 indicated by the table number of the access frequency end block number 42 and the block address is flushed first.
【0043】次に、上記のように構成された本発明の一
実施例の動作について説明する。以下、『リ−ド』、
『ライト』、『障害発生時の処理』、『ブロックの復
旧』、『復旧』処理について図5乃至図10を参照して
説明する。Next, the operation of the embodiment of the present invention constructed as above will be described. Below, "Lead",
The "write", "processing at the time of failure", "block recovery", and "recovery" processing will be described with reference to FIGS.
【0044】まず、二次記憶装置4 からのデ−タのリ−
ド(読み出し)処理について説明する。本記憶装置が接
続されているホスト(図示しない)はホストI/O部1
にリードコマンドをおくることによって、リード処理が
開始される。リードコマンドには、読み出すデータの先
頭ブロックの二次記憶ブロックアドレス及びデータの長
さ(ブロック単位)が含まれている。このコマンドを受
けると、ホストI/O部1 は、制御部6 にコマンドあり
の信号を送り、制御部6 はリ−ドコマンドをI/O部か
ら受信する(ST501)。First, the data read from the secondary storage device 4 is read.
The read (read) processing will be described. The host (not shown) to which this storage device is connected is the host I / O unit 1
The read process is started by sending a read command to the. The read command includes the secondary storage block address of the first block of the data to be read and the data length (block unit). Upon receiving this command, the host I / O unit 1 sends a signal with a command to the control unit 6, and the control unit 6 receives the read command from the I / O unit (ST501).
【0045】そして、制御部6 は受信した先頭のブロッ
クの二次記憶ブロックアドレスを取り出し読み出しブロ
ックアドレスとしてRAM9 に記憶し、先頭ブロックア
ドレスにデータの長さを加え最終ブロックアドレスを求
めてRAM9 に記憶する(ST502)。Then, the control unit 6 takes out the secondary storage block address of the received head block and stores it in the RAM 9 as a read block address, and adds the data length to the head block address to obtain the final block address and stores it in the RAM 9. Yes (ST502).
【0046】次に、この二次記憶ブロックアドレスで示
されるデータがキャッシュ3 にヒットするかを調べる
(ST503)。そのために、管理テーブル30a ,30b
にこの2次記憶ブロックアドレスがあるかを検索する。
もし有ればキャッシュ3 に存在することになり、キャッ
シュ3 内のブロックアドレスとこのデータを格納してい
るキャッシュ3 のキャッシュ番号をRAM9 に格納し、
なければキャッシュ3 に存在しないことになるので、S
T507に分岐してキャッシュ3 上にブロックを確保す
る。このキャッシュ3 上のブロック確保については、図
7を参照して後で説明する。Next, it is checked whether the data indicated by the secondary storage block address hits the cache 3 (ST503). Therefore, the management tables 30a, 30b
Is searched for in the secondary storage block address.
If it exists, it exists in the cache 3, and the block address in the cache 3 and the cache number of the cache 3 storing this data are stored in the RAM 9,
If it does not exist in cache 3, S
Branch to T507 and secure a block on cache 3. The block reservation on the cache 3 will be described later with reference to FIG.
【0047】ここで、ブロックアドレスは二次記憶ブロ
ックアドレスが見つかったテーブルの段の数であり、ま
たキャッシュ番号はキャッシュステータステーブルから
求める。キャッシュ番号は一つだけでなく二つあること
がある。Here, the block address is the number of rows in the table in which the secondary storage block address is found, and the cache number is obtained from the cache status table. There may be two cache numbers instead of just one.
【0048】キャッシュ3 にあれば、その管理テーブル
のステータスからブロックに障害があるかを調べる(S
T504)。ステータスがデータ無効または二重化デー
タ無効であれば、ブロックの復旧を行なって(ST50
5)から、ST506に進む。ブロックの復旧の方法に
ついては図9を参照して説明する。If it is in the cache 3, it is checked from the status of the management table whether there is a block failure (S
T504). If the data is invalid or the duplicated data is invalid, the block is restored (ST50
From 5), the process proceeds to ST506. The method of block recovery will be described with reference to FIG.
【0049】ところで、ST503ではキャッシュ3 に
なかった場合は、ブロック確保処理を引き数を『−1』
として呼びだし、キャッシュ番号とブロックアドレスを
RAM9 に得て(ST507)、ST508で、二次記
憶ブロックアドレスで指定されるデータを、二次記憶装
置4 から確保したキャッシュ3 にコピーし、確保された
ブロックに対応する管理テーブルに二次記憶ブロックア
ドレスを格納し、ステータスを異常無しとしST506
に進む。By the way, if the cache 3 does not exist in ST 503, the block allocation processing is performed by setting the argument to "-1".
The cache number and the block address are obtained in the RAM 9 (ST507), and in ST508, the data specified by the secondary storage block address is copied to the cache 3 secured from the secondary storage device 4, and the secured block is secured. ST506 stores the secondary storage block address in the management table corresponding to
Proceed to.
【0050】ST506では、キャッシュ3 上に得られ
たデータをI/O部1 に転送し、リードしたブロックを
アクセス頻度リスト34の先頭に挿入するために、アクセ
ス頻度リスト先頭ブロック番号41で示されるブロックに
対応している管理テーブル10の前接続に、リードしたキ
ャッシュ3 のブロックのテーブル番号とブロックアドレ
スを格納し、このリードしたキャッシュ3 のブロックに
対応する管理テーブルの後接続に、アクセス頻度リスト
先頭ブロック番号のブロック番号とブロックアドレスを
格納する。そして、転送したブロックが最終のブロック
であるかをRAM9 上の読み出しブロックアドレスとし
て最終ブロックアドレスと比較して判定する(ST50
9)。In ST506, the data obtained in the cache 3 is transferred to the I / O unit 1 and the read block is inserted at the head of the access frequency list 34, so that the block is designated by the access frequency list head block number 41. The table number and block address of the read block of cache 3 are stored in the front connection of the management table 10 corresponding to the block, and the access frequency list is stored in the rear connection of the management table corresponding to this read block of cache 3. The block number of the first block number and the block address are stored. Then, it is determined whether the transferred block is the final block by comparing it with the final block address as the read block address on the RAM 9 (ST50).
9).
【0051】このST509の判定で『最終ブロックで
ない』と判定された場合には、RAM9 上の読み出しブ
ロックアドレスを『1』だけ加算して(ST510)か
らST503に戻り、ST503以降の処理を繰り返
す。When it is determined that the block is not the last block in ST509, the read block address on the RAM 9 is incremented by "1" (ST510), the process returns to ST503, and the processes after ST503 are repeated.
【0052】このST509で『最終ブロックである』
と判定された場合には、ホストI/O部1 に転送終了を
通知する。この通知に応答してホストI/O部1 は、制
御部6 の制御下でキャッシュ3 から送られてくるデータ
をホスト(図示しない)に転送する。そして、制御部6
から転送終了を受信すると、ホスト(図示しない)に転
送終了を送信する。このようにして、二次記憶装置4 の
リ−ド処理がなされる。In this ST509, "is the final block"
If it is determined, the host I / O unit 1 is notified of the transfer end. In response to this notification, the host I / O unit 1 transfers the data sent from the cache 3 to the host (not shown) under the control of the control unit 6. And the control unit 6
When the transfer end is received from, the transfer end is transmitted to the host (not shown). In this way, the read processing of the secondary storage device 4 is performed.
【0053】次に、二次記憶装置4 への書き込み(ライ
ト)処理について説明する。本記憶装置が接続されてい
るホスト(図示しない)が、ホストI/O部1 にライト
コマンドを送信することによって、ライト処理が開始さ
れる。Next, the writing (writing) process to the secondary storage device 4 will be described. A host (not shown) to which the storage device is connected sends a write command to the host I / O unit 1 to start the write processing.
【0054】ここで、ライトコマンドには、書き込むデ
ータの先頭ブロックの二次記憶ブロックアドレス、及び
データの長さ(ブロック単位)が含まれている。ホスト
I/O部1 は、ライトコマンドを受信すると、制御部6
にコマンドがありの信号を送り、制御部6 がライトコマ
ンドをI/O部1 から受信する(ST601)。Here, the write command includes the secondary storage block address of the leading block of the data to be written and the data length (block unit). When the host I / O unit 1 receives the write command, the control unit 6
To the I / O unit 1, and the control unit 6 receives the write command from the I / O unit 1 (ST601).
【0055】制御部6 は受信した先頭のブロックの二次
記憶ブロックアドレスを取り出して読み出しブロックア
ドレスとしてRAM9 に記憶し、先頭ブロックアドレス
にデータの長さを加え最終ブロックアドレスを求めRA
M9 に記憶する(ST602)。The control unit 6 takes out the secondary storage block address of the received head block and stores it in the RAM 9 as a read block address, and adds the data length to the head block address to obtain the final block address RA
It is stored in M9 (ST602).
【0056】次に、二次記憶ブロックアドレスで示され
るデータがキャッシュ3 にヒットするかを調べる(ST
603)。そのために管理テーブルにこのブロックアド
レスがあるかを検索する。もし、有ればキャッシュ3 に
存在することになり、キャッシュ3 内のブロックアドレ
スとこのデータを格納しているキャッシュ3 のキャッシ
ュ番号をRAMに格納し、なければキャッシュ3 に存在
しないことになるので、ST607でキャッシュを確保
する。このキャッシュの確保は図7のフロ−チャ−トを
参照して後述する。Next, it is checked whether the data indicated by the secondary storage block address hits the cache 3 (ST
603). Therefore, the management table is searched for this block address. If it exists, it exists in the cache 3, and the block address in the cache 3 and the cache number of the cache 3 that stores this data are stored in the RAM. If not, it does not exist in the cache 3. , ST607 secures a cache. The securing of this cache will be described later with reference to the flowchart of FIG.
【0057】ところで、ブロックアドレスは二次記憶ブ
ロックアドレスが見つかったテーブルの段の数であり、
またキャッシュ番号はキャッシュステータステーブル12
から求める。キャッシュ番号は一つだけでなく二つある
ことがある。By the way, the block address is the number of rows of the table in which the secondary storage block address is found,
The cache number is the cache status table 12
Ask from. There may be two cache numbers instead of just one.
【0058】キャッシュ3 にあれば、その管理テーブル
のバックアップブロックアドレスからブロックが二重化
ブロックであるか(バックアップブロックアドレスが
『−1』でなければブロックが二重化されており、バッ
クアップブロックアドレスが『−1』でなら二重化され
ていない)、キャッシュがクリ−ンオンリであるかを調
べる(ST604)。If it is in the cache 3, whether the block is a duplicated block from the backup block address of the management table (if the backup block address is not "-1", the block is duplicated and the backup block address is "-1"). , It is not duplicated), and it is checked whether the cache is clean only (ST604).
【0059】このST604の判定で、二重化されてい
ない(つまりクリーン)とされた場合、ライトによって
データがダーティとなるので、キャッシュ3 の障害に備
え二重化するため、キャッシュヒットしたテーブル番号
ではないもう一方のテーブル番号を引き数として確保処
理を呼び出し(ST605)、ST606に進む。If it is determined in ST604 that the data is not duplicated (that is, clean), the data becomes dirty due to the write, so that the cache 3 is duplicated in preparation for a failure, the other table is not the cache hit table number. The reservation process is called by using the table number of (1) as an argument (ST605), and the process proceeds to ST606.
【0060】また、ヒットしたテーブル番号のキャッシ
ュがクリーンオンリであるならば、そのブロックを空き
ブロックとし、アクセス頻度リストから取り外してST
607に進む。リストからの取り外しの方法はブロック
の確保で説明する方法と同じである。If the cache of the hit table number is clean only, the block is set as an empty block, removed from the access frequency list, and ST
Proceed to 607. The method of removing from the list is the same as the method described in Securing blocks.
【0061】ST603でキャッシュになかった場合、
ST607で以下のようにキャッシュの確保を行う。ラ
イトが許可されているキャッシュを見つけるために、キ
ャッシュステータステーブル12からモードがダーティオ
ンリまたは混在であるキャッシュを探す。該当するキャ
ッシュを2つ見つけることができるはずで、そのキャッ
シュが同じテーブル番号であればそのテーブル番号を引
き数として確保処理を呼びだし、テーブル番号が異なれ
ば二つのテーブル番号それぞれ引き数としたブロックの
確保処理を2回行う(ST607)。確保されたキャッ
シュ番号とキャッシュアドレスは確保処理によってRA
M9 に格納されている。確保後ST606へ進む。If the cache is not found in ST603,
In ST607, the cache is secured as follows. To find the caches that are write-enabled, look for caches with dirty or mixed modes in the cache status table 12. It should be possible to find two corresponding caches. If the caches have the same table number, the table number is used as an argument to call the securing process, and if the table numbers are different, the two table numbers are used as arguments. The securing process is performed twice (ST607). The secured cache number and cache address are RA
It is stored in M9. After securing, proceed to ST606.
【0062】ST606では確保された二つのキャッシ
ュ両方に、ホストI/0部1 からデータを転送し、ライ
トしたブロックをアクセス頻度リスト34の先頭に挿入す
るために、アクセス頻度リスト先頭ブロック番号で示さ
れるブロックに対応している管理テーブルの前接続に、
ライトしたキャッシュブロックのテーブル番号とブロッ
クアドレスを格納し、このライトしたキャッシュブロッ
クに対応する管理テーブルの後接続に、アクセス頻度リ
スト先頭ブロック番号のブロック番号とブロックアドレ
スを格納し、そのキャッシュのブロックに対応する管理
テーブルのステータスを異常無しにする。In ST606, data is transferred from the host I / O unit 1 to both of the two secured caches, and the written block is inserted at the beginning of the access frequency list 34, so that it is indicated by the access frequency list top block number. To the connection of the management table corresponding to the block
Stores the table number and block address of the written cache block, stores the block number and block address of the access frequency list head block number in the back connection of the management table corresponding to this written cache block, and stores it in that cache block. Set the status of the corresponding management table to normal.
【0063】そして転送後、転送したブロックが最終の
ブロックであるかをリ−ドと同様に判定し(ST60
8)、最終でなければ読み出しブロックアドレスを
『1』だけ加算してST603にもどる。最終ブロック
であればホストI/O部1 に転送終了を通知する。ま
た、ホストI/O部1 は、ホストから送られてくるデー
タをバッファリングし、制御部6 の制御下でキャッシュ
にデータを転送し、制御部6 から転送終了を受信して、
ホストに転送終了を送信する。以上のようにして、二次
記憶装置4 へのライト処理が終了する。After the transfer, whether or not the transferred block is the final block is determined in the same manner as the read (ST60
8) If not final, add "1" to the read block address and return to ST603. If it is the final block, the host I / O unit 1 is notified of the end of transfer. Further, the host I / O unit 1 buffers the data sent from the host, transfers the data to the cache under the control of the control unit 6, receives the transfer end from the control unit 6, and
Send the end of transfer to the host. The write processing to the secondary storage device 4 is completed as described above.
【0064】次に、キャッシュの領域確保について図7
を参照して説明する。この領域確保は、まずテーブル番
号を引き数として呼び出され処理を開始される(ST7
01)。どちらのキャッシュからブロックを確保しても
構わない場合は引き数の値は『−1』を使用する。Next, FIG. 7 shows how to secure the cache area.
Will be described with reference to. This area reservation is first called with the table number as an argument and the processing is started (ST7).
01). If the block can be secured from which cache, "-1" is used as the argument value.
【0065】まず、ST701でテーブル番号によって
指定された管理テーブルから空きブロック(二次記憶ブ
ロックアドレスが『−1』であるブロック)を探す。引
き数が「−1」の場合はカウンタの値の小さなテーブル
から空きブロックを探し、なければ他のテーブルから空
きブロックを探す。空きブロックがあれば、ST706
でそのテーブル番号とブロックアドレスをRAM9 に格
納してリターンし、なければ、カウンタ値の小さなテ−
ブル番号を引数としてST702に進む。First, in ST701, an empty block (block whose secondary storage block address is "-1") is searched from the management table designated by the table number. If the argument is "-1", a free block is searched for in a table with a small counter value, and if not, a free block is searched for in another table. If there is an empty block, ST706
Then, store the table number and block address in RAM9 and return.
The procedure proceeds to ST702 with the bull number as an argument.
【0066】ST702の判定で空きがないと判定され
た場合は、以下のST703でキャッシュアウトするブ
ロックを決定する。アクセス頻度リスト情報のアクセス
頻度末尾ブロック42で示される番号からアクセス頻度の
最も低い順番に管理テーブルをたぐり、最初に見つかっ
た引き数で指定されたテーブル番号のブロックを、ビク
ティムブロック(キャッシュから追い出されるブロッ
ク)と呼ぶ。ビクティムブロックのブロックアドレスと
キャッシュ番号をRAM9 に読み出す。キャッシュ番号
はキャッシュステータステーブル12から、ビクティムブ
ロックのテーブル番号をもちフェーズが使用中または復
旧中のキャッシュ番号として求める。キャッシュ番号
は、一つまたは二つある。キャッシュ番号が二つある場
合でも、その二つのキャッシュ全体で二重化しているの
で、ブロックアドレスは同一であり、ブロックアドレス
は一つで済む。When it is determined in ST702 that there is no free space, the block to be cached out is determined in ST703 below. The management table is searched from the number indicated by the access frequency end block 42 in the access frequency list information in the order of lowest access frequency, and the block with the table number specified by the first argument found is the victim block (exited from the cache). Block). The block address and cache number of the victim block are read out to RAM9. The cache number is obtained from the cache status table 12 as the cache block number having the table number of the victim block and being used or restored by the phase. There are one or two cache numbers. Even if there are two cache numbers, since the two caches are duplicated as a whole, the block addresses are the same and only one block address is required.
【0067】以下、アクセス頻度からビクティムブロッ
クを取り外す処理を説明する。このビクティムブロック
がリストの末尾であるなら、ビクティムブロックに対応
する管理テーブルの前接続ブロック(2番目にアクセス
頻度が低いブロック)のテーブル番号とブロックアドレ
スをアクセス頻度末尾番号に格納し、前接続ブロックに
対応する管理テーブルの後接続ブロックに『−1』を書
き込む。ビクティムブロックがアクセス頻度先頭ブロッ
クであるなら、ビクティムブロックに対応する管理テー
ブルの後接続ブロック(2番目にアクセス頻度が高いブ
ロック)のテーブル番号とブロックアドレスをアクセス
頻度先頭番号に格納し、後接続ブロックに対応する管理
テーブルの前接続ブロックに『−1』を書き込む。ビク
ティムブロックが末尾でも先頭でもない場合は、ビクテ
ィムブロックに対応する管理テーブルの前接続ブロック
に対応する管理テーブルの後接続ブロックに、ビクティ
ムブロックに対応する管理テーブルの後接続ブロックの
値をコピーし、ビクティムブロックに対応する管理テー
ブルの後接続ブロックに対応する管理テーブルの前接続
ブロックに、ビクティムブロックに対応する前接続ブロ
ックの値をコピーする。The process of removing the victim block based on the access frequency will be described below. If this victim block is at the end of the list, the table number and block address of the previous connection block (the second least frequently accessed block) of the management table corresponding to the victim block are stored in the access frequency end number, and the previous connection block is stored. Write "-1" in the connection block after the management table corresponding to. If the victim block is the access frequency top block, the table number and block address of the subsequent connection block (block with the second highest access frequency) of the management table corresponding to the victim block are stored in the access frequency top number, and the subsequent connection block is stored. Write "-1" in the previous connection block of the management table corresponding to. If the victim block is neither the end nor the beginning, copy the value of the back connection block of the management table corresponding to the victim block to the back connection block of the management table corresponding to the front connection block of the management table corresponding to the victim block, The value of the front connection block corresponding to the victim block is copied to the front connection block of the management table corresponding to the rear connection block of the management table corresponding to the victim block.
【0068】またこのアクセス頻度リストの操作でブロ
ックが2重化ブロックである場合は、二重化しているブ
ロックにアクセス頻度リストの内容をコピーする。次に
決定されたビクティムブロックが二重化ブロックである
かをビクティムブロックに対応する管理テーブルのバッ
クアップブロックアドレスから判定し(ST704)、
二重化ブロックならばST705へ、二重化ブロックで
ないならばST706へ進む。If the block is a duplicated block by the operation of this access frequency list, the contents of the access frequency list are copied to the duplicated block. Next, it is determined whether the determined victim block is a duplicate block from the backup block address of the management table corresponding to the victim block (ST704),
If the block is a duplex block, the process proceeds to ST705, and if it is not the duplex block, the process proceeds to ST706.
【0069】二重化ブロックはダーティであるので、そ
の管理テーブル10の二次記憶ブロックアドレスで指定さ
れる二次記憶のブロックにビクティムブロックのデータ
をコピーし、コピー後ビクティムブロックと二重化ブロ
ックに対応する管理テーブルの二つの二次記憶ブロック
アドレスを『−1』にする。その後ST706に進む。
ST706で、このキャッシュの確保のル−チンをコ−
ルしたフロ−の処理に戻る。以上のようにして、キャッ
シュのブロックが確保される。Since the duplicated block is dirty, the data of the victim block is copied to the block of the secondary storage designated by the secondary storage block address of the management table 10, and the management corresponding to the victim block and the duplicated block after copying is performed. The two secondary storage block addresses in the table are set to "-1". Then, it progresses to ST706.
In ST706, the routine for securing this cash is copied.
Return to the processing of the flow that has been executed. As described above, the cache block is secured.
【0070】次に、障害が発生した時の処理について図
8を参照して説明する。図8において、キャッシュ3 へ
のアクセスの最中に障害が発生した場合、キャッシュ3
から制御部6 に割り込みが発生し、制御部6 はキャッシ
ュの障害を検出し、障害の発生したキャッシュの番号を
特定する。そして、キャッシュステータステーブル12か
らこのキャッシュ番号のフェーズを故障中にし管理テー
ブル番号を読み、この番号をフェーズがリザーブのキャ
ッシュステ−タステ−ブルに格納し、フェーズをリザー
ブから復旧中に変更する(ST802)。Next, the processing when a failure occurs will be described with reference to FIG. In FIG. 8, if a failure occurs during access to cache 3, cache 3
Then, an interrupt occurs in the control unit 6, and the control unit 6 detects a cache failure and identifies the cache number in which the failure occurred. Then, the phase of this cache number is set to the failure state from the cache status table 12, the management table number is read, this number is stored in the cache status table reserved by the phase, and the phase is changed from reserve to recovery (ST802). ).
【0071】次に、復旧中のテーブル番号の管理テーブ
ル中の全てのステータスをデータ無効にし、キャッシュ
ステータステーブル12の障害が発生したキャッシュ番号
のモードが混在であるなら、もう一方のテーブルの二重
化ブロック(ミラーが『−1』以外のブロック)のステ
ータスを二重化データ無効にする(ST803)。そし
て、障害発生フラグをたて、割り込み処理を終了する
(ST804)。Next, if all the statuses in the management table of the table number being restored are invalidated and the modes of the failed cache number of the cache status table 12 are mixed, the duplicated block of the other table is The status of (blocks other than "-1" for the mirror) is made invalid (ST803). Then, the failure occurrence flag is set and the interrupt processing is ended (ST804).
【0072】次に、ブロックの復旧処理(図5のST5
05及び図10のST1006a,ST1006b,S
T1006cで呼び出される)について図9のフロ−チ
ャ−トを参照して説明する。このブロックの復旧は、復
旧したいブロックのテーブル番号とブロックアドレスを
引き数としてコールされることで、制御部6 のCPU7
により実行される。まず、復旧したいブロックが二重化
されているかを対応する管理テーブルから調べる(ST
902)。このST902の判定で二重化ブロックでな
い(バックアップブロックアドレスが『−1』)と判定
された場合は、二次記憶ブロックアドレスで示される二
次記憶のブロックのデータを、リザーブキャッシュのブ
ロックにコピーする(ST903)。リザーブキャッシ
ュのブロックアドレスは引き数のブロックのブロックア
ドレスと同じである。Next, block recovery processing (ST5 in FIG. 5)
05 and ST1006a, ST1006b, S in FIG.
(Called at T1006c) will be described with reference to the flowchart of FIG. This block recovery is called by using the table number of the block to be recovered and the block address as arguments, and the CPU 7 of the control unit 6
Executed by. First, it is checked from the corresponding management table whether the block to be restored is duplicated (ST
902). If it is determined in ST902 that the block is not a duplicated block (the backup block address is "-1"), the data in the secondary storage block indicated by the secondary storage block address is copied to the reserve cache block ( ST903). The block address of the reserve cache is the same as the block address of the argument block.
【0073】一方、ST902の判定で「YES」、つ
まり二重化ブロックであると判定された場合(バックア
ップブロックアドレスが『−1』でない場合)は、二重
化したブロックから、リザーブキャッシュのブロックに
コピーする(ST904)。二重化したブロックのある
キャッシュは次のように求める。キャッシュステータス
テーブルから引き数に与えられたテーブル番号をもちフ
ェーズが使用中のキャッシュが存在するか調べ、存在す
るならそのキャッシュが二重化したブロックを含むキャ
ッシュであり、存在しないならもう一方のテーブル番号
をもちフェーズが使用中のキャッシュが二重化したブロ
ックを含むキャッシュである。コピー時のブロックアド
レスは、次のように決まる。コピ−元である二重化した
ブロックが、バックアップブロックアドレスの値であ
り、コピ−先であるリザーブキャッシュのブロックアド
レスが引き数で与えられたブロックアドレスである。On the other hand, if the determination in ST902 is "YES", that is, if it is determined to be a duplicated block (when the backup block address is not "-1"), the duplicated block is copied to the block of the reserve cache ( ST904). A cache with a duplicated block is obtained as follows. Check whether there is a cache in use by the phase that has the table number given in the argument from the cache status table, and if it exists, it is the cache containing the duplicated block, and if it does not exist, specify the other table number. The cache used by the mochi phase is a cache including duplicated blocks. The block address at the time of copying is determined as follows. The duplicated block that is the copy source is the value of the backup block address, and the block address of the reserve cache that is the copy destination is the block address given as an argument.
【0074】そして、コピー後にST905で引き数で
示される管理テーブルのブロックのステータスを異常無
しにし、復旧したブロックが二重化ブロックならば、対
応するもう一方の管理テーブル内のステータスも異常な
しにする。そして、ST906で呼びだし処理に戻り、
図5のST505及び図10のST1006a,ST1
006b、ST1006cに戻る。After copying, the status of the block in the management table indicated by the argument is made normal in ST905, and if the restored block is a duplicated block, the status in the other corresponding management table is also made normal. Then, in ST906, the process returns to the calling process,
ST505 of FIG. 5 and ST1006a, ST1 of FIG.
Return to 006b and ST1006c.
【0075】次に、図10を参照して復旧処理について
説明する。まず、障害発生フラグがセットされている場
合は、制御部6 は以下に述べるような障害回復処理を実
行する。まず、修復モード13を読み出し、修復モ−ドが
自動判定、信頼性重視、性能重視であるかを判定する。Next, the recovery process will be described with reference to FIG. First, when the failure occurrence flag is set, the control unit 6 executes a failure recovery process as described below. First, the repair mode 13 is read, and it is determined whether the repair mode is automatic determination, reliability-oriented, or performance-oriented.
【0076】そして、修復モ−ド13が信頼性重視ならば
ST1005aに、性能重視ならST1005bに、自
動判定ならST1003に分岐する。修復モ−ドが自動
判定の場合には、障害の発生したキャッシュのカウンタ
値から使用中のキャッシュのカウンタ値を引き算したも
のを残寿命とする(ST1003)。この残寿命をRA
M9 の規定値と比較して、残寿命が小さい場合はST1
005aに、残寿命が規定値以上の場合はST100b
に分岐する(ST1004)。なお、この規定値はRO
M8 に格納されており、電源入力時にROM8からロー
ドされる。また、RAM9 上の規定値はホストから変更
可能である。If the repair mode 13 places importance on reliability, the process branches to ST1005a, if performance emphasizes, to ST1005b, and if it determines automatically, to ST1003. When the repair mode is automatic determination, the remaining life is obtained by subtracting the counter value of the cache in use from the counter value of the cache in which the failure has occurred (ST1003). This remaining life is RA
If the remaining life is shorter than the specified value of M9, ST1
005a, if the remaining life is more than the specified value, ST100b
(ST1004). This specified value is RO
It is stored in M8 and loaded from ROM8 when the power is turned on. The specified value on the RAM 9 can be changed by the host.
【0077】そして、ST1005aでは、ホストI/
O部1 に要求があれば、上述したリード/ライトの処理
を行う。次に、アクセス頻度リストの先頭からリストを
たどり、未復旧の二重化ブロック(ダ−ティブロック)
を検索し、もしあればテーブルの番号とブロックアドレ
スを引き数としてブロックの復旧処理(図9)を呼び出
し次のステップに進む、もしアクセス頻度リストの末尾
まで検索して見つからないた場合は次のステップに進む
(ST1006a)。アクセス頻度リストの末尾まで検
索した場合はST1005cに進む。Then, in ST1005a, the host I /
If there is a request from the O section 1, the above-mentioned read / write processing is performed. Next, the list is traced from the top of the access frequency list, and the unrestored redundant block (dirty block)
If there is a table number and block address as arguments, call the block recovery process (Fig. 9) and proceed to the next step. If the end of the access frequency list is not found, the next Proceed to the step (ST1006a). When the search is performed up to the end of the access frequency list, the process proceeds to ST1005c.
【0078】ST1005bでは、ホストI/O部1 に
要求があれば、上述したリード/ライトの処理を行う。
次に、アクセス頻度リストの先頭からリストをたどり、
未復旧の二重化ブロックでないブロック(クリ−ンブロ
ック)を検索し、もしあればテーブルの番号とブロック
アドレスを引き数としてブロックの復旧処理を呼び出し
次のステップに進む、もしアクセス頻度リストの末尾ま
で検索して見つからない場合は次のステップに進む(S
T1006b)。リストの末尾まで検索した場合はST
1005cに進む。In ST1005b, if there is a request from the host I / O unit 1, the above-mentioned read / write processing is performed.
Next, follow the list from the top of the access frequency list,
Search for a block (clean block) that is not an unrestored duplex block, call the block restoration process with the table number and block address if any, and proceed to the next step. If the end of the access frequency list is searched If not found, go to the next step (S
T1006b). ST when searching to the end of the list
Proceed to 1005c.
【0079】ST1005cでは、ホストI/O部1 に
要求があれば、上述したリード/ライトの処理を行う。
次に、アクセス頻度リストの先頭からリストをたどり、
未復旧ブロックを検索し、もしあればテーブルの番号と
ブロックアドレスを引き数としてブロックの復旧処理を
呼び出し次のステップに進む、もしアクセス頻度リスト
の末尾まで検索して見つからない場合は次のステップに
進む(ST1006c)。リストの末尾まで検索した場
合はST1008に進む。ST1008では障害発生フ
ラグをリセットする。In ST1005c, if there is a request from the host I / O unit 1, the above-mentioned read / write processing is performed.
Next, follow the list from the top of the access frequency list,
Search the unrestored block and call the restoration process of the block with the table number and the block address if any, and proceed to the next step. If the end of the access frequency list is not found and the block is not found, go to the next step. Proceed (ST1006c). If the end of the list has been searched, the process proceeds to ST1008. In ST1008, the failure occurrence flag is reset.
【0080】なお、図10のフロ−チャ−トのST10
03の規定値の変更は、ホストが規定値変更コマンドと
規定値の値を送信することで行なうことができる。この
場合に、制御部6 がホストI/O部1 から規定値を読み
RAM9 に格納する。また、修復モード13も同様に、ホ
ストが修復モード変更コマンドとモードの値を送信する
ことで、修復モード13を変更することができる。Incidentally, ST10 of the flow chart of FIG.
The specified value of 03 can be changed by the host sending a specified value change command and the specified value. In this case, the control unit 6 reads the specified value from the host I / O unit 1 and stores it in the RAM 9. Similarly, in the repair mode 13, the host can change the repair mode 13 by transmitting the repair mode change command and the mode value.
【0081】[0081]
【発明の効果】以上詳述したように本発明によれば、ダ
ーティなデータのみを二重化し信頼性を向上させ、クリ
ーンなデータは二重化せず、障害時には二次記憶媒体で
ある大容量低速媒体からリードして復旧する。これによ
って、キャッシュの容量を有効に利用しつつキャッシュ
の障害によってデータが失われることを防止することが
できる。As described in detail above, according to the present invention, only dirty data is duplicated to improve reliability, clean data is not duplicated, and a large-capacity low-speed medium which is a secondary storage medium at the time of failure Read from and recover. This makes it possible to effectively use the capacity of the cache and prevent the data from being lost due to the failure of the cache.
【0082】また、障害復旧時にアクセスの頻度の高い
ものから修復することによって、ホストからアクセスが
発生したときに、キャッシュヒットする確率をあげ、障
害復旧時においても、低速媒体のアクセスを高速にみせ
るというキャッシュの機能を損なうことはない。Further, by recovering from a frequently accessed one at the time of recovery from a failure, the probability of a cache hit when an access is made from the host is increased, and even when a failure is recovered, the access to a low-speed medium can be seen at a high speed. It does not impair the cache function.
【0083】また、高速性を重視する場合は、クリーン
データをダーティデータよりも復旧の順番を優先させて
いる。これは、クリーンデータの復旧は、低速な二次記
憶からのリードが必要であり、二重化されたキャッシュ
からのリードによって復旧できるダーティに比べて、復
旧に時間がかかるからである。When high speed is important, clean data is prioritized in the order of restoration over dirty data. This is because the recovery of clean data requires a slow read from the secondary storage, and the recovery takes longer than the dirty that can be recovered by reading from the duplicated cache.
【0084】一方、信頼性を重視する場合は、ダーティ
データの復旧を優先させている。これは、障害復旧中に
また障害が発生した場合には二重化してあってもダーテ
ィデータは失われる。そのためにダーティデータを先に
復旧し、危険な状態である時間を短くすることができ
る。On the other hand, when importance is placed on reliability, restoration of dirty data is prioritized. This means that if a failure occurs again during failure recovery, the dirty data will be lost even if it is duplicated. Therefore, the dirty data can be restored first, and the time in a dangerous state can be shortened.
【0085】また、予備記憶媒体をクリーンなデータの
キャッシュとして用い、二つの記憶媒体をダーティデー
タのキャッシュとして二重化して用いることで、予備媒
体を有効に利用できる。Further, the spare medium can be effectively used by using the spare storage medium as a cache of clean data and duplicating the two storage media as the cache of dirty data.
【図1】本発明の一実施例に係わる情報記憶装置のシス
テム構成を示すブロック図。FIG. 1 is a block diagram showing a system configuration of an information storage device according to an embodiment of the present invention.
【図2】同実施例に係わるキャッシュステ−タステ−ブ
ルの構成を示す図。FIG. 2 is a diagram showing a configuration of a cache status table according to the embodiment.
【図3】同実施例に係わり、図3(A)は管理テ−ブル
(テ−ブル番号0)、図3(B)は管理テ−ブル(テ−
ブル番号1)の記憶内容を示す図。FIG. 3 relates to the embodiment, FIG. 3 (A) shows a management table (table number 0), and FIG. 3 (B) shows a management table (table).
FIG. 3 is a diagram showing the stored contents of Bull number 1).
【図4】同実施例に係わるアクセス頻度リストを示す
図。FIG. 4 is a diagram showing an access frequency list according to the embodiment.
【図5】同実施例に係わるリ−ド処理を示すフロ−チャ
−ト。FIG. 5 is a flowchart showing a read process according to the embodiment.
【図6】同実施例に係わるライト処理を示すフロ−チャ
−ト。FIG. 6 is a flowchart showing a write process according to the embodiment.
【図7】同実施例に係わるキャッシュの確保処理を示す
フロ−チャ−ト。FIG. 7 is a flowchart showing a cache securing process according to the embodiment.
【図8】同実施例に係わる障害発生割り込み処理を示す
フロ−チャ−ト。FIG. 8 is a flowchart showing a fault occurrence interrupt process according to the embodiment.
【図9】同実施例に係わるブロックの復帰処理を示すフ
ロ−チャ−ト。FIG. 9 is a flowchart showing a block restoration process according to the embodiment.
【図10】同実施例に係わる復旧処理を示すフロ−チャ
−ト。FIG. 10 is a flowchart showing a recovery process according to the embodiment.
1 …I/O部、2 …バッファ、3 …キッシュ、3a…キャ
ッシュ、3b…キャッシュ、3c…キャッシュ、4 …二次記
憶装置、6 …制御部、7 …CPU、8 …ROM、9 …R
AM、10…管理テ−ブル、11…カウンタ、12…キャッシ
ュステータステーブル、13…修復モ−ド、14…障害発生
フラグ、15…バッテリ、21…管理テ−ブル番号、22…フ
ェ−ズ、24…モ−ド、31…二次ブロックアドレス。1 ... I / O section, 2 ... Buffer, 3 ... Quiche, 3a ... Cache, 3b ... Cache, 3c ... Cache, 4 ... Secondary storage device, 6 ... Control section, 7 ... CPU, 8 ... ROM, 9 ... R
AM, 10 ... Management table, 11 ... Counter, 12 ... Cache status table, 13 ... Repair mode, 14 ... Failure flag, 15 ... Battery, 21 ... Management table number, 22 ... Phase, 24 ... Mode, 31 ... Secondary block address.
Claims (4)
憶媒体と、 この情報記憶媒体のキャッシュとして用いられる第1乃
至第3のキャッシュメモリと、 前記第1及び第2のキャッシュメモリにデ−タを記憶す
る際に、前記情報記憶媒体からのデ−タは、前記第1及
び第2のキャッシュメモリの内の1つのキャッシュメモ
リに記憶する第1の処理手段と、 前記第1及び第2のキャッシュメモリにデ−タを記憶す
る際に、前記外部装置からのデ−タは、前記第1及び第
2のキャッシュメモリに同一のデ−タを記憶する第2の
処理手段と、 前記第1及び第2のキャッシュメモリの内の1つのキャ
ッシュメモリに障害が発生したことを検知する検知手段
と、 前記検知手段によってキャッシュメモリに障害が発生し
たことが検知された場合に、障害が発生したキャッシュ
メモリに記憶されているデ−タの内で、前記情報記憶媒
体からのデ−タは、前記情報記録媒体から再度読出して
デ−タを前記第3のキャッシュメモリに記憶させ、前記
外部装置からのデ−タは、障害が発生していないキャッ
シュメモリに記憶されている同一デ−タを第3のキャッ
シュメモリに記憶させる第3の処理手段と を具備したこ
とを特徴とする情報記憶装置。1. An information storage for storing data from an external device.
And憶媒body, first乃used as a cache of the information storage medium
Data is stored in the third to third cache memories and the first and second cache memories.
When the data is read from the information storage medium,
And one cache memo in the second cache memory
First processing means for storing in memory and data in the first and second cache memories
Data from the external device,
A second cache memory that stores the same data
Processing means and one of the first and second cache memories.
Detecting means to detect the failure of the cache memory
And the detection means causes a failure in the cache memory.
Failed cache when it is detected that
Among the data stored in the memory, the information storage medium
The data from the body is read again from the information recording medium.
Storing data in the third cache memory,
The data from the external device is stored in the cache that has not failed.
The same data stored in memory is stored in the third cache.
An information storage device comprising: a third processing unit that stores the data in a memory.
デ−タをブロック単位で前記第3のキャッシュメモリに
復旧する復旧手段と、 前記ブロックをアクセス頻度の順番に並べたリストと、 このリストを作成する手段とを具備し、 前記復旧手段は前記リストを参照してアクセス頻度の高
いブロックから復旧することを特徴とする請求項1記載
の 情報記憶装置。2. The cache memory in which the failure has occurred
Data is transferred in blocks to the third cache memory.
The recovery means includes a recovery means for recovering, a list in which the blocks are arranged in the order of access frequency, and a means for creating the list, and the recovery means refers to the list to increase the access frequency.
2. The block is restored from a block that is not present.
Of the information storage device.
デ−タをブロック単位で前記第3のキャッシュメモリに
復旧する復旧手段を有し、 前記復旧手段はクリーンデータの修復をダーティデータ
の修復よりも優先させることを特徴とする請求項1記載
の 情報記憶装置。3. The cache memory in which the failure has occurred
Data is transferred in blocks to the third cache memory.
The recovery means has a recovery means for recovery, and the recovery means restores clean data to dirty data.
2. The repair is prioritized over the repair of the
Of the information storage device.
データをブロック単 位で前記第3のキャッシュメモリに
復旧する復旧手段を有し、 前記復旧手段はダーティデータの修復をクリーンデータ
の修復よりも優先させることを特徴とする請求項1記載
の 情報記憶装置。 4. The cache memory in which the failure has occurred
The third cache memory data in block units of
It has a recovery means to recover, and the recovery means cleans dirty data to clean data.
2. The repair is prioritized over the repair of the
Of the information storage device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP22162994A JP3457394B2 (en) | 1994-09-16 | 1994-09-16 | Information storage device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP22162994A JP3457394B2 (en) | 1994-09-16 | 1994-09-16 | Information storage device |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0887450A JPH0887450A (en) | 1996-04-02 |
JP3457394B2 true JP3457394B2 (en) | 2003-10-14 |
Family
ID=16769766
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP22162994A Expired - Fee Related JP3457394B2 (en) | 1994-09-16 | 1994-09-16 | Information storage device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3457394B2 (en) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3705731B2 (en) | 2000-06-05 | 2005-10-12 | 富士通株式会社 | I / O controller |
US7103653B2 (en) | 2000-06-05 | 2006-09-05 | Fujitsu Limited | Storage area network management system, method, and computer-readable medium |
JP3610574B2 (en) | 2001-08-15 | 2005-01-12 | 日本電気株式会社 | Disk array device |
WO2004027625A1 (en) * | 2002-09-20 | 2004-04-01 | Fujitsu Limited | Storage control apparatus, storage control program, and storage control method |
JP5077209B2 (en) * | 2008-12-03 | 2012-11-21 | 日本電気株式会社 | Memory management device, memory management method and program |
WO2010087803A1 (en) * | 2009-01-29 | 2010-08-05 | Lsi Corporation | Allocate-on-write snapshot mechanism to provide dynamic storage tiering on-line data placement for volumes |
JP2011159101A (en) * | 2010-02-01 | 2011-08-18 | Nec Corp | Information processing apparatus, method and program for managing memory |
JP2012190064A (en) * | 2011-03-08 | 2012-10-04 | Nec Corp | Information processing apparatus, memory management method, and memory management program |
JP6039772B1 (en) | 2015-09-16 | 2016-12-07 | 株式会社東芝 | Memory system |
-
1994
- 1994-09-16 JP JP22162994A patent/JP3457394B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH0887450A (en) | 1996-04-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7085955B2 (en) | Checkpointing with a write back controller | |
US6912669B2 (en) | Method and apparatus for maintaining cache coherency in a storage system | |
US8074035B1 (en) | System and method for using multivolume snapshots for online data backup | |
US20060227585A1 (en) | Computer system, disk apparatus and data update control method | |
EP0569212A1 (en) | Method and means for fast writing data to LRU cached based DASD arrays under diverse fault tolerant modes | |
US6766491B2 (en) | Parity mirroring between controllers in an active-active controller pair | |
US6148416A (en) | Memory update history storing apparatus and method for restoring contents of memory | |
TWI291103B (en) | Method, storage controller, system, and computer-readable recording medium for autonomic power loss recovery for a multi-cluster storage sub-system | |
JPH07500203A (en) | Data backup system for rollback | |
JPS6367686B2 (en) | ||
KR19980024086A (en) | Computer system and file management methods | |
US9563566B2 (en) | Device and method for integrated data management for nonvolatile buffer cache and nonvolatile storage | |
JP2005115857A (en) | File storage device | |
CA2105085A1 (en) | Cache memory system and method of operating the cache memory system | |
US7197599B2 (en) | Method, system, and program for managing data updates | |
JP3457394B2 (en) | Information storage device | |
US6490664B1 (en) | Method and system for handling destage requests during shut-down in a log-structured array | |
JP2010152747A (en) | Storage system, cache control method and cache control program for storage | |
US6931485B2 (en) | Disk array apparatus | |
JPH10161938A (en) | Disk controller | |
JPH07210439A (en) | Storage device | |
CN111984547A (en) | Address mapping table management device, method, system and computer storage medium | |
JP3070453B2 (en) | Memory failure recovery method and recovery system for computer system | |
US7062611B2 (en) | Dirty data protection for cache memories | |
JP2006099802A (en) | Storage controller, and control method for cache memory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20070801 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080801 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |