JPH02224040A - データローディング方法および装置 - Google Patents

データローディング方法および装置

Info

Publication number
JPH02224040A
JPH02224040A JP1251945A JP25194589A JPH02224040A JP H02224040 A JPH02224040 A JP H02224040A JP 1251945 A JP1251945 A JP 1251945A JP 25194589 A JP25194589 A JP 25194589A JP H02224040 A JPH02224040 A JP H02224040A
Authority
JP
Japan
Prior art keywords
data
cache memory
loading
stored
access
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.)
Granted
Application number
JP1251945A
Other languages
English (en)
Other versions
JP3370661B2 (ja
Inventor
Akira Yamamoto
彰 山本
Toshiaki Tsuboi
俊明 坪井
Shigeo Honma
繁雄 本間
Katsunori Nakamura
中村 勝憲
Kousaku Kanbayashi
神林 公咲
Hiroyuki Kitajima
北嶋 弘行
Akira Kurano
倉野 昭
Masashi Nozawa
野沢 正史
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 Microcomputer System Ltd
Hitachi Ltd
Original Assignee
Hitachi Ltd
Hitachi Microcomputer Engineering 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 Microcomputer Engineering Ltd filed Critical Hitachi Ltd
Priority to JP25194589A priority Critical patent/JP3370661B2/ja
Publication of JPH02224040A publication Critical patent/JPH02224040A/ja
Application granted granted Critical
Publication of JP3370661B2 publication Critical patent/JP3370661B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 【産業上の利用分野】
本発明は、キャッシュメモリを有する制御装置において
、キャッシュメモリへのローディングを行なうのに好適
なデータローディング方法に関する。
【従来の技術】
外部記憶装置として用いられる磁気ディスタ装置などに
おいては、比較的安価に大きな記憶容量を実現できると
いう利点がある。しかし記憶媒体である磁気ディスクの
回転待ちやヘッドのシーク動作などに起因して、デ・−
夕の記録、再生などにおけるアクセス速度の向上には自
ずと限界がある。 このため、外部記憶装置どして磁気ディスク装置などを
備えた電子計算機システムにおいては次のようにしてい
る。中央処理装置と磁気ディスク装置との間に介在して
両者間のデータの授受を制御する磁気ディスク制御装置
などに、磁気ディスク装置よりも高速なアクセスが可能
な半導体メモリなどからなるキャッシュメモリを甜ける
。そして磁気ディスク装置に格納されているγ−タの一
部をこのキャッシュメモリに格納して4中央処理装置か
らのアクセスに応答することにより、磁気ディスク装置
と中央処理装置との間の大ぎな動作速度の差異を緩和す
る。このように磁気ディスク装置と中央処理装置との間
のデータの授受を効率化することが一般的である。 その場合、中央処理装
【からアクセスされる目的のデー
タがキャッシュメモリ上に存在する確率、すなわちヒッ
!−率を可能な限り大きくすることがキャッシュメモリ
をより有効に機能さぜるなどの観点から重要である。そ
のために従来から以下のような種々の技術が提案されて
いる。 例えば、オーム社刊「電子情報通信ハンドブックJ  
(1988年)には、キャッシュメモリに対Jるデータ
ローディングはトラック単位で行なわれている、 また、たとえば、特開昭55−154648号公報に開
示される技術では次のようLこシている、磁気ディスク
装置の記憶領域を複数個に分割ず゛る。 その分割された各々の記憶領域に応じて異なる動作モー
・・・ドを予め設定する。中央処理装置からの入出力指
令によって指定される記憶領域に対応した動作モードに
切り替えるようにする。以上のようにしてピット率の向
にを図ろうとするものである。 また、たとスば2特開昭60−14360号公転に記載
される技術では次のようにしている。ヒツト/ミス等の
統計データをディスク制御装置で収集する。収集した統
計データを中央処理装置に転送する、これらの統計デー
タに基づいて、オベシー°夕やシステム管理者が現在の
キャッシュメモリの利用状態が最適か否かを判断する。 その判断結果に基いて磁気ディスク装置からキャッジ、
1.スモリ上にロードされるf〜りの範囲すなわちキャ
ッシュ対象範囲を適切に制御する。このようにして、中
央処理装置と磁気ディスク装置との間におけるデータの
転送効率を向上させようとしている。 さらに、情報処理学会、第29目金国大会、pp、 1
69−170においては、シーケンシャル・アクセスの
認11!をディスク制御装置で行い、あるトラックに対
するシーケンシャル・アクセスが完了した後、このトラ
ックをキャッシュメモリから最も追い出されやすいデー
タとして扱うという方法が提案されている。 【発明が解決しようとする課題】 しかしながら、上記、[電子情報通信ハンドブックJで
は、ローディングのオーバーヘッドが大きく、アクセス
対象データがキャッシュ内に存在する確率が高い場合は
問題にならないが、存在確率が低い場合には、キャッシ
ュ導入により、かえって性能が劣化する可能性があった
。 これに対しては、アクセス対象となったレコードのみを
キャッシュにロードする方式が考えられるが、一般的に
は、トラック内の1ノコード長は可変長であり、トラッ
ク単位の管理を基本としたローディング方式が必要であ
る。 また、特開昭55−154648号公報では、ディスク
制御装置では、中央処理装置からアクセス特性を指示し
、これに従って、ローディング方法゛(動作モード)を
選択する。従って、中央処理装置に負担がかかる。また
、中央処理装置でアクセス特性が認識しきれない場合、
キャッシュメモリへの適切なローディング方法が選択で
きなかった。 また、分割された個々の記憶領域について見れば動作モ
ードは固定であるので、同一の記憶領域内において中央
処理装置からディスク装置へのアクセスパターンが経時
的変動する場合にはキャッシュメモリの利用効率を最適
に維持することができないという問題がある2 すなわち、同一の記憶領域に設けられたファイルを、た
とえばランダムなアクセスが主なオンライン処理とシー
ケンシャルなアクセスが主なバッチ処理とで共用する場
合などに対応が困確となる。 特開昭60−14360号公報では、磁気ディスク制御
装置において得られた統計情報を判断するのがオペレー
タやシステム管理者である。したがって6業務により磁
気ディスク装置への中央処理装置からのアクセスパター
ンが異なるなどの場合、実行する業務に合わせて時々刻
々とキャッシュ対象範囲(キャッシュメモリにロードす
べきデータの範囲)を最適に制御することが事実上不可
能であるという問題点がある。 さらに、上記情報処理学会論文では、ディスク装置への
典型的なアクセスパターンであるシーケンシャル・アク
セスの認識を行っている。認識の結果、アクセス済みの
トラックをキャッシュから最も追い出されやすく制御す
るのみで、特にローディング方法を選択するという内容
ではない。 本発明の目的は、磁気ディスクのトラックを構成してい
るレコードが可変長の場合、トラック単位の管理方法を
ベースとしてローディングオーバーヘッドを少なくする
ことが可能な、ローディング方法を提供することにある
。 本発明の他の目的は、ディスク制御装置において、各入
出力要求のアクセス特性を把握して、この結果、ヒツト
率の向上とローディング・オーバーヘッドの軽減を実現
するローディング方法を提供することにある。
【課題を解決するための手段】
本発明の目的は次のようにして達成される。ディスク制
御装置はディスク装置と中央処理装置に接続され、かつ
、ディスク装置上のある物理領域をキャッシュ管理単位
(キャッシュメモリの管理単位)とするキャッシュメモ
リを有する。中央処理装置からのアクセス対象となった
領域を含むキャッシュ管理単位内のデータが、キャッシ
ュメモリ内に全く存在しないとき、中央処理装置からの
アクセス対象となった領域のデータのみをキャッシュメ
モリにロードする初期ローディングを行う。 この後、このキャッシュ管理単位内のデータで2すでに
キャッシュメモリ内に格納されているデータ以外のデー
タにアクセスがあったとき、このキャッシュ管理単位内
の、キャッシュメモリ内に格納されているデ・−夕以外
のデータをキャッシュメモリに追加ロードすることを特
徴とするデータローディング方法によって達成される。 さらに、本発明の他の目的は次のようにして達成される
。 入出力要求をシーケンシャル・アクセスとこれ以外の入
出力要求とに分類する。シーケンシャルアクセスはアク
セス特性の把握が容易で、かつ、効率のよいローディン
グ方法を決定することが容易である。 シーケンシャル・アクセスと認識した場合、現在アクセ
ス中の1−ラックから、複数のトラックの先読み・ロー
ディングを行う。 シーケンシャル・アクセスでないと認識した場合、この
入出力要求がアクセス対象としているデータを含むキャ
ッシュ管理単位(通常は!・ラック)がキャッシュメモ
リ内に滞在する間に中央処理装置からアクセス対象どな
る部分を統計情報により予測し、この部分のみをローデ
ィングすることにより、ヒツト率とローディングの軽減
をバランスよく実現する。
【実施例】
以下5本発明の一実施例を図面を引用しつつ説明する。 第1図は、本発明の一実施例であるキャッシュ制御方法
の一例の動作を説明する概念図である。 第2図はこのキャッシュ制御方法が適用される情報処理
システムの一例の構成を示すブロック図である。 まず、第2図などにより、本実施例における情報処理シ
ステムの構成の概略を説明する。 たとえば、汎用の電子計算機などの一部を構成する中央
処理袋31 (Central Proce9sing
 Unit)1(上位システムと呼ぶこともある。)と
、外部記憶装置としての磁気ディスク装置2との間に、
両者間におけるデータおよびコマンドなどの授受を制御
するディスク制御装置3(制御装置)が設けられている
。 第2図にはディスク装置2を1台図示しであるが、一般
に、−台のディスク制御装置が接続される。 中央処理装置Jには、中央処理装置1と外部との間にお
けるデータおよびコマンドなどの授受を制御するチャネ
ル装置1〕−が設けられている。 一方、ディスク制御’A 置3には、チャネルインター
フェイス制御部31およびデバイスインターフェイス制
御32が設けられており、それぞれ、チャネル装置11
とディスク制御装置3との間におけるデータおよびコマ
ンドの遺り取り、およびディスク制御装置3と磁気ディ
スク装置2との間におけるデータの遺り取りなどを受は
持っている。 さらに、このチャネルインターフェイス制御部31とデ
バイスインターフェイス制御部32との間には、これら
を制御するプロセッサ33と、当該プロセッサ33の制
御プログラムなどが格納された制御メモリ34が設けら
れている。 また、チャネルインターフェイス制御部31とデバイス
インターフェイス制御部32とは、データバス35によ
って接続されている。 このデータバス35の一部には、たとえば磁気ディスク
装置2よりもはるかに動作の高速な半邂体メモリなどか
らなるキャッシュメモリ36が設けられている。 そして、磁気ディスク装置2に格納されでいるデータの
中で、上位のチャネル装置1】を介して中央処理装置1
からアクセスされる確率の高いものを予め複写しておき
、このキャッシュメモリ36に格納されたデータによっ
て一ヒ位の中央処理装置1の側からのアクセス要求に応
答すること番こより、高速のチャネル装置11の側と動
作の遅い磁気ディスク装百2との間におけるデータの授
受の効率を高めるものである。 さらに、データバス35において、キャッシュメモリ3
6よりもデバイスインターフェイス制御部32により近
い側には、データバッファ37が介設されており、デバ
イスインターフェイス制御部32と、キャッシュメモリ
36およびチャネルインターフェイス制御部31などと
の間で授受されるデータが一時的に蓄えられるように構
成されている。 また、キャッシュメモリ36およびデータバップア37
の動作は前記マイクロプロセッサ33によって制御され
ている。 一方、前記磁気ディスク装置2においては、第4図に示
されるように、記憶媒体である複数の磁気ディスク21
の各々の両面に同心円状に複数のトラック22が設けら
れており、各々のトラック22には第3図に示されるよ
うにデータの記録単位の一種であるレコードが複数個格
納されている。 また1個々の磁気ディスク21の両面には、それぞれ磁
気ディスク2」の回転中心から距離が互いに等しい状態
で当該磁気ディスク21の径方向に同時に同一方向に移
動して、目的の1−ラック上への位置付は動作、すなわ
ちシー・り動作を行う複数の図示しないヘッドが対向し
て配置されており。 この図示しないヘッドを介して任意のトラック22に対
する前記レコードなどのデータの記録・再生動作が行わ
れる。 さらに、この複数のヘッドを磁気ディスク2]。 の径方向に変位させることなしに、すなわち回転中心か
ら等距離にあり、所要時間の長いシーク動作を行うこと
なくヘッドの選択操作のみで高速に連続したアクセスが
可能な一群のトラック22によりシリンダ23が構成さ
れている。 そして、上位の中央処理装置1の側からの任意のレコー
ドへのアクセスは、このシリンダ2゛3の番号2図示し
ないヘッドの番号(トラック番号)およびレコード番号
などを指定して行われるものである。 この場合、キャッシュメモリ36には、第1図に示され
るように、磁気ディスク装置2における複数のトラック
22の任意の幾つかにそれぞれ対応する複数の1〜ラツ
クスロツト361〜367・・・が設けられている。磁
気ディスク装置2の任意のトラック22に格納されてい
るレコードRなどのデータがそのトラック22に格納さ
れている場合と等価な記録形式でこのトラックスロット
361〜367・・・に随時複写(ロード)される。 これにより、チャネル装置1i11は、そのアクセスに
際して、キャッシュメモリ36に目的のデータが存在す
る場合には、高速なアクセスが可能なものである。 さらに、キャッシュメモリ36の内部におけるこれらの
複数の1−ラックスロット361〜367・・・は、キ
ャッシュメモリ管理テーブル4によって管理されている
。 キャッシュ管理テーブル4には個々のl−ラックスロッ
トに対応する複数のエントリ41が設けられる。個々の
エントリ41には、個々のトラックスロットに格納され
たデータの複写元のトラック22の磁気ディスク21に
おける図示しない格納位置情報(シリンダ番号、トラッ
ク番号など)と、キャッシュメモリ36内におけるトラ
ックスロットの格納位置を指す図示しないポインタなど
が記録されている。 さらに、個々のエントリ41.すなわち個々のエントリ
41に属する個々のトラックスロットはキャッシュ管理
テーブル4においてLRU法(Least Recen
tly Used low)により管理されている。 すなわち、中央処理装置1からチャネル装置11を介し
て磁気ディスク装置2の所定のデータにアクセスの要求
があった場合には、まず、キャッシュ管理テーブル4を
検索してキャッシュメモリ36上に目的のデータがある
か否かが調べられる。目的のデータが存在する(以下、
ヒツトと記す)場合には、キャッシュメモリ36内のデ
ータを用いた高速なアクセスが可能となる。一方、目的
のデータが存在しない(以下、ミスと記す)場合には、
直接に磁気ディスク装百2に対してアクセスを行うこと
になる。 このミスの場合には、たとえば、磁気ディスク装置2か
らチャネル装置11に読み出されるデータは同時にキャ
ッシュメモリ36に複写され、次のアクセスに備えるこ
ととなるにの複写に際しては、解放されるべきトラック
スロットが選択される。キャッシュメモリ36に設けら
れた複数のトラックスロット361〜367・・・の中
で最も古い時点でアクセスがあったもの、すなわち、キ
ャッシュ管理テーブル4のL RTJ管理において最も
票位の低い(OUT側)エントリ41に対応するものが
選択される。複写されたトラックスロットに対応するエ
ン1−リ41をL RU管理の最上位(IN側)に位置
づける操作が行われる。 すなわち、最近にアクセスされたデータは次にアクセス
される可能性が高いのでなるべく長くキャッシュメモリ
36の内部に保持する。最も古い時点でアクセスされた
データが格納されているトラックスロットを新しいデー
タの複写のために開放する。このようにしてヒツト率の
向上を図るものである。 本実施例においては、前述のようなミスの際に行われる
磁気ディスク装!!!2からキャッシュメモリ36への
所望のデータのロードの仕方などを規定するキャッシュ
動作モードどして少なくとも次の2種類が設けられてい
る。ローディングモードとレコードモードである。 第3図に示されるように、磁気ディスク装置2にむける
任意のトラック22に格納されている複数のレコードの
うち、任意のレコードR4にアクセスがあった場合に、
レコードRnの後方に(必ずしも連続していない)に格
納されているレコードに対するアクセスの確率が高いと
見なす、レコードR7の次から、そのトラック終端まで
のすべてのレコードをキャッシュメモリ36の所定のト
ラックスロットに複写する。これがローディングモード
である。レコードモードは複写の所要時間およびデータ
バス35の占有時間などを最小にするなどの観点からア
クセスのあった当該レコードRpのみを複写するモード
である。 前述のキャッシュ管理テーブル4の複数のエントリ4】
の各々は、次のように構成されている。 第1図に示されるように、エントリ41に属するトラッ
クスロットに対するアクセスの際に後述の所定の条件に
従ってインクリメントされるカウンタ41aと、そのト
ラックスロットにおける現在のキャッシュ動作モードを
識別するモード識別情報41bとが記録されるように、
各々のエントリ41は構成されている。 さらに1本実施例の場合には、磁気ディスク21におい
て回転中心から等距離にある一群のトラック22(トラ
ックスロット)を含む前述のシリンダ23の各々に対応
する複数のエントリ51を有するシリンダ統計情報テー
ブル5が設けられている0個々のトラックスロットにお
けるキャッシュ動作モードはこのリシンダ単位で管理さ
れている。 すなわち、このシリンダ統計情報テーブル5の各々のエ
ントリ51には、当該エントリ51.に対応するシリン
ダ23の現在のキャッシュ動作モードを記録するモード
識別情報51aと、当該シリンダ23に対する全アクセ
ス回数が記録されるアクセス回数記録部51bと、前記
キャッシュ管理テーブル4におけるカウンタ41aの値
などに基づいて後述の所定の契機に→−1されるローデ
ィングモードカウンタ51cと、レコードモードカウン
タ51dとが設けられているゆ そして、本実施例では、アクセス回数記録部5 ]、 
bの値と、ローディングモードカウンタ5]。 Cまたはレコードモードカウンタ51dどの比の大小に
応じて、個々のシリンダ23を単位として随時、前述の
キャッシュ動作モードを切り替える操作が自動的に行わ
れるものである。 以下、本実施例のキャッシュ制御方式の動作の一例を第
5図を用いて説明する。 中央処理装W1は、チャネル装置]1を介してディスク
制御装置3にシリンダ番号、ヘッド番号(トラック番号
)、レコード番号などを指示して磁気ディスク装胃2に
対するアクセスを要求する。 この要求に対応し・て、第4図の処理が開始する9デイ
スク制御装置3は、シリンダ統計情報テーブル5の該当
するシリンダ番号CYL#のアクセス回数記録部51b
を+1する(ステップ60)1、次に、このシリンダの
キャッシュ動作モードを判定する(ステップ61)。 ローディングモードの場合を説明する、指示されたシリ
ンダ番号、トラック番号などにより、キャッシュメモリ
36を検索し、目的のレコードを探す(ステップ62)
。目的のレコードが見つからないとき(ステップ63)
、次のように処理する。 目的のレコードをロードするトラックスロットを解放す
る(ステップ64)、このトラックスロットの解放に関
しては後述する。中央処理装置1がアクセスを要求した
目的のレコードR3に引き続く後続のレコードR工it
Rm+zを、ロードする(ステップ66)。このローデ
ィングは磁気ディスク装置2の該当するシリンダ番号お
よび1−ラック番号のトラック22から、LRU法によ
って管理される所定のたとえばトラックスロッI−36
2にロードすることにより実現する。このローディング
と同時または、トラックスロットに格納した後に、要求
されたレコードR1をチャネル装置11に送出する(ス
テップ67)。キャッシュ管理テーブル4の該当エント
リ41のモード識別情報41bがローディングモードを
示すようにする(ステップ68)、当該l・ラックスロ
ツ1−に対応するキャッシュ管理テーブル4の該当エン
トリ41のカウンタ41aに初期値1をセットする(ス
テップ69)。 そして、以降、当該トラックスロッl−362において
後続のレコードR□、、Rm、、にアクセスの要求があ
れば、当該レコードRwr41 p R@4.1はキャ
ッシュ内に保持されているので高速にアクセスできる(
ステップ70)。この場合、ディスク制御装置3は、キ
ャッシュ管理テーブル4における当該トラックスロット
362に対応するエントリ゛4Jのカウンタ41aを・
(−1する(ステップ71)。 したがって、現在ローディングモードにあるトラックス
ロット362は、ロードの契機となった先頭のレコード
R1で1回、後方のレコードR1や2で1回の合計2回
アクセスされたのでキャッシュ管理テーブル4のカウン
タ41. aの値は2となる。 つまり、本カウンタ41aにより対応する現在ローディ
ングモードにあるトラックスロットが何回アクセスされ
たかがわかる。 すなわち、1度しかアクセスされない場合(ロード時の
みの場合)、カウンタは初期値1のままである。たとえ
ば同じローディングモードにあるトラックスロット36
5のカウンタ41aの値は】、であるのでロードの契機
となった先頭のR11シかアクセスされていないことが
わかる。 いま、現在ローディングモードにあるトラックスロット
365は、次に新しいデータがキャッシュ内にロードさ
れる際に、キャッシュメモリ36から解放される(トラ
ックスロット365にアクセスがきた場合を除く)位置
にある。すなわち、当該トラックスロッl−365に対
応するキャッシュ管理テーブル4のエントリ41のLR
U法の順位が最下位にあるとする。 このとき、本実施例では、ローディングモードにある当
該トラックスロット365が解放される(ステップ64
)際に、キャッシュ管理テーブル4において当該トラッ
クスロット365に対応するエントリ41のカウンタ4
1aが規定の値以下であるもの(本実施例の場合]、)
については、シリンダ統計情報テーブル5において当該
トラックスロット365が属するシリンダ23のエンI
・・す51にあるローディングモードカウンタ51eを
+1する(ステップ65)。 すなわち、シリンダ統計情報テーブル5における口・−
ディングモードカウンタ51cの値は、ローディングモ
ードによるキャッシュメモリ36へのロード後、ロード
の契機となった当該トラックスロットの先頭レコード以
外のレコードには1度もアクセスがこないまま開放され
たトラックスロットが当該シリンダ23の中に何本ある
かを示すことになる。 そして、ディスク制御装置3は、当該シリンダ23にア
クセスがくるたびにローディングモードカウンタ51c
の値のアクセス回数記録部51bの値に対する割合X+
、を求める(ステップ72)。 そして、この割合XLがある規定の割合(K)を超えて
いた場合(本例の場合に=0.8)(ステップ73)、
磁気ディスク装置2からキャッシュメモリ36へのロー
ドに際して、ローディングモードにより同一1−ラック
内の複数のレコードを複写しても無駄であると判断し、
キャッシュ動作モードを、現在のローディングモードか
らレコードモードに切り替える(ステップ74)。 同時に、シリンダ統計情報テーブル5の当該シリンダ2
3に対応するエントリ51のアクセス回数記録部51b
およびローディングモードカウンタ51cをクリアする
(ステップ75)。 たとえば、第1図のシリンダ統計情報テーブル5におい
て、シリンダ番号CYL#が248番のエントリ51に
おいては、アクセス回数記録部5 ]、、 bおよびロ
ーディングモードカウンタ51cの値がそれぞれ14お
よび12であり、Xt、=12/14与0゜85 となるaXLが規定io、sを超えているので動作モー
ドの変更が必要であると判断される。 このため、ディスク制御装置3は、以後、当該シリンダ
番信CYL#が248番のシリンダ23に属する1群の
トラック22からキャッシュメモIJ36へのロードは
、レコードモードが不適と判断されるまでレコードモー
ドで行う。 一方、上位の中央処理装置1の側からアクセス要求のあ
ったシリンダ23が現在レコードモードの場合(ステッ
プ61)、まず、指示されたシリンダ番号、トラック番
号、レコード番号などにより、キャッシュメモリ36を
検索し、目的のレコードを探す(ステップ76)。 ここで、現在レコードモードにあるトラックスロット3
67において、当該トラックスロッ1−367に対応す
るトラック22における後続レコードRp+zに対する
アクセスの場合、キャッシュメモリ36上に目的のレコ
ードRp+zは存在しない(ステップ77)ので、磁気
ディスク装置2の当該トラック22からキャッシュメモ
リ36へロード(ステップ78)しなければならない。 そして、チャネル装置11へそのレコードを出力する(
ステップ79)。 この際に、本実施例のディスク制御装置3はシリンダ統
計情報テーブル5の当該トラックが属するシリンダ23
に対応するエントリ51のレコードモードカウンタ51
dを+1する(ステップ&、O)。 すなわち、任意のシリンダ23に対応するエントリ51
のレコードモードカウンタ51dは、レコードモードに
よって当該シリンダに属する1群のトラック23の任意
の一つから単一レコードのみをキャッシュメモリ36に
ロードしたが、当該レコードと同一トラック上にある後
続レコードがアクセスされ、レコードモードによるロー
ドでは不充分であった回数を示している。 そして、当該シリンダにアクセスがくるたびにレコード
モ・・−ドカウンタ51dの値のアクセス回数記録部5
1bの値に対する割合XRを求める(ステップ81)。 この割合X、Rがある規定の値(T、 ’)を超えてい
た場合(本例の場合ではL;0.6)(ステップ82)
、キャッシュ動作モードを現在のレコードモードからロ
ーディングモードに自動的に切り替える(ステップ83
)。 シリンダ統計情報テーブル5の当該シリンダ23に対応
するエントリ51のアクセス回数記録部51bおよびレ
コードモードカウンタ5 ]、 dをクリアする(ステ
ップ84)。 たとえば、第1図のシリンダ統計情報テーブル5のシリ
ンダ番号CYL#が249番のエン1−リ51において
は、現在のアクセス回数記録部51bおよびレコードモ
ードカウンタ51. dの値がそれぞれ13および8で
あり、 XR= 8 / 13句0.62 となる。XRが規定の値0.6を越えているのでキャッ
シュ動作モードを変更する必要がある。 したがって、ディスク制御装置3は、以後、シリンダ番
号CYL#が249番のシリンダ23に属するトラック
23からキャッシュメモリ36へのロードを、ロー・デ
ィングモードが不適と判断されるまでローディングモー
ドで行う。 なお、iノコードモードでキャッシュメモリ36に目的
のレコードがある場合は、そのレコードをチャネル装f
lへ出力する(ステップ85)。 このように、本実施例においては、キャッシュ管理テー
ブル4の個々のエンlへり41に設けられたカウンタ4
]a、モード情報部41b、さらにはシリンダ統計情報
テーブル5の各々のエントリ51に設けられたアクセス
回数記録部5]b、ローティングモードカウンタ51 
C? レコードモードカウンタ51dなどに基づく統計
情報によって把握される、個々のキャッシュ動作モード
の稼働状況に応じて、臨機応変に、ディスク制御装置3
がシリンダ23などを単位として、ローディングモード
とレコードモードとの間でキャッシュ動作モードを自動
的に切り替える学習機能を有している。 したがって、中央処理装置1からの磁気ディスク装胃2
に格納されたデータに対するアクセスパターンが、種々
の事情によって時々刻々と変化としても、人手の介入を
受けることなく、常に、最適なキャッシュ動作モードを
維持することが可能となる。 これにより、キャッシュメモリ36を常時、最大限に有
効に活用することができる。 また、中央処理装置1と磁気ディスク装置2およびディ
スク制御装置3などからなる情報処理システムにおいて
、中央処理装置J、と磁気ディスク装置2との間におけ
るデータの授受の効率が大幅に向上する。 以上本発明によってなされた発明を実施例に基づき具体
的に説明したが1本発明は前記実施例に限定されるもの
ではなく、その要旨を逸脱しない範囲で種々変更可能で
あることはいうまでもない。 たとえば、上記の実施例では、磁気ディスク装置が1つ
のディスク制御装置によって制御される場合について説
明したが、これに限らず、複数の磁気ディスク制御装置
から制御されるようにしてもよい、その場合、統計情報
は各ディスク制御装置間で共有される9 また、上記の実施例では、磁気ディスク装置およびディ
スク制御装置などで構成される磁気ディスクサブシステ
ムが1つの中央処理装置に接続されているが、複数中央
処理装置に共有されるようにしてもよいことは言うまで
もない。 さらに、上記の本実施例ではキャッシュ動作モードおよ
び統計情報をシリンダ単位で管理する場合について説明
したが、これに限らず、ボリュームもしくはデータセッ
ト単位で管理してもよい。 また、キャッシュ動作モードとしでは、前記実施例中に
例示されたものに限らないことは言うまでもない。 本発明になるキャッシュ制御方法によれば、中央処理装
置と外部記録装置との間に介在し、外部記憶装置のデー
タの一部を記憶するキャッシュメモリを備えた制御装置
において、複数のキャッシュ動作モード殻備え、個々の
キャッシュ動作モードの稼働状況に応じて前記キャッシ
ュ動作モードを自動的に切り替える学習機能を具備して
いる。 中央処理装置からのアクセス回数と現在選択しているキ
ャッシュ動作モードが有効もしくは無効に働いた回数と
の比などとして得られる統計情報の値が規定の閾値を超
えたか否かを監視することで現在のキャッシュ動作モー
ドの稼働状況の適否を判断できる。必要に応じて他のよ
り適したキャッシュ動作モードへ自動的に切替えること
が可能となる。 これにより、たとえ中央処理装置からのアクセスパター
ンが時々刻々と変化しても、常時、最適なキャッシュ動
作モードを維持してキャッシュメモリを有効に活用する
ことができるという効果がある。 また、本発明の情報処理システムにおいては、中央処理
装置と、外部記憶装置と、この中央処理装置と外部記憶
装置との間に介在し、前記外部記憶装置のデータの一部
を記憶するキャッシュメモリを備えた制御装置とからな
る情報処理システムであって、複数のキャッシュ動作モ
ードを儲え5個々のキャッシュ動作モードの稼働状況に
応じて前記キャッシュ動作モードを自動的に切り替える
学習機能を具備している6中央処理装置からのアクセス
回数と現在選択しているキャッシュ動作モードが有効も
しくは無効に働いた回数との比などとして得られる統計
情報の値が規定の閾値を超えたか否かを監視することで
現在のキャッシュ動作モードの稼働状況の適否を判断で
きる。必要に応じて他のより適したキャッシュ動作モー
ドへ自動的に切替えることができる。 これにより、たとえ中央処理装置からの7クセスバダー
ンが時々刻々と変化するような場合でも、常時、最適な
キャッシュ動作モードを維持してキャッシュメモリを有
効に機能させることが可能となり、キャッシュメモリが
介在する中央処理装置ど外部記憶装置との間における情
報の授受効率を向上させることができるという効果があ
る。 次に、前述した実施例と同様に、キャッシュメモリを有
するディスク制御装置による、中央処理装置と外部記憶
装置との間の情報の転送効率を向上させる別の実施例゛
の説明をする。本実施例では。 特にヒツト率の向上とローディングオーバーヘッドを軽
減する方法について説明する・ 第6図は、キャッシュメモリ36の構成を示すものであ
る。キャッシュメモリ36は、固定長のセグメント30
に分割されている。磁気ディスク装置2の一つのトラッ
クを格納するために、一つ以上のある固定数のセグメン
ト30が必要であるとする。 まず、一つのトラックを複数のセグメント30で格納す
る場合について説明する。なお、このセグメント数をn
とする。空きセグメントポインタ38は、空いているセ
グメント30の集合の中のポインタを指す、各セグメン
ト30はポインタを持ち、セグメント30が空いている
ときには、′次の空きセグメントを指す。但し、最終の
空きセグメント30のポインタはnullとする。 第7図は、キャッシュ管理テーブル6の構成を示す。キ
ャッシュ管理テーブル6は、第1図に示したものと同様
であるが、本実施例を説明するために必要な部分のみを
示している。キャッシュ管理テーブル6は、キャッシュ
管理ブロック40から構成されている。キャッシュ管理
ブロック40は、前述のキャッシュメモリ36内のセグ
メント30を一つ以」二割当てているトラック対応に割
当てる。空きブロックポインタ42は、空いているキャ
ッシュ管理ブロック40の集合の先頭のキャッシュ管理
ブロック40へのポインタである6第8図は、」二記キ
ャッシュ管理ブロック40の構成を示すものである。デ
バイスID58.シリンダID59. トラックID5
2は、このキャッシュ管理ブロックに対応したディスク
装置2Lのトラックのディスク装置2.シリンダ、トラ
ックに関する識別子である。セグメント・ポインタ(a
、)53〜同(n)54は、n個のセグメント30への
ポインタを示している。これらのポインタのうち、対応
するトラック中に、キャッシュメモリ36中に格納され
ている部分を格納しているセグメント数だけが有効であ
り、残りはnull状態となる。有効なポインタは、対
応するセグメント3oへのポインタとなる。 また、格納開始レコード識別子55は、キャッシュメモ
リ3G内に格納を開始したレコードの識別子、例えば、
この1ノコードのディスク装置2上のトラックの格納開
始位置、格納終了レコー・ド識別子56は、キャッシュ
メモリ36内の格納を最終的に行ったレコードの識別子
を示している。すなわち、キャッシュメモリ36内には
、格納開始レコ・−ド識別子55.格納終了レコード識
別子56で示される範囲のレコード群が格納されること
になる。次ポインタ57け、このキャッシュ管理ブロッ
ク40が空いているとき、次のキャッシュ管理ブロック
40へのポインタとなる。但し、他に空いているキャッ
シュ管理ブロック4oがない場合、null値となる。 第9図に、プロセッサ33の処理フロー図を示す。第9
図は、プロセッサ33が、中央処理装置1から入出力要
求を受取った場合の処理フロー図である。ここでは、本
発明の要点の一つに関する処理のみを述べる。ステップ
90において、入出力対象トラックのキャッシュメモリ
36への格納状況をチエツクする。次に、受取った入出
力要求の対象となるトラック全体がキャッシュメモリ3
6内に存在しない場合は、中央処理装置1から受取った
位置付は要求(必要なデータを読み出せるようにするた
めのディスク装置2に対する指示)に従って、ディスク
装置2に対して位置付は要求を発行する(ステップ91
)、なお、このどき。 1トラツクを格納するにに充分な個数のセグメント30
を確保する。 キャッシュメモリ36内に、入出力要求の対象となるト
ラックの一部が格納されているが、アクセス対象のレコ
ードが、キャッシュメモリ36内に格納されているレコ
ード群より1−ラック後の部分である場合は次のJ、う
に処理する。格納終了レコード識別子56より後方の部
分L:lアクセス対象のレコードが存在する場合には、
ステップ92に示す如く、格納終了レコード識別子56
に示されたレコードの次のレコードからトラック内の最
終レコードまでを格納するため、ディスク装置2に対し
で位置付は要求を発行する。このとき、このトラックの
最後のL/フードを格納するのに充分なセグメント30
の数を確保する。 アクセス対象のレコードが、キャッシュメモリ36内に
存在するレコー・ド群より前の部分である場合は5次の
ように処理する。格納終了1ノコード識別子5Gより前
方の部分にアクセス対象のシーコードが存在する場合に
は、ステップ93に示す如く、格納終了レコード識別子
56に示されたしj−ドの次のレコードからトラック内
の最終レコードまでをロードし、トラックの先頭のレコ
ードから格納開始レコード識別子55で示されるレコー
・ドの前の1ノコードまでを格納するため、ディスク装
置2に対して位置付は要求に発行する。この場合、この
トラックの最終レコー・ドまで格納されている場合には
、トラックの最初の部分からロードを開始する。また、
このとき、上記ロー・ド処理に必要な数だけのセグメン
ト30を確保する。 次に、ディスク装置2から位置付は完了報告を受取った
どきの、プロセッサ33の処理フロー・を、第10図〜
第]2図に基づいて説明する。 まず、中央処理装置1、からのアクセス対象のトラック
内のレコードが、キャッシュメモリ36内に存在しない
場合について説明する。第】0図ステップ94に示す如
く、中央処理装置1からの入出力要求に従って、入出力
処理を行う9.この際、ディスク装置2からレコードを
読出した場合には、このし♂Nドをキャッシュメモリ3
6内に日−ドする。ディスク装置10;」Aむよう、中
央処理装置1から受取ったレコードは、ディスク装置2
1こ書込むと同時に、キャッシュメモリ3Gにも書込む
。この後、格納開始レコー・ド識別子55.格納終了レ
コード識別子5Gを設定する。この場合、中央処理装置
1からのアクセス対象となるIノコ〜ド(ディスク装置
2へ書き込むべ@1ノコード)は連続したレコード群と
なるゆ 第13図には、このときのデータの格納形式を示す1図
示するように最初にアクセス対象とな−Jたレコードを
セグメント30の先頭から格納する。 これにより、アクセス対象となったレコ・−ドが少なけ
ればローディングオーバーヘッドの削減だけでなく、キ
ャッシュメモリ36の使用容量も削減できる。 第11図は、格納終了レコード識別子56に示されたL
/コードの次の17コー ドから、このトラックの最終
レコードまでをキャッシュメモリ36内にロードする処
理に対する位置付は完了要求を受取った場合を示すもの
である。この場合、ステップ95に、示す如く、格w3
終了識別F56に示されたレコ・−ドの次のレコ・−ド
から、最終レコ・−ドまでをロードする処理を実行する
。また、格納終了レコード識別子56をトラックの終点
の位置とする。 第1.4図に、このときのデータ格納形式を示す。 この後、ステップ96においで、中央処理装置】と論理
的に再接続し、中央処理装置】−どの入出力処理に入る
。このとき、新たにロードしたレコードは、今までロー
ドしていたレコードの後に付加することになる。 第12図は、格納終了レコード9別P56に示された次
の17コードから、この1−ラックの最終レコードまで
をキャッシュメモリ36内にロードし、次に6 トラッ
クの先頭のレコードから、格納開始レコード識別子55
に示されたレコードの前のレコー ドまでをキャッシュ
21内にロードする処理を実行するために、ディスク装
置2からの位置付は完了処理を受取った場合の処理であ
る。ステップ95でこの処理を実行する。但し、既に、
トラツクの最終レコードまでロードされている場合には
、トラックの先頭のレコードからローディングを開始す
る。このどき、格納開始レコード識別子56を、格納開
始1ノコード識別子55の前のレコードに設定する。 第]、5図には、この格納形式を示す、この後。 ステップ96において、中央処理装置1−との入出力処
理に入る。このとき、今までキャッシュメモリ36内に
格納されていたレコード群の後に、トランクの最終レコ
ードまでのレコード群を、更に、その後に[・ラックの
先頭からのレコード群を格納することになる。 上記実施例においては、キャッシュメモリ36内にロー
ドさ)1ているレコー):群より後方のレコードにアク
セス要求があった場合、第1−1図に示した如く、キャ
ッシュメモリ36内にロードされているレコード群の次
のレコードからロー・ドするようにした例を示したが、
第12図に示す如く。 キャッシュメモリ36内にロードされているレコード群
以外のすべてのレコードを、キャッシュメモリ36内に
ロードするようにしても良い。 以上は、トラックを格納するためのセグメント30を複
数割当てる場合である。この場合には、トラック全体を
キャッシュメモリ36に格納しない場合にセグメント3
0をI・ラックと1対1に割当てたときに比べて、容量
を節約できる。 次に、一つのトラックに対応して、一つのセグメント3
0を割当てる場合の実施例を説明する。 この場合、第8図に示
【2.たキャッシュ管理ブロック
40の形式は異なり、第16図に示すキャッシュ管理ブ
ロック40aの形式とする。第8図との相異は、セグメ
ントポインタ150が一つで良いことである。 また、セグメント30内の格納形式は、第1−3図に示
した如く、中央処理装置1から最初にアクセスされたレ
コードをセグメント30の先頭から格納していっても良
いが、以下に述べる方式をとっても良い。すなわち、第
i−7図に示す如く、このレコードがトラックの先頭か
らの相対位置に従って、夙ζ位置を決める方式である。 この場合、トラック内の先頭のレコ・−ドを、セグメン
(・30内の先頭に格納することになる。 プロセッサ33の処理も、基本的には、第9図〜第12
図の処理フローで示した内容で良い、但し、セグメント
を割付けるタイミングは、このトラックのレコードがキ
ャッシュメモリ36内に存在しないときにアクセスがあ
った場合、すなわち、第9図ステップ91に相当する部
分だけで良い。 また、第]、7図に示した格納形式をとった場合、格納
開始レコード識別子55に示されるレコードより前の位
置のレコー・ドにアクセスがあったとき。 トラックの先頭から格納開始レコード識別子55に示さ
れるレコー・ドの前のレコードまでを格納するようにし
ても良い。 また、上述の実施例においては、制御装置3内のプロセ
ッサ33を1個としているが、これを複数個設け、中央
処理装置からの入出力経路、ディスク装置2からの入出
力経路を複数個設けても良い、また、中央処理装置1.
とキャッシュメモリ36との間のデータ転送処理、ディ
スク装置2とキャッシュメモリ36どの間のデータ転送
処理を並行に実行させても良い。本質的には、本実施例
では制御装置3内にキャッシュメモリ36を持っていれ
ば良く、これ以外の箭成要素は不可欠ではない。 以」二述べた如く、本実施例によれば、中央処理装置・
からの入出力要求のアクセス対象のトラック内のレコー
ドの、キャッシュメモリ内における存在状態に基づいて
、キャッシュメモリ内にロードするレコード群を決定す
るようにしたので、トラックを構成しているレコードが
可変長の場合でも、トラック単位の管理方式をベースど
してローディングオーバーヘッドを少なくすることが可
能な、データローディング方法を実現できるという顕著
な効果を奏するものである。 さらに、キャッシュメモリへのローディング・オーバー
ヘッドの軽減とヒツト率の向上を図るための別の実施例
を示す。 第18図は、制御メモリ34の構成を示す。制御メ(す
34は、プロセッサ33の機能を実現するための各モジ
ュールが格納される。ここでは、本実施例に関係する部
分についで述べる。アクセス特性チエツク部7は、入出
力要求のアクセス特性をチエツクし、アクセス・パター
ンに関する情報を記憶する。口・−ディング選択部8は
、アクセス特性チエツク部が収集した情報にしたがって
。 ローディング・パターンを決定する。ローディング実行
部9は、ローディング選択部8の選択したローディング
・パターンに従って、ローディングの実行制御後行う機
能を持つ。 第19図は、キャッシュ管理テーブル4のさらに異なる
構成である。キャッシュ管理テーブル10は5本実施例
に関係する部分について示す。 キャッシュ管理ブロック40bを、キャッシュメモリ3
6内のセグメン[・30を1つ以上割り当てているトラ
ック(当該トラックのある部分はキャッシュ内に格納し
ているという意味)対応に設ける。各キャッシュ管理ブ
ロック40bは、前方向ポインタ48、後方向ポインタ
47によりMRU(Most Recently Us
ed)順にチエインされている。MRUポインタ42は
、最も最近に入出力の対象どなったトラックのキャッシ
ュ管理ブロック401)をさす、 LRU (Laas
t ReesntlyU sed )ポインタ43は、
キャッシュメモリ36の中に格納されているトラックの
集合では、最も長い時間入出力対象となっていないト・
ラックのキャラ・シュ管理ブロック40bをさす。従っ
て、ミス(アクセス対象となったデータがキャッシュメ
モリ36に存在しない、)が発生し、新たにセグメンl
−30を割り当てる必要が生じ、か“つ、空きセグメン
ト・かない場合、LRUポインタ43で示されたキャッ
シュ管理ブロック401)に対応した1−ラックを格納
したセグメンh30、および、このキャッシュ管理ブロ
ック40bを解放することになる。アクセス時間44は
、このキャッシュ管理ブロック40bが対応しているl
−ラックが最も最近入出力対象となった時刻を格納する
。(従ってMRUポインタ42から、前方向ポインタ4
8をたどっていた場合、各キャッシュ管理ブロック40
b内のアクセス時間44は2遅くなっ°〔いくことにな
る、)トラックを割り当てていなくて、空いているキャ
ッシュ管理ブロック40bは、空きブロックポインタ4
5から、先頭のキャッシュ管理ブロック40bがポイン
トされ、各キャッシュ管理ブロック40bは前方向ポイ
ンタ48と後方向ポインタ47によりポイン1−される
。 アクセス特性情報46は、アクセス特性チエツク部7が
各入出力要求のアクセス特性をキャッシュ管理単位、す
なわち、本実施例においてはトラック単位に収集した情
報を格納する。本実施例には、ディスク装置2のすべて
のトラックに対応してアクセス特性情報46を設ける。 これらの情報の1部をキャッシュ管理ブロック40bの
中に設は必要な記憶容量を削減してもよい。 第20図に、アクセス特性情報46の構成を示す。本実
施例では、受は付けた入出力要求がシーケンシャル・ア
クセスがどうかを認識するやシーケンシャル・アクセス
であるとUK Faした場合、この後アクセス対象とな
り得る複数のトラックを口ih5ドする。、以降、これ
を単に、複数トラック・ローディングと呼ぶ。 シーケンシャル・アクセスでないと認識した場合、当該
トラックのデータがキャッシュメモリ36にまったくな
い状態から、一部、あるいは、全体がキャッシュメモリ
36内にローディングされて、当該トラックのデータ全
体がキャッシュメモリ36から追い出されるまでの間に
、中央処理装置1が実際にアクセスした部分を把握して
、これに基づき、ローディング方法を選択する。 まず、シーケンシャル・アクセスの認識のために必要な
情報について説明する。シーケンシャル・チエツク中フ
ラグ100は、このトラック内のデータがシーケンシャ
ルにアクセスされているかをチエツク中であることを示
すフラグである。具体的には、このアクセス特性情報に
対応するトラックの先頭のレコードがアクセスされた時
、このフラグはオンにする。その後、先頭レコード以降
のアクセスがシーケンシャルに行なわれなかった場合、
および、このトラックの最後のレコードまでシー仝シャ
ルにアクセスが完了した場合(二のトラックがシーケン
シャル・アクセスされたということを認識した時)、こ
のフラグをオンにする。シーケンシャル識別アドレス1
01は、次のアクセスがシーケンシャルに行なわれる場
合アクセスされるレコードが格納されているトラックの
先頭からの位置を示す、シーケンシャル認識フラグ10
2は、このトラックの先頭のレコードまでシーケンシャ
ルにアクセスされた時オンにする。 オフにするタイミングは、次にこのトラックに対して、
入出力要求を受はイ(けた時である8シーケンシヤル以
外のアクセスに対しては、入出力要求を受は付けた時、
アクセス対象j・ラックのレコードがキャッシュ2J内
に存在しなかった時点(以降これを1−ラック・ミスと
呼ぶ。)から、このトラックのデ・〜夕がキャッシュメ
モリ36から追い出されるまでの期間に、中央処理装置
1がアクセス対象とした部分をローディング対象とした
いという考え方に基づき、ローディング方法を決定する
ものとする。 次に。2該トラックの申で中央処理装置が実際にアクセ
スした部分をB識するための情報を示す21つの考え方
は、ある固定長(第21図ではPバイト)の単位を1ビ
ツトとして、第2】図に示すようにトラックを複数ビッ
トの1−ラック・ビット・パターン108で表わし、あ
るレコードがアクセスされた時、このレコードがトラッ
ク上で格納されている領域に対応したビットをオンにし
でおき、(第21図中では、レコード1.レコードmは
アクセスされていること、レコード2はアクセスされて
いないことを表わす。)キャッシュメモリ36には、ビ
ットがオンしている領域のみローディングするというも
のである。しかし、トラック・ミス時、トラックすべて
をローディングしない場合、その後に、このトラックが
入出力対象となった時、このトラックの一部のデータは
キャッシュメモリ36上に存在するが、アクセス対象と
するレコードはキャッシュメモリ36内に存在しない場
合がある。この場合は、アクセス対象となったレコー・
・ドをキャッシュメモリ36内に新たにローディングす
るという方法をとるものとする。 ただし、ディスク装置2は、回転体であるため、オンに
なっているビットの集合にすきまができているような場
合は、口・−ディング時間そのものは、短くならない。 従って、以下、本実施例では、中央処理装置がアクセス
した部分を第22図に示した考え方で認識するケースに
ついて詳細に述べる6第22図では、トラックを、上位
アクセス部11.0.前方部109.後方部111とわ
けてる。 上位アクセス部1−10は、当該i−ラックに対する入
出力要求を受ii付け、トラック、ミスが発生した時、
中央処理装置1がアクセス対象としたレコード群である
。前方部109は、この上位アクセス部1.10の箭の
位置にあるL/ココ−群であり。 後方部111は後の位「F5、あるレコード群である。 本実施例では、シーケンシャル・アクセス以外のアゲセ
スに対して、1−ラック・ミス時のローディング・パタ
ーンとして以下のパターンを持つものとする。(これら
以外のローディング・パターンを持っても7本発明は有
効である。)(a’)、&ラック・ロー・ディング・・
・・・・ト・ラック全体をローディングする。 (b)上位アクセス+後方部ローディング・・・・・・
上位アクセス部十後方部をローディングする。 (C))上位アクセス部・ローディング・・・・・・上
位アクセス部のみローディングする。 以、−ヒの様なローディング・パターンを用意した場合
にも、(b)上位アクセス部十後方部ローディングを実
行し、レコードがキャッシュメモリ36内に存在する時
、当該トラックの前方部109の1ノコードにアクセス
があるとミスが発生する。これを、フロント・ミスと呼
ぶ。(C)上位アクセス部・ローディングを実行した場
合には、後方部11j、のレコードにアクセスがあった
時にもミスが生ずる。これをリア・ミスと呼ぶ。フロン
ト・ミスやリア・ミスが発生した時の処理を次に示す。 (1)フロント・ミス:当該1−ラックの中でキャッシ
ュメモリ36にロープ、イングしていない!ノコードを
すべて、キャッシュメモリ36内にローディングする。 (2)リア・ミス:後方部1. ]、 1内のみキャッ
シュにロードする。 以上の様なローディングを行う場合、トラック・ミス(
フロントミス、リアミス)が発生してから、このトラッ
ク全体がキャッシュメモリ36から追い出されるまで6
上位アクセス部110.前方部1.09.後方部111
のうち実際に中央処理装置1がアクセスした部分を把握
し、記憶する。 このアクセスした部分に関する統計情報を収集し、トラ
ック・ミス時、適切と判断したローディング方法を選択
する6本実施例では、過去9回のうち最も多かったロー
ディング・パターンを選択する。 例えば、後方部J11をアクセスしたケースが最も多か
った場合、(b)上位アクセス部十後方部ローディング
を選択する。 以上の様な方法を実現するために取得すべき情報として
、アクセス特性情報4−6の中に持つべき情報を以下説
明する。 開始・終了アドレス1.03は、トラック・ミス時、中
央処理装置1がアクセスしたL位アクセス部110のト
ラック上の開始・終了アドレスを示す。 前方部・アクセス・フラグ]、 04 、後方部・アク
セス・フラグ105は、トラック・ミス以後。 中央処理装置1が、前方部109、後方部1]、1をア
クセスしたかを示す情報である。アクセス部チエツク中
フラグ1..06は、前方部109、後方部111がア
クセスされるかをチエツク中であることを示すフラグで
ある。 統計情報107は、トラック・ミスが発生してからこの
トラック全体がキャッシュメモリ36から追い出される
間に、前方部あるいは後方部がアクセスされたかという
情報、すなわち5前方部アクセス・フラグ104、後方
部アクセス・フラグ105の情報を過去r回菩積したも
のである。 ただし、記憶容量の節約のために、統計情報107はト
ラックよりも、さらに大きい単位5例えば、シリンダご
とにと−)でもよい。 以下、アクセス特性チエツク部7.ローディング選択、
部8の処理フロー図について述べる。ローディング実行
部9は、ローディング選択部8の指示に従ってローディ
ングを行うだけである。 まず、アクセス特性チエツク部7の処理フローについて
述べる。アクセス特性チエツク部7には、シーケンシャ
ル・アクセスの認識とそれ以外のアクセス特性の認識が
ある。最初にシーケンシャル・アクセスの認識に関する
部分について述べる。 第23図は、当該トラックの先頭のレコードがアクセス
さ九た時の処理である。ステップ1−20において、シ
ーケンシャル・チエツク中フラグ100をオンにして、
処理を終了する。 第24図は、入出力要求に対する処理を受は付けた時、
当該トラックのシーケンシャル・チエツク中フラグ50
がオンの場合に実行される処理である。まず、ステップ
121では、受は付けた入出力要求がアクセス対象とし
たレコードのトラックの先頭からの位置が、シーケンシ
ャル判別アドレス101と一致するかどうかをチエツク
する。 一致すれば、Iノコードがシーケンシャルにアクセスさ
榊(いることになるため、特に何の処理も行なわない。 一致しなければ、ステップ1.22において、シーケン
シャル・チエツク中フラグ100をオフにする。 第25図は、入出力要求に対する処理が終了した時に、
当該トラックのシーケンシャル・チエツク中フラグ10
0がオンの場合実行される処理である。ステップ123
では、当該トラックの最終1ノコ−・ドまで、入出力処
理が完了したかどうかをチエツクする。完了していない
場合に、ステップ124において、この入出力要求で処
理が完了したレコードの次のレコードの1−ラックの先
頭からの相対アドレスを、シーケンシャル判別アドレス
101に記憶する、 完了した場合には、このトラックの171−ドがシーケ
ンシャルにアクセスされ、たことになるため。 ステップ125において、シーケンシャル認識フラグ1
02をオンにし6シーケンシヤル・チエツク中フラグ1
01をオフにする。 第26図は、入出力要求を受は付けた時、当該トラック
のシーケンシャル認識フラグ102がオンの場合の処理
である。この場合、ステップ126において、シーケン
シャル認識フラグ102をオフにする。 次に、シーケンシャル・アクセスでないと認識したアク
セスに対する処理を示すや 第27図は、1−ラック・ミス時、複数トラック・ロー
ディング以外のローディングを行った後。 実行される処理である。(複数トラック・口・−ディン
グを行うのは、シーケンシャル・アクセスと認識してい
る場合である。) ステップ127では、中央処理装置1が当該トラックの
中で実際に入出力要求のアクセス対象となったレコード
群すなわち、第22図における上位アクセス部J10の
トラックの先頭からの開始位置、終了位置を開始・終了
アドレス103にセットする。さらに、ステップ128
でアクセス部チエツク中フラグ106をオンにする。 第28図は、アクセス部チエツク中フラグ106がオン
の時に当該トラックに対して入出力要求を受は取った時
の処理である9ステツプ129では、受は付けた入出力
要求がアクセス対象とするレコードが第22図に示した
、前方部109、上位アクセス部3.10 、後方部1
11のどの位置に相当するかを分析する。 上位アクセス部110がアクセス対象となっている場合
、特に何もせず処理を終了する。 前方部109がアクセス対象となっている場合で、ステ
ップ130で前方部アクセス・フラグ104がオフの場
合、これをオンとする(オンになっている場合の処理は
ない)。ステップ1,31において、当該トラック全体
がキャッシュメモリ36にローディングされていない場
合、ローディングされていない部分をローディングする
よう。 ローディング実行部9に対して指示を行う。 後方部1.11がアクセス対象となっている場合、ステ
ップ132で、後方部アクセス・フラグ105がオフの
場合、これをオンとする(オンになっている場合の処理
はない)。ステップ133において、後方部111が、
キャッシュメモリ36にローディングされていない後方
部111をロー・ディングするよう、ローディング実行
部9に対して指示を行う。 第29図は、キャッシュメモリ36から当該1−ラック
を追い出す時、前方・後方部チエツク中フラグ106が
オンの時、実行される処理である。 まず、ステップ134で、アクセス部チエツク中フラグ
106をオフする1次に、ステップ135において、過
去、r回分の前方部アクセス・フラグ104.後方部ア
クセス・フラグ105の統計情報のうち、最も古い情報
を除き、現在の前方部アクセス・フラグ104、後方図
アクセス・フラグ105の内容を記憶する。この後、ス
テップ136において、前方部アクセス・フラグ104
、後方部アクセス・フラグ105をオフにする。 次に、ローディング選択部9の処理フローを第30図に
示す。第:30図は、トラック・ミスが発生した時に、
実行される。 まず、ステップ137でこの入出力要求がトラックの先
頭の1ノコードに対するアクセスかどうかをチエツクす
る。そうでなければ、ステップ140八ジヤンプする。 先頭のレコードに対するアクセスの場合、ステップ13
8において、アクセス対象トラックより前の2つのトラ
ックのアクセス特性情報46のシーケンシャル認識フラ
グ102がオンかどうかをチエツクする9本実施例の場
合、チエツクするのは、2トラツクであるが、2トラツ
クでなくとも本発明は有効である。オンでない場合には
、ステップ140ヘジヤンプする。 オンの場合、このアクセスがシーケンシャル・アクセス
であると判断し、ステップ139において、ローディン
グ実行部9に対して、複数トラックのローディングを指
示して処理を終了する。 ステップ140から開始される処理は、シーケンシャル
・アクセスでないと判断した場合のローディング方法を
選択する処理である。ステップ140においては、統計
情報107に基づき、過去q回のアクセス・パターンを
前方部109も後方部111もアクセスされなかったパ
ターン、後\方部I J、、 1だけアクセスされたパ
ターン、以上の2つのパターン以外のパターンに3分類
する9この結果、前方部109も後方部]11もアクセ
スされなかったパターンが最も多かった場合、ステップ
141において、上位アクセス部ロープ、イングをロー
ディング実行部に対して指示する。 後方部111だけアクセスされたパターンが最も多かっ
た場合、ステップ142において上位アクセス部子後方
部のローディングをローディング実行部9に対して指示
する。 これ以外のパターンが最も多かった場合、ステップ14
3において、トラックローディングをローディング実行
部9に対して指示する。 ここでは、ローディングを選択する場合、当該トラック
の統計情報1−07のみ参照したが、当該トラック以外
の統計情報107を参照してもよい。 以上述べてきた実施例では、シーケンシャル・アクセス
を認識するため、トラック内のレコードが連続的にアク
セスされているかチエツクするために、シーケンシャル
識別アト!メス1.01を1つ)か持っていない。この
ため、シーケンシャル・リードを行ったレコードをシー
・ケンシャルに更新していくという比較的頻度が高い処
理が発生した場合、シーケンシャル・アクセスであると
いう認識ができなくなる。従って、リード処理とライ1
−処理のシーケンシャル・アクセスの認識を行うことに
より、この問題を解決する。この場合、アクセス特性情
報46の構成は、第20図にかわり第31、図に示すよ
うになる。第20図との違いは、第20図中のシーケン
シャル・チエツク中フラグ100、シーケンシャル識別
アドレス1011、シー・ケンシャル認識フラグ102
にリード用とライト用がある点である。どちらの情報を
扱うかは、受は付けた入出力要求がリード要求であるか
ライト要求であるかにより決まり、操作のタイミング。 方法等は、以上述べてきた実施例と同様である。 また、シーケンシャル・アクセスの認識を行う際、受U
付けに入出力要求のアクセス効果となる1ノコードのト
ラックの先頭からの位置が、シーケンシャル識別アドレ
ス101とまったく同じであるという条件を用いていた
が、一定の幅はあってもシーケンシャル・アクセスであ
ると認識してもよい。 シーケンシャル・アクセス以外のアクセスに対するトラ
ック・ミス発生時のローディング・パターンは、述べて
きた実施例では、上位アクセス部ローディング(上位ア
クセス部子後方部)、ローディング、トラック・ローデ
ィングの3つのパターンであったがこの3つのパターン
にローディングなしのパターンを付加することが考えら
れる。 これは、トラック・ミス時のローディング以降。 当該トラック全体がキャッシュメモリ36から追い出さ
れるまでの間に当該トラックに対してアクセスがない場
合に有効である。 この場合、中央処理装置1がトラック・ミス時のローデ
ィング以降、アクセス効果とする部分の監視を前方部1
09、後方部1〕1だけでなく、上位アクセス部110
へのアクセスも行う必要がある。 さらに、ローディングなしのパターンを実行した場合、
以下に述べる認識を行う必要がある。すなわち、トラッ
ク・ミスが発生した時に、この1−ラック・ミスの発生
は前回のトラック・ミスの発生時に、ローディングを行
わなかったために発生したのか、ローディングを行って
いたとしても当該トラックに対するアクセス時間間隔が
長くてトラック・ミスが発生しているのかを区別する必
要がある。前者の場合、ローディングの必要がな゛かっ
たことになる。しかし、後者の場合、この時のアクセス
が、上位アクセス部110に対するものであるならば、
前回のトラック・ミス時に、上位アクセス部ローディン
グ2行う必要があったことになる、同様に、この時のア
クセスが後方部111に対するものである場合には(上
位アクセス部子後方部)のローディングを実行する必要
がある。前方部109に対するものであるならば。 トラック・ローディングを実行する必要があったことに
なる。従って、これらの区別を行い、前回のトラック・
ミス時に選択すべきだったローディング方法を統計情報
】、07に記憶し、以降のローデイど4法の選択に反映
させる必要がある。こυとき、統計情報J407に記憶
する内容が、前回のトラック・ミス時にローディングが
必要がなかった場合には上位アクセス部1】O6前方部
109、後方部!、 1.1もアクセスされなかったと
いうことを統計情報107に記憶することになる。 前回のトラック・ミス時に何らかのローディングを行う
必要があった場合には、この時のアクセスが、(a)上
位アクセス部j、10に対するものであれば、上位アク
セス部]10にアクセスがあったこと、(b)後方部1
11に対するものなら後方部1i]Lにアクセスがあっ
たこと、及び(e)前方部109に対するものなら前方
部109にアクセスがあったことを腑計情報107に記
憶することになる。 前回のトラック・ミスの発生時に何らかのローディング
が必要であったかを判別するために、アクセス特性情報
46aの中に、トラック・ミスが発生した時の時刻を記
憶する。次に、トラック・ミスが発生した時、LRUポ
インタ43でポイントされているキャッシュ管理ブロッ
ク40 ))内のアクセス時間44とこの時刻を比較す
る。キャッシュメモリ36からの追い出し方法が、T、
 RU方式の場合、この時刻がアクセス時間よりも遅い
場合には、仮に、前回のトラック・ミス時にローディン
グを行っていたとしてもすでにキャッシュメモリ36か
ら追い出されていることになる。そうでなければ、まだ
、キャッシュメモリ36内に依存していることになり、
ローディングが必要であったことになる。 第32図は、ローディングなしのパターンを設けた場合
のアクセス特性情報4.6 bの構成である。 同様に第33図は、第31図のアクセス特性情報46a
にローティングなしのパターンを考慮した場合の構成4
6eである。 以下、新たに設けた情報の説明を行う。L位アクセス・
フラグ170は、L位アクセス部110に対するアクセ
スをチエツクするフラグである。 トラック・ミス発生時刻17]はトラック・ミス発生時
刻を記憶するために設ける。上位アクセスベグ1フ0.
1−ラツク・ミス発生時刻1”71の使用目的は以上述
べたとおりである。 統計情報A172と統計情報107の相違は。 統計情報107が、前方アクセスフラグ104と後方ア
クセスフラグ105の過去の情報であるのに対し、統計
情報A」72はこれに、上位?クセスフラグの過去の情
I!@を付加したものである。M計情報Al、72の内
容とトラック・ミス時に選択すべきローディング方法の
関係な以下に示す。 (a)上位アクセス部110、前方部109.後方部1
11.ともアクセスがないパターンが最も多かった場合
・・・・・・ローディングなし。 cb>上位アクセス部i−10のみアクセスするパター
ンが最も多かった場合・・・・・・上位アクセス部ロー
ディング。 (e)後方部1.11.あるいは、上位アクヒス部J1
0+後方部111しかアクセスしないパターンが最も多
かった場合・・・・・・上位アクセス2部十後方部のロ
ーディング。 (d)上記3つの場合以外・・・・・・トラックローデ
ィング。 ローディングなしのパターンを設けた時の基本的な考え
、方、新たに設けた情報の使用目的、(−ラック・ミス
時に選択すべきローディング°の決定方法を以上述べた
。処理フロ・−は、口・−ディングなしのパターンと設
けない場合とそれIJ、どの差違はないため省略する。 以゛上の実施例では、シーケンシャル、アクセス以外の
アクセスに対するアクセス特性の把握として、上位計算
機システムが実際にアクセス対象とし、た領域を把握し
た場合について述べた。他の内容としては、トラックの
ヒツト率(アクセス対象のレコードがキャッシュメモリ
36上に存在する割合)がある、この際、ヒツト率が一
定値以rになった時、このトラックをキャッシュメモリ
36へのローディング対象としないという制御が考λら
れるが、ローディングしないと決定した後、アゲセス特
性が変ってローディング対象とした方がよくなるような
場合がある。しかし、キャッシュメモリ36へのローデ
ィング対象となっている場合には、ヒツト率は計測でき
るが、ローデイング対象としない場合には、ヒツト率を
計測することは困難である、このため2何らかの情報に
より。 ヒツト率の近似値を把握する。第34図に、この場合の
アクセス特性情報部46eのデータ構造。 第35図に処理フローを示す。第34図は、第20図に
対応した構造である(第31図に対応した図は省略する
)、以下、シーケンシャル・アクセス以外のレコードに
ついて述べる。トラック・ミス発生時刻171は、第3
2図のようにトラック・ミス発生時刻j71と同様で、
トラック・ミスが発生したが、キャッシュメモリ36上
にこのトラックをローディングしないと決めた時刻もで
記録しておく。ミス関数3.92.ヒツト関数191の
使用法は、第35図の処理フローの説明の中で述べる。 ただし、@35図の処理フローにおいて。 トランクは、キャッシュメモリ36に対し、ローディン
グを行わないと決めているため、すべての入出力要求は
トラック・ミスとなる。ステップ144では、このトラ
ックがアクセス対象となった時、このトラック・ミス発
生時刻171とL RTJポインタ43で示されたキャ
ッシュ管理ブロック40bのアクセス時間44を比較す
る。トラック・ミス発生時刻】、71の方が古い時刻で
あれば、前回のトラック・ミス時にローディングを行っ
たとしても、ミスになったとして、ステップ145にお
いて、第34図のミス関数191を1増やす、そうでな
ければ、ステップ14Gにおいて、ヒツト関数j、92
を増やし、トラック・ミス発生時刻1,8J−を更新し
ておく。ヒツト関数192とミス関数191の合計値が
ある値以」ユになり、この2つの値からヒツト率(ヒツ
ト関数1911、、(ヒツト関数191+ミス関数19
1))が一定値以jユになると再びキャッシュ21への
ロー5’イング対急とすることが可能となる。
【発明の効果】
以上述べた如く、本発明によれば、上位システムからの
入出力要求のア°クセス対象トラック内のレコードの、
キャッシュ内における存在状態に基づいて、キャッシュ
内にロードするレコード群を決定するようにしたので、
トラックを構成してぃ61ノコードが可変長の場合でも
、トラック単位の管理方式をべ・−人とL7てローディ
ングオーバーヘッドを少なくすることが可能な、データ
ロー・ディング方法を実現できるという顕著な効果を奏
することができる。 また、本発明によれば、ディスク・キャッシュへのロー
ディング・オーバヘッドの軽減とヒツト率の向上がバラ
ンスよく実現できる。
【図面の簡単な説明】
第1図は本発明の一実施例であるキャッシュ制御方法の
一例の動作を説明する概念図、第2図はこのキャッシュ
制御方法が適用さ狂る情報処理システムの一例の構成を
示すブロック図、第3図は本発明の一実施例であるキャ
ッシュ制御方法におけるキャンシュ動作子・−ドを説明
する概念図、第4図は外部記憶装訝の構成の一例を示す
概念図。 第5図は本発明の一実施例であるキャッシュ制御方法の
動作を示すフローチャート、第6図はキャッシュメモリ
の構成例P示す図、第7図はキャラ?、ツユ管理チー・
プルの構成を示す図1.第8図(士キャッシュ管理ブロ
ックの構成を示す図、第9図は本発明の一実施例におけ
るプロセッサの処理フローチャ・−ト、第1.0図〜第
12図は本発明の他の実施例におけるプロセッサの処理
フローチャート、第13図〜第15回および第17図は
本発明の実施例におけろデータの格納形式を示す図、第
16図はキャッシュ管理ブロックの他の実施例り・赤す
図、第18図は、本発明の主な機能を実行するプログラ
ムの構成例を示す図、第1−9図は5キヤツシユ管理テ
ーブルの構成を示す図5゜@20図は、アクセス特性情
報の構成を示す図、第21図は、トラックの中でCP 
Uがアクセスした部分を認識する方法の・一例を示す図
5第22図は、トラックの中でCP Uがアクセスした
部分を認識する方法の他の例を示す図、第23図は、ト
ラックの先頭のレコードがアクセスされた時の処理フロ
ー図、第24図は、受は付けた入出力要求がアクセス対
象とするトラックのシ・−ケンシャル・チエツク中2ラ
グがオンの場合実行される処理フロー図、第2S図は、
入出力要求に対する処理が完了した時、当該トラックの
シーケンシャル・チlツク中フラグがオンの場合実行さ
れる処理フロー図、第26図は、入出力要求を受は付け
た時、当該トラックのシ・・−ケンシャル認識フラグが
オンの時に実行される処理フロー図、第27図は、(・
ラック・ミス時、複数1−ラック・ローディング以外の
ローディングを実行した後実行する処理フロー図、第2
8図は、アクセス部チエツク中フラグがオン時に。 当該トラックに対し7て入出力要求を受は取−った時に
実行される処理フロー図、@29図は、キャッシュメモ
リから当該トラックを追い出す時、アクセス部チエツク
中フラグがオンの時、実行される処理フロー図、第30
図は、ローディング選択部の処理フロー図、第31図は
、シーケンシャル・アクセスの認識をリード用とライト
用に独立に行った場合のアクセス特性情報の構成図、第
32図は、ローディングなしのパターンを用意した時の
アクセス特性情報の構成図1、第33図は、シーケンシ
ャル・アクセスの認識をリード用とライト用γこ独立に
行い、かつ、ローディングなしのパターンを用意した時
のアクセス特性情報の構成図、第34図は、ヒツト率の
近似値を把握する場合のアクセス特性情報の構成図、第
35図は、ヒツト率の近似値を把握する時の処理フロー
図である。 S)図 偉  饅 f′T。 り/n 不1I−1図 葛7図 あ /り 図 葉 /? 図 j! elfQハリ 茎 2グ 図 $21図 ドー=、−□  −−−−−−−−w−−−−−−Hレ
コートパ/I/クー1”2−         L−り
・−ド声。 +  番  ↓  ↓  番  番  ↓      
 ↓  番  ◆1//10  θ θ −−−−−−
/  /  //ρ? Lう・/7・じ゛ンY・ へ′2−ン 22図 23図 名27図 第2r月 璃 3θ 図 ■ 3/ 図

Claims (1)

  1. 【特許請求の範囲】 1、キャッシュメモリを有する制御装置におけるデータ
    ローディング方法で、以下のステップからなる: 前記制御装置に接続する処理装置からのアクセスの対象
    データが、前記キャッシュメモリに格納されていない場
    合、前記制御装置に接続する記憶装置から前記対象デー
    タをロードし;前記ロードした対象データを前記処理装
    置に出力し; 前記ロードした対象データを前記キャッシュメモリに格
    納し; 前記対象データを格納した前記キャッシュメモリの管理
    単位内に格納されるべき、前記対象データを除くデータ
    を前記記憶装置からロードし; 前記ロードした、前記対象データを除くデータを前記キ
    ャッシュメモリに格納する。 2、請求項1記載のデータローディング方法であり、前
    記対象データを除くデータを前記記憶装置からロードし
    、前記キャッシュメモリに格納するステップは以下のス
    テップを含む: 前記キャッシュメモリの管理単位内の前記対象データの
    直後に格納されるべきデータから、前記キャッシュメモ
    リ管理単位内の最後に格納されるべきデータまでのデー
    タを、前記記憶装置からロードし、前記キャッシュメモ
    リに格納し; 前記キャッシュメモリ管理単位内の先頭に格納されるべ
    きデータから、前記キャッシュメモリ管理単位内の前記
    対象データの直前に格納されるべきデータを、前記記憶
    装置からロードし、前記キャッシュメモリに格納する。 3、キャッシュメモリを有する制御装置におけるデータ
    ローディング方法であり、以下のステップからなる: 前記制御装置に接続する処理装置からの第1のアクセス
    の第1の対象データが前記キャッシュメモリに格納され
    ていない場合、前記制御装置に接続する記憶装置から前
    記第1の対象データをロードし; 前記ロードした前記第1の対象データを前記キャッシュ
    メモリに格納し; 前記処理装置からの第2のアクセスの第2の対象データ
    が、前記第1の対象データが格納されている前記キャッ
    シュメモリの同じ管理単位内に格納されるべきデータで
    あって、前記第1の対象データより前の格納位置に格納
    されるべきデータである場合に、前記キャッシュメモリ
    の前記管理単位の先頭に格納されるべきデータから、前
    記第1の対象データの直前に格納されるべきデータまで
    の第1のデータを、前記記憶装置からロードし; 前記ロードした、第1のデータを、前記キャッシュメモ
    リに格納する。 4、請求項3記載のデータローディング方法であり、さ
    らに以下のステップからなる: 前記第1の対象データの直後に格納されるべきデータか
    ら前記管理単位の最後に格納されるべきデータまでの第
    2のデータを前記記憶装置からロードし; 前記第2のデータを前記キャッシュメモリに格納する。 5、キャッシュメモリを有する制御装置におけるデータ
    ローディング方法であり、以下のステップからなる: 前記制御装置に接続する処理装置からの第1のアクセス
    の第1の対象データが前記キャッシュメモリに格納され
    ていない場合、前記制御装置に接続する記憶装置から前
    記第1の対象データをロードし; 前記ロードした前記第1の対象データを前記キャッシュ
    メモリに格納し; 前記処理装置からの第2のアクセスの第2の対象データ
    が、前記第1の対象データが格納されている前記キャッ
    シュメモリの同じ管理単位内に格納されるべきデータで
    あって、前記第1の対象データより後の格納位置に格納
    されるべきデータである場合に、前記第1のデータの直
    後に格納されるべきデータから前記管理単位の最後に格
    納されるべきデータまでの第1のデータを前記記憶装置
    からロードし; 前記ロードした前記第1のデータを前記キャッシュメモ
    リに格納する。 6、請求項5記載のデータローディング方法であり、さ
    らに以下のステップからなる: 前記管理単位の先頭に格納されるべきデータから前記第
    1の対象データの直前に格納されるべきデータまでの第
    2データを前記記憶装置からロードし; ロードした前記第2のデータを前記キャッシュメモリに
    格納する。 7、キャッシュメモリを有する制御装置におけるキャッ
    シュメモリ制御方法であり、以下のステップからなる: 前記制御装置に接続する処理装置から、追加ローディン
    グの指示を含む対象データへのアクセス要求を入力し; 前記対象データを、前記制御装置に接続する記憶装置か
    らロードし; ロードした前記対象データを前記処理装置へ出力し; ロードした前記対象データを前記キャッシュメモリへ格
    納し; 前記対象データを格納した前記キャッシュメモリの管理
    単位内に格納されるべき、前記対象データを除くデータ
    を前記記憶装置からロードし; 前記データを前記キャッシュメモリに格納する。 8、記憶領域を複数のセグメントに分割したキャッシュ
    メモリを有する制御装置におけるデータローディング方
    法で、以下のステップからなる:前記制御装置に接続す
    る処理装置からのアクセスの対象データが前記キャッシ
    ュメモリに格納されていない場合、前記対象データのサ
    イズ以上のサイズを有するように、少なくとも1つの前
    記セグメントを得; 前記制御装置に接続する記憶装置から前記対象データを
    ロードし; ロードした前記対象データを、得た少なくとも1つの前
    記セグメントに格納する。 9、請求項8のデータローディング方法であり、さらに
    以下のステップからなる: 前記対象データと関連するデータのサイズ以上のサイズ
    を有するように、少なくとも1つの前記セグメントを得
    ; 前記記憶装置から前記対象データと関連する前記データ
    をロードし; ロードした前記データを、得た少なくとも1つの前記セ
    グメントに格納する。 10、所定のサイズの記憶領域を管理単位とするキャッ
    シュメモリを有する制御装置におけるデータローディン
    グ方法であり、以下のステップからなる: 前記制御装置に接続する記憶装置に格納されたデータを
    ロードし; 前記データを前記キャッシュメモリのある管理単位に格
    納し; 前記制御装置に接続する処理装置からの前記管理単位内
    のデータへのアクセスのパターンを認識し; 前記パターンに応じて、前記管理単位へのデータを再ロ
    ードする。 11、キャッシュメモリを有する制御装置におけるデー
    タローディング方法であり、以下のステップからなる: 前記制御装置に接続する処理装置から、アクセス方法の
    指示を含むデータのアクセス要求を入力し; 前記アクセス方法がシーケンシャルアクセスであること
    を認識し; 前記シーケンシャルアクセスの認識結果に基いて、前記
    制御装置に接続する記憶装置から前記データ及び該デー
    タに引き続くデータをロードし; ロードした、前記データ及び該データに引き続く前記デ
    ータを前記キャッシュメモリに格納する。 12、請求項11記載のデータローディング方法であり
    、さらに以下のステップからなる: 前記アクセス方法がシーケンシャルアクセスではないと
    認識し; 前記シーケンシャルアクセスでないという認識結果に応
    じたデータのローディング方法に基いて、前記記憶装置
    からデータをロードする。 13、キャッシュメモリを有する制御装置におけるデー
    タローディング方法であり、以下のステップからなる: 前記制御装置に接続する処理装置からのデータのアクセ
    ス要求を入力し; 前記制御装置に接続する記憶装置に格納される前記デー
    タより前の格納位置に格納されているデータが実質的に
    連続的にアクセスされたことがあることを認識し; 前記認識の結果に基いて、前記アクセス要求されたデー
    タ及び該データに引き続くデータを前記記憶装置からロ
    ードし; ロードした前記アクセス要求されたデータ及び該データ
    に引き続くデータを前記キャッシュメモリに格納する。 14、キャッシュメモリ; データのアクセス要求を入力する第1の入力手段; 前記第1の入力手段により入力した前記データのアクセ
    ス要求に応答して、前記キャッシュメモリを検索する検
    索手段; 前記検索手段により前記アクセス要求に応じたデータを
    検索できない場合、前記制御装置に接続する記憶装置か
    ら前記アクセス要求に応じたデータ及び該データと関連
    するデータを入力する第2の入力手段;および 前記第2の入力手段により入力された前記アクセス要求
    に応じたデータ及び該データと関連するデータを前記キ
    ャッシュメモリに格納する格納手段からなる制御装置。 15、前記キャッシュメモリは予め定めたサイズの記憶
    領域の管理単位に分割され;前記第2の入力手段は、前
    記関連するデータとして、前記アクセス要求に応じたデ
    ータと同一の前記キャッシュメモリの管理単位に格納さ
    れるべきデータを入力する請求項14記載の制御装置。 16、キャッシュメモリ; データのアクセス要求を入力する第1の入力手段; 前記第1の入力手段で入力した前記アクセス要求がシー
    ケンシャルアクセス要求であることを認識する認識手段
    ; 前記認識手段の認識結果に基いて、前記アクセス要求に
    対応するデータ及び該データに引続くデータを、前記制
    御装置に接続される記憶装置から入力する第2の入力手
    段;および 前記第2の入力手段で入力した前記アクセス要求に対応
    するデータ及び該データに引き続くデータを、前記キャ
    ッシュメモリに格納する格納手段とからなる制御装置。 17、所定のサイズの記憶領域を管理単位とするキャッ
    シュメモリを制御する方法であり、以下のステップから
    なる: 前記キャッシュメモリのある管理単位に格納されている
    データに対するアクセスパターンを認識し; 前記アクセスパターンを参照して、前記データを前記キ
    ャッシュメモリに再記憶する。
JP25194589A 1988-09-30 1989-09-29 データローディング方法および装置 Expired - Lifetime JP3370661B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP25194589A JP3370661B2 (ja) 1988-09-30 1989-09-29 データローディング方法および装置

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP24412888 1988-09-30
JP63-244128 1988-09-30
JP28499288 1988-11-11
JP63-284992 1988-11-11
JP25194589A JP3370661B2 (ja) 1988-09-30 1989-09-29 データローディング方法および装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2001325763A Division JP3468762B2 (ja) 1988-09-30 2001-10-24 データローディング方法および装置

Publications (2)

Publication Number Publication Date
JPH02224040A true JPH02224040A (ja) 1990-09-06
JP3370661B2 JP3370661B2 (ja) 2003-01-27

Family

ID=27333205

Family Applications (1)

Application Number Title Priority Date Filing Date
JP25194589A Expired - Lifetime JP3370661B2 (ja) 1988-09-30 1989-09-29 データローディング方法および装置

Country Status (1)

Country Link
JP (1) JP3370661B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06348598A (ja) * 1992-12-17 1994-12-22 Internatl Business Mach Corp <Ibm> データをキャッシュ・メモリに貯蔵するシステムおよび方法
JP2009258911A (ja) * 2008-04-15 2009-11-05 Toshiba Corp ディスクアレイ装置、方法及びプログラム
EP3876104A1 (en) * 2020-03-03 2021-09-08 Technische Universität München Method for evicting data from memory

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06348598A (ja) * 1992-12-17 1994-12-22 Internatl Business Mach Corp <Ibm> データをキャッシュ・メモリに貯蔵するシステムおよび方法
JP2009258911A (ja) * 2008-04-15 2009-11-05 Toshiba Corp ディスクアレイ装置、方法及びプログラム
EP3876104A1 (en) * 2020-03-03 2021-09-08 Technische Universität München Method for evicting data from memory
WO2021175725A1 (en) * 2020-03-03 2021-09-10 Technische Universität München Method for evicting data from memory

Also Published As

Publication number Publication date
JP3370661B2 (ja) 2003-01-27

Similar Documents

Publication Publication Date Title
EP0354579B1 (en) A controller with a cache memory and control method of the cache memory
EP1074916B1 (en) Hardware mechanism for managing cache structures in a data storage system
US4489378A (en) Automatic adjustment of the quantity of prefetch data in a disk cache operation
EP0077453B1 (en) Storage subsystems with arrangements for limiting data occupancy in caches thereof
JPS60500187A (ja) データ処理システム
US9336153B2 (en) Computer system, cache management method, and computer
JPS6212547B2 (ja)
JPH0241056B2 (ja)
JPH05307440A (ja) データ記憶フォーマット変換方式及びその変換方法及びアクセス制御装置及びデータアクセス方法
JPS6367686B2 (ja)
JPH1063578A (ja) 情報記録再生装置
US10152236B2 (en) Hybrid data storage device with partitioned local memory
JPH0668736B2 (ja) 2個のシステムクロックサイクルを利用する書込み動作をもったキャッシュメモリユニットを供与する装置及び方法
US5862363A (en) Method of controlling a disk device by disk control unit
JP2001154895A (ja) 記憶されたレコードについてのフォーマット情報を効率的に提供するためのディレクトリを含むデジタル・データ記憶サブシステム
JPH02224040A (ja) データローディング方法および装置
CN116860184B (zh) 磁盘读写加速方法、装置、阵列卡、服务器、设备和介质
CA1116756A (en) Cache memory command circuit
US6209057B1 (en) Storage device having data buffer
JPH044617B2 (ja)
JP2010160544A (ja) キャッシュメモリシステム及びキャッシュメモリの制御方法
JP3468762B2 (ja) データローディング方法および装置
JP3214452B2 (ja) 磁気ディスク制御装置
JPH0460730A (ja) キャッシュ制御方式
JPH0863397A (ja) ディスクキャッシュ制御方法

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071115

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20081115

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20081115

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20091115

Year of fee payment: 7

EXPY Cancellation because of completion of term