JP3468762B2 - Data loading method and apparatus - Google Patents

Data loading method and apparatus

Info

Publication number
JP3468762B2
JP3468762B2 JP2001325763A JP2001325763A JP3468762B2 JP 3468762 B2 JP3468762 B2 JP 3468762B2 JP 2001325763 A JP2001325763 A JP 2001325763A JP 2001325763 A JP2001325763 A JP 2001325763A JP 3468762 B2 JP3468762 B2 JP 3468762B2
Authority
JP
Japan
Prior art keywords
record
track
cache memory
access
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 - Lifetime
Application number
JP2001325763A
Other languages
Japanese (ja)
Other versions
JP2002196980A (en
Inventor
山本  彰
俊明 坪井
繁雄 本間
勝憲 中村
公咲 神林
弘行 北嶋
昭 倉野
正史 野沢
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.)
Hitachi Ltd
Hitachi Solutions Technology Ltd
Original Assignee
Hitachi Ltd
Hitachi ULSI Systems Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd, Hitachi ULSI Systems Co Ltd filed Critical Hitachi Ltd
Priority to JP2001325763A priority Critical patent/JP3468762B2/en
Publication of JP2002196980A publication Critical patent/JP2002196980A/en
Application granted granted Critical
Publication of JP3468762B2 publication Critical patent/JP3468762B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は、キャッシュメモリ
を有する制御装置において、キャッシュメモリへのロー
ディングを行なうのに好適なデータローディング方法に
関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a data loading method suitable for loading a cache memory in a control device having a cache memory.

【0002】[0002]

【従来の技術】外部記憶装置として用いられる磁気ディ
スク装置などにおいては、比較的安価に大きな記憶容量
を実現できるという利点がある。しかし記憶媒体である
磁気ディスクの回転待ちやヘッドのシーク動作などに起
因して、データの記録,再生などにおけるアクセス速度
の向上には自ずと限界がある。
2. Description of the Related Art A magnetic disk device or the like used as an external storage device has an advantage that a large storage capacity can be realized at a relatively low cost. However, there is a limit to the improvement of the access speed in recording and reproducing data due to the waiting of rotation of the magnetic disk as a storage medium and the seek operation of the head.

【0003】このため、外部記憶装置として磁気ディス
ク装置などを備えた電子計算機システムにおいては次の
ようにしている。中央処理装置と磁気ディスク装置との
間に介在して両者間のデータの授受を制御する磁気ディ
スク制御装置などに、磁気ディスク装置よりも高速なア
クセスが可能な半導体メモリなどからなるキャッシュメ
モリを設ける。そして磁気ディスク装置に格納されてい
るデータの一部をこのキャッシュメモリに格納して、中
央処理装置からのアクセスに応答することにより、磁気
ディスク装置と中央処理装置との間の大きな動作速度の
差異を緩和する。このように磁気ディスク装置と中央処
理装置との間のデータの授受を効率化することが一般的
である。
For this reason, an electronic computer system having a magnetic disk device or the like as an external storage device is as follows. A cache memory including a semiconductor memory or the like that can be accessed faster than the magnetic disk device is provided in the magnetic disk control device or the like that is interposed between the central processing unit and the magnetic disk device and controls the exchange of data between them. . Then, by storing a part of the data stored in the magnetic disk device in this cache memory and responding to the access from the central processing unit, a large difference in operating speed between the magnetic disk device and the central processing unit is achieved. Alleviate. In this way, it is general to improve the efficiency of data exchange between the magnetic disk device and the central processing unit.

【0004】その場合、中央処理装置からアクセスされ
る目的のデータがキャッシュメモリ上に存在する確率、
すなわちヒット率を可能な限り大きくすることがキャッ
シュメモリをより有効に機能させるなどの観点から重要
である。そのために従来から以下のような種々の技術が
提案されている。
In that case, the probability that the target data accessed from the central processing unit exists in the cache memory,
That is, it is important to increase the hit rate as much as possible from the viewpoint of making the cache memory function more effectively. Therefore, various techniques such as the following have been conventionally proposed.

【0005】例えば、オーム社刊「電子情報通信ハンド
ブック」(1988年)には、キャッシュメモリに対す
るデータローディングはトラック単位で行なわれてい
る。
For example, in "Electronic Information and Communication Handbook" (1988) published by Ohmsha, data loading to a cache memory is performed in track units.

【0006】また、たとえば、特開昭55−15464
8号公報に開示される技術では次のようにしている。磁
気ディスク装置の記憶領域を複数個に分割する。その分
割された各々の記憶領域に応じて異なる動作モードを予
め設定する。中央処理装置からの入出力指令によって指
定される記憶領域に対応した動作モードに切り替えるよ
うにする。以上のようにしてヒット率の向上を図ろうと
するものである。
[0006] Further, for example, JP-A-55-15464
The technique disclosed in Japanese Patent No. 8 is as follows. The storage area of the magnetic disk device is divided into a plurality of areas. Different operation modes are preset in accordance with the respective divided storage areas. The operation mode is switched to a storage area designated by an input / output command from the central processing unit. As described above, it is intended to improve the hit rate.

【0007】また、たとえば、特開昭60−14360
号公報に記載される技術では次のようにしている。ヒッ
ト/ミス等の統計データをディスク制御装置で収集す
る。収集した統計データを中央処理装置に転送する。こ
れらの統計データに基づいて、オペレータやシステム管
理者が現在のキャッシュメモリの利用状態が最適か否か
を判断する。その判断結果に基いて磁気ディスク装置か
らキャッシュメモリ上にロードされるデータの範囲すな
わちキャッシュ対象範囲を適切に制御する。このように
して、中央処理装置と磁気ディスク装置との間における
データの転送効率を向上させようとしている。
Further, for example, Japanese Patent Laid-Open No. 60-14360.
The technique described in the publication is as follows. Statistical data such as hits / misses is collected by the disk controller. Transfer the collected statistical data to the central processing unit. Based on these statistical data, the operator or system administrator determines whether or not the current usage state of the cache memory is optimum. Based on the determination result, the range of data loaded from the magnetic disk device onto the cache memory, that is, the cache target range is appropriately controlled. In this way, the data transfer efficiency between the central processing unit and the magnetic disk drive is improved.

【0008】さらに、情報処理学会、第29回全国大
会、pp.169−170においては、シーケンシャル
・アクセスの認識をディスク制御装置で行い、あるトラ
ックに対するシーケンシャル・アクセスが完了した後、
このトラックをキャッシュメモリから最も追い出されや
すいデータとして扱うという方法が提案されている。
Furthermore, IPSJ, 29th National Convention, pp. In 169-170, the disk controller recognizes the sequential access, and after the sequential access to a track is completed,
A method has been proposed in which this track is treated as data that is most easily erased from the cache memory.

【0009】[0009]

【発明が解決しようとする課題】しかしながら、上記、
「電子情報通信ハンドブック」では、ローディングのオ
ーバーヘッドが大きく、アクセス対象データがキャッシ
ュ内に存在する確率が高い場合は問題にならないが、存
在確率が低い場合には、キャッシュ導入により、かえっ
て性能が劣化する可能性があった。
However, the above
In the "Electronic Information and Communication Handbook", this does not matter if the overhead of loading is large and the probability that the access target data exists in the cache is high, but if the existence probability is low, the performance will deteriorate rather by the introduction of the cache. There was a possibility.

【0010】これに対しては、アクセス対象となったレ
コードのみをキャッシュにロードする方式が考えられる
が、一般的には、トラック内のレコード長は可変長であ
り、トラック単位の管理を基本としたローディング方式
が必要である。
To address this, a method of loading only the record to be accessed into the cache is conceivable. Generally, however, the record length within a track is variable, and the management on a track-by-track basis is the basis. A different loading method is required.

【0011】また、特開昭55−154648号公報で
は、ディスク制御装置では、中央処理装置からアクセス
特性を指示し、これに従って、ローディング方法(動作
モード)を選択する。従って、中央処理装置に負担がか
かる。また、中央処理装置でアクセス特性が認識しきれ
ない場合、キャッシュメモリへの適切なローディング方
法が選択できなかった。
Further, in Japanese Patent Laid-Open No. 55-154648, the disk control unit instructs the access characteristic from the central processing unit and selects the loading method (operation mode) according to the access characteristic. Therefore, a burden is placed on the central processing unit. Further, when the central processing unit cannot fully recognize the access characteristics, it is impossible to select an appropriate loading method for the cache memory.

【0012】また、分割された個々の記憶領域について
見れば動作モードは固定であるので、同一の記憶領域内
において中央処理装置からディスク装置へのアクセスパ
ターンが経時的変動する場合にはキャッシュメモリの利
用効率を最適に維持することができないという問題があ
る。
Further, since the operation mode is fixed with respect to each of the divided storage areas, if the access pattern from the central processing unit to the disk device in the same storage area changes with time, the cache memory may be changed. There is a problem that the utilization efficiency cannot be optimally maintained.

【0013】すなわち、同一の記憶領域に設けられたフ
ァイルを、たとえばランダムなアクセスが主なオンライ
ン処理とシーケンシャルなアクセスが主なバッチ処理と
で共用する場合などに対応が困難となる。
That is, it becomes difficult to handle files provided in the same storage area, for example, when random access is mainly used for online processing and sequential access is mainly used for batch processing.

【0014】特開昭60−14360号公報では、磁気
ディスク制御装置において得られた統計情報を判断する
のがオペレータやシステム管理者である。したがって、
業務により磁気ディスク装置への中央処理装置からのア
クセスパターンが異なるなどの場合、実行する業務に合
わせて時々刻々とキャッシュ対象範囲(キャッシュメモ
リにロードすべきデータの範囲)を最適に制御すること
が事実上不可能であるという問題点がある。
In Japanese Patent Laid-Open No. 60-14360, it is an operator or system administrator who judges the statistical information obtained in the magnetic disk controller. Therefore,
When the access pattern from the central processing unit to the magnetic disk unit differs depending on the business, the cache target range (the range of data to be loaded in the cache memory) can be optimally controlled momentarily according to the business to be executed. The problem is that it is virtually impossible.

【0015】さらに、上記情報処理学会論文では、ディ
スク装置への典型的なアクセスパターンであるシーケン
シャル・アクセスの認識を行っている。認識の結果、ア
クセス済みのトラックをキャッシュから最も追い出され
やすく制御するのみで、特にローディング方法を選択す
るという内容ではない。
Further, in the paper of the Information Processing Society of Japan, the sequential access, which is a typical access pattern to the disk device, is recognized. As a result of the recognition, the accessed track is controlled to be most easily ejected from the cache, and the loading method is not particularly selected.

【0016】本発明の目的は、磁気ディスクのトラック
を構成しているレコードが可変長の場合、トラック単位
の管理方法をベースとしてローディングオーバーヘッド
を少なくすることが可能な、ローディング方法を提供す
ることにある。
An object of the present invention is to provide a loading method capable of reducing the loading overhead based on a track-unit management method when the records constituting the tracks of the magnetic disk have a variable length. is there.

【0017】本発明の他の目的は、ディスク制御装置に
おいて、各入出力要求のアクセス特性を把握して、この
結果、ヒット率の向上とローディング・オーバーヘッド
の軽減を実現するローディング方法を提供することにあ
る。
Another object of the present invention is to provide a loading method in a disk control device for grasping the access characteristics of each I / O request and, as a result, improving the hit rate and reducing the loading overhead. It is in.

【0018】[0018]

【課題を解決するための手段】本発明の目的は次のよう
にして達成される。ディスク制御装置はディスク装置と
中央処理装置に接続され、かつ、ディスク装置上のある
物理領域をキャッシュ管理単位(キャッシュメモリの管
理単位)とするキャッシュメモリを有する。中央処理装
置からのアクセス対象となった領域を含むキャッシュ管
理単位内のデータが、キャッシュメモリ内に全く存在し
ないとき、中央処理装置からのアクセス対象となった領
域のデータのみをキャッシュメモリにロードする初期ロ
ーディングを行う。この後、このキャッシュ管理単位内
のデータで、すでにキャッシュメモリ内に格納されてい
るデータ以外のデータにアクセスがあったとき、このキ
ャッシュ管理単位内の、キャッシュメモリ内に格納され
ているデータ以外のデータをキャッシュメモリに追加ロ
ードすることを特徴とするデータローディング方法によ
って達成される。
The object of the present invention is achieved as follows. The disk control device is connected to the disk device and the central processing unit, and has a cache memory having a physical area on the disk device as a cache management unit (cache memory management unit). When the data in the cache management unit including the area to be accessed from the central processing unit does not exist in the cache memory at all, only the data in the area to be accessed from the central processing unit is loaded into the cache memory. Perform initial loading. After that, when data other than the data already stored in the cache memory is accessed in the data in this cache management unit, data other than the data stored in the cache memory in this cache management unit is accessed. This is achieved by a data loading method characterized by additionally loading data into the cache memory.

【0019】さらに、本発明の他の目的は次のようにし
て達成される。
Further, another object of the present invention is achieved as follows.

【0020】入出力要求をシーケンシャル・アクセスと
これ以外の入出力要求とに分類する。シーケンシャルア
クセスはアクセス特性の把握が容易で、かつ、効率のよ
いローディング方法を決定することが容易である。
I / O requests are classified into sequential access and other I / O requests. With sequential access, it is easy to understand the access characteristics and it is easy to determine an efficient loading method.

【0021】シーケンシャル・アクセスと認識した場
合、現在アクセス中のトラックから、複数のトラックの
先読み・ローディングを行う。
When the sequential access is recognized, a plurality of tracks are prefetched and loaded from the currently accessed track.

【0022】シーケンシャル・アクセスでないと認識し
た場合、この入出力要求がアクセス対象としているデー
タを含むキャッシュ管理単位(通常はトラック)がキャ
ッシュメモリ内に滞在する間に中央処理装置からアクセ
ス対象となる部分を統計情報により予測し、この部分の
みをローディングすることにより、ヒット率とローディ
ングの軽減をバランスよく実現する。
When it is recognized that the I / O request is not a sequential access, a portion to be accessed from the central processing unit while the cache management unit (usually a track) containing the data to be accessed by this input / output request stays in the cache memory. Prediction is performed based on the statistical information, and only this part is loaded, so that the hit rate and the reduction of the loading are balanced.

【0023】[0023]

【発明の実施の形態】以下、本発明の一実施例を図面を
引用しつつ説明する。
BEST MODE FOR CARRYING OUT THE INVENTION An embodiment of the present invention will be described below with reference to the drawings.

【0024】図1は、本発明の一実施例であるキャッシ
ュ制御方法の一例の動作を説明する概念図である。図2
はこのキャッシュ制御方法が適用される情報処理システ
ムの一例の構成を示すブロック図である。
FIG. 1 is a conceptual diagram for explaining the operation of an example of a cache control method which is an embodiment of the present invention. Figure 2
FIG. 3 is a block diagram showing a configuration of an example of an information processing system to which this cache control method is applied.

【0025】まず、図2などにより、本実施例における
情報処理システムの構成の概略を説明する。
First, the outline of the configuration of the information processing system in this embodiment will be described with reference to FIG.

【0026】たとえば、汎用の電子計算機などの一部を
構成する中央処理装置(Central Proces
sing Unit)1(上位システムと呼ぶこともあ
る。)と、外部記憶装置としての磁気ディスク装置2と
の間に、両者間におけるデータおよびコマンドなどの授
受を制御するディスク制御装置3(制御装置)が設けら
れている。
For example, a central processing unit (Central Processes) forming a part of a general-purpose electronic computer or the like.
disk unit 3 (control unit) that controls the exchange of data and commands between the Sing Unit 1 (sometimes called a host system) and the magnetic disk unit 2 as an external storage device. Is provided.

【0027】図2にはディスク装置2を1台図示してあ
るが、一般に、一台のディスク制御装置が接続される。
Although one disk device 2 is shown in FIG. 2, generally one disk controller is connected.

【0028】中央処理装置1には、中央処理装置1と外
部との間におけるデータおよびコマンドなどの授受を制
御するチャネル装置11が設けられている。
The central processing unit 1 is provided with a channel device 11 for controlling the exchange of data and commands between the central processing unit 1 and the outside.

【0029】一方、ディスク制御装置3には、チャネル
インターフェイス制御部31およびデバイスインターフ
ェイス制御32部が設けられており、それぞれ、チャネ
ル装置11とディスク制御装置3との間におけるデータ
およびコマンドの遣り取り、およびディスク制御装置3
と磁気ディスク装置2との間におけるデータの遣り取り
などを受け持っている。
On the other hand, the disk controller 3 is provided with a channel interface controller 31 and a device interface controller 32, which exchanges data and commands between the channel device 11 and the disk controller 3, respectively. Disk controller 3
Is in charge of exchanging data between the disk and the magnetic disk device 2.

【0030】さらに、このチャネルインターフェイス制
御部31とデバイスインターフェイス制御部32との間
には、これらを制御するプロセッサ33と、当該プロセ
ッサ33の制御プログラムなどが格納された制御メモリ
34が設けられている。
Further, between the channel interface control unit 31 and the device interface control unit 32, a processor 33 for controlling them and a control memory 34 in which a control program of the processor 33 and the like are stored are provided. .

【0031】また、チャネルインターフェイス制御部3
1とデバイスインターフェイス制御部32とは、データ
パス35によって接続されている。
Further, the channel interface controller 3
1 and the device interface control unit 32 are connected by a data path 35.

【0032】このデータパス35の一部には、たとえば
磁気ディスク装置2よりもはるかに動作の高速な半導体
メモリなどからなるキャッシュメモリ36が設けられて
いる。
A cache memory 36 made up of a semiconductor memory which operates at a much higher speed than that of the magnetic disk device 2, for example, is provided in a part of the data path 35.

【0033】そして、磁気ディスク装置2に格納されて
いるデータの中で、上位のチャネル装置11を介して中
央処理装置1からアクセスされる確率の高いものを予め
複写しておき、このキャッシュメモリ36に格納された
データによって上位の中央処理装置1の側からのアクセ
ス要求に応答することにより、高速のチャネル装置11
の側と動作の遅い磁気ディスク装置2との間におけるデ
ータの授受の効率を高めるものである。
Then, of the data stored in the magnetic disk device 2, data which is highly likely to be accessed from the central processing unit 1 via the upper channel device 11 is copied in advance, and this cache memory 36 is used. By responding to an access request from the upper-level central processing unit 1 side by the data stored in the high-speed channel unit 11
The efficiency of data transmission / reception between the disk side and the slow-moving magnetic disk device 2 is improved.

【0034】さらに、データパス35において、キャッ
シュメモリ36よりもデバイスインターフェイス制御部
32により近い側には、データバッファ37が介設され
ており、デバイスインターフェイス制御部32と、キャ
ッシュメモリ36およびチャネルインターフェイス制御
部31などとの間で授受されるデータが一時的に蓄えら
れるように構成されている。
Further, in the data path 35, a data buffer 37 is provided on the side closer to the device interface control unit 32 than the cache memory 36, and the device interface control unit 32, the cache memory 36 and the channel interface control are provided. The data exchanged with the unit 31 and the like is temporarily stored.

【0035】また、キャッシュメモリ36およびデータ
バッファ37の動作は前記マイクロプロセッサ33によ
って制御されている。
The operations of the cache memory 36 and the data buffer 37 are controlled by the microprocessor 33.

【0036】一方、前記磁気ディスク装置2において
は、図4に示されるように、記憶媒体である複数の磁気
ディスク21の各々の両面に同心円状に複数のトラック
22が設けられており、各々のトラック22には図3に
示されるようにデータの記録単位の一種であるレコード
が複数個格納されている。
On the other hand, in the magnetic disk device 2, as shown in FIG. 4, a plurality of tracks 22 are provided concentrically on both sides of each of a plurality of magnetic disks 21 which are storage media, and each track 22 is provided. As shown in FIG. 3, the track 22 stores a plurality of records, which is a kind of data recording unit.

【0037】また、個々の磁気ディスク21の両面に
は、それぞれ磁気ディスク21の回転中心から距離が互
いに等しい状態で当該磁気ディスク21の径方向に同時
に同一方向に移動して、目的のトラック上への位置付け
動作、すなわちシーク動作を行う複数の図示しないヘッ
ドが対向して配置されており、この図示しないヘッドを
介して任意のトラック22に対する前記レコードなどの
データの記録・再生動作が行われる。
Further, on both surfaces of each magnetic disk 21, the magnetic disks 21 are simultaneously moved in the same radial direction in the same direction with the distances from the center of rotation of the magnetic disks 21 being equal to each other, and onto the target track. A plurality of heads (not shown) for performing the positioning operation, that is, the seek operation are arranged to face each other, and the recording / reproducing operation of the data such as the record on an arbitrary track 22 is performed via the heads (not shown).

【0038】さらに、この複数のヘッドを磁気ディスク
21の径方向に変位させることなしに、すなわち回転中
心から等距離にあり、所要時間の長いシーク動作を行う
ことなくヘッドの選択操作のみで高速に連続したアクセ
スが可能な一群のトラック22によりシリンダ23が構
成されている。
Furthermore, without displacing the plurality of heads in the radial direction of the magnetic disk 21, that is, at the same distance from the center of rotation, the seek operation is performed at a high speed without performing a seek operation that takes a long time. A cylinder 23 is composed of a group of tracks 22 that can be continuously accessed.

【0039】そして、上位の中央処理装置1の側からの
任意のレコードへのアクセスは、このシリンダ23の番
号,図示しないヘッドの番号(トラック番号)およびレ
コード番号などを指定して行われるものである。
The access to any record from the side of the upper central processing unit 1 is performed by designating the number of the cylinder 23, the head number (track number) (not shown) and the record number. is there.

【0040】この場合、キャッシュメモリ36には、図
1に示されるように、磁気ディスク装置2における複数
のトラック22の任意の幾つかにそれぞれ対応する複数
のトラックスロット361〜367…が設けられてい
る。磁気ディスク装置2の任意のトラック22に格納さ
れているレコードRなどのデータがそのトラック22に
格納されている場合と等価な記録形式でこのトラックス
ロット361〜367…に随時複写(ロード)される。
In this case, as shown in FIG. 1, the cache memory 36 is provided with a plurality of track slots 361 to 367, which respectively correspond to arbitrary some of the plurality of tracks 22 in the magnetic disk device 2. There is. The data such as the record R stored in any track 22 of the magnetic disk device 2 is copied (loaded) into these track slots 361 to 367 at any time in a recording format equivalent to the case where the data is stored in that track 22. .

【0041】これにより、チャネル装置11は、そのア
クセスに際して、キャッシュメモリ36に目的のデータ
が存在する場合には、高速なアクセスが可能なものであ
る。
As a result, the channel device 11 can perform high-speed access when the target data exists in the cache memory 36 at the time of the access.

【0042】さらに、キャッシュメモリ36の内部にお
けるこれらの複数のトラックスロット361〜367…
は、キャッシュメモリ管理テーブル4によって管理され
ている。
Further, these plural track slots 361 to 367 ... Inside the cache memory 36.
Are managed by the cache memory management table 4.

【0043】キャッシュ管理テーブル4には個々のトラ
ックスロットに対応する複数のエントリ41が設けられ
る。個々のエントリ41には、個々のトラックスロット
に格納されたデータの複写元のトラック22の磁気ディ
スク21における図示しない格納位置情報(シリンダ番
号,トラック番号など)と、キャッシュメモリ36内に
おけるトラックスロットの格納位置を指す図示しないポ
インタなどが記録されている。
The cache management table 4 is provided with a plurality of entries 41 corresponding to individual track slots. In each entry 41, storage position information (cylinder number, track number, etc.) not shown in the magnetic disk 21 of the track 22 from which the data stored in each track slot is copied, and the track slot information in the cache memory 36 are stored. A pointer (not shown) indicating the storage position is recorded.

【0044】さらに、個々のエントリ41、すなわち個
々のエントリ41に属する個々のトラックスロットはキ
ャッシュ管理テーブル4においてLRU法(Least
Recently Used low)により管理さ
れている。
Further, each entry 41, that is, each track slot belonging to each entry 41 is stored in the cache management table 4 by the LRU method (Least method).
It is managed by "Recently Used low".

【0045】すなわち、中央処理装置1からチャネル装
置11を介して磁気ディスク装置2の所定のデータにア
クセスの要求があった場合には、まず、キャッシュ管理
テーブル4を検索してキャッシュメモリ36上に目的の
データがあるか否かが調べられる。目的のデータが存在
する(以下、ヒットと記す)場合には、キャッシュメモ
リ36内のデータを用いた高速なアクセスが可能とな
る。一方、目的のデータが存在しない(以下、ミスと記
す)場合には、直接に磁気ディスク装置2に対してアク
セスを行うことになる。
That is, when there is a request from the central processing unit 1 to access predetermined data in the magnetic disk unit 2 via the channel unit 11, first, the cache management table 4 is searched and stored in the cache memory 36. It is checked whether or not the target data is available. When the target data exists (hereinafter referred to as a hit), high-speed access using the data in the cache memory 36 becomes possible. On the other hand, when the target data does not exist (hereinafter referred to as a mistake), the magnetic disk device 2 is directly accessed.

【0046】このミスの場合には、たとえば、磁気ディ
スク装置2からチャネル装置11に読み出されるデータ
は同時にキャッシュメモリ36に複写され、次のアクセ
スに備えることとなる。この複写に際しては、解放され
るべきトラックスロットが選択される。キャッシュメモ
リ36に設けられた複数のトラックスロット361〜3
67…の中で最も古い時点でアクセスがあったもの、す
なわち、キャッシュ管理テーブル4のLRU管理におい
て最も順位の低い(OUT側)エントリ41に対応する
ものが選択される。複写されたトラックスロットに対応
するエントリ41をLRU管理の最上位(IN側)に位
置づける操作が行われる。
In the case of this miss, for example, the data read from the magnetic disk device 2 to the channel device 11 is simultaneously copied to the cache memory 36 to prepare for the next access. During this copying, the track slot to be released is selected. A plurality of track slots 361 to 3 provided in the cache memory 36
Of 67, the one accessed at the oldest time, that is, the one corresponding to the entry 41 having the lowest rank (OUT side) in the LRU management of the cache management table 4 is selected. An operation is performed to position the entry 41 corresponding to the copied track slot at the highest level (IN side) of LRU management.

【0047】すなわち、最近にアクセスされたデータは
次にアクセスされる可能性が高いのでなるべく長くキャ
ッシュメモリ36の内部に保持する。最も古い時点でア
クセスされたデータが格納されているトラックスロット
を新しいデータの複写のために開放する。このようにし
てヒット率の向上を図るものである。
That is, since recently accessed data is highly likely to be accessed next, it is held in the cache memory 36 as long as possible. The track slot in which the data accessed at the oldest point in time is stored is opened for copying new data. In this way, the hit rate is improved.

【0048】本実施例においては、前述のようなミスの
際に行われる磁気ディスク装置2からキャッシュメモリ
36への所望のデータのロードの仕方などを規定するキ
ャッシュ動作モードとして少なくとも次の2種類が設け
られている。ローディングモードとレコードモードであ
る。
In this embodiment, there are at least the following two types of cache operation modes that define the method of loading desired data from the magnetic disk device 2 to the cache memory 36 in the case of a mistake as described above. It is provided. There are loading mode and record mode.

【0049】図3に示されるように、磁気ディスク装置
2における任意のトラック22に格納されている複数の
レコードのうち、任意のレコードRにアクセスがあっ
た場合に、レコードRの後方(必ずしも連続していな
い)に格納されているレコードに対するアクセスの確率
が高いと見なす。レコードRの次から、そのトラック
終端までのすべてのレコードをキャッシュメモリ36の
所定のトラックスロットに複写する。これがローディン
グモードである。レコードモードは複写の所要時間およ
びデータパス35の占有時間などを最小にするなどの観
点からアクセスのあった当該レコードRのみを複写す
るモードである。
As shown in FIG. 3, when an arbitrary record R n among a plurality of records stored in an arbitrary track 22 in the magnetic disk drive 2 is accessed, the record R n is recorded after the record R n ( It is considered that there is a high probability of access to records stored in (not necessarily consecutive). All the records from the record R n to the end of the track are copied to a predetermined track slot of the cache memory 36. This is the loading mode. The record mode is a mode in which only the relevant record R p that has been accessed is copied from the viewpoint of minimizing the required time for copying, the occupied time of the data path 35, and the like.

【0050】前述のキャッシュ管理テーブル4の複数の
エントリ41の各々は、次のように構成されている。図
1に示されるように、エントリ41に属するトラックス
ロットに対するアクセスの際に後述の所定の条件に従っ
てインクリメントされるカウンタ41aと、そのトラッ
クスロットにおける現在のキャッシュ動作モードを識別
するモード識別情報41bとが記録されるように、各々
のエントリ41は構成されている。
Each of the plurality of entries 41 of the cache management table 4 described above is constructed as follows. As shown in FIG. 1, a counter 41a that is incremented according to a predetermined condition to be described later when accessing a track slot belonging to the entry 41 and mode identification information 41b that identifies the current cache operation mode in the track slot. Each entry 41 is configured to be recorded.

【0051】さらに、本実施例の場合には、磁気ディス
ク21において回転中心から等距離にある一群のトラッ
ク22(トラックスロット)を含む前述のシリンダ23
の各々に対応する複数のエントリ51を有するシリンダ
統計情報テーブル5が設けられている。個々のトラック
スロットにおけるキャッシュ動作モードはこのシリンダ
単位で管理されている。
Further, in the case of the present embodiment, the above-mentioned cylinder 23 including a group of tracks 22 (track slots) equidistant from the center of rotation in the magnetic disk 21.
A cylinder statistical information table 5 having a plurality of entries 51 corresponding to each of the above is provided. The cache operation mode in each track slot is managed in this cylinder unit.

【0052】すなわち、このシリンダ統計情報テーブル
5の各々のエントリ51には、当該エントリ51に対応
するシリンダ23の現在のキャッシュ動作モードを記録
するモード識別情報51aと、当該シリンダ23に対す
る全アクセス回数が記録されるアクセス回数記録部51
bと、前記キャッシュ管理テーブル4におけるカウンタ
41aの値などに基づいて後述の所定の契機に+1され
るローディングモードカウンタ51cと、レコードモー
ドカウンタ51dとが設けられている。
That is, in each entry 51 of the cylinder statistical information table 5, the mode identification information 51a for recording the current cache operation mode of the cylinder 23 corresponding to the entry 51 and the total number of accesses to the cylinder 23 are stored. Recorded access count recording unit 51
b, a loading mode counter 51c that is incremented by +1 based on a value of the counter 41a in the cache management table 4, and the like, and a record mode counter 51d.

【0053】そして、本実施例では、アクセス回数記録
部51bの値と、ローディングモードカウンタ51cま
たはレコードモードカウンタ51dとの比の大小に応じ
て、個々のシリンダ23を単位として随時、前述のキャ
ッシュ動作モードを切り替える操作が自動的に行われる
ものである。
In the present embodiment, the above-described cache operation is performed at any time in units of individual cylinders 23 depending on the ratio of the value of the access count recording section 51b and the loading mode counter 51c or the record mode counter 51d. The operation of switching the mode is automatically performed.

【0054】以下、本実施例のキャッシュ制御方式の動
作の一例を図5を用いて説明する。
An example of the operation of the cache control method of this embodiment will be described below with reference to FIG.

【0055】中央処理装置1は、チャネル装置11を介
してディスク制御装置3にシリンダ番号,ヘッド番号
(トラック番号),レコード番号などを指示して磁気デ
ィスク装置2に対するアクセスを要求する。この要求に
対応して、図5の処理が開始する。
The central processing unit 1 instructs the disk control unit 3 via the channel unit 11 the cylinder number, head number (track number), record number, etc., and requests access to the magnetic disk unit 2. In response to this request, the processing of FIG. 5 starts.

【0056】ディスク制御装置3は、シリンダ統計情報
テーブル5の該当するシリンダ番号CYL#のアクセス
回数記録部51bを+1する(ステップ60)。次に、
このシリンダのキャッシュ動作モードを判定する(ステ
ップ61)。
The disk controller 3 increments the access count recording section 51b of the corresponding cylinder number CYL # in the cylinder statistical information table 5 by 1 (step 60). next,
The cache operation mode of this cylinder is determined (step 61).

【0057】ローディングモードの場合を説明する。指
示されたシリンダ番号,トラック番号などにより、キャ
ッシュメモリ36を検索し、目的のレコードを探す(ス
テップ62)。目的のレコードが見つからないとき(ス
テップ63)、次のように処理する。
The case of the loading mode will be described. The cache memory 36 is searched by the designated cylinder number, track number, etc., and a target record is searched (step 62). When the target record is not found (step 63), the following processing is performed.

【0058】目的のレコードをロードするトラックスロ
ットを解放する(ステップ64)。このトラックスロッ
トの解放に関しては後述する。中央処理装置1がアクセ
スを要求した目的のレコードRに引き続く後続のレコ
ードRm+1,Rm+2を、ロードする(ステップ6
6)。このローディングは磁気ディスク装置2の該当す
るシリンダ番号およびトラック番号のトラック22か
ら、LRU法によって管理される所定のたとえばトラッ
クスロット362にロードすることにより実現する。こ
のローディングと同時または、トラックスロットに格納
した後に、要求されたレコードRをチャネル装置11
に送出する(ステップ67)。キャッシュ管理テーブル
4の該当エントリ41のモード識別情報41bがローデ
ィングモードを示すようにする(ステップ68)。当該
トラックスロットに対応するキャッシュ管理テーブル4
の該当エントリ41のカウンタ41aに初期値1をセッ
トする(ステップ69)。
The track slot for loading the target record is released (step 64). The release of the track slot will be described later. The subsequent record R m + 1 , R m + 2 following the target record R m requested by the central processing unit 1 is loaded (step 6).
6). This loading is realized by loading from the track 22 of the corresponding cylinder number and track number of the magnetic disk device 2 into a predetermined track slot 362 managed by the LRU method. At the same time as this loading or after storing in the track slot, the requested record R m is sent to the channel device 11
(Step 67). The mode identification information 41b of the corresponding entry 41 of the cache management table 4 indicates the loading mode (step 68). Cache management table 4 corresponding to the track slot
The initial value 1 is set in the counter 41a of the corresponding entry 41 (step 69).

【0059】そして、以降、当該トラックスロット36
2において後続のレコードRm+1,Rm+2にアクセ
スの要求があれば、当該レコードRm+1,Rm+2
キャッシュ内に保持されているので高速にアクセスでき
る(ステップ70)。この場合、ディスク制御装置3
は、キャッシュ管理テーブル4における当該トラックス
ロット362に対応するエントリ41のカウンタ41a
を+1する(ステップ71)。
Then, thereafter, the track slot 36 concerned
If there is a request for access to subsequent records R m + 1 and R m + 2 in 2 , the records R m + 1 and R m + 2 can be accessed at high speed because they are held in the cache (step 70). In this case, the disk controller 3
Is the counter 41a of the entry 41 corresponding to the track slot 362 in the cache management table 4.
Is incremented by 1 (step 71).

【0060】したがって、現在ローディングモードにあ
るトラックスロット362は、ロードの契機となった先
頭のレコードRで1回、後方のレコードRm+2で1
回の合計2回アクセスされたのでキャッシュ管理テーブ
ル4のカウンタ41aの値は2となる。
Therefore, the track slot 362 currently in the loading mode is once in the leading record R m that triggered the loading and 1 in the trailing record R m + 2 .
The value of the counter 41a of the cache management table 4 becomes 2 because the access has been made twice in total.

【0061】つまり、本カウンタ41aにより対応する
現在ローディングモードにあるトラックスロットが何回
アクセスされたかがわかる。
That is, it is possible to know how many times the corresponding track slot in the current loading mode is accessed by the counter 41a.

【0062】すなわち、1度しかアクセスされない場合
(ロード時のみの場合)、カウンタは初期値1のままで
ある。たとえば同じローディングモードにあるトラック
スロット365のカウンタ41aの値は1であるのでロ
ードの契機となった先頭のR しかアクセスされていな
いことがわかる。
That is, when access is made only once
(Only when loading), the counter remains at the initial value 1.
is there. For example a truck in the same loading mode
The value of the counter 41a of the slot 365 is 1, so
Leading R that triggered the game nOnly accessed
I understand that

【0063】いま、現在ローディングモードにあるトラ
ックスロット365は、次に新しいデータがキャッシュ
内にロードされる際に、キャッシュメモリ36から解放
される(トラックスロット365にアクセスがきた場合
を除く)位置にある。すなわち、当該トラックスロット
365に対応するキャッシュ管理テーブル4のエントリ
41のLRU法の順位が最下位にあるとする。
The track slot 365 currently in the loading mode is released from the cache memory 36 (except when the track slot 365 is accessed) when the new data is loaded into the cache next time. is there. That is, it is assumed that the entry 41 of the cache management table 4 corresponding to the track slot 365 has the lowest rank in the LRU method.

【0064】このとき、本実施例では、ローディングモ
ードにある当該トラックスロット365が解放される
(ステップ64)際に、キャッシュ管理テーブル4にお
いて当該トラックスロット365に対応するエントリ4
1のカウンタ41aが規定の値以下であるもの(本実施
例の場合1)については、シリンダ統計情報テーブル5
において当該トラックスロット365が属するシリンダ
23のエントリ51にあるローディングモードカウンタ
51cを+1する(ステップ65)。
At this time, in this embodiment, when the track slot 365 in the loading mode is released (step 64), the entry 4 corresponding to the track slot 365 in the cache management table 4 is released.
If the counter 41a of 1 is equal to or less than the specified value (1 in the case of the present embodiment), the cylinder statistical information table 5
At, the loading mode counter 51c in the entry 51 of the cylinder 23 to which the track slot 365 belongs is incremented by 1 (step 65).

【0065】すなわち、シリンダ統計情報テーブル5に
おけるローディングモードカウンタ51cの値は、ロー
ディングモードによるキャッシュメモリ36へのロード
後、ロードの契機となった当該トラックスロットの先頭
レコード以外のレコードには1度もアクセスがこないま
ま開放されたトラックスロットが当該シリンダ23の中
に何本あるかを示すことになる。
That is, the value of the loading mode counter 51c in the cylinder statistic information table 5 is once stored in the records other than the first record of the track slot that triggered the loading after loading in the cache memory 36 in the loading mode. It indicates how many track slots are opened in the cylinder 23 without being accessed.

【0066】そして、ディスク制御装置3は、当該シリ
ンダ23にアクセスがくるたびにローディングモードカ
ウンタ51cの値のアクセス回数記録部51bの値に対
する割合Xを求める(ステップ72)。
[0066] Then, the disk control unit 3 determines the ratio X L with respect to the value of the access count record unit 51b of the value of the loading mode counter 51c each time comes access to the cylinder 23 (step 72).

【0067】そして、この割合Xがある規定の割合
(K)を超えていた場合(本例の場合K=0.8)(ス
テップ73)、磁気ディスク装置2からキャッシュメモ
リ36へのロードに際して、ローディングモードにより
同一トラック内の複数のレコードを複写しても無駄であ
ると判断し、キャッシュ動作モードを、現在のローディ
ングモードからレコードモードに切り替える(ステップ
74)。
[0067] Then, if it exceeds the prescribed percentage of where this ratio X L (K) (in the present example K = 0.8) (step 73), when loaded from the magnetic disk device 2 to the cache memory 36 It is judged that it is useless to copy a plurality of records in the same track by the loading mode, and the cache operation mode is switched from the current loading mode to the record mode (step 74).

【0068】同時に、シリンダ統計情報テーブル5の当
該シリンダ23に対応するエントリ51のアクセス回数
記録部51bおよびローディングモードカウンタ51c
をクリアする(ステップ75)。
At the same time, the access count recording section 51b and the loading mode counter 51c of the entry 51 corresponding to the cylinder 23 in the cylinder statistical information table 5 are stored.
Is cleared (step 75).

【0069】たとえば、図1のシリンダ統計情報テーブ
ル5において、シリンダ番号CYL#が248番のエン
トリ51においては、アクセス回数記録部51bおよび
ローディングモードカウンタ51cの値がそれぞれ14
および12であり、 X=12/14≒0.85 となる。Xが規定の0.8を超えているので動作モー
ドの変更が必要であると判断される。
For example, in the cylinder statistical information table 5 of FIG. 1, in the entry 51 having the cylinder number CYL # of 248, the values of the access count recording section 51b and the loading mode counter 51c are 14 respectively.
And 12, and X L = 12 / 14≈0.85. Change of the operation mode because X L exceeds 0.8 prescribed is determined to be necessary.

【0070】このため、ディスク制御装置3は、以後、
当該シリンダ番号CYL#が248番のシリンダ23に
属する1群のトラック22からキャッシュメモリ36へ
のロードは、レコードモードが不適と判断されるまでレ
コードモードで行う。
Therefore, the disk controller 3 will
Loading from the group of tracks 22 belonging to the cylinder 23 having the cylinder number CYL # of 248 to the cache memory 36 is performed in the record mode until it is determined that the record mode is inappropriate.

【0071】一方、上位の中央処理装置1の側からアク
セス要求のあったシリンダ23が現在レコードモードの
場合(ステップ61)、まず、指示されたシリンダ番
号,トラック番号,レコード番号などにより、キャッシ
ュメモリ36を検索し、目的のレコードを探す(ステッ
プ76)。
On the other hand, when the cylinder 23 for which an access request has been issued from the higher-level central processing unit 1 is currently in the record mode (step 61), first, the cache memory is determined by the designated cylinder number, track number, record number, etc. 36 is searched for the target record (step 76).

【0072】ここで、現在レコードモードにあるトラッ
クスロット367において、当該トラックスロット36
7に対応するトラック22における後続レコードR
p+2に対するアクセスの場合、キャッシュメモリ36
上に目的のレコードRp+2は存在しない(ステップ7
7)ので、磁気ディスク装置2の当該トラック22から
キャッシュメモリ36へロード(ステップ78)しなけ
ればならない。そして、チャネル装置11へそのレコー
ドを出力する(ステップ79)。
Here, in the track slot 367 currently in the record mode, the track slot 36 concerned
Subsequent record R in track 22 corresponding to 7
In the case of access to p + 2 , the cache memory 36
There is no target record R p + 2 above (step 7
7), the track 22 of the magnetic disk device 2 must be loaded into the cache memory 36 (step 78). Then, the record is output to the channel device 11 (step 79).

【0073】この際に、本実施例のディスク制御装置3
はシリンダ統計情報テーブル5の当該トラックが属する
シリンダ23に対応するエントリ51のレコードモード
カウンタ51dを+1する(ステップ80)。
At this time, the disk controller 3 of the present embodiment
Increments the record mode counter 51d of the entry 51 corresponding to the cylinder 23 to which the track belongs in the cylinder statistical information table 5 (step 80).

【0074】すなわち、任意のシリンダ23に対応する
エントリ51のレコードモードカウンタ51dは、レコ
ードモードによって当該シリンダに属する1群のトラッ
ク23の任意の一つから単一レコードのみをキャッシュ
メモリ36にロードしたが、当該レコードと同一トラッ
ク上にある後続レコードがアクセスされ、レコードモー
ドによるロードでは不充分であった回数を示している。
That is, the record mode counter 51d of the entry 51 corresponding to an arbitrary cylinder 23 loads only a single record into the cache memory 36 from an arbitrary one of the group of tracks 23 belonging to the cylinder according to the record mode. Indicates that the succeeding record on the same track as the record has been accessed, and the number of times the loading in the record mode was insufficient.

【0075】そして、当該シリンダにアクセスがくるた
びにレコードモードカウンタ51dの値のアクセス回数
記録部51bの値に対する割合Xを求める(ステップ
81)。この割合Xがある規定の値(L)を超えてい
た場合(本例の場合ではL=0.6)(ステップ8
2)、キャッシュ動作モードを現在のレコードモードか
らローディングモードに自動的に切り替える(ステップ
83)。
[0075] Then, a ratio X R for the values of the access count record unit 51b of the value of the record mode counter 51d each time comes access to the cylinder (step 81). If this ratio X R exceeds a certain prescribed value (L) (L = 0.6 in the case of this example) (step 8
2) The cache operation mode is automatically switched from the current record mode to the loading mode (step 83).

【0076】シリンダ統計情報テーブル5の当該シリン
ダ23に対応するエントリ51のアクセス回数記録部5
1bおよびレコードモードカウンタ51dをクリアする
(ステップ84)。
The access count recording section 5 of the entry 51 corresponding to the cylinder 23 in the cylinder statistical information table 5
1b and the record mode counter 51d are cleared (step 84).

【0077】たとえば、図1のシリンダ統計情報テーブ
ル5のシリンダ番号CYL#が249番のエントリ51
においては、現在のアクセス回数記録部51bおよびレ
コードモードカウンタ51dの値がそれぞれ13および
8であり、 X=8/13≒0.62 となる。Xが規定の値0.6を越えているのでキャッ
シュ動作モードを変更する必要がある。
For example, in the cylinder statistical information table 5 of FIG. 1, the entry 51 having the cylinder number CYL # of 249 is used.
, The current access count recording unit 51b and record mode counter 51d have values 13 and 8, respectively, and X R = 8 / 13≈0.62. Since X R exceeds the specified value of 0.6, it is necessary to change the cache operation mode.

【0078】したがって、ディスク制御装置3は、以
後、シリンダ番号CYL#が249番のシリンダ23に
属するトラック23からキャッシュメモリ36へのロー
ドを、ローディングモードが不適と判断されるまでロー
ディングモードで行う。
Therefore, the disk control device 3 thereafter loads the track 23 belonging to the cylinder 23 having the cylinder number CYL # of 249 into the cache memory 36 in the loading mode until it is determined that the loading mode is inappropriate.

【0079】なお、レコードモードでキャッシュメモリ
36に目的のレコードがある場合は、そのレコードをチ
ャネル装置へ出力する(ステップ85)。
If there is a target record in the cache memory 36 in the record mode, the record is output to the channel device (step 85).

【0080】このように、本実施例においては、キャッ
シュ管理テーブル4の個々のエントリ41に設けられた
カウンタ41a,モード情報部41b、さらにはシリン
ダ統計情報テーブル5の各々のエントリ51に設けられ
たアクセス回数記録部51b,ローディングモードカウ
ンタ51c,レコードモードカウンタ51dなどに基づ
く統計情報によって把握される、個々のキャッシュ動作
モードの稼働状況に応じて、臨機応変に、ディスク制御
装置3がシリンダ23などを単位として、ローディング
モードとレコードモードとの間でキャッシュ動作モード
を自動的に切り替える学習機能を有している。
As described above, in this embodiment, the counter 41a and the mode information section 41b provided in each entry 41 of the cache management table 4 and each entry 51 of the cylinder statistical information table 5 are provided. According to the operating status of each cache operation mode, which is grasped by the statistical information based on the access count recording unit 51b, the loading mode counter 51c, the record mode counter 51d, etc., the disk control device 3 flexibly selects the cylinder 23 and the like. As a unit, it has a learning function for automatically switching the cache operation mode between the loading mode and the record mode.

【0081】したがって、中央処理装置1からの磁気デ
ィスク装置2に格納されたデータに対するアクセスパタ
ーンが、種々の事情によって時々刻々と変化としても、
人手の介入を受けることなく、常に、最適なキャッシュ
動作モードを維持することが可能となる。
Therefore, even if the access pattern from the central processing unit 1 to the data stored in the magnetic disk unit 2 changes from moment to moment due to various circumstances,
It is possible to always maintain the optimum cache operation mode without human intervention.

【0082】これにより、キャッシュメモリ36を常
時、最大限に有効に活用することができる。
As a result, the cache memory 36 can always be utilized to the maximum extent.

【0083】また、中央処理装置1と磁気ディスク装置
2およびディスク制御装置3などからなる情報処理シス
テムにおいて、中央処理装置1と磁気ディスク装置2と
の間におけるデータの授受の効率が大幅に向上する。
Further, in the information processing system including the central processing unit 1, the magnetic disk unit 2, the disk control unit 3, etc., the efficiency of data transfer between the central processing unit 1 and the magnetic disk unit 2 is greatly improved. .

【0084】以上本発明によってなされた発明を実施例
に基づき具体的に説明したが、本発明は前記実施例に限
定されるものではなく、その要旨を逸脱しない範囲で種
々変更可能であることはいうまでもない。
Although the invention made by the present invention has been specifically described based on the embodiments, the present invention is not limited to the embodiments and various modifications can be made without departing from the scope of the invention. Needless to say.

【0085】たとえば、上記の実施例では、磁気ディス
ク装置が1つのディスク制御装置によって制御される場
合について説明したが、これに限らず、複数の磁気ディ
スク制御装置から制御されるようにしてもよい。その場
合、統計情報は各ディスク制御装置間で共有される。
For example, in the above embodiment, the case where the magnetic disk device is controlled by one disk control device has been described, but the present invention is not limited to this, and it may be controlled by a plurality of magnetic disk control devices. . In that case, the statistical information is shared between the disk control devices.

【0086】また、上記の実施例では、磁気ディスク装
置およびディスク制御装置などで構成される磁気ディス
クサブシステムが1つの中央処理装置に接続されている
が、複数中央処理装置に共有されるようにしてもよいこ
とは言うまでもない。
Further, in the above embodiment, the magnetic disk subsystem including the magnetic disk device and the disk controller is connected to one central processing unit, but it should be shared by a plurality of central processing units. It goes without saying that it is okay.

【0087】さらに、上記の本実施例ではキャッシュ動
作モードおよび統計情報をシリンダ単位で管理する場合
について説明したが、これに限らず、ボリュームもしく
はデータセット単位で管理してもよい。
Furthermore, in the above-mentioned embodiment, the case where the cache operation mode and the statistical information are managed in cylinder units has been described, but the present invention is not limited to this, and may be managed in volume or data set units.

【0088】また、キャッシュ動作モードとしては、前
記実施例中に例示されたものに限らないことは言うまで
もない。
Needless to say, the cache operation mode is not limited to the one exemplified in the above embodiment.

【0089】本発明になるキャッシュ制御方法によれ
ば、中央処理装置と外部記録装置との間に介在し、外部
記憶装置のデータの一部を記憶するキャッシュメモリを
備えた制御装置において、複数のキャッシュ動作モード
を備え、個々のキャッシュ動作モードの稼働状況に応じ
て前記キャッシュ動作モードを自動的に切り替える学習
機能を具備している。中央処理装置からのアクセス回数
と現在選択しているキャッシュ動作モードが有効もしく
は無効に働いた回数との比などとして得られる統計情報
の値が規定の闘値を超えたか否かを監視することで現在
のキャッシュ動作モードの稼働状況の適否を判断でき
る。必要に応じて他のより適したキャッシュ動作モード
へ自動的に切替えることが可能となる。
According to the cache control method of the present invention, in the control device provided with the cache memory interposed between the central processing unit and the external recording device and storing a part of the data of the external storage device, A cache operation mode is provided, and a learning function for automatically switching the cache operation mode according to the operating status of each cache operation mode is provided. By monitoring whether or not the value of statistical information obtained as a ratio between the number of accesses from the central processing unit and the number of times the currently selected cache operation mode has been activated or deactivated exceeds a specified threshold value. The suitability of the operating status of the current cache operation mode can be determined. It is possible to automatically switch to another more suitable cache operating mode as needed.

【0090】これにより、たとえ中央処理装置からのア
クセスパターンが時々刻々と変化しても、常時、最適な
キャッシュ動作モードを維持してキャッシュメモリを有
効に活用することができるという効果がある。
As a result, even if the access pattern from the central processing unit changes from moment to moment, there is an effect that the optimum cache operation mode can always be maintained and the cache memory can be effectively utilized.

【0091】また、本発明の情報処理システムにおいて
は、中央処理装置と、外部記憶装置と、この中央処理装
置と外部記憶装置との間に介在し、前記外部記憶装置の
データの一部を記憶するキャッシュメモリを備えた制御
装置とからなる情報処理システムであって、複数のキャ
ッシュ動作モードを備え、個々のキャッシュ動作モード
の稼働状況に応じて前記キャッシュ動作モードを自動的
に切り替える学習機能を具備している。中央処理装置か
らのアクセス回数と現在選択しているキャッシュ動作モ
ードが有効もしくは無効に働いた回数との比などとして
得られる統計情報の値が規定の闘値を超えたか否かを監
視することで現在のキャッシュ動作モードの稼働状況の
適否を判断できる。必要に応じて他のより適したキャッ
シュ動作モードへ自動的に切替えることができる。
Further, in the information processing system of the present invention, the central processing unit, the external storage unit, and the central processing unit and the external storage unit are interposed to store a part of the data of the external storage unit. An information processing system including a control device having a cache memory, which has a plurality of cache operation modes, and a learning function for automatically switching the cache operation modes according to the operating status of each cache operation mode. is doing. By monitoring whether or not the value of statistical information obtained as a ratio between the number of accesses from the central processing unit and the number of times the currently selected cache operation mode has been activated or deactivated exceeds a specified threshold value. The suitability of the operating status of the current cache operation mode can be determined. It can automatically switch to other, more suitable cache operating modes as needed.

【0092】これにより、たとえ中央処理装置からのア
クセスパターンが時々刻々と変化するような場合でも、
常時、最適なキャッシュ動作モードを維持してキャッシ
ュメモリを有効に機能させることが可能となり、キャッ
シュメモリが介在する中央処理装置と外部記憶装置との
間における情報の授受効率を向上させることができると
いう効果がある。
As a result, even if the access pattern from the central processing unit changes momentarily,
It is said that it is possible to maintain the optimum cache operation mode at all times and effectively operate the cache memory, and improve the efficiency of information transfer between the central processing unit and the external storage device in which the cache memory is interposed. effective.

【0093】次に、前述した実施例と同様に、キャッシ
ュメモリを有するディスク制御装置による、中央処理装
置と外部記憶装置との間の情報の転送効率を向上させる
別の実施例の説明をする。本実施例では、特にヒット率
の向上とローディングオーバーヘッドを軽減する方法に
ついて説明する。
Next, similar to the above-mentioned embodiment, another embodiment for improving the information transfer efficiency between the central processing unit and the external storage device by the disk controller having the cache memory will be described. In this embodiment, a method for improving the hit rate and reducing the loading overhead will be described.

【0094】図6は、キャッシュメモリ36の構成を示
すものである。キャッシュメモリ36は、固定長のセグ
メント30に分割されている。磁気ディスク装置2の一
つのトラックを格納するために、一つ以上のある個定数
のセグメント30が必要であるとする。
FIG. 6 shows the structure of the cache memory 36. The cache memory 36 is divided into fixed-length segments 30. It is assumed that one or more certain constant number of segments 30 are required to store one track of the magnetic disk device 2.

【0095】まず、一つのトラックを複数のセグメント
30で格納する場合について説明する。なお、このセグ
メント数をnとする。空きセグメントポインタ38は、
空いているセグメント30の集合の中のポインタを指
す。各セグメント30はポインタを持ち、セグメント3
0が空いているときには、次の空きセグメントを指す。
但し、最終の空きセグメント30のポインタはnull
とする。
First, the case where one track is stored in a plurality of segments 30 will be described. The number of segments is n. The empty segment pointer 38 is
Points to a pointer in the set of free segments 30. Each segment 30 has a pointer and segment 3
When 0 is free, it points to the next free segment.
However, the pointer of the last empty segment 30 is null.
And

【0096】図7は、キャッシュ管理テーブル6の構成
を示す。キャッシュ管理テーブル6は、図1に示したも
のと同様であるが、本実施例を説明するために必要な部
分のみを示している。キャッシュ管理テーブル6は、キ
ャッシュ管理ブロック40から構成されている。キャッ
シュ管理ブロック40は、前述のキャッシュメモリ36
内のセグメント30を一つ以上割当てているトラック対
応に割当てる。空きブロックポインタ42は、空いてい
るキャッシュ管理ブロック40の集合の先頭のキャッシ
ュ管理ブロック40へのポインタである。
FIG. 7 shows the structure of the cache management table 6. The cache management table 6 is the same as that shown in FIG. 1, but only the parts necessary for explaining the present embodiment are shown. The cache management table 6 is composed of a cache management block 40. The cache management block 40 uses the cache memory 36 described above.
Allocate one or more of the segments 30 in the track corresponding to the assigned track. The empty block pointer 42 is a pointer to the leading cache management block 40 in the set of empty cache management blocks 40.

【0097】図8は、上記キャッシュ管理ブロック40
の構成を示すものである。デバイスID58、シリンダ
ID59、トラックID52は、このキャッシュ管理ブ
ロックに対応したディスク装置2上のトラックのディス
ク装置2、シリンダ、トラックに関する識別子である。
セグメント・ポインタ(a)53〜同(n)54は、n
個のセグメント30へのポインタを示している。これら
のポインタのうち、対応するトラック中に、キャッシュ
メモリ36中に格納されている部分を格納しているセグ
メント数だけが有効であり、残りはnull状態とな
る。有効なポインタは、対応するセグメント30へのポ
インタとなる。
FIG. 8 shows the cache management block 40.
It shows the configuration of. The device ID 58, the cylinder ID 59, and the track ID 52 are identifiers for the disk device 2, cylinder, and track of the track on the disk device 2 corresponding to this cache management block.
The segment pointers (a) 53 to (n) 54 are n
A pointer to each segment 30 is shown. Of these pointers, only the number of segments storing the part stored in the cache memory 36 in the corresponding track is valid, and the rest is in the null state. A valid pointer becomes a pointer to the corresponding segment 30.

【0098】また、格納開始レコード識別子55は、キ
ャッシュメモリ36内に格納を開始したレコードの識別
子、例えば、このレコードのディスク装置2上のトラッ
クの格納開始位置、格納終了レコード識別子56は、キ
ャッシュメモリ36内の格納を最後に行ったレコードの
識別子を示している。すなわち、キャッシュメモリ36
内には、格納開始レコード識別子55、格納終了レコー
ド識別子56で示される範囲のレコード群が格納される
ことになる。次ポインタ57は、このキャッシュ管理ブ
ロック40が空いているとき、次のキャッシュ管理ブロ
ック40へのポインタとなる。ただし、他に空いている
キャッシュ管理ブロック40が無い場合、null値と
なる。
The storage start record identifier 55 is the identifier of the record that has started to be stored in the cache memory 36. For example, the storage start position of the track on the disk device 2 of this record and the storage end record identifier 56 are the cache memory. 36 shows the identifier of the record last stored in 36. That is, the cache memory 36
A record group in the range indicated by the storage start record identifier 55 and the storage end record identifier 56 is stored therein. The next pointer 57 becomes a pointer to the next cache management block 40 when the cache management block 40 is free. However, when there is no other free cache management block 40, the null value is set.

【0099】図9に、プロセッサ33の処理フローを図
を示す。図9は、プロセッサ33が、中央処理装置1か
ら入出力要求を受取った場合の処理フロー図である。こ
こでは、本発明の要点の一つに関する処理のみを述べ
る。ステップ90において、入出力対象トラックのキャ
ッシュメモリ36への格納状況をチェックする。次に、
受取った入出力要求の対象となるトラック全体がキャッ
シュメモリ36内に存在しない場合は、中央処理装置1
から受取った位置付け要求(必要なデータを読み出せる
ようにするためのディスク装置2に対する指示)に従っ
て、ディスク装置2に対して位置付け要求を発行する
(ステップ91)。なお、このとき、1トラックを格納
するに充分な個数のセグメント30を確保する。
FIG. 9 shows a processing flow of the processor 33. FIG. 9 is a processing flow diagram when the processor 33 receives an input / output request from the central processing unit 1. Here, only the processing relating to one of the main points of the present invention will be described. In step 90, the storage status of the input / output target track in the cache memory 36 is checked. next,
If the entire track that is the target of the received I / O request does not exist in the cache memory 36, the central processing unit 1
The positioning request is issued to the disk device 2 in accordance with the positioning request (instruction to the disk device 2 for making necessary data read) received from (step 91). At this time, a sufficient number of segments 30 to store one track are secured.

【0100】キャッシュメモリ36内に、入出力要求の
対象となるトラックの一部が格納されているが、アクセ
ス対象のレコードが、キャッシュメモリ36内に格納さ
れているレコード群よりトラック後の部分である場合は
次のように処理する。格納終了レコード識別子56より
後方の部分にアクセス対象のレコードが存在する場合に
は、ステップ92に示す如く、格納終了レコード識別子
56に示されたレコードの次のレコードからトラック内
の最終レコードまでを格納するため、ディスク装置2に
対して位置付け要求を発行する。このとき、このトラッ
クの最後のレコードを格納するのに充分なセグメント3
0の数を確保する。
Although a part of the track to be the input / output request is stored in the cache memory 36, the record to be accessed is the part after the track from the record group stored in the cache memory 36. If there is, process as follows. If there is a record to be accessed in a portion subsequent to the storage end record identifier 56, as shown in step 92, the records from the record next to the record indicated by the storage end record identifier 56 to the last record in the track are stored. Therefore, a positioning request is issued to the disk device 2. At this time, there is enough segment 3 to store the last record of this track.
Reserve a number of zeros.

【0101】アクセス対象のレコードが、キャッシュメ
モリ36内に存在するレコード群より前の部分である場
合は、次のように処理する。格納終了レコード識別子5
6より前方の部分にアクセス対象のレコードが存在する
場合には、ステップ93に示す如く、格納終了レコード
識別子56に示されたレコードの次のレコードからトラ
ック内の最終レコードまでをロードし、トラックの先頭
のレコードから格納開始レコード識別子55で示される
レコードの前のレコードまでを格納するため、ディスク
装置2に対して位置付け要求を発行する。この場合、こ
のトラックの最終レコードまで格納されている場合に
は、トラックの最初の部分からロードを開始する。ま
た、このとき、上記ロード処理に必要な数だけのセグメ
ント30を確保する。
When the record to be accessed is the part before the record group existing in the cache memory 36, the following processing is performed. Storage end record identifier 5
If there is a record to be accessed in the portion before 6, the load is performed from the record next to the record indicated by the storage end record identifier 56 to the last record in the track as shown in step 93. In order to store from the first record to the record before the record indicated by the storage start record identifier 55, a positioning request is issued to the disk device 2. In this case, when the last record of this track has been stored, loading is started from the first part of the track. In addition, at this time, the number of segments 30 required for the load processing is secured.

【0102】次に、ディスク装置2から位置付け完了報
告を受取ったときの、プロセッサ33の処理フローを、
図10〜図12に基づいて説明する。
Next, the processing flow of the processor 33 when the positioning completion report is received from the disk device 2 will be described.
This will be described with reference to FIGS.

【0103】まず、中央処理装置1からのアクセス対象
のトラック内のレコードが、キャッシュメモリ36内に
存在しない場合について説明する。図10ステップ94
に示す如く、中央処理装置1からの入出力要求に従っ
て、入出力処理を行う。この際、ディスク装置2からレ
コードを読出した場合には、このレコードをキャッシュ
メモリ36内にロードする。ディスク装置2に書込むよ
う、中央処理装置1から受取ったレコードは、ディスク
装置2に書込むと同時に、キャッシュメモリ36にも書
込む。この後、格納開始レコード識別子55,格納終了
レコード識別子56を設定する。この場合、中央処理装
置1からのアクセス対象となるレコード(ディスク装置
2へ書き込むべきレコード)は連続したレコード群とな
る。
First, the case where the record in the track to be accessed from the central processing unit 1 does not exist in the cache memory 36 will be described. FIG. 10 Step 94
As shown in, the input / output processing is performed in accordance with the input / output request from the central processing unit 1. At this time, when a record is read from the disk device 2, this record is loaded into the cache memory 36. The record received from the central processing unit 1 is written to the disk device 2 as well as to the disk device 2 at the same time as it is written to the cache memory 36. After that, the storage start record identifier 55 and the storage end record identifier 56 are set. In this case, the records to be accessed from the central processing unit 1 (records to be written to the disk device 2) are a continuous record group.

【0104】図13には、このときのデータの格納形式
を示す。図示するように最初にアクセス対象となったレ
コードをセグメント30の先頭から格納する。これによ
り、アクセス対象となったレコードが少なければローデ
ィングオーバーヘッドの削減だけでなく、キャッシュメ
モリ36の使用容量も削減できる。
FIG. 13 shows the data storage format at this time. As shown, the first record to be accessed is stored from the beginning of the segment 30. As a result, if the number of records to be accessed is small, not only the loading overhead can be reduced but also the used capacity of the cache memory 36 can be reduced.

【0105】図11は、格納終了レコード識別子56に
示されたレコードの次のレコードから、このトラックの
最終レコードまでをキャッシュメモリ36内にロードす
る処理に対する位置付け完了要求を受取った場合を示す
ものである。この場合、ステップ95に示す如く、格納
終了識別子56に示されたレコードの次のレコードか
ら、最終レコードまでをロードする処理を実行する。ま
た、格納終了レコード識別子56をトラックの終点の位
置とする。
FIG. 11 shows a case in which a positioning completion request for the process of loading the records from the record indicated by the storage end record identifier 56 to the last record of this track in the cache memory 36 is received. is there. In this case, as shown in step 95, a process of loading the record next to the record indicated by the storage end identifier 56 to the last record is executed. Further, the storage end record identifier 56 is set as the end point position of the track.

【0106】図14に、このときのデータ格納形式を示
す。この後、ステップ96において、中央処理装置1と
論理的に再接続し、中央処理装置1との入出力処理に入
る。このとき、新たにロードしたレコードは、今までロ
ードしていたレコードの後に付加することになる。
FIG. 14 shows the data storage format at this time. Thereafter, in step 96, the CPU is logically reconnected to the central processing unit 1 to start the input / output processing with the central processing unit 1. At this time, the newly loaded record will be added after the previously loaded record.

【0107】図12は、格納終了レコード識別子56に
示された次のレコードから、このトラックの最終レコー
ドまでをキャッシュメモリ36内にロードし、次に、ト
ラックの先頭のレコードから、格納開始レコード識別子
55に示されたレコードの前のレコードまでをキャッシ
ュ21内にロードする処理を実行するために、ディスク
装置2からの位置付け完了処理を受取った場合の処理で
ある。ステップ95でこの処理を実行する。但し、既
に、トラック最終レコードまでロードされている場合に
は、トラックの先頭のレコードからローディングを開始
する。このとき、格納開始レコード識別子56を、格納
開始レコード識別子55の前のレコードに設定する。
In FIG. 12, the next record indicated by the storage end record identifier 56 to the last record of this track are loaded into the cache memory 36, and then the storage start record identifier is read from the top record of the track. This is a process when the positioning completion process is received from the disk device 2 in order to execute the process of loading the records up to the record before 55 in the cache 21. This processing is executed in step 95. However, when the last record of the track has already been loaded, loading is started from the first record of the track. At this time, the storage start record identifier 56 is set to the record before the storage start record identifier 55.

【0108】図15には、この格納形式を示す。この
後、ステップ96において、中央処理装置1との入出力
処理に入る。このとき、今までキャッシュメモリ36内
に格納されていたレコード群の後に、トラックの最終レ
コードまでのレコード群を、更に、その後にトラックの
先頭からのレコード群を格納することになる。
FIG. 15 shows this storage format. Thereafter, in step 96, input / output processing with the central processing unit 1 is started. At this time, after the record group stored in the cache memory 36 so far, the record group up to the last record of the track is stored, and then the record group from the head of the track is stored.

【0109】上記実施例においては、キャッシュメモリ
36内にロードされているレコード群より後方のレコー
ドにアクセス要求があった場合、図11に示した如く、
キャッシュメモリ36内にロードされているレコード群
の次のレコードからロードするようにした例を示した
が、図12に示す如く、キャッシュメモリ36内にロー
ドされているレコード群以外のすべてのレコードを、キ
ャッシュメモリ36内にロードするようにしても良い。
In the above embodiment, when an access request is made to a record located behind the record group loaded in the cache memory 36, as shown in FIG.
Although an example is shown in which the record next to the record group loaded in the cache memory 36 is loaded, as shown in FIG. 12, all the records other than the record group loaded in the cache memory 36 are loaded. Alternatively, it may be loaded into the cache memory 36.

【0110】以上は、トラックを格納するためのセグメ
ント30を複数割当てる場合である。この場合には、ト
ラック全体をキャッシュメモリ36に格納しない場合に
セグメント30をトラックと1対1に割当てたときに比
べて、容量を節約できる。
The above is the case of allocating a plurality of segments 30 for storing tracks. In this case, the capacity can be saved as compared with the case where the segments 30 are assigned to the tracks one-to-one when the entire tracks are not stored in the cache memory 36.

【0111】次に、一つのトラックに対応して、一つの
セグメント30を割当てる場合の実施例を説明する。こ
の場合、図8に示したキャッシュ管理ブロック40の形
式は異なり、図16に示すキャッシュ管理ブロック40
aの形式とする。図8との相異は、セグメントポインタ
150が一つで良いことである。
Next, an embodiment will be described in which one segment 30 is assigned to one track. In this case, the cache management block 40 shown in FIG. 8 has a different format, and the cache management block 40 shown in FIG.
The format is a. The difference from FIG. 8 is that only one segment pointer 150 is required.

【0112】また、セグメント30内の格納形式は、図
13に示した如く、中央処理装置1から最初にアクセス
されたレコードをセグメント30の先頭から格納してい
っても良いが、以下に述べる方式をとっても良い。すな
わち、図17に示す如く、このレコードがトラックの先
頭からの相対位置に従って、格納位置を決める方式であ
る。この場合、トラック内の先頭のレコードを、セグメ
ント30内の先頭に格納することになる。
As shown in FIG. 13, the storage format in the segment 30 may be such that the record first accessed by the central processing unit 1 is stored from the beginning of the segment 30, but the following method is used. You can take That is, as shown in FIG. 17, the record position is determined according to the relative position from the beginning of the track. In this case, the top record in the track is stored at the top of the segment 30.

【0113】プロセッサ33の処理も、基本的には、図
9〜図12の処理フローで示した内容で良い。但し、セ
グメントを割付けるタイミングは、このトラックのレコ
ードがキャッシュメモリ36内に存在しないときにアク
セスがあった場合、すなわち、図9ステップ91に相当
する部分だけで良い。また、図17に示した格納形式を
とった場合、格納開始レコード識別子55に示されるレ
コードより前の位置のレコードにアクセスがあったと
き、トラックの先頭から格納開始レコード識別子55に
示されるレコードの前のレコードまでを格納するように
しても良い。
The processing of the processor 33 may basically have the contents shown in the processing flows of FIGS. However, the timing for allocating the segment may be only when the record of this track is accessed in the cache memory 36, that is, only at the portion corresponding to step 91 in FIG. Further, in the case of the storage format shown in FIG. 17, when the record at the position before the record indicated by the storage start record identifier 55 is accessed, the record indicated by the storage start record identifier 55 from the head of the track is accessed. Up to the previous record may be stored.

【0114】また、上述の実施例においては、制御装置
3内のプロセッサ33を1個としているが、これを複数
個設け、中央処理装置からの入出力経路、ディスク装置
2からの入出力経路を複数個設けても良い。また、中央
処理装置1とキャッシュメモリ36との間のデータ転送
処理、ディスク装置2とキャッシュメモリ36との間の
データ転送処理を並行に実行させても良い。本質的に
は、本実施例では制御装置3内にキャッシュメモリ36
を持っていれば良く、これ以外の構成要素は不可欠では
ない。
In the above-described embodiment, the number of processors 33 in the control unit 3 is one, but a plurality of processors 33 are provided and an input / output path from the central processing unit and an input / output path from the disk unit 2 are provided. You may provide more than one. Further, the data transfer process between the central processing unit 1 and the cache memory 36 and the data transfer process between the disk device 2 and the cache memory 36 may be executed in parallel. Essentially, in this embodiment, the cache memory 36 is provided in the control device 3.
The other components are not essential.

【0115】以上述べた如く、本実施例によれば、中央
処理装置からの入出力要求のアクセス対象のトラック内
のレコードの、キャッシュメモリ内における存在状態に
基づいて、キャッシュメモリ内にロードするレコード群
を決定するようにしたので、トラックを構成しているレ
コードが可変長の場合でも、トラック単位の管理方式を
ベースとしてローディングオーバーヘッドを少なくする
ことが可能な、データローディング方法を実現できると
いう顕著な効果を奏するものである。
As described above, according to this embodiment, the record to be loaded into the cache memory based on the existence state of the record in the track to be accessed by the input / output request from the central processing unit in the cache memory. Since the group is determined, it is possible to realize a data loading method capable of reducing the loading overhead based on the track-based management method even when the records making up the track have a variable length. It is effective.

【0116】さらに、キャッシュメモリへのローディン
グ・オーバーヘッドの軽減とヒット率の向上を図るため
の別の実施例を示す。
Further, another embodiment for reducing the loading overhead to the cache memory and improving the hit rate will be shown.

【0117】図18は、制御メモリ34の構成を示す。
制御メモリ34は、プロセッサ33の機能を実現するた
めの各モジュールが格納される。ここでは、本実施例に
関係する部分について述べる。アクセス特性チェック部
7は、入出力要求のアクセス特性をチェックし、アクセ
ス・パターンに関する情報を記憶する。ローディング選
択部8は、アクセス特性チェック部が収集した情報にし
たがって、ローディング・パターンを決定する。ローデ
ィング実行部9は、ローディング選択部8の選択したロ
ーディング・パターンに従って、ローディングの実行制
御を行う機能を持つ。
FIG. 18 shows the configuration of the control memory 34.
The control memory 34 stores each module for realizing the function of the processor 33. Here, the part related to the present embodiment will be described. The access characteristic check unit 7 checks the access characteristic of the input / output request and stores information on the access pattern. The loading selection unit 8 determines the loading pattern according to the information collected by the access characteristic check unit. The loading execution unit 9 has a function of performing loading execution control according to the loading pattern selected by the loading selection unit 8.

【0118】図19は、キャッシュ管理テーブル4のさ
らに異なる構成である。キャッシュ管理テーブル10
は、本実施例に関係する部分について示す。キャッシュ
管理ブロック40bを、キャッシュメモリ36内のセグ
メント30を1つ以上割り当てているトラック(当該ト
ラックのある部分はキャッシュ内に格納しているという
意味)対応に設ける。各キャッシュ管理ブロック40b
は、前方向ポインタ48、後方向ポインタ47によりM
RU(Most Recently Used)順にチ
ェインされている。MRUポインタ42は、最も最近に
入出力の対象となったトラックのキャッシュ管理ブロッ
ク40bをさす。LRU(Least Recentl
y Used)ポインタ43は、キャッシュメモリ36
の中に格納されているトラックの集合では、最も長い時
間入出力対象となっていないトラックのキャッシュ管理
ブロック40bをさす。従って、ミス(アクセス対象と
なったデータがキャッシュメモリ36に存在しない。)
が発生し、新たにセグメント30を割り当てる必要が生
じ、かつ、空きセグメントがない場合、LRUポインタ
43で示されたキャッシュ管理ブロック40bに対応し
たトラックを格納したセグメント30、および、このキ
ャッシュ管理ブロック40bを解放することになる。ア
クセス時間44は、このキャッシュ管理ブロック40b
が対応しているトラックが最も最近入出力対象となった
時刻を格納する。(従ってMRUポインタ42から、前
方向ポインタ48をたどっていた場合、各キャッシュ管
理ブロック40b内のアクセス時間44は、遅くなって
いくことになる。)トラックを割り当てていなくて、空
いているキャッシュ管理ブロック40bは、空きブロッ
クポインタ45から、先頭のキャッシュ管理ブロック4
0bがポイントされ、各キャッシュ管理ブロック40b
は前方向ポインタ48と後方向ポインタ47によりポイ
ントされる。
FIG. 19 shows a different structure of the cache management table 4. Cache management table 10
Shows parts related to the present embodiment. The cache management block 40b is provided corresponding to a track to which one or more segments 30 in the cache memory 36 are allocated (meaning that a part of the track is stored in the cache). Each cache management block 40b
Is M by the forward pointer 48 and the backward pointer 47.
They are chained in the order of RU (Most Recently Used). The MRU pointer 42 points to the cache management block 40b of the track which was the most recent input / output target. LRU (Least Recent)
y Used) The pointer 43 indicates the cache memory 36.
In the set of tracks stored in, the cache management block 40b of the track that has not been the input / output target for the longest time is referred to. Therefore, a miss (data to be accessed does not exist in the cache memory 36).
Occurs, it becomes necessary to allocate a new segment 30, and when there is no free segment, the segment 30 storing the track corresponding to the cache management block 40b indicated by the LRU pointer 43 and this cache management block 40b. Will be released. The access time 44 is the cache management block 40b.
Stores the time when the track corresponding to was most recently input / output target. (Therefore, when the forward pointer 48 is traced from the MRU pointer 42, the access time 44 in each cache management block 40b becomes slower.) A free cache management without allocating a track. The block 40b starts from the free block pointer 45
0b is pointed to, and each cache management block 40b
Is pointed by the forward pointer 48 and the backward pointer 47.

【0119】アクセス特性情報46は、アクセス特性チ
ェック部7が各入出力要求のアクセス特性をキャッシュ
管理単位、すなわち、本実施例においてはトラック単位
に収集した情報を格納する。本実施例には、ディスク装
置2のすべてのトラックに対応してアクセス特性情報4
6を設ける。これらの情報の1部をキャッシュ管理ブロ
ック40bの中に設け必要な記憶容量を削減してもよ
い。
The access characteristic information 46 stores the information obtained by the access characteristic check unit 7 for each input / output request in cache management units, that is, in the present embodiment, track units. In this embodiment, the access characteristic information 4 is associated with all tracks of the disk device 2.
6 is provided. A part of these pieces of information may be provided in the cache management block 40b to reduce the required storage capacity.

【0120】図20に、アクセス特性情報46の構成を
示す。本実施例では、受け付けた入出力要求がシーケン
シャル・アクセスがどうかを認識する。シーケンシャル
・アクセスであると認識した場合、この後アクセス対象
となり得る複数のトラックをロードする。以降、これを
単に、複数トラック・ローディングと呼ぶ。
FIG. 20 shows the structure of the access characteristic information 46. In this embodiment, the received I / O request recognizes whether sequential access is performed. When the sequential access is recognized, a plurality of tracks that can be accessed thereafter are loaded. Hereinafter, this is simply referred to as multi-track loading.

【0121】シーケンシャル・アクセスでないと認識し
た場合、当該トラックのデータがキャッシュメモリ36
にまったくない状態から、一部、あるいは、全体がキャ
ッシュメモリ36内にローディングされて、当該トラッ
クのデータ全体がキャッシュメモリ36から追い出され
るまでの間に、中央処理装置1が実際にアクセスした部
分を把握して、これに基づき、ローディング方法を選択
する。
When it is recognized that the access is not sequential access, the data of the track is stored in the cache memory 36.
From the state in which the central processing unit 1 does not exist at all, until a part or the whole is loaded into the cache memory 36 and the entire data of the track is expelled from the cache memory 36, the part actually accessed by the central processing unit 1 is read. Understand and select a loading method based on this.

【0122】まず、シーケンシャル・アクセスの認識の
ために必要な情報について説明する。シーケンシャル・
チェック中フラグ100は、このトラック内のデータが
シーケンシャルにアクセスされているかをチェック中で
あることを示すフラグである。具体的には、このアクセ
ス特性情報に対応するトラックの先頭のレコードがアク
セスされた時、このフラグはオンにする。その後、先頭
レコード以降のアクセスがシーケンシャルに行なわれな
かった場合、および、このトラックの最後のレコードま
でシーケンシャルにアクセスが完了した場合(このトラ
ックがシーケンシャル・アクセスされたということを認
識した時)、このフラグをオフにする。シーケンシャル
識別アドレス101は、次のアクセスがシーケンシャル
に行なわれる場合アクセスされるレコードが格納されて
いるトラックの先頭からの位置を示す。シーケンシャル
認識フラグ102は、このトラックの先頭のレコードま
でシーケンシャルにアクセスされた時オンにする。オフ
にするタイミングは、次にこのトラックに対して、入出
力要求を受け付けた時である。
First, information necessary for recognition of sequential access will be described. sequential·
The checking flag 100 is a flag indicating that it is being checked whether the data in this track is sequentially accessed. Specifically, this flag is turned on when the head record of the track corresponding to this access characteristic information is accessed. After that, if the access after the first record is not performed sequentially, and if the access is completed up to the last record of this track sequentially (when recognizing that this track has been accessed sequentially), Turn off the flag. The sequential identification address 101 indicates the position from the beginning of the track in which the record to be accessed is stored when the next access is performed sequentially. The sequential recognition flag 102 is turned on when the first record of this track is sequentially accessed. The timing to turn it off is when the input / output request is accepted for the next track.

【0123】シーケンシャル以外のアクセスに対して
は、入出力要求を受け付けた時、アクセス対象トラック
のレコードがキャッシュ21内に存在しなかった時点
(以降これをトラック・ミスと呼ぶ。)から、このトラ
ックのデータがキャッシュメモリ36から追い出される
までの期間に、中央処理装置1がアクセス対象とした部
分をローディング対象としたいという考え方に基づき、
ローディング方法を決定するものとする。
For non-sequential accesses, when an input / output request is received, the record of the track to be accessed does not exist in the cache 21 (hereinafter referred to as a track miss), this track. Based on the idea that the central processing unit 1 wants to access the part to be loaded during the period until the data of is deleted from the cache memory 36.
The loading method shall be determined.

【0124】次に、当該トラックの中で中央処理装置が
実際にアクセスした部分を認識するための情報を示す。
1つの考え方は、ある固定長(図21ではPバイト)の
単位を1ビットとして、図21に示すようにトラックを
複数ビットのトラック・ビット・パターン108で表わ
し、あるレコードがアクセスされた時、このレコードが
トラック上で格納されている領域に対応したビットをオ
ンにしておき、(図21中では、レコード1,レコード
mはアクセスされていること、レコード2はアクセスさ
れていないことを表わす。)キャッシュメモリ36に
は、ビットがオンしている領域のみローディングすると
いうものである。しかし、トラック・ミス時、トラック
すべてをローディングしない場合、その後に、このトラ
ックが入出力対象となった時、このトラックの一部のデ
ータはキャッシュメモリ36上に存在するが、アクセス
対象とするレコードはキャッシュメモリ36内に存在し
ない場合がある。この場合は、アクセス対象となったレ
コードをキャッシュメモリ36内に新たにローディング
するという方法をとるものとする。ただし、ディスク装
置2は、回転体であるため、オンになっているビットの
集合にすきまができているような場合は、ローディング
時間そのものは、短くならない。従って、以下、本実施
例では、中央処理装置がアクセスした部分を図22に示
した考え方で認識するケースについて詳細に述べる。
Next, the information for recognizing the portion actually accessed by the central processing unit in the track is shown.
One way of thinking is that a unit of a certain fixed length (P bytes in FIG. 21) is 1 bit, and a track is represented by a track bit pattern 108 of a plurality of bits as shown in FIG. 21, and when a certain record is accessed, The bit corresponding to the area where this record is stored on the track is turned on (in FIG. 21, record 1 and record m are accessed, and record 2 is not accessed. In the cache memory 36, only the area in which the bit is on is loaded. However, at the time of a track miss, if all the tracks are not loaded, then when this track becomes an input / output target, some data of this track exists in the cache memory 36, but the record to be accessed is May not exist in the cache memory 36. In this case, the record to be accessed is newly loaded into the cache memory 36. However, since the disk device 2 is a rotating body, the loading time itself is not shortened when there is a gap in the set of bits that are turned on. Therefore, in this embodiment, the case where the central processing unit recognizes the accessed portion according to the concept shown in FIG. 22 will be described in detail below.

【0125】図22では、トラックを、上位アクセス部
110,前方部109,後方部111とわけてる。上位
アクセス部110は、当該トラックに対する入出力要求
を受け付け、トラック,ミスが発生した時、中央処理装
置1がアクセス対象としたレコード群である。前方部1
09は、この上位アクセス部110の前の位置にあるレ
コード群であり、後方部111は後の位置にあるレコー
ド群である。
In FIG. 22, the truck is divided into the upper access section 110, the front section 109, and the rear section 111. The upper access unit 110 is a group of records that the central processing unit 1 has made an access target when an input / output request for the track is accepted and a track error occurs. Front part 1
Reference numeral 09 denotes a record group at a position in front of the upper access unit 110, and rear portion 111 a record group at a rear position.

【0126】本実施例では、シーケンシャル・アクセス
以外のアクセスに対して、トラック・ミス時のローディ
ング・パターンとして以下のパターンを持つものとす
る。(これら以外のローディング・パターンを持って
も、本発明は有効である。) (a)トラック・ローディング……トラック全体をロー
ディングする。 (b)上位アクセス+後方部ローディング……上位アク
セス部+後方部をローディングする。 (c)上位アクセス部・ローディング……上位アクセス
部のみローディングする。
In this embodiment, for the accesses other than the sequential access, the following patterns are provided as the loading patterns at the time of track miss. (The present invention is effective even if it has a loading pattern other than these.) (A) Track loading: The entire track is loaded. (B) Upper access + rear loading ... Loading the upper access + rear. (C) Upper access part / loading: Only the upper access part is loaded.

【0127】以上の様なローディング・パターンを用意
した場合にも、(b)上位アクセス部+後方部ローディ
ングを実行し、レコードがキャッシュメモリ36内に存
在する時、当該トラックの前方部109のレコードにア
クセスがあるとミスが発生する。これを、フロント・ミ
スと呼ぶ。(c)上位アクセス部・ローディングを実行
した場合には、後方部111のレコードにアクセスがあ
った時にもミスが生ずる。これをリア・ミスと呼ぶ。フ
ロント・ミスやリア・ミスが発生した時の処理を次に示
す。 (1)フロント・ミス:当該トラックの中でキャッシュ
メモリ36にローディングしていないレコードをすべ
て、キャッシュメモリ36内にローディングする。 (2)リア・ミス:後方部111内のみキャッシュにロ
ードする。
Even when the above loading pattern is prepared, (b) the upper access section + rear section loading is executed, and when the record exists in the cache memory 36, the record of the front section 109 of the track concerned. There is a mistake when you access. This is called a front miss. (C) Upper access part-When loading is executed, a mistake occurs even when a record in the rear part 111 is accessed. This is called a rear miss. The processing when a front mistake or rear mistake occurs is shown below. (1) Front miss: All records in the track that have not been loaded in the cache memory 36 are loaded in the cache memory 36. (2) Rear miss: Only the rear part 111 is loaded into the cache.

【0128】以上の様なローディングを行う場合、トラ
ック・ミス(フロントミス,リアミス)が発生してか
ら、このトラック全体がキャッシュメモリ36から追い
出されるまで、上位アクセス部110,前方部109,
後方部111のうち実際に中央処理装置1がアクセスし
た部分を把握し、記憶する。このアクセスした部分に関
する統計情報を収集し、トラック・ミス時、適切と判断
したローディング方法を選択する。本実施例では、過去
q回のうち最も多かったローディング・パターンを選択
する。
In the case of loading as described above, from the occurrence of a track miss (front miss, rear miss) until the entire track is ejected from the cache memory 36, the upper access section 110, the front section 109,
The part of the rear part 111 that the central processing unit 1 actually accessed is grasped and stored. Statistical information on this accessed portion is collected, and at the time of a track miss, the loading method judged appropriate is selected. In this embodiment, the most frequent loading pattern of the past q times is selected.

【0129】例えば、後方部111をアクセスしたケー
スが最も多かった場合、(b)上位アクセス部+後方部
ローディングを選択する。
For example, when the rear part 111 is accessed most often, (b) upper access part + rear part loading is selected.

【0130】以上の様な方法を実現するために取得すべ
き情報として、アクセス特性情報46の中に持つべき情
報を以下説明する。
Information that should be held in the access characteristic information 46 as information to be acquired in order to realize the above method will be described below.

【0131】開始・終了アドレス103は、トラック・
ミス時、中央処理装置1がアクセスした上位アクセス部
110のトラック上の開始・終了アドレスを示す。
The start / end address 103 is the track
At the time of a miss, the start / end address on the track of the upper access unit 110 accessed by the central processing unit 1 is shown.

【0132】前方部・アクセス・フラグ104、後方部
・アクセス・フラグ105は、トラック・ミス以後、中
央処理装置1が、前方部109、後方部111をアクセ
スしたかを示す情報である。アクセス部チェック中フラ
グ106は、前方部109、後方部111がアクセスさ
れるかをチェック中であることを示すフラグである。
The front part access flag 104 and the rear part access flag 105 are information indicating whether the central processing unit 1 has accessed the front part 109 and the rear part 111 after a track miss. The access unit checking flag 106 is a flag indicating that the front unit 109 and the rear unit 111 are being checked for access.

【0133】統計情報107は、トラック・ミスが発生
してからこのトラック全体がキャッシュメモリ36から
追い出される間に、前方部あるいは後方部がアクセスさ
れたかという情報、すなわち、前方部アクセス・フラグ
104、後方部アクセス・フラグ105の情報を過去r
回蓄積したものである。
The statistical information 107 is information indicating whether the front portion or the rear portion has been accessed while the entire track has been expelled from the cache memory 36 after a track miss has occurred, that is, the front portion access flag 104, Information of the rear part access flag 105 is past r
It has been accumulated twice.

【0134】ただし、記憶容量の節約のために、統計情
報107はトラックよりも、さらに大きい単位、例え
ば、シリンダごとにとってもよい。
However, in order to save the storage capacity, the statistical information 107 may be in a unit larger than the track, for example, in each cylinder.

【0135】以下、アクセス特性チェック部7、ローデ
ィング選択部8の処理フロー図について述べる。ローデ
ィング実行部9は、ローディング選択部8の指示に従っ
てローディングを行うだけである。
Hereinafter, a processing flow chart of the access characteristic check unit 7 and the loading selection unit 8 will be described. The loading execution unit 9 only loads in accordance with the instruction of the loading selection unit 8.

【0136】まず、アクセス特性チェック部7の処理フ
ローについて述べる。アクセス特性チェック部7には、
シーケンシャル・アクセスの認識とそれ以外のアクセス
特性の認識がある。最初にシーケンシャル・アクセスの
認識に関する部分について述べる。
First, the processing flow of the access characteristic check unit 7 will be described. The access characteristic check unit 7 includes
There is recognition of sequential access and recognition of other access characteristics. First, the part related to recognition of sequential access will be described.

【0137】図23は、当該トラックの先頭のレコード
がアクセスされた時の処理である。ステップ120にお
いて、シーケンシャル・チェック中フラグ100をオン
にして、処理を終了する。
FIG. 23 shows the processing when the top record of the track is accessed. In step 120, the sequential checking flag 100 is turned on, and the processing is ended.

【0138】図24は、入出力要求に対する処理を受け
付けた時、当該トラックのシーケンシャル・チェック中
フラグ50がオンの場合に実行される処理である。ま
ず、ステップ121では、受け付けた入出力要求がアク
セス対象としたレコードのトラックの先頭からの位置
が、シーケンシャル判別アドレス101と一致するかど
うかをチェックする。一致すれば、レコードがシーケン
シャルにアクセスされていることになるため、特に何の
処理も行なわない。一致しなければ、ステップ122に
おいて、シーケンシャル・チェック中フラグ100をオ
フにする。
FIG. 24 shows a process executed when the process for the input / output request is accepted and the sequential checking flag 50 of the track is ON. First, in step 121, it is checked whether or not the position from the beginning of the track of the record targeted for access by the received input / output request matches the sequential discrimination address 101. If they match, it means that the records are accessed sequentially, and no processing is performed. If they do not match, in step 122, the sequential checking flag 100 is turned off.

【0139】図25は、入出力要求に対する処理が終了
した時に、当該トラックのシーケンシャル・チェック中
フラグ100がオンの場合実行される処理である。ステ
ップ123では、当該トラックの最終レコードまで、入
出力処理が完了したかどうかをチェックする。完了して
いない場合に、ステップ124において、この入出力要
求で処理が完了したレコードの次のレコードのトラック
の先頭からの相対アドレスを、シーケンシャル判別アド
レス101に記憶する。
FIG. 25 shows a process executed when the sequential check flag 100 of the track is ON when the process for the input / output request is completed. In step 123, it is checked whether the input / output processing has been completed up to the final record of the track. If not completed, in step 124, the relative address from the beginning of the track of the record next to the record processed by this input / output request is stored in the sequential determination address 101.

【0140】完了した場合には、このトラックのレコー
ドがシーケンシャルにアクセスされたことになるため、
ステップ125において、シーケンシャル認識フラグ1
02をオンにし、シーケンシャル・チェック中フラグ1
01をオフにする。
When completed, the records of this track have been accessed sequentially, so
In step 125, the sequential recognition flag 1
02 is turned on and the sequential check flag 1
Turn off 01.

【0141】図26は、入出力要求を受け付けた時、当
該トラックのシーケンシャル認識フラグ102がオンの
場合の処理である。この場合、ステップ126におい
て、シーケンシャル認識フラグ102をオフにする。
FIG. 26 shows the processing when the sequential recognition flag 102 of the track is turned on when the input / output request is received. In this case, in step 126, the sequential recognition flag 102 is turned off.

【0142】次に、シーケンシャル・アクセスでないと
認識したアクセスに対する処理を示す。
Next, a process for an access recognized as not a sequential access will be shown.

【0143】図27は、トラック・ミス時、複数トラッ
ク・ローディング以外のローディングを行った後、実行
される処理である。(複数トラック・ローディングを行
うのは、シーケンシャル・アクセスと認識している場合
である。) ステップ127では、中央処理装置1が当該トラックの
中で実際に入出力要求のアクセス対象となったレコード
群すなわち、図22における上位アクセス部110のト
ラックの先頭からの開始位置,終了位置を開始・終了ア
ドレス103にセットする。さらに、ステップ128で
アクセス部チェック中フラグ106をオンにする。
FIG. 27 shows a process executed after loading other than multi-track loading at the time of a track miss. (Multiple track loading is performed when it is recognized as sequential access.) In step 127, the central processing unit 1 is a group of records that are actually the access target of the input / output request in the track. That is, the start position and the end position from the beginning of the track of the upper access unit 110 in FIG. 22 are set in the start / end address 103. Further, in step 128, the access unit checking flag 106 is turned on.

【0144】図28は、アクセス部チェック中フラグ1
06がオンの時に当該トラックに対して入出力要求を受
け取った時の処理である。ステップ129では、受け付
けた入出力要求がアクセス対象とするレコードが図22
に示した、前方部109、上位アクセス部110、後方
部111のどの位置に相当するかを分析する。
FIG. 28 shows the access part checking flag 1
This is the process when an input / output request is received for the track when 06 is on. In step 129, the record to be accessed by the received input / output request is shown in FIG.
The positions of the front part 109, the upper access part 110, and the rear part 111 shown in FIG.

【0145】上位アクセス部110がアクセス対象とな
っている場合、特に何もせず処理を終了する。
If the higher-level access unit 110 is the access target, nothing is done and the process ends.

【0146】前方部109がアクセス対象となっている
場合で、ステップ130で前方部アクセス・フラグ10
4がオフの場合、これをオンとする(オンになっている
場合の処理はない)。ステップ131において、当該ト
ラック全体がキャッシュメモリ36にローディングされ
ていない場合、ローディングされていない部分をローデ
ィングするよう、ローディング実行部9に対して指示を
行う。
When the front part 109 is the access target, the front part access flag 10 is determined in step 130.
If 4 is off, it is turned on (there is no processing when it is on). In step 131, when the entire track is not loaded in the cache memory 36, the loading execution unit 9 is instructed to load the unloaded portion.

【0147】後方部111がアクセス対象となっている
場合、ステップ132で、後方部アクセス・フラグ10
5がオフの場合、これをオンとする(オンになっている
場合の処理はない)。ステップ133において、後方部
111が、キャッシュメモリ36にローディングされて
いない後方部111をローディングするよう、ローディ
ング実行部9に対して指示を行う。
If the rear portion 111 is the access target, the rear portion access flag 10 is determined in step 132.
If 5 is off, it is turned on (there is no processing when it is on). In step 133, the rear unit 111 instructs the loading execution unit 9 to load the rear unit 111 that is not loaded in the cache memory 36.

【0148】図29は、キャッシュメモリ36から当該
トラックを追い出す時、前方・後方部チェック中フラグ
106がオンの時、実行される処理である。
FIG. 29 shows a process executed when the relevant track is being ejected from the cache memory 36 and the front / rear part checking flag 106 is ON.

【0149】まず、ステップ134で、アクセス部チェ
ック中フラグ106をオフする。次に、ステップ135
において、過去r回分の前方部アクセス・フラグ10
4、後方部アクセス・フラグ105の統計情報のうち、
最も古い情報を除き、現在の前方部アクセス・フラグ1
04、後方部アクセス・フラグ105の内容を記憶す
る。この後、ステップ136において、前方部アクセス
・フラグ104、後方部アクセス・フラグ105をオフ
にする。
First, in step 134, the access section checking flag 106 is turned off. Then, step 135
In the past r times, the front access flag 10
4. Of the statistical information of the rear access flag 105,
Current front access flag 1 excluding oldest information
04, the contents of the rear part access flag 105 are stored. Thereafter, in step 136, the front access flag 104 and the rear access flag 105 are turned off.

【0150】次に、ローディング選択部9の処理フロー
を図30に示す。図30は、トラック・ミスが発生した
時に、実行される。
Next, FIG. 30 shows a processing flow of the loading selection section 9. FIG. 30 is executed when a track miss occurs.

【0151】まず、ステップ137でこの入出力要求が
トラックの先頭のレコードに対するアクセスかどうかを
チェックする。そうでなければ、ステップ140へジャ
ンプする。先頭のレコードに対するアクセスの場合、ス
テップ138において、アクセス対象トラックより前の
2つのトラックのアクセス特性情報46のシーケンシャ
ル認識フラグ102がオンかどうかをチェックする。本
実施例の場合、チェックするのは、2トラックである
が、2トラックでなくとも本発明は有効である。オンで
ない場合には、ステップ140へジャンプする。
First, at step 137, it is checked whether this input / output request is an access to the head record of the track. Otherwise, jump to step 140. In the case of access to the first record, in step 138, it is checked whether the sequential recognition flag 102 of the access characteristic information 46 of the two tracks before the access target track is on. In the case of the present embodiment, two tracks are checked, but the present invention is effective even if the number of tracks is not two. If it is not on, the process jumps to step 140.

【0152】オンの場合、このアクセスがシーケンシャ
ル・アクセスであると判断し、ステップ139におい
て、ローディング実行部9に対して、複数トラックのロ
ーディングを指示して処理を終了する。
If it is on, it is judged that this access is a sequential access, and in step 139, the loading execution section 9 is instructed to load a plurality of tracks, and the processing is terminated.

【0153】ステップ140から開始される処理は、シ
ーケンシャル・アクセスでないと判断した場合のローデ
ィング方法を選択する処理である。ステップ140にお
いては、統計情報107に基づき、過去q回のアクセス
・パターンを前方部109も後方部111もアクセスさ
れなかったパターン、後方部111だけアクセスされた
パターン、以上の2つのパターン以外のパターンに3分
類する。この結果、前方部109も後方部111もアク
セスされなかったパターンが最も多かった場合、ステッ
プ141において、上位アクセス部ローディングをロー
ディング実行部に対して指示する。
The process starting from step 140 is a process of selecting the loading method when it is determined that the access is not sequential access. In step 140, based on the statistical information 107, the access pattern of the past q times is a pattern in which neither the front part 109 nor the rear part 111 is accessed, a pattern in which only the rear part 111 is accessed, and a pattern other than the above two patterns. Classify into three. As a result, when the pattern in which the front part 109 and the rear part 111 are not accessed is the most, the upper access part loading is instructed to the loading execution part in step 141.

【0154】後方部111だけアクセスされたパターン
が最も多かった場合、ステップ142において上位アク
セス部+後方部のローディングをローディング実行部9
に対して指示する。
If only the rear part 111 is accessed the most, the loading execution part 9 loads the upper part access part + the rear part in step 142.
Instruct.

【0155】これ以外のパターンが最も多かった場合、
ステップ143において、トラックローディングをロー
ディング実行部9に対して指示する。
If the other patterns are the most,
In step 143, the loading execution unit 9 is instructed to perform track loading.

【0156】ここでは、ローディングを選択する場合、
当該トラックの統計情報107のみ参照したが、当該ト
ラック以外の統計情報107を参照してもよい。
Here, when loading is selected,
Although only the statistical information 107 of the track is referred to, the statistical information 107 other than the track may be referred to.

【0157】以上述べてきた実施例では、シーケンシャ
ル・アクセスを認識するため、トラック内のレコードが
連続的にアクセスされているかチェックするために、シ
ーケンシャル識別アドレス101を1つしか持っていな
い。このため、シーケンシャル・リードを行ったレコー
ドをシーケンシャルに更新していくという比較的頻度が
高い処理が発生した場合、シーケンシャル・アクセスで
あるという認識ができなくなる。従って、リード処理と
ライト処理のシーケンシャル・アクセスの認識を行うこ
とにより、この問題を解決する。この場合、アクセス特
性情報46の構成は、図20にかわり図31に示すよう
になる。図20との違いは、図20中のシーケンシャル
・チェック中フラグ100、シーケンシャル識別アドレ
ス101、シーケンシャル認識フラグ102にリード用
とライト用がある点である。どちらの情報を扱うかは、
受け付けた入出力要求がリード要求であるかライト要求
であるかにより決まり、操作のタイミング、方法等は、
以上述べてきた実施例と同様である。
In the above-mentioned embodiment, since the sequential access is recognized, only one sequential identification address 101 is provided to check whether the records in the track are continuously accessed. For this reason, when a relatively frequently executed process of sequentially updating the record for which sequential reading has been performed, it cannot be recognized as a sequential access. Therefore, this problem is solved by recognizing the sequential access of the read processing and the write processing. In this case, the structure of the access characteristic information 46 is as shown in FIG. 31 instead of FIG. The difference from FIG. 20 is that the sequential check flag 100, the sequential identification address 101, and the sequential recognition flag 102 in FIG. 20 are for reading and writing. Which information to handle is
It depends on whether the received I / O request is a read request or a write request.
This is similar to the embodiment described above.

【0158】また、シーケンシャル・アクセスの認識を
行う際、受け付けに入出力要求のアクセス効果となるレ
コードのトラックの先頭からの位置が、シーケンシャル
識別アドレス101とまったく同じであるという条件を
用いていたが、一定の幅はあってもシーケンシャル・ア
クセスであると認識してもよい。
Further, when recognizing the sequential access, the condition that the position from the beginning of the track of the record which has the access effect of the input / output request for reception is exactly the same as the sequential identification address 101 is used. However, it may be recognized as a sequential access even if it has a certain width.

【0159】シーケンシャル・アクセス以外のアクセス
に対するトラック・ミス発生時のローディング・パター
ンは、述べてきた実施例では、上位アクセス部ローディ
ング(上位アクセス部+後方部)、ローディング,トラ
ック・ローディングの3つのパターンであったがこの3
つのパターンにローディングなしのパターンを付加する
ことが考えられる。これは、トラック・ミス時のローデ
ィング以降、当該トラック全体がキャッシュメモリ36
から追い出されるまでの間に当該トラックに対してアク
セスがない場合に有効である。
In the embodiment described above, the loading patterns when a track miss occurs for accesses other than sequential access are: upper access part loading (upper access part + rear part), loading, and track loading. Was this 3
It is possible to add a pattern without loading to one pattern. This is because the entire track is cache memory 36 after loading at the time of a track miss.
This is effective when there is no access to the track from the time it is ejected.

【0160】この場合、中央処理装置1がトラック・ミ
ス時のローディング以降、アクセス効果とする部分の監
視を前方部109、後方部111だけでなく、上位アク
セス部110へのアクセスも行う必要がある。
In this case, it is necessary for the central processing unit 1 to monitor not only the front part 109 and the rear part 111 but also the upper access part 110 after the loading at the time of a track miss, in order to monitor the part to be the access effect. .

【0161】さらに、ローディングなしのパターンを実
行した場合、以下に述べる認識を行う必要がある。すな
わち、トラック・ミスが発生した時に、このトラック・
ミスの発生は前回のトラック・ミスの発生時に、ローデ
ィングを行わなかったために発生したのか、ローディン
グを行っていたとしても当該トラックに対するアクセス
時間間隔が長くてトラック・ミスが発生しているのかを
区別する必要がある。前者の場合、ローディングの必要
がなかったことになる。しかし、後者の場合、この時の
アクセスが、上位アクセス部110に対するものである
ならば、前回のトラック・ミス時に、上位アクセス部ロ
ーディングを行う必要があったことになる。同様に、こ
の時のアクセスが後方部111に対するものである場合
には(上位アクセス部+後方部)のローディングを実行
する必要がある。前方部109に対するものであるなら
ば、トラック・ローディングを実行する必要があったこ
とになる。従って、これらの区別を行い、前回のトラッ
ク・ミス時に選択すべきだったローディング方法を統計
情報107に記憶し、以降のローディング方法の選択に
反映させる必要がある。このとき、統計情報107に記
憶する内容が、前回のトラック・ミス時にローディング
が必要がなかった場合には上位アクセス部110、前方
部109、後方部111もアクセスされなかったという
ことを統計情報107に記憶することになる。前回のト
ラック・ミス時に何らかのローディングを行う必要があ
った場合には、この時のアクセスが、(a)上位アクセ
ス部110に対するものであれば、上位アクセス部11
0にアクセスがあったこと、(b)後方部111に対す
るものなら後方部111にアクセスがあったこと、及び
(c)前方部109に対するものなら前方部109にア
クセスがあったことを統計情報107に記憶することに
なる。
Furthermore, when the pattern without loading is executed, it is necessary to perform the recognition described below. That is, when a track miss occurs, this track
Whether the error occurred because the loading was not performed at the time of the previous track miss, or whether the track miss occurred due to a long access time interval for the track even if loading was performed There is a need to. In the former case, there was no need for loading. However, in the latter case, if the access at this time is to the higher-order access unit 110, it means that it was necessary to load the higher-order access unit at the previous track miss. Similarly, when the access at this time is to the rear part 111, it is necessary to execute the loading of (upper access part + rear part). If it was for the front section 109, then it would have had to perform track loading. Therefore, it is necessary to make these distinctions, store the loading method that should have been selected at the time of the previous track miss in the statistical information 107, and reflect it in the subsequent selection of the loading method. At this time, the statistical information 107 indicates that the contents stored in the statistical information 107 indicate that the upper access unit 110, the front unit 109, and the rear unit 111 were not accessed when loading was not required at the previous track miss. Will be remembered in. If it is necessary to perform some loading at the previous track miss, if the access at this time is (a) to the upper access unit 110, the upper access unit 11
0 is accessed, (b) the rear part 111 is accessed if it is for the rear part 111, and (c) the front part 109 is accessed if it is for the front part 109. Will be remembered in.

【0162】前回のトラック・ミスの発生時に何らかの
ローディングが必要であったかを判別するために、アク
セス特性情報46aの中に、トラック・ミスが発生した
時の時刻を記憶する。次に、トラック・ミスが発生した
時、LRUポインタ43でポイントされているキャッシ
ュ管理ブロック40b内のアクセス時間44とこの時刻
を比較する。キャッシュメモリ36からの追い出し方法
が、LRU方式の場合、この時刻がアクセス時間よりも
遅い場合には、仮に、前回のトラック・ミス時にローデ
ィングを行っていたとしてもすでにキャッシュメモリ3
6から追い出されていることになる。そうでなければ、
まだ、キャッシュメモリ36内に依存していることにな
り、ローディングが必要であったことになる。
In order to determine whether any loading was required when the previous track miss occurred, the access characteristic information 46a stores the time when the track miss occurred. Then, when a track miss occurs, this time is compared with the access time 44 in the cache management block 40b pointed by the LRU pointer 43. In the case where the method of eviction from the cache memory 36 is the LRU method, if this time is later than the access time, even if the loading was performed at the previous track miss, the cache memory 3 has already been loaded.
It means that you have been kicked out of 6. Otherwise,
It still depends on the cache memory 36, and the loading was necessary.

【0163】図32は、ローディングなしのパターンを
設けた場合のアクセス特性情報46bの構成である。同
様に図33は、図31のアクセス特性情報46aにロー
ディングなしのパターンを考慮した場合の構成46cで
ある。
FIG. 32 shows the structure of the access characteristic information 46b when the pattern without loading is provided. Similarly, FIG. 33 shows a configuration 46c in the case where a pattern without loading is considered in the access characteristic information 46a of FIG.

【0164】以下、新たに設けた情報の説明を行う。上
位アクセス・フラグ170は、上位アクセス部110に
対するアクセスをチェックするフラグである。トラック
・ミス発生時刻171はトラック・ミス発生時刻を記憶
するために設ける。上位アクセスフラグ170、トラッ
ク・ミス発生時刻171の使用目的は以上述べたとおり
である。
The newly provided information will be described below. The upper access flag 170 is a flag for checking access to the upper access unit 110. The track miss occurrence time 171 is provided to store the track miss occurrence time. The purpose of using the upper access flag 170 and the track miss occurrence time 171 is as described above.

【0165】統計情報A172と統計情報107の相違
は、統計情報107が、前方アクセスフラグ104と後
方アクセスフラグ105の過去の情報であるのに対し、
統計情報A172はこれに、上位アクセスフラグの過去
の情報を付加したものである。統計情報A172の内容
とトラック・ミス時に選択すべきローディング方法の関
係を以下に示す。 (a)上位アクセス部110、前方部109、後方部1
11ともアクセスがないパターンが最も多かった場合…
…ローディングなし。 (b)上位アクセス部110のみアクセスするパターン
が最も多かった場合……上位アクセス部ローディング。 (c)後方部111、あるいは、上位アクセス部110
+後方部111しかアクセスしないパターンが最も多か
った場合……上位アクセス2部+後方部のローディン
グ。 (d)上記3つの場合以外……トラックローディング。
The difference between the statistical information A 172 and the statistical information 107 is that the statistical information 107 is the past information of the front access flag 104 and the rear access flag 105.
The statistical information A172 is obtained by adding the past information of the upper access flag to this. The relationship between the contents of the statistical information A172 and the loading method to be selected when a track miss occurs is shown below. (A) Upper access part 110, front part 109, rear part 1
When there are the most access patterns for all 11 ...
… No loading. (B) When the pattern in which only the upper-level access unit 110 is accessed is the most ... High-level access unit loading. (C) Rear part 111 or upper access part 110
+ When the pattern that only the rear part 111 is accessed is the most ... upper access 2 parts + rear part loading. (D) Other than the above three cases ... Track loading.

【0166】ローディングなしのパターンを設けた時の
基本的な考え方、新たに設けた情報の使用目的、トラッ
ク・ミス時に選択すべきローディングの決定方法を以上
述べた。処理フローは、ローディングなしのパターンと
設けない場合とそれほどの差違はないため省略する。
The basic idea when the pattern without loading is provided, the purpose of using the newly provided information, and the method of determining the loading to be selected at the time of a track miss have been described above. The processing flow is omitted because it is not so different from the pattern without loading and the pattern without the loading.

【0167】以上の実施例では、シーケンシャル,アク
セス以外のアクセスに対するアクセス特性の把握とし
て、上位計算機システムが実際にアクセス対象とした領
域を把握した場合について述べた。他の内容としては、
トラックのヒット率(アクセス対象のレコードがキャッ
シュメモリ36上に存在する割合)がある。この際、ヒ
ット率が一定値以下になった時、このトラックをキャッ
シュメモリ36へのローディング対象としないという制
御が考えられるが、ローディングしないと決定した後、
アクセス特性が変ってローディング対象とした方がよく
なるような場合がある。しかし、キャッシュメモリ36
へのローディング対象となっている場合には、ヒット率
は計測できるが、ローディング対象としない場合には、
ヒット率を計測することは困難である。このため、何ら
かの情報により、ヒット率の近似値を把握する。図34
に、この場合のアクセス特性情報部46cのデータ構
造、図35に処理フローを示す。図34は、図20に対
応した構造である(図31対応した図は省略する)。以
下、シーケンシャル・アクセス以外のレコードについて
述べる。トラック・ミス発生時刻171は、図32のよ
うにトラック・ミス発生時刻171と同様で、トラック
・ミスが発生したが、キャッシュメモリ36上にこのト
ラックをローディングしないと決めた時刻を記録してお
く。ミス関数192、ヒット関数191の使用法は、図
35の処理フローの説明の中で述べる。ただし、図35
の処理フローにおいて、トラックは、キャッシュメモリ
36に対し、ローディングを行わないと決めているた
め、すべての入出力要求はトラック・ミスとなる。ステ
ップ144では、このトラックがアクセス対象となった
時、このトラック・ミス発生時刻171とLRUポイン
タ43で示されたキャッシュ管理ブロック40bのアク
セス時間44を比較する。トラック・ミス発生時刻17
1の方が古い時刻であれば、前回のトラック・ミス時に
ローディングを行ったとしても、ミスになったとして、
ステップ145において、図34のミス関数191を1
増やす。そうでなければ、ステップ146において、ヒ
ット関数192を増やし、トラック・ミス発生時刻18
1を更新しておく。ヒット関数192とミス関数191
の合計値がある値以上になり、この2つの値からヒット
率{ヒット関数1921(ヒット関数191+ミス関数
191)}が一定値以上になると再びキャッシュ21へ
のローディング対象とすることが可能となる。
In the above embodiments, as the grasping of the access characteristics for accesses other than the sequential and the access, the case where the host computer system grasps the area actually targeted for access has been described. As for other contents,
There is a track hit rate (the rate at which a record to be accessed exists in the cache memory 36). At this time, when the hit rate becomes equal to or less than a certain value, it is conceivable that the track is not targeted for loading into the cache memory 36.
In some cases, the access characteristics may change, and it may be better to use it as a loading target. However, the cache memory 36
Hit rate can be measured if it is targeted for loading, but if it is not targeted for loading,
It is difficult to measure the hit rate. Therefore, the approximate value of the hit rate is grasped by some information. FIG. 34
FIG. 35 shows the data structure of the access characteristic information section 46c in this case, and FIG. 35 shows the processing flow. 34 shows a structure corresponding to FIG. 20 (a diagram corresponding to FIG. 31 is omitted). The records other than the sequential access will be described below. The track-miss occurrence time 171 is the same as the track-miss occurrence time 171, as shown in FIG. 32. The time at which the track-miss occurs but it is decided not to load this track on the cache memory 36 is recorded. . How to use the miss function 192 and the hit function 191 will be described in the description of the processing flow of FIG. However, in FIG.
In the processing flow of (1), since the track determines not to load the cache memory 36, all the I / O requests are track misses. In step 144, when this track is an access target, this track miss occurrence time 171 is compared with the access time 44 of the cache management block 40b indicated by the LRU pointer 43. Track miss occurrence time 17
If 1 is the older time, even if loading was done at the time of the previous track miss, it will be a mistake,
In step 145, the miss function 191 of FIG.
increase. Otherwise, in step 146, the hit function 192 is increased and the track miss occurrence time 18
Update 1. Hit function 192 and miss function 191
When the sum of the above values exceeds a certain value and the hit rate {hit function 1921 (hit function 191 + miss function 191)} exceeds a certain value from these two values, it becomes possible to load the cache 21 again. .

【0168】[0168]

【発明の効果】以上述べた如く、本発明によれば、上位
システムからの入出力要求のアクセス対象トラック内の
レコードの、キャッシュ内における存在状態に基づい
て、キャッシュ内にロードするレコード群を決定するよ
うにしたので、トラックを構成しているレコードが可変
長の場合でも、トラック単位の管理方式をベースとして
ローディングオーバーヘッドを少なくすることが可能
な、データローディング方法を実現できるという顕著な
効果を奏することができる。
As described above, according to the present invention, the record group to be loaded in the cache is determined based on the existence state in the cache of the record in the access target track of the input / output request from the host system. As a result, even if the records making up a track have a variable length, a remarkable effect that a data loading method capable of reducing the loading overhead based on the track-by-track management method can be realized can be achieved. be able to.

【0169】また、本発明によれば、ディスク・キャッ
シュへのローディング・オーバヘッドの軽減とヒット率
の向上がバランスよく実現できる。
Further, according to the present invention, the reduction of the loading overhead to the disk cache and the improvement of the hit rate can be realized in a balanced manner.

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

【図1】本発明の一実施例であるキャッシュ制御方法の
一例の動作を説明する概念図。
FIG. 1 is a conceptual diagram illustrating the operation of an example of a cache control method that is an embodiment of the present invention.

【図2】キャッシュ制御方法が適用される情報処理シス
テムの一例の構成を示すブロック図。
FIG. 2 is a block diagram showing the configuration of an example of an information processing system to which a cache control method is applied.

【図3】本発明の一実施例であるキャッシュ制御方法に
おけるキャッシュ動作モードを説明する概念図。
FIG. 3 is a conceptual diagram illustrating a cache operation mode in a cache control method that is an embodiment of the present invention.

【図4】外部記憶装置の構成の一例を示す概念図。FIG. 4 is a conceptual diagram showing an example of a configuration of an external storage device.

【図5】本発明の一実施例であるキャッシュ制御方法の
動作を示すフローチャート。
FIG. 5 is a flowchart showing the operation of a cache control method according to an embodiment of the present invention.

【図6】キャッシュメモリの構成例を示す図。FIG. 6 is a diagram showing a configuration example of a cache memory.

【図7】キャッシュ管理テーブルの構成を示す図。FIG. 7 is a diagram showing a configuration of a cache management table.

【図8】キャッシュ管理ブロックの構成を示す図。FIG. 8 is a diagram showing a configuration of a cache management block.

【図9】本発明の一実施例におけるプロセッサの処理フ
ローチャート。
FIG. 9 is a processing flowchart of the processor according to the embodiment of the present invention.

【図10】本発明の他の実施例におけるプロセッサの処
理フローチャート。
FIG. 10 is a processing flowchart of a processor according to another embodiment of the present invention.

【図11】本発明の他の実施例におけるプロセッサの処
理フローチャート。
FIG. 11 is a processing flowchart of a processor according to another embodiment of the present invention.

【図12】本発明の他の実施例におけるプロセッサの処
理フローチャート。
FIG. 12 is a processing flowchart of a processor according to another embodiment of the present invention.

【図13】本発明の実施例におけるデータの格納形式を
示す図。
FIG. 13 is a diagram showing a data storage format in the embodiment of the present invention.

【図14】本発明の実施例におけるデータの格納形式を
示す図。
FIG. 14 is a diagram showing a data storage format in the embodiment of the present invention.

【図15】本発明の実施例におけるデータの格納形式を
示す図。
FIG. 15 is a diagram showing a data storage format in the embodiment of the present invention.

【図16】キャッシュ管理ブロックの他の実施例を示す
図。
FIG. 16 is a diagram showing another embodiment of the cache management block.

【図17】本発明の実施例におけるデータの格納形式を
示す図。
FIG. 17 is a diagram showing a data storage format in the embodiment of the present invention.

【図18】本発明の主な機能を実行するプログラム構成
例を示す図。
FIG. 18 is a diagram showing a program configuration example for executing main functions of the present invention.

【図19】キャッシュ管理テーブルの構成を示す図。FIG. 19 is a diagram showing a configuration of a cache management table.

【図20】アクセス特性情報の構成を示す図。FIG. 20 is a diagram showing a structure of access characteristic information.

【図21】トラックの中でCPUがアクセスした部分を
認識する方法の一例を示す図。
FIG. 21 is a diagram showing an example of a method of recognizing a portion accessed by a CPU in a track.

【図22】トラックの中でCPUがアクセスした部分を
認識する方法の他の例を示す図。
FIG. 22 is a diagram showing another example of a method for recognizing a portion accessed by a CPU in a track.

【図23】トラックの先頭のレコードがアクセスされた
時の処理フロー図。
FIG. 23 is a processing flow diagram when the top record of a track is accessed.

【図24】受け付けた入出力要求がアクセス対象とする
トラックのシーケンシャル・チェック中フラグがオンの
場合実行される処理フロー図。
FIG. 24 is a processing flow chart executed when the in-sequential check flag of the track to be accessed by the received input / output request is ON.

【図25】入出力要求に対する処理が完了した時、当該
トラックのシーケンシャル・チェック中フラグがオンの
場合実行される処理フロー図。
FIG. 25 is a processing flow chart executed when the processing for the input / output request is completed and the sequential checking flag of the track is ON.

【図26】入出力要求を受け付けた時、当該トラックの
シーケンシャル認識フラグがオンの時に実行される処理
フロー図。
FIG. 26 is a process flow chart executed when an input / output request is accepted and the sequential recognition flag of the track is ON.

【図27】トラック・ミス時、複数トラック・ローディ
ング以外のローディングを実行した後実行する処理フロ
ー図。
FIG. 27 is a process flow chart executed after loading other than multi-track loading at the time of a track miss.

【図28】アクセス部チェック中フラグがオン時に、当
該トラックに対して入出力要求を受け取った時に実行さ
れる処理フロー図。
FIG. 28 is a process flow chart executed when an input / output request is received for the track when the access unit checking flag is ON.

【図29】キャッシュメモリから当該トラックを追い出
す時、アクセス部チェック中フラグがオンの時、実行さ
れる処理フロー図。
FIG. 29 is a process flow chart executed when the access unit checking flag is turned on when the track is ejected from the cache memory.

【図30】ローディング選択部の処理フロー図。FIG. 30 is a processing flowchart of a loading selection unit.

【図31】シーケンシャル・アクセスの認識をリード用
とライト用に独立に行った場合のアクセス特性情報の構
成図。
FIG. 31 is a configuration diagram of access characteristic information when sequential access recognition is performed independently for read and write.

【図32】ローディングなしのパターンを用意した時の
アクセス特性情報の構成図。
FIG. 32 is a configuration diagram of access characteristic information when a pattern without loading is prepared.

【図33】シーケンシャル・アクセスの認識をリード用
とライト用に独立に行い、かつ、ローディングなしのパ
ターンを用意した時のアクセス特性情報の構成図。
FIG. 33 is a configuration diagram of access characteristic information when recognition of sequential access is performed independently for read and write and a pattern without loading is prepared.

【図34】ヒット率の近似値を把握する場合のアクセス
特性情報の構成図。
FIG. 34 is a configuration diagram of access characteristic information when grasping an approximate value of a hit rate.

【図35】ヒット率の近似値を把握する時の処理フロー
図。
FIG. 35 is a processing flow chart when grasping an approximate value of a hit rate.

───────────────────────────────────────────────────── フロントページの続き (72)発明者 坪井 俊明 東京都小平市上水本町5丁目22番1号 株式会社日立超エル・エス・アイ・シス テムズ (72)発明者 本間 繁雄 神奈川県小田原市国府津2880番地 株式 会社日立製作所 小田原工場内 (72)発明者 中村 勝憲 神奈川県小田原市国府津2880番地 株式 会社日立製作所 小田原工場内 (72)発明者 神林 公咲 神奈川県小田原市国府津2880番地 株式 会社日立製作所 小田原工場内 (72)発明者 北嶋 弘行 神奈川県川崎市麻生区王禅寺1099番地 株式会社日立製作所 システム開発研究 所内 (72)発明者 倉野 昭 神奈川県小田原市国府津2880番地 株式 会社日立製作所 小田原工場内 (72)発明者 野沢 正史 神奈川県小田原市国府津2880番地 株式 会社日立製作所 小田原工場内 (56)参考文献 特開 昭57−211657(JP,A) 特開 昭61−273644(JP,A) 特開 昭63−4356(JP,A) 特開 昭64−23355(JP,A) 特開 昭63−204448(JP,A) 特開 昭59−123952(JP,A) 特開 昭58−76957(JP,A) 特開 昭57−209555(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 12/08 G06F 3/06 ─────────────────────────────────────────────────── ─── Continuation of the front page (72) Inventor Toshiaki Tsuboi 5-22-1 Kamimizuhoncho, Kodaira-shi, Tokyo Hitachi Ultra LSI Systems Inc. (72) Inventor Shigeo Honma Odawara, Kanagawa Kozu 2880 Address Hitachi Co., Ltd.Odawara Plant (72) Inventor Katsunori Nakamura 2880 Kozu, Odawara City, Kanagawa Prefecture Incorporated Hitachi Ltd. Inside the Odawara Factory (72) Hiroyuki Kitajima, Hiroyuki Kitajima 1099 Ozenji, Aso-ku, Kawasaki, Kanagawa Hitachi, Ltd. System Development Laboratory (72) Inventor Akira Kurano 2880, Kozu, Odawara-shi, Kanagawa Hitachi Ltd. ) Inventor Masafumi Nozawa Country of Odawara City, Kanagawa Prefecture Tsu 2880 Address, Hitachi, Ltd. Odawara factory (56) Reference JP 57-211657 (JP, A) JP 61-273644 (JP, A) JP 63-4356 (JP, A) JP 64-23355 (JP, A) JP 63-204448 (JP, A) JP 59-123952 (JP, A) JP 58-76957 (JP, A) JP 57-209555 (JP , A) (58) Fields investigated (Int.Cl. 7 , DB name) G06F 12/08 G06F 3/06

Claims (12)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】複数の記憶領域を有する記憶装置と処理装
置とに接続される制御装置が、前記記憶装置に格納され
ているデータを前記処理装置に転送するための、データ
ローディング方法であって、 前記処理装置の要求に基づいて、前記記憶装置が有する
第一の記憶領域に格納されている第一のレコードが読み
出される場合に、 前記第一の記憶領域に格納されている第二のレコード
が、前記制御装置が有するキャッシュメモリに格納され
ている場合には、前記第一のレコードと、前記第一の記
憶領域に格納されている前記第一のレコード及び前記第
二のレコード以外のレコードを、前記キャッシュメモリ
に転送し、 前記第一の記憶領域に格納されているレコードが前記キ
ャッシュメモリに格納されていない場合には、前記第一
のレコードを前記キャッシュメモリに転送することを特
徴とするデータローディング方法。
1.Storage device having a plurality of storage areas and processing device
A controller connected to the storage device is stored in the storage device.
Data for transferring stored data to the processing device
A loading method, The storage device has, based on a request from the processing device.
The first record stored in the first storage area is read
When issued, The second record stored in the first storage area
Is stored in the cache memory of the control device.
, The first record and the first record
The first record and the first record stored in the memory area.
Records other than the second record are stored in the cache memory.
Transfer to The record stored in the first storage area is the key
If it is not stored in the cache memory,
Of the records in the cache memory.
Data loading method to collect.
【請求項2】複数の記憶領域を有する記憶装置と処理装
置との間のデータの転送を制御する、キャッシュメモリ
を有する制御装置におけるデータローディング方法であ
って、 前記処理装置から受信する、前記記憶装置が有する第一
の記憶領域に格納される第一のレコードへのアクセス要
求に従って、前記第一のレコードを前記キャッシュメモ
リに転送し、 前記第一のレコードが前記キャッシュメモリに存在して
いる間に、前記処理装置から受信する、前記第一の記憶
領域に格納されている第二のレコードへのアクセス要求
に従って、前記第二のレコードを前記キャッシュメモリ
に転送し、更に前記第一の記憶領域に格納されているレ
コードであって、前記第一のレコード及び前記第二のレ
コード以外のレコードを、前記キャッシュメモリに転送
することを特徴とするデータローディング方法。
2.Storage device having a plurality of storage areas and processing device
Memory that controls the transfer of data to and from the storage
A data loading method in a controller having
I mean The first storage device has the first reception from the processing device.
Access to the first record stored in the storage area of
According to the request, copy the first record to the cash memo.
Transfer to The first record exists in the cache memory
The first memory received from the processing device during
Request to access the second record stored in the area
According to the second record in the cache memory
Data stored in the first storage area.
A code, the first record and the second record.
Transfer records other than code to the cache memory
A data loading method comprising:
【請求項3】前記第一の記憶領域に格納されるレコード
には、各々番号が振られ、前記第一 のレコードに振られ
た番号は、前記第二のレコードに振られた番号よりも小
さいことを特徴とする請求項2記載のデータローディン
グ方法。
3. A record stored in the first storage area
Are numbered respectively and assigned to the first record
Number is smaller than the number assigned to the second record.
The data loader according to claim 2, wherein
How to go.
【請求項4】前記キャッシュメモリに転送される、前記
第一のレコード及び前記第二のレコード以外のレコード
は、前記第一のレコードに振られた番号よりも大きい番
号が振られているレコードであることを特徴とする請求
項3記載のデータローディング方法。
4. The data transferred to the cache memory,
Records other than the first record and the second record
Is a number greater than the number assigned to the first record
Claims characterized in that the record is assigned a number
Item 3. The data loading method according to Item 3.
【請求項5】前記キャッシュメモリに転送される、前記
第一のレコード及び前記第二のレコード以外のレコード
には、前記第二のレコードを除き、前記第一のレコード
に振られた番号の次の番号が振られているレコードか
ら、前記第一の記憶領域内で最大の番号が振られている
レコードまでが含まれることを特徴とする請求項3記載
のデータローディング方法。
5. The data transferred to the cache memory,
Records other than the first record and the second record
Except for the second record, the first record
Is the record numbered after the number assigned to?
The highest number in the first storage area
4. A record up to and including a record.
Data loading method.
【請求項6】前記第一の記憶領域に格納されるレコード
には各々番号が振られ、前記第一のレコードに振られた
番号は、前記第二のレコードに振られた番号よりも大き
いことを特徴とする請求項2記載のデータローディング
方法。
6. A record stored in the first storage area
Each is numbered and assigned to the first record
The number is greater than the number given in the second record above.
Data loading according to claim 2, characterized in that
Method.
【請求項7】前記キャッシュメモリに転送される、前記
第一のレコード及び前記第二のレコード以外のレコード
は、前記第一のレコードに振られた番号よりも小さい番
号が振られているレコードであることを特徴とする請求
項6記載のデータローディング方法。
7. The data transferred to the cache memory,
Records other than the first record and the second record
Is a number smaller than the number assigned to the first record.
Claims characterized in that the record is assigned a number
Item 7. The data loading method according to Item 6.
【請求項8】前記キャッシュメモリに転送される、前記
第一のレコード及び前記第二のレコード以外のレコード
は、前記第二のレコードを除き、前記第一の記憶領域内
で最小の番号が振られているレコードから前記第一のレ
コードに振られた番号の直前の番号が振られているレコ
ードまでが含まれることを特徴とする請求項6記載のデ
ータローディング方法。
8. The data transferred to the cache memory,
Records other than the first record and the second record
Is in the first storage area except for the second record
From the record with the smallest number in
A record with a number immediately before the number given to the code
7. The device according to claim 6, further comprising a code.
Data loading method.
【請求項9】前記記憶装置が有する複数の記憶領域は各
々、前記記憶装置が有する磁気ディスク上のトラックで
あることを特徴とする請求項1から8のうちいずれか一
つに記載されたデータローディング方法。
9. A plurality of storage areas included in the storage device are
The track on the magnetic disk of the storage device
Any one of claims 1 to 8 characterized in that
Data loading method described in Section 1.
【請求項10】処理装置と、複数の記憶領域を有する記
憶装置とに接続され、前記処理装置の要求に基づいて、
前記複数の記憶領域に格納されているデータを前記処理
装置に転送する制御装置であって、 前記記憶装置と接続するための第一のインタフェース制
御部と、 前記処理装置と接続するための第二のインタフェース制
御部と、 前記記憶装置から前記第一のインタフェース制御部を介
して受信したデータを一時的に格納するキャッシュメモ
リとを有し、 前記第二のインタフェース制御部を介して受信した、前
記処理装置からの第一のアクセス要求に基づいて、前記
記憶装置が有する第一の記憶領域から第一のレコードを
前記キャッシュメモリに転送し、 前記第一のレコードが前記キャッシュメモリに存在して
いる間に、前記第二のインタフェース制御部を介して受
信した、前記処理装置からの前記第一の記憶領域内の第
二のレコードに対する第二のアクセス要求に従って、前
記第二のレコードを前記キャッシュメモリに転送し、前
記第一の記憶領域に格納されているレコードであって、
前記第一のレコード及び前記第二のレコード以外のレコ
ードも、前記キャッシュメモリに転送することを特徴と
する制御装置。
10.A processor having a storage device and a plurality of storage areas.
Connected to the storage device, based on the request of the processing device,
Processing the data stored in the plurality of storage areas
A control device for transferring to the device, A first interface system for connecting to the storage device
With the department A second interface system for connecting to the processing device
With the department From the storage device via the first interface control unit
Cache memo that temporarily stores the received data
Have a Received via the second interface controller,
Based on the first access request from the processing device,
The first record from the first storage area of the storage device
Transfer to the cache memory, The first record exists in the cache memory
While receiving the
Received from the processing device in the first storage area.
According to the second access request for the second record, before
Transfer the second record to the cache memory,
A record stored in the first storage area,
Records other than the first record and the second record
Mode is also transferred to the cache memory.
Control device.
【請求項11】前記複数の記憶領域は各々、前記記憶装
置が有する磁気ディスク上のトラックであることを特徴
とする請求項10記載の記憶装置。
11. Each of the plurality of storage areas is the storage device.
Characterized by being a track on a magnetic disk
The storage device according to claim 10.
【請求項12】処理装置からの要求に基づいて、記憶装
置に格納されているデータが前記処理装置に転送される
場合に、前記記憶装置と前記処理装置に接続される制御
装置が前記記憶装置に格納されているデータをキャッシ
ュメモリに一時的に格納する方法であって、 前記処理装置からのアクセス要求に基づいて、前記記憶
装置が有する複数の記 憶領域各々について、該各々の記
憶領域が有する複数のレコードのアクセス特性を示す情
報を収集し、 前記処理装置から前記記憶装置が有する第一の記憶領域
の第一のレコードへの第一のアクセス要求を受信した場
合に、前記アクセス特性を示す情報に基づいて、該アク
セス要求がシーケンシャルアクセス要求であるか否かを
判断し、 前記第一のアクセス要求が、シーケンシャルアクセス要
求である場合には、前記アクセス特性を示す情報に基づ
いて、前記第一の記憶領域及び前記記憶装置が有する第
二の記憶領域のレコードを前記キャッシュメモリに格納
し、 前記第一のアクセス要求が、シーケンシャルアクセス要
求ではないと判断された場合には、前記アクセス特性を
示す情報に基づいて、前記第一の記憶領域が有する複数
のレコードのうち、前記キャッシュメモリに格納すべき
レコードを選択し、前記第一のレコードと選択されたレ
コードとをキャッシュメモリに格納することを特徴とす
る方法。
12. The method according to claim 12,Based on the request from the processor, the storage device
The data stored in the storage is transferred to the processing device.
Control connected to the storage device and the processing device, if
The device caches the data stored in the storage device.
It is a method of temporarily storing in the memory, The storage is performed based on an access request from the processing device.
Multiple notes that the device has For each storage area,
Information indicating the access characteristics of multiple records in the memory area
Collect information, A first storage area included in the storage device from the processing device
Received a first access request to the first record of
The access based on the information indicating the access characteristics.
Whether the access request is a sequential access request
Judge, The first access request is a sequential access request.
If so, it is based on the information indicating the access characteristics.
And the first storage area and the storage device have
Store the record of the second storage area in the cache memory
Then The first access request is a sequential access request.
If it is determined that the access characteristic is not
Based on the information shown, a plurality of the first storage area has
Of the records, should be stored in the cache memory
Select a record and select the first record and the selected record.
Characterized by storing code and cache memory
How to do.
JP2001325763A 1988-09-30 2001-10-24 Data loading method and apparatus Expired - Lifetime JP3468762B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001325763A JP3468762B2 (en) 1988-09-30 2001-10-24 Data loading method and apparatus

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP63-244128 1988-09-30
JP24412888 1988-09-30
JP28499288 1988-11-11
JP63-284992 1988-11-11
JP2001325763A JP3468762B2 (en) 1988-09-30 2001-10-24 Data loading method and apparatus

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP25194589A Division JP3370661B2 (en) 1988-09-30 1989-09-29 Data loading method and apparatus

Publications (2)

Publication Number Publication Date
JP2002196980A JP2002196980A (en) 2002-07-12
JP3468762B2 true JP3468762B2 (en) 2003-11-17

Family

ID=27333206

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001325763A Expired - Lifetime JP3468762B2 (en) 1988-09-30 2001-10-24 Data loading method and apparatus

Country Status (1)

Country Link
JP (1) JP3468762B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4793949B2 (en) 2006-12-04 2011-10-12 Eugrid株式会社 Computer information processing apparatus and information management program
JP2015210718A (en) * 2014-04-28 2015-11-24 富士通株式会社 Storage control device, storage system, and storage control program

Also Published As

Publication number Publication date
JP2002196980A (en) 2002-07-12

Similar Documents

Publication Publication Date Title
US5253351A (en) Memory controller with a cache memory and control method of cache memory including steps of determining memory access threshold values
US4489378A (en) Automatic adjustment of the quantity of prefetch data in a disk cache operation
EP0301211B1 (en) Cache management for a peripheral data storage subsystem
US4490782A (en) I/O Storage controller cache system with prefetch determined by requested record's position within data block
EP0080876B1 (en) Cache control method and apparatus
US5134563A (en) Sequentially processing data in a cached data storage system
US4875155A (en) Peripheral subsystem having read/write cache with record access
US4420807A (en) Selectively holding data in a buffer for defective backing store tracks
US6381677B1 (en) Method and system for staging data into cache
US6842801B2 (en) System and method of implementing a buffer memory and hard disk drive write controller
CN100362462C (en) Method for managing magnetic disk array buffer storage
US20010011324A1 (en) Method of data migration
EP0077453A2 (en) Storage subsystems with arrangements for limiting data occupancy in caches thereof
JPH05307440A (en) Data storage format conversion system and its conversion method, access controller and data access method
JPH023215B2 (en)
JPH1063578A (en) Information recording and reproducing device
US5694570A (en) Method and system of buffering data written to direct access storage devices in data processing systems
EP0066766A2 (en) I/O controller with a dynamically adjustable cache memory
JPH08147218A (en) Cache controller
US7822923B2 (en) Storage control program, storage control apparatus, and storage control method
JP3468762B2 (en) Data loading method and apparatus
JPH11506238A (en) System and method for sequentiality detection in a cache management system
JP3370661B2 (en) Data loading method and apparatus
US6209057B1 (en) Storage device having data buffer
JPH11327802A (en) Disk system

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20030812

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080905

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080905

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090905

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090905

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100905

Year of fee payment: 7

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100905

Year of fee payment: 7