JPH0799510B2 - 二次記憶制御装置 - Google Patents

二次記憶制御装置

Info

Publication number
JPH0799510B2
JPH0799510B2 JP5009723A JP972393A JPH0799510B2 JP H0799510 B2 JPH0799510 B2 JP H0799510B2 JP 5009723 A JP5009723 A JP 5009723A JP 972393 A JP972393 A JP 972393A JP H0799510 B2 JPH0799510 B2 JP H0799510B2
Authority
JP
Japan
Prior art keywords
buffer
secondary storage
storage device
access
access request
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
JP5009723A
Other languages
English (en)
Other versions
JPH06342401A (ja
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
Original Assignee
Hitachi 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 filed Critical Hitachi Ltd
Priority to JP5009723A priority Critical patent/JPH0799510B2/ja
Publication of JPH06342401A publication Critical patent/JPH06342401A/ja
Publication of JPH0799510B2 publication Critical patent/JPH0799510B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は二次記憶制御装置に係
り、特にバッファ記憶を用いた二次記憶装置の制御装置
に関するものである。
【0002】
【従来の技術】磁気ディスク記憶装置のように、比較的
遅いアクセス機構をもつ二次記憶装置では、従来、アク
セスアームを効率良く動作させることにより、性能の実
質的な向上を図っている。一方、主記憶装置と同様に、
二次記憶装置でもバッファ記憶装置を利用すると、以後
にアクセスされる領域のデータを高速のバッファ記憶に
予め読み出しておくことにより、その領域に対して実際
にアクセス要求が出された場合は高速なサービスが可能
である。この種の従来技術としては、例えば特開昭55
−157056号公報に記載のディスクキャッシュ制御
方式が挙げられる。
【0003】
【発明が解決しようとする課題】バッファ記憶装置を有
効に用いて平均アクセス時間を短縮するには、バッファ
のヒット率を上げる必要がある。このためには、アクセ
スされる確率の高い領域をできるだけ適確に予測して、
使用直前に二次記憶装置からバッファ記憶に読み出し、
使用可能性のなくなった領域を二次記憶装置に戻して、
そのバッファを解放することが必要である。
【0004】本発明の目的は、動作の遅いアクセス機構
をもつ二次記憶装置に対して、物理的に近いアドレスに
対する要求の行われることを自動的に予測する手段を設
け、アクセスの予測される連続するアドレスに対する別
個の要求を単一の要求として発行し、入出力のオーバヘ
ッドを減少させると同時にバッファ記憶も有効に使用す
ることを可能にした二次記憶制御装置を提供することに
ある。
【0005】
【課題を解決するための手段】上記目的を達成するため
に、本発明は、磁気ディスク等の二次記憶装置に対する
アクセス要求を処理、実行する二次記憶制御装置におい
て、上記二次記憶装置の一部のデータを格納しておくた
めのバッファメモリと、アクセス要求のデータが上記バ
ッファメモリに格納されていると、該バッファメモリに
対してアクセスを行うバッファ制御手段と、上記二次記
憶装置のデータを先読みして、上記バッファメモリに格
納する先読み制御手段と、現アクセス要求に対し、最近
受付けた複数のアクセス要求を調べて、現アクセス要求
のアドレス以降のデータが引き続いてアクセスされるか
どうか予測し、アクセスされる可能性があると判断する
と上記先読み制御手段を起動する順アクセス検出手段と
を有することを特徴とする。
【0006】また、上記順アクセス検出手段は、現アク
セス要求のアドレスに隣合うものが上記最近受付けた複
数のアクセス要求の中に含まれているかどうかチェック
することにより上記予測を行うことを特徴とする。
【0007】
【作用】二次記憶装置内には多くのファイルが記憶され
ており、それぞれ連続した領域にあることが多く、それ
らのファイルがアドレス順にアクセスされる順アクセス
ならば、使用順序を予測することが可能である。この順
アクセスが開始されたことを検出し、それ以後順アクセ
スされると予測される領域をバッファへ先読みしておく
ことにより、以後の順アクセス要求にはバッファからサ
ービスすることができる。特に、最近受付けた複数のア
クセス要求に基づいて順アクセスを予測することによ
り、例えば、二次記憶装置が複数の処理装置に共有さ
れ、各処理装置からのアクセスが混在しているような場
合であって、ある処理装置からのアクセス要求が連続し
たアドレスに対するものであるような場合(この場合、
二次記憶装置側からは、連続するアドレスが飛び飛びに
来るように見える)にも、その連続するデータを効率的
に予測でき、バッファの利用効率を高めることが可能と
なる。
【0008】
【実施例】以下、本発明を図示の一実施例を用いて詳細
に説明する。
【0009】図1は本発明の一実施例のブロック図であ
る。図において、70と71は磁気ディスク記憶装置の
ような二次記憶装置であり、40は二次記憶装置中の一
部のデータブロックを予め記憶しておく高速のバッファ
記憶装置である。この二次記憶装置70,71とバッフ
ァ記憶装置40間のブロック転送制御を、先読み制御回
路50とバッファ制御回路60が司どる。バッファ記憶
装置40は基本サイズのn個のバッファ1〜nで構成さ
れている。バッファ管理テーブル30は、バッファ記憶
装置40に読み出されたブロックを管理するもので、そ
の各エントリはバッファ記憶装置40の各基本バッファ
1〜nに対応している。バッファ管理テーブル30の1
エントリは、該当バッファに読み出された二次記憶アド
レス(ディスク・アドレス)DA、先読みフラグLA、
使用未完了フラグUおよび空きエントリの表示ビットF
よりなる。順アクセス検出回路10は二次記憶装置のア
クセス要求に対し、そのアドレス以降が順アクセス可能
か否かを予測する回路であり、これには最近受付けたm
個のアクセス要求をスタックしておくレジスタ等が具備
されている。バッファ使用完了検出回路11はアクセス
要求を監視して、個々のバッファの使用が完了したこと
を検出する回路である。個々のバッファの使用が完了し
たことは、各バッファ中の最終ブロックがアクセスされ
たことを検出することで認識できる。
【0010】先読み制御テーブル12は、順アクセスが
予想される領域毎に、二次記憶装置70,71からバッ
ファ記憶装置40へ所望のデータブロックを先読みする
のに必要な情報を登録しておくメモリである。この先読
み制御テーブル12の1エントリはDA、BT、IOT
およびSZよりなる。DAは順アクセスが行われると予
測される先頭の二次記憶アドレスで、入出力要求(アク
セス要求)があった時、順アクセス検出回路10により
検索されて登録される。BTはバッファ記憶装置40内
の先読みデータの滞留時間を表わす。言い換えると、該
当バッファに含まれるデータが先読みされてから利用完
了するまでの時間であり、該データがバッファへ読み込
まれてから先読み制御回路50により一定時間間隔毎に
使用時間が加算されて更新される。IOTは二次記憶装
置からバッファへデータを読み出すまでの入力時間を示
し、先読み制御回路50によってこの時間を監視してお
き登録される。SZは先読みのバッファ・サイズであ
り、先読みサイズ決定回路20により作られ、信号線1
02を介してセットされる。信号線101は先読みサイ
ズ決定回路20が先読み制御テーブル12からBT、I
OTを入力するための線である。先読みサイズ決定回路
20は先読みのバッファ・サイズを決定する回路で、は
じめは予め定められたサイズで初期値をセットするが、
その後はBT、IOT等に従って次に読むべき最適バッ
ファ・サイズを決めてセットする。
【0011】次に、図1の動作を説明する。いま、中央
処理装置より二次記憶装置へのアクセス要求が信号線1
に出されたとする。バッファ制御回路60は、この二次
記憶装置へのアクセス要求を入力すると、バッファ管理
テーブル30のDAフィールドを検索して、アクセスす
るブロックがバッファ記憶装置40に読み出されている
かどうか調べ、すでにバッファ上にあれば、それを用い
て中央処理装置とデータ線2を介してサービスを行う。
又、アクセスするブロックがバッファ記憶装置40に読
み出されていないときは、バッファ制御回路60は実際
に二次記憶装置70,71に対してアクセス要求を実行
し、読み出したデータのバッファ記憶装置40への格
納、その二次記憶アドレス等のバッファ管理テーブル3
0への登録を行うと共に、バッファへ読み出したデータ
を用いて、あらためて中央処理装置とサービスを行う。
なお、バッファ制御回路60は二次記憶装置70,71
から読み出したデータをバッファ記憶装置40へ新しく
登録する際、バッファ記憶装置内の出来るだけ使用され
そうにないバッファを選択し、その内容を二次記憶装置
70,71に書き出すことにより空きバッファを作り、
新しいバッファ・エントリとして使用する。これに関す
るアルゴリズムはすでに種々提案されているので、これ
以上の詳細な説明は省略する。
【0012】一方、二次記憶アクセス要求が信号線1に
出されると、順アクセス検出回路10は、そのアクセス
要求に対して、最近受付けたアクセス要求のうちに入出
力アドレスが隣り合ったものがあるかどうかをチェック
し、もしあれば、当該アクセス要求のアドレス以降も引
き続いて順アクセスが行われると予測する。そして、順
アクセス検出回路10は、順アクセスが行われると予測
される先頭の二次記憶アドレスを先読み制御テーブル1
2のADフィールドに登録し、先読みサイズ決定回路2
0および先読み制御回路50に起動をかける。これによ
り、先読みサイズ決定回路20は、信号線21を通して
与えられる入出力負荷の状態により初めの先読みサイズ
を決定して先読み制御テーブル12のSZフィールドに
登録する。先読み制御回路50は、この先読み制御テー
ブル12に新しく登録されたDAフィールド、SZフィ
ールドの内容を入力して二次記憶装置70,71をアク
セスし、そのDAフィールドで示されるアドレスからS
Zフィールドのバッファサイズに等しいデータを読み出
してバッファ記憶装置40に格納する。同時に、先読み
制御回路50はバッファ管理テーブル30上の該当エン
トリ(データが格納されたバッファに対応するエント
リ)のDAフィールドに二次記憶アドレスを登録し、先
読みフラグLA、使用未完了フラグUもあわせてセット
する。更に先読み制御回路50は、バッファ記憶装置4
0に読み出された領域に対し、その使用開始時刻と入力
所要時間を先読み制御テーブル12のBTフィールドと
IOTフィールドに登録する。以後、BTフィールドの
内容は先読み制御回路50により一定時間毎に更新さ
れ、バッファの滞留時間を示すことになる。
【0013】バッファ制御回路60はすでに説明した様
に、信号線1にアクセス要求が出されると、バッファ管
理テーブル30を検索するが、その結果、アクセスする
ブロックが先読み制御回路50によりバッファ記憶装置
40に先読みされていると、それを用いて中央処理装置
と直ちにサービスを行うことができる。なお、アクセス
するブロックがバッファ上にない場合、バッファ制御回
路60は要求のあったブロックを二次記憶装置70,7
1からバッファに読み出すことになるが、この実際に要
求された領域と前記先読み制御回路50による先読み領
域とが重複することが考えられる。これは、バッファ制
御回路60に実際に要求のあったブロックを優先させ、
先読みブロックと重複しないようにする手段を持たせる
ことで解決される。
【0014】信号線1に出された二次記憶アクセス要求
はバッファ使用完了検出回路11にも入力される。バッ
ファ使用完了検出回路11は該アクセス要求を監視して
いて、該当バッファ中の最後のブロックに対する入出力
要求を検出すると、バッファ管理テーブル30の該当バ
ッファ・エントリ中の使用未完了フラグUをリセット
し、バッファ制御回路60に報告する。アクセス要求が
該当バッファ中の最終ブロックに対するものであるかど
うかは、次のようにして検出することができる。即ち、
まずバッファ管理テーブル30を検索して、アクセス要
求のあったブロックがバッファ記憶装置40のどのバッ
ファにあるか調べ、次にDAフィールドの内容に一定数
を加算してそのブロックを含んだバッファの最後のブロ
ックアドレスを求め、この最終ブロックアドレスとアク
セス要求アドレスを比較する。
【0015】バッファ制御回路60では、バッファの使
用完了の報告を受けると、該当バッファが変更されてい
れば、二次記憶装置70,71に書き出し処理を行い、
空きバッファとして利用できるようにバッファ管理テー
ブル30の中の該当エントリをクリアし、そのFビット
を空きエントリとしてセットしておく。なお、二次記憶
装置への書き出し処理は、先読みした他のバッファとま
とめて1回の出力処理として書き出してもよい。変更の
なかったバッファは改めて書き戻さないようにする。こ
の結果、入出力のための時間がさらに短縮できる。
【0016】上記バッファの使用完了の検出により、該
当バッファでのデータの滞留時間が決定される。先読み
サイズ決定回路20では、順アクセス検出回路10によ
り当該アクセス要求のアドレス以降も引き続いて順アク
セスが行われると予測される旨の報告を受けると、先読
み制御テーブル12の該当エントリのBTフィールド、
IOTフィールド、SZフィールドの内容を信号線10
1を通し入力して、そのBT、SZより単一バッファ当
りのバッファ滞留時間を求め、該バッファ滞留時間と単
一バッファ当りの入出力時間と、信号線21より与えら
れる負荷モードに従って、次に読み出すべき最適バッフ
ァ・サイズを決め、信号線102を通して先読み制御テ
ーブル12の該当SZフィールドにセットする。即ち、
実際のアクセス要求のアドレス以降も引き続いて順アク
セスが行われると予測された時、先読みサイズ決定回路
20は、初めは負荷状態等にもとづいて所定のバッファ
・サイズを決めるが、それ以後は、先読みバッファの使
用完了時点毎に動的に先読みバッファ・サイズを調整
し、次に読むべき最適バッファ・サイズを決める。先読
み制御回路50は、この新しく設定されたバッファ・サ
イズだけ先読みを実行していく。
【0017】なお、順アクセスの予測違いを防いだり、
順アクセスが完了した場合、該当領域に関して先読み制
御を取り止める必要がある。これは次のようにして行え
ばよい。先読み制御テーブル12のBTフィールドのバ
ッファ滞留時間は先読み制御回路50により記録更新さ
れており、後続のアクセスが無くなった場合、その値は
増大する一方である。そこで、先読み制御回路50で先
読み制御テーブル12の各BTフィールドの値をチェッ
クし、それが一定値を越えた場合、該当エントリを先読
み制御テーブル12より削除する。
【0018】次に先読みバッファ・サイズの決定方法に
ついて、少し詳細に説明する。いまバッファ・サイズの
最大、最小をそれぞれbmax,bminとする。単一バッフ
ァ当りのバッファ滞留時間L、入出力時間Iは先読みバ
ッファ・サイズbに依存して図2のような傾向を示す。
どのバッファ・サイズが最適であるかは、二次記憶装置
への負荷(使用率)により異なる。そこで、二次記憶装
置への負荷が高いときはバッファ・サイズを大きくし、
バッファへの負荷が大きいときはバッファ・サイズを小
さくしてやればよい。又、二次記憶装置とバッファへの
負荷がバランスしている場合は、両方への負荷が最小に
なるようなバッファ・サイズを選べばよい。負荷の状態
は中央処理装置からの命令でセット、リセットされる負
荷モード信号線21により先読みサイズ決定回路20に
与えられ、これにより、現在の状態が、入出力負荷が高
い状態か、CPU負荷が高い状態か、双方がバランスし
ている状態かを知ることができる。
【0019】以上、本発明の一実施例として、図1のよ
うに各種の制御回路等をそれぞれハードウェアで構成し
た場合を示したが、これらの回路ないし装置の一部また
は全部をマイクロコンピュータ等により等価的に構成す
ることも可能であり、本発明が図1のような構成に限定
されるものでないことは云うまでもない。
【0020】
【発明の効果】以上の説明から明らかな如く、本発明に
よれば、バッファ記憶を用いた二次記憶装置において、
現アクセス要求に対し、そのアドレス以降のデータが引
き続いてアクセスされる可能性があるか予測し、アクセ
スされる可能性がある場合、二次記憶装置のデータを先
読みしてバッファに格納することにより、バッファ記憶
のヒット率を高め、バッファ記憶を有効に使用すること
が可能になる。特に、最近受付けた複数のアクセス要求
に基づいて順アクセスを予測することにより、例えば、
二次記憶装置が複数の処理装置に共有され、各処理装置
からのアクセスが混在しているような場合であって、あ
る処理装置からのアクセス要求が連続したアドレスに対
するものであるような場合(この場合、二次記憶装置側
からは、連続するアドレスが飛び飛びに来るように見え
る)にも、その連続するデータを効率的に予測でき、バ
ッファの利用効率を高めることが可能となる。
【図面の簡単な説明】
【図1】本発明の一実施例のブロック図である。
【図2】先読みサイズ決定方法の説明図である。
【符号の説明】
1 二次記憶アクセス要求線 2 データ線 10 順アクセス検出回路 11 バッファ使用完了検出回路 12 先読み制御テーブル 20 先読みサイズ決定回路 30 バッファ管理テーブル 40 バッファ記憶装置 50 先読み制御回路 60 バッファ制御回路 70,71 二次記憶装置

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 磁気ディスク等の二次記憶装置に対する
    アクセス要求を処理、実行する二次記憶制御装置におい
    て、 上記二次記憶装置の一部のデータを格納しておくための
    バッファメモリと、 アクセス要求のデータが上記バッファメモリに格納され
    ていると、該バッファメモリに対してアクセスを行うバ
    ッファ制御手段と、 上記二次記憶装置のデータを先読みして、上記バッファ
    メモリに格納する先読み制御手段と、 現アクセス要求に対し、最近受付けた複数のアクセス要
    求を調べて、現アクセス要求のアドレス以降のデータが
    引き続いてアクセスされるかどうか予測し、アクセスさ
    れる可能性があると判断すると上記先読み制御手段を起
    動する順アクセス検出手段とを有することを特徴とする
    二次記憶制御装置。
  2. 【請求項2】 上記順アクセス検出手段は、現アクセス
    要求のアドレスに隣合うものが上記最近受付けた複数の
    アクセス要求の中に含まれているかどうかチェックする
    ことにより上記予測を行うことを特徴とする請求項1記
    載の二次記憶制御装置。
JP5009723A 1993-01-25 1993-01-25 二次記憶制御装置 Expired - Lifetime JPH0799510B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5009723A JPH0799510B2 (ja) 1993-01-25 1993-01-25 二次記憶制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5009723A JPH0799510B2 (ja) 1993-01-25 1993-01-25 二次記憶制御装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP56058075A Division JPS57172457A (en) 1981-04-17 1981-04-17 Secondary storage controller

Publications (2)

Publication Number Publication Date
JPH06342401A JPH06342401A (ja) 1994-12-13
JPH0799510B2 true JPH0799510B2 (ja) 1995-10-25

Family

ID=11728225

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5009723A Expired - Lifetime JPH0799510B2 (ja) 1993-01-25 1993-01-25 二次記憶制御装置

Country Status (1)

Country Link
JP (1) JPH0799510B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3071752B2 (ja) 1998-03-24 2000-07-31 三菱電機株式会社 ブリッジ方法、バスブリッジ及びマルチプロセッサシステム
JP2003122702A (ja) * 2001-10-10 2003-04-25 Hitachi Communication Technologies Ltd 記憶装置
JP4643667B2 (ja) 2008-03-01 2011-03-02 株式会社東芝 メモリシステム
JP2013008094A (ja) * 2011-06-22 2013-01-10 Sony Corp メモリ管理装置、メモリ管理方法、制御プログラム、および、記録媒体

Also Published As

Publication number Publication date
JPH06342401A (ja) 1994-12-13

Similar Documents

Publication Publication Date Title
JP3522527B2 (ja) 入出力制御装置および入出力制御方法
US6324599B1 (en) Computer system and method for tracking DMA transferred data within a read-ahead local buffer without interrupting the host processor
EP0301211B1 (en) Cache management for a peripheral data storage subsystem
US6012106A (en) Prefetch management for DMA read transactions depending upon past history of actual transfer lengths
US5664148A (en) Cache arrangement including coalescing buffer queue for non-cacheable data
US6782454B1 (en) System and method for pre-fetching for pointer linked data structures
JP4067887B2 (ja) プリフェッチを行う演算処理装置、情報処理装置及びそれらの制御方法
JP4298800B2 (ja) キャッシュメモリにおけるプリフェッチ管理
JP4060506B2 (ja) ディスク制御装置
JPH0628180A (ja) プリフェッチバッファ
US6216208B1 (en) Prefetch queue responsive to read request sequences
EP0602808A2 (en) Cache systems
JPH0799510B2 (ja) 二次記憶制御装置
JPH08263380A (ja) ディスクキャッシュ制御方式
JPH11506238A (ja) キャッシュ管理システムにおける順次性検出用のシステムと方法
US20010032297A1 (en) Cache memory apparatus and data processing system
US7543113B2 (en) Cache memory system and method capable of adaptively accommodating various memory line sizes
JPH0415493B2 (ja)
JPH09128325A (ja) 階層バス制御方式及びバスブリッジ
JP3516326B2 (ja) 共有キャッシュメモリを有するメモリコントローラ及びこれを備えたコンピュータシステム
JPH06103169A (ja) 中央演算処理装置のリードデータプリフェッチ機構
JP2002182978A (ja) 記憶サブシステム及び情報処理システム
JPH0728677A (ja) 記憶装置のファイル管理方式
JP2000047942A (ja) キャッシュメモリ制御装置及びその制御方法
JP3284508B2 (ja) データ先読み制御装置