JPH01134643A - バッファ制御方式 - Google Patents
バッファ制御方式Info
- Publication number
- JPH01134643A JPH01134643A JP62294621A JP29462187A JPH01134643A JP H01134643 A JPH01134643 A JP H01134643A JP 62294621 A JP62294621 A JP 62294621A JP 29462187 A JP29462187 A JP 29462187A JP H01134643 A JPH01134643 A JP H01134643A
- Authority
- JP
- Japan
- Prior art keywords
- data
- record
- address
- buffer
- additional information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 239000000872 buffer Substances 0.000 title claims abstract description 70
- 238000000034 method Methods 0.000 claims description 23
- 238000010586 diagram Methods 0.000 description 13
- 230000000694 effects Effects 0.000 description 5
- 230000004044 response Effects 0.000 description 4
- 239000004065 semiconductor Substances 0.000 description 2
- 238000004904 shortening Methods 0.000 description 2
- 244000060011 Cocos nucifera Species 0.000 description 1
- 235000013162 Cocos nucifera Nutrition 0.000 description 1
- ZGRQPKYPJYNOKX-XUXIUFHCSA-N Cys-Cys-His-His Chemical compound C([C@H](NC(=O)[C@H](CS)NC(=O)[C@H](CS)N)C(=O)N[C@@H](CC=1NC=NC=1)C(O)=O)C1=CN=CN1 ZGRQPKYPJYNOKX-XUXIUFHCSA-N 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔目次〕
概要
産業上の利用分野
従来の技術 (第7図〜第10図)発明が解決し
ようとする問題点 問題点を解決する手段(第1図(a)、(b))作用
(第1図(a)、 (b) )実施例
(第2図〜第6図)発明の効果 〔概要〕 計算機システム等におけるディスクキャラシス装置のア
クセス時間を改善するためのノ(ソファ制御方式に関し
、 バッファ上のデータの検索が単純化されアクセス時間を
著しく短縮することを目的とし、所定長の識別情報部と
この識別情報部に続くデータ部とを有するレコードデー
タをディスクキャッジ−装置のバッファに保持し、読み
出し指令されたレコードデータをこのバッファから読み
出すようにしたバッファ制御方式において、レコードデ
ータの書込み時には、前記バッファ上で識別情報部とデ
ータ部とを区別する付加情報を付し、レコードデータの
読み出し時(は、トラック先頭におけるレコードの識別
情報部を検索した後、読み出し指令されたレコードの順
位に対応した回数だけいずれかの付加情報の付されたア
ドレスを頴次に求め、対応回数時に求められたアドレス
に基づいて、読み出し指令されたレコードのデータを検
索することを特徴とする。
ようとする問題点 問題点を解決する手段(第1図(a)、(b))作用
(第1図(a)、 (b) )実施例
(第2図〜第6図)発明の効果 〔概要〕 計算機システム等におけるディスクキャラシス装置のア
クセス時間を改善するためのノ(ソファ制御方式に関し
、 バッファ上のデータの検索が単純化されアクセス時間を
著しく短縮することを目的とし、所定長の識別情報部と
この識別情報部に続くデータ部とを有するレコードデー
タをディスクキャッジ−装置のバッファに保持し、読み
出し指令されたレコードデータをこのバッファから読み
出すようにしたバッファ制御方式において、レコードデ
ータの書込み時には、前記バッファ上で識別情報部とデ
ータ部とを区別する付加情報を付し、レコードデータの
読み出し時(は、トラック先頭におけるレコードの識別
情報部を検索した後、読み出し指令されたレコードの順
位に対応した回数だけいずれかの付加情報の付されたア
ドレスを頴次に求め、対応回数時に求められたアドレス
に基づいて、読み出し指令されたレコードのデータを検
索することを特徴とする。
本発明は、計算機システム等におけるディスクキヤケシ
ー装置のアクセス時間を改善するためのバッファ制御方
式に関する。
ー装置のアクセス時間を改善するためのバッファ制御方
式に関する。
ディスクキャッシュ装置は周知のように、磁気ディスク
記憶装置等に対するアクセス時間の短縮を目的として設
けられ、ディスク記憶装置に記憶するデータの一部の写
しを、アクセス時間の短い半導体記憶装置等で構成する
バッファに保持し、そこから利用できるように構成した
装置である。
記憶装置等に対するアクセス時間の短縮を目的として設
けられ、ディスク記憶装置に記憶するデータの一部の写
しを、アクセス時間の短い半導体記憶装置等で構成する
バッファに保持し、そこから利用できるように構成した
装置である。
第7図はディスクキャッシュ装置を用いた計算機システ
ムの構成例を示すブロック図である。
ムの構成例を示すブロック図である。
主記滝装置51と接続してプログラムを実行する中央処
理装置52は、チャネル装置53.磁気ディスク制御装
置(以下においてDIRという)54を介して、磁気デ
ィスク装置(以下においてDASDという)55とデー
タ入出力を行なう。
理装置52は、チャネル装置53.磁気ディスク制御装
置(以下においてDIRという)54を介して、磁気デ
ィスク装置(以下においてDASDという)55とデー
タ入出力を行なう。
DIR54には、DASD55と並列にディスクキャッ
シュ装置(以下においてDCFという)56が接続され
ていて、中央処理装置52からDASD55へのアクセ
ス要求が発行された場合に、DIR54はDCF56に
指定のデータが保持されている限り、そのデータを使用
することにより、中央処理装置52におけるDASD5
5に対する見掛けのアクセス所要時間を短縮するように
制御する。
シュ装置(以下においてDCFという)56が接続され
ていて、中央処理装置52からDASD55へのアクセ
ス要求が発行された場合に、DIR54はDCF56に
指定のデータが保持されている限り、そのデータを使用
することにより、中央処理装置52におけるDASD5
5に対する見掛けのアクセス所要時間を短縮するように
制御する。
このためにDCF56は、例えば半導体記憶装置で構成
されるバッファを持ち、DASD55のあるレコードに
アクセス要求が出た時に1例えばDASD55上のその
レコードを含むエトラツクのデータをバッファに保持し
くこの処理をステージングという)、その後は該トラッ
ク上のレコードに対するアクセスを、すべてDCF56
へのアクセスで代行できるようにする。
されるバッファを持ち、DASD55のあるレコードに
アクセス要求が出た時に1例えばDASD55上のその
レコードを含むエトラツクのデータをバッファに保持し
くこの処理をステージングという)、その後は該トラッ
ク上のレコードに対するアクセスを、すべてDCF56
へのアクセスで代行できるようにする。
@8図はDCF56の詳細な一構成上を示すブロック図
である。
である。
DCF56は、データバス10.信号線11.12等に
よってI)IR54およびDASD55 と接続され
ている。
よってI)IR54およびDASD55 と接続され
ている。
DIR54は中央処理装置52からのアクセス要求をチ
ャネル装置53を介して受信すると、アクセス要求にお
いて指定される周知のシーク(5eek )要求のシリ
ンダアドレス(以下においてCCと表す)およびヘッド
アドレス(以下においてHHと表す)をシーク指令とD
CF56共に送って、該当トラ、りがステージングされ
ているか問い合わせる0 DCF56はこの指令をデータバス10を介して主制御
部13において受信する。主制御部13は例えばマイク
ロプログラムを実行する処理装置と制御メモリを主体に
して構成される。この主制御部13はDCF56全般の
制御を行なう部分であり、シーク指令を解読すると、主
制御部13内に設けられた図示されない制御メモリの一
部に記憶されているテーブル(ハツシュテーブルと呼ぶ
)を検索して、指定のトラックアドレスCCHHのデー
タがトラックバッファ14にステージングされているか
判定し、その結果をデータバスlOを介してDIR54
へ通知する。
ャネル装置53を介して受信すると、アクセス要求にお
いて指定される周知のシーク(5eek )要求のシリ
ンダアドレス(以下においてCCと表す)およびヘッド
アドレス(以下においてHHと表す)をシーク指令とD
CF56共に送って、該当トラ、りがステージングされ
ているか問い合わせる0 DCF56はこの指令をデータバス10を介して主制御
部13において受信する。主制御部13は例えばマイク
ロプログラムを実行する処理装置と制御メモリを主体に
して構成される。この主制御部13はDCF56全般の
制御を行なう部分であり、シーク指令を解読すると、主
制御部13内に設けられた図示されない制御メモリの一
部に記憶されているテーブル(ハツシュテーブルと呼ぶ
)を検索して、指定のトラックアドレスCCHHのデー
タがトラックバッファ14にステージングされているか
判定し、その結果をデータバスlOを介してDIR54
へ通知する。
テーブルによる判定の結果、指定のトラックがトラック
バッファ14にステージングされていると判定された場
合(この状態をヒyトの状態という)には、後述のよう
にしてそのデータが使用されるが、ステージングされて
いないと判定された場合(この状態をミスヒツトという
。)には、DIR54は通常のようにDASD55のデ
ータにアクセスする必要がある。
バッファ14にステージングされていると判定された場
合(この状態をヒyトの状態という)には、後述のよう
にしてそのデータが使用されるが、ステージングされて
いないと判定された場合(この状態をミスヒツトという
。)には、DIR54は通常のようにDASD55のデ
ータにアクセスする必要がある。
ミスヒツトの場合、DIR54はDASD55を制御し
て、そのトラックにアクセス機構を設定するいわゆるシ
ークを実行させ、次にチャネル装置ff53から送られ
る指令によって指定されるレコードアドレス(以下(お
いてRと表す)により、例えば読出し動作を行なう。
て、そのトラックにアクセス機構を設定するいわゆるシ
ークを実行させ、次にチャネル装置ff53から送られ
る指令によって指定されるレコードアドレス(以下(お
いてRと表す)により、例えば読出し動作を行なう。
ここでDIR54は、DASD55から読み出されたデ
ータのうち要求されたレコードのみをチャネル装置53
へ転送するが、DASD55からは当該要求レコードの
格納され六トラックの全データのステージングを指令す
る。
ータのうち要求されたレコードのみをチャネル装置53
へ転送するが、DASD55からは当該要求レコードの
格納され六トラックの全データのステージングを指令す
る。
そしてDCF56では、ステージング指令により、主制
御部13がLRtJアルゴリズムによりトラックバッフ
ァ14の空!領域を1トラック分確保し、記憶アドレス
をハツシュテーブルにトラックアドレスと共に記憶する
と共に、その記憶アドレスをアドレスレジスタ15に設
定し、転送制御部16にステージング動作を起動させる
。
御部13がLRtJアルゴリズムによりトラックバッフ
ァ14の空!領域を1トラック分確保し、記憶アドレス
をハツシュテーブルにトラックアドレスと共に記憶する
と共に、その記憶アドレスをアドレスレジスタ15に設
定し、転送制御部16にステージング動作を起動させる
。
転送制御部16は、信号線11によりDIR54からデ
ータアウト信号を受信したとき、データバス10のデー
タをマルチプレクサ17を経て例えば1バイトツつのパ
スレジスタ18に受信し、信号線12によって1バイト
のデータを受信したことを応答する。パスレジスタ18
のデータを、トラックバッファ14上のアドレスレジス
タ15で指定される記憶領域〈書き込み、アドレスレジ
スタ15に保持する記憶アドレスを+1する。
ータアウト信号を受信したとき、データバス10のデー
タをマルチプレクサ17を経て例えば1バイトツつのパ
スレジスタ18に受信し、信号線12によって1バイト
のデータを受信したことを応答する。パスレジスタ18
のデータを、トラックバッファ14上のアドレスレジス
タ15で指定される記憶領域〈書き込み、アドレスレジ
スタ15に保持する記憶アドレスを+1する。
この動作を婦り返して、データを逐次トラックバッファ
14に書き込み、DIR54から信号@11によ)通知
されるトランス7アストツプ信号によシステージングの
書込み動作を終了する。
14に書き込み、DIR54から信号@11によ)通知
されるトランス7アストツプ信号によシステージングの
書込み動作を終了する。
このようKしてトラックバッファ14には、DASD5
5から読み出された1トラックのデータが、読み出され
た1まの順序で、第9図に示すように格納される。
5から読み出された1トラックのデータが、読み出され
た1まの順序で、第9図に示すように格納される。
図において、HAは固定長の所定形式によりトラックの
先頭を示す情報であり、R0〜C,R,−C,R,−C
・・・は第Rレコードの識別情報部であって、各レコー
ドの先頭にありレコードの構成等を示す0又、Ra −
D 、Rt −D 、 R意−D−はそれぞれ第Rレコ
ードのデータ部のデータで、R,−には@Rレコードの
データ部のキーであって、その長さは識別情報部で指定
された可変長である。
先頭を示す情報であり、R0〜C,R,−C,R,−C
・・・は第Rレコードの識別情報部であって、各レコー
ドの先頭にありレコードの構成等を示す0又、Ra −
D 、Rt −D 、 R意−D−はそれぞれ第Rレコ
ードのデータ部のデータで、R,−には@Rレコードの
データ部のキーであって、その長さは識別情報部で指定
された可変長である。
識別情報部(Ro−Cなど)は固定長でありて、例えば
第10図に示すように、識別情報部を示すフラグF1シ
リンダアドレスCC,ヘッドアドレスHHルコードアド
レスR1キー長KL、データ長DLからなる。
第10図に示すように、識別情報部を示すフラグF1シ
リンダアドレスCC,ヘッドアドレスHHルコードアド
レスR1キー長KL、データ長DLからなる。
次にヒツトし九場合のトラックバッファ14からの読出
し方法について説明する。
し方法について説明する。
読出し指令において、要求のトラックがヒツトした場合
には、主制御部13は、レコードアドレスを指定した読
出し指令をDIR54から受信する。
には、主制御部13は、レコードアドレスを指定した読
出し指令をDIR54から受信する。
読み出し指令のあったデータのレコードアドレスがR−
2であったとすると、主制御部13は、指定のトラック
を記憶する先頭アドレスに先頭情報部HAの固定長さを
加えたアドレスをアドレスレジスタ15に設定して、ト
ラックバッファ14から、先ずレコードアドレスR=O
の識別情報部丸−Cを読み出す。
2であったとすると、主制御部13は、指定のトラック
を記憶する先頭アドレスに先頭情報部HAの固定長さを
加えたアドレスをアドレスレジスタ15に設定して、ト
ラックバッファ14から、先ずレコードアドレスR=O
の識別情報部丸−Cを読み出す。
次いで、そのキー長KL+データ長DLをアドレスレジ
スタ15に加えて得るアドレスによってレコードアドレ
スR=1の識別情報部R1−Cを読み出し、前と同様に
そのキー長KLおよびデータ長DLを使って、レコード
アドレスR=2の識別情報部R1−Cのアドレスを得、
このようKして指定の第2レコードの記憶アドレスに到
達する。
スタ15に加えて得るアドレスによってレコードアドレ
スR=1の識別情報部R1−Cを読み出し、前と同様に
そのキー長KLおよびデータ長DLを使って、レコード
アドレスR=2の識別情報部R1−Cのアドレスを得、
このようKして指定の第2レコードの記憶アドレスに到
達する。
従ってここでは、識別情報部を読み出す要求であればそ
のアドレスを、またデータ部のキーまたはデータの読出
し要求であればそのアドレスに識別情報部の固定長を加
えて得るデータ部の先頭アドレス、または更にキー長を
加えたアドレスをアドレスレジスタ15に設定し、転送
制御部16の転送動作を起動する。
のアドレスを、またデータ部のキーまたはデータの読出
し要求であればそのアドレスに識別情報部の固定長を加
えて得るデータ部の先頭アドレス、または更にキー長を
加えたアドレスをアドレスレジスタ15に設定し、転送
制御部16の転送動作を起動する。
転送制御部16は、DIR4から信号線11に送られる
データアウト信号ごとにトラックバッファ14からデー
タを読み出してデータバス10に送出し、信号線12に
データイン信号を上げて応答シ、アドレスレジスタ15
のアドレスを+1する動作を反復することにより、指定
のデータの読出しを行なう。読出し動作の終了はDIR
54からのトランスファストップ信号による。
データアウト信号ごとにトラックバッファ14からデー
タを読み出してデータバス10に送出し、信号線12に
データイン信号を上げて応答シ、アドレスレジスタ15
のアドレスを+1する動作を反復することにより、指定
のデータの読出しを行なう。読出し動作の終了はDIR
54からのトランスファストップ信号による。
しかしながら、以上の従来の制御方式によれば、あるル
コードにアクセスしようとすると、該レコードを含むト
ラックがトラックバッファ14に保持されでいても、D
ASD55にアクセスする場合と同様、前述したように
第Oレコードから順番に識別情報を読み出して、レコー
ド長を認識した上でレコードをたどって順次目的のレコ
ードまでサーチしなければならないため、目的のレコー
ドに到達できないので、アクセス時間をより短縮するK
は限界があるという問題がある。
コードにアクセスしようとすると、該レコードを含むト
ラックがトラックバッファ14に保持されでいても、D
ASD55にアクセスする場合と同様、前述したように
第Oレコードから順番に識別情報を読み出して、レコー
ド長を認識した上でレコードをたどって順次目的のレコ
ードまでサーチしなければならないため、目的のレコー
ドに到達できないので、アクセス時間をより短縮するK
は限界があるという問題がある。
本発明は、バッファ上のデータの検索が単純化されアク
セス時間を著しく短縮することの可能なバッファ制御方
式を提供することを目的とする。
セス時間を著しく短縮することの可能なバッファ制御方
式を提供することを目的とする。
第1図(a) 、 (b)の発明の原理説明図に示すと
おり、本発明は、所定長の識別情報部101とこの識別
情報部に続くデータ部102とを有するレコードデータ
をディスクキャッシュ装置のバッファに保持し、読み出
し指令されたレコードデータをこのバッファから読み出
すようKし九ものである。そして、レコードデータの書
込み時には、手順501 K示すとおりバッファ上の識
別情報部101とデータ部102とを区別する付加情報
103を予じめ決められた位置に付す。レコードデータ
の読み出し時には、手順502のように、)ラック先1
ffKおけるレコードの識別情報部101のアドレスを
求める。その後、手順503のように、読み出し指令さ
れたレコードの順位に対応した回数だけ、付加情報の付
されたアドレスを原次サーチする。最後に手順504の
ように、対応回数時に求められたアドレスに基づいて、
読み出し指令されたレコードのデータを検索する。
おり、本発明は、所定長の識別情報部101とこの識別
情報部に続くデータ部102とを有するレコードデータ
をディスクキャッシュ装置のバッファに保持し、読み出
し指令されたレコードデータをこのバッファから読み出
すようKし九ものである。そして、レコードデータの書
込み時には、手順501 K示すとおりバッファ上の識
別情報部101とデータ部102とを区別する付加情報
103を予じめ決められた位置に付す。レコードデータ
の読み出し時には、手順502のように、)ラック先1
ffKおけるレコードの識別情報部101のアドレスを
求める。その後、手順503のように、読み出し指令さ
れたレコードの順位に対応した回数だけ、付加情報の付
されたアドレスを原次サーチする。最後に手順504の
ように、対応回数時に求められたアドレスに基づいて、
読み出し指令されたレコードのデータを検索する。
ディスク上の各レコードデータをディスク中ヤッシュ装
置のバッファに書き込む際に、レコードデータの識別情
報部101とデータ部102とKそれらを区別する付加
情報103を予じめ決められた位置に付して記憶する0
読み出しにあたっては、読み出し指令に係るm番目の職
別情報部101のアドレスがネオるまで、m回だけ付加
情報103を順次にサーチし、m回目に求められた付加
情報のアドレスに基づいて、読み出し指令のあったレコ
ードデータを貌み出す。このように予じめ決められた位
置に付加情報が記録されているため、従来のように、読
み出し指令されてい危いレコードの識別情報部からその
キー長あるいはデータ長を読み出して、いちいち次のレ
コードの識別情報部のアドレスを求めるといった手順を
取る必要がなく、順次付加情報をサーチするのみで目的
のレコードに到達出来、バッファ上のデータの検索が迅
速化される。
置のバッファに書き込む際に、レコードデータの識別情
報部101とデータ部102とKそれらを区別する付加
情報103を予じめ決められた位置に付して記憶する0
読み出しにあたっては、読み出し指令に係るm番目の職
別情報部101のアドレスがネオるまで、m回だけ付加
情報103を順次にサーチし、m回目に求められた付加
情報のアドレスに基づいて、読み出し指令のあったレコ
ードデータを貌み出す。このように予じめ決められた位
置に付加情報が記録されているため、従来のように、読
み出し指令されてい危いレコードの識別情報部からその
キー長あるいはデータ長を読み出して、いちいち次のレ
コードの識別情報部のアドレスを求めるといった手順を
取る必要がなく、順次付加情報をサーチするのみで目的
のレコードに到達出来、バッファ上のデータの検索が迅
速化される。
第2図〜第6図により本発明の詳細な説明する〇
(1) 実施例の構成
第2図は本発明の一実施例によるディスク中ヤッシ島装
置(DCF)1の構成例であシ、このDCFlは、第7
図に示すDCF56と同様にDIR54およびDASD
55と接続されるものである。DIR54からステージ
ングの指定があったときには、DCFlの主制御部25
は、トラックバッファ20の1トラック分の空き領域を
従来のDCF56とほぼ同様に図示されないLRUテー
ブルをサーチすることKよシ確保しその先頭アドレスを
アドレスレジスタ15にセットするようになっている。
置(DCF)1の構成例であシ、このDCFlは、第7
図に示すDCF56と同様にDIR54およびDASD
55と接続されるものである。DIR54からステージ
ングの指定があったときには、DCFlの主制御部25
は、トラックバッファ20の1トラック分の空き領域を
従来のDCF56とほぼ同様に図示されないLRUテー
ブルをサーチすることKよシ確保しその先頭アドレスを
アドレスレジスタ15にセットするようになっている。
また転送制御部26は、信号線11によりDIR54か
らデータ(コマンドを含む)を送出する旨のデータアウ
ト信号を受信したとき主制御部25を介し、データバス
10のデータをマルチプレクサ17を介してパスレジス
タ18に転送し、その旨を信号線12によって応答する
。例えばステージングのデータである場合、党別情報部
とデータ部とをlバイトづつ順次に受取るとともにトラ
ックバッファ20に対しデータ書込みが行なわれる。こ
のため、パスレジスタ18に一旦記憶された様別情報部
とデータ部のデータは、アドレスレジスタ15で指定さ
れるトラックバッファ20のアドレスより始まる記憶領
域に1マルチプレクサ28 、29 。
らデータ(コマンドを含む)を送出する旨のデータアウ
ト信号を受信したとき主制御部25を介し、データバス
10のデータをマルチプレクサ17を介してパスレジス
タ18に転送し、その旨を信号線12によって応答する
。例えばステージングのデータである場合、党別情報部
とデータ部とをlバイトづつ順次に受取るとともにトラ
ックバッファ20に対しデータ書込みが行なわれる。こ
のため、パスレジスタ18に一旦記憶された様別情報部
とデータ部のデータは、アドレスレジスタ15で指定さ
れるトラックバッファ20のアドレスより始まる記憶領
域に1マルチプレクサ28 、29 。
トランク77パツ7ア30を介してレコード項に書込ま
れるようになっている。寸た、このとき、トラックバッ
ファ20に書込まれる識別情報部とデータ部には、これ
らのデータを互いに識別するためのタグが付されるよう
Kなっており、このタグはデコーダ27.転送制御部2
6を介して主制御部25で識別される。そして、識別情
報部には付加情報「1」を、データ部には付加情報「0
」をそれぞれ付して識別できるようにしている。
れるようになっている。寸た、このとき、トラックバッ
ファ20に書込まれる識別情報部とデータ部には、これ
らのデータを互いに識別するためのタグが付されるよう
Kなっており、このタグはデコーダ27.転送制御部2
6を介して主制御部25で識別される。そして、識別情
報部には付加情報「1」を、データ部には付加情報「0
」をそれぞれ付して識別できるようにしている。
一方、トラックバッファ20からの読出しのときには、
アクセスのあったトラックに対応するトラックバッファ
20のアドレスを求め、さらにトラックバッファ20を
サーチして付加情報「1」のアドレスを求めることKよ
り各レコードの識別情報部の先端アドレスあるいはこれ
に基づき各レコードのデータ部の先頭アドレスを求め、
これをアドレスレジスタ15に設定した後、トラックバ
ッファ20からマルチプレクサ28,29.)ランスフ
ァパッファ30.マルチプレクサ31.17゜パスレジ
スタ18.ドライバ32を介して所望のデータをDIR
54へ伝送するようになっている。
アクセスのあったトラックに対応するトラックバッファ
20のアドレスを求め、さらにトラックバッファ20を
サーチして付加情報「1」のアドレスを求めることKよ
り各レコードの識別情報部の先端アドレスあるいはこれ
に基づき各レコードのデータ部の先頭アドレスを求め、
これをアドレスレジスタ15に設定した後、トラックバ
ッファ20からマルチプレクサ28,29.)ランスフ
ァパッファ30.マルチプレクサ31.17゜パスレジ
スタ18.ドライバ32を介して所望のデータをDIR
54へ伝送するようになっている。
なお、読出し時には転送制御回路26は読出しである旨
の職別(R)をトラックバッファ20に対し出力するよ
うになっている。
の職別(R)をトラックバッファ20に対し出力するよ
うになっている。
(II) 実施例のデータフォーマット第3図(a)
はDASD55上のデータフォーマット。
はDASD55上のデータフォーマット。
第3図(b)はトラックバッファ20上のデータフォー
マットを示している。第3図(a) 、 (b)におい
て、先頭の識別情報部HAは28バイトのエリアをもっ
ている。また、第3図(a)においてCは識別情報部、
Dはデータ部のデータ、Kはデータ部のキーを意味する
。各レコードの識別情報部Cも28バイトのエリアをも
っている。これらの識別情報部C,デデ一部のデータD
、データ部のキーには、!3図(b)に示すDCF’l
ノデータ7f wツ)上f識別情報部Rn−C,R
n−D、Rn −K K対応している。
マットを示している。第3図(a) 、 (b)におい
て、先頭の識別情報部HAは28バイトのエリアをもっ
ている。また、第3図(a)においてCは識別情報部、
Dはデータ部のデータ、Kはデータ部のキーを意味する
。各レコードの識別情報部Cも28バイトのエリアをも
っている。これらの識別情報部C,デデ一部のデータD
、データ部のキーには、!3図(b)に示すDCF’l
ノデータ7f wツ)上f識別情報部Rn−C,R
n−D、Rn −K K対応している。
(2)実施例の動作
このような構成のDCFIのバッファ制御方式の動作を
第4図および第5図のフローチャートを用いて説明する
。第4図はステージング時の処理流れを示すフローチャ
ート、第5図は読出し時の処理流れを示すフローチャー
トである。
第4図および第5図のフローチャートを用いて説明する
。第4図はステージング時の処理流れを示すフローチャ
ート、第5図は読出し時の処理流れを示すフローチャー
トである。
(III−■) ステージング動作
第4図においてステップ81〜S9は、ステージング開
始処理、ステップSIO〜S14 、815〜S18は
ステージング処理を示す0このステージング処理は、指
定のトラックがトラックバッファ四にステージングされ
ていないとき(ヒツトの状態でないとき)になされる。
始処理、ステップSIO〜S14 、815〜S18は
ステージング処理を示す0このステージング処理は、指
定のトラックがトラックバッファ四にステージングされ
ていないとき(ヒツトの状態でないとき)になされる。
ステップS1では、転送制御回路26の図示されないデ
コーダによりパス11よりのデータアウト信号がコマン
ドを送出する旨のデータであるコマンドゲートが1であ
るかを調べ、コマンドゲートの到来によりステップ82
に進む。ステップS2ではこのコマンドゲート信号と同
期して送出されるデータバス10のデータをレシーバ3
3およびマルチプレクサ17を介してパスレジスタ18
に受信セットされる。ステップS3では転送制御回路2
6によって主制御部25にコマンドを受領した事を割込
みにより通知する。ステップS4では、この割込みKよ
り通知を受けた主制御部25はパスレジスタ18のデー
タを取込み解析し、コマンド応答情報を転送制御回路2
6に送る。ステップS5では、パス12上に送出するデ
ータイン信号のコマンドバリッドをセットする。ステッ
プS6では、ドライバ34を介してコマンドバリッドを
示すデータイン信号をパス12からDIR54に応答す
る。
コーダによりパス11よりのデータアウト信号がコマン
ドを送出する旨のデータであるコマンドゲートが1であ
るかを調べ、コマンドゲートの到来によりステップ82
に進む。ステップS2ではこのコマンドゲート信号と同
期して送出されるデータバス10のデータをレシーバ3
3およびマルチプレクサ17を介してパスレジスタ18
に受信セットされる。ステップS3では転送制御回路2
6によって主制御部25にコマンドを受領した事を割込
みにより通知する。ステップS4では、この割込みKよ
り通知を受けた主制御部25はパスレジスタ18のデー
タを取込み解析し、コマンド応答情報を転送制御回路2
6に送る。ステップS5では、パス12上に送出するデ
ータイン信号のコマンドバリッドをセットする。ステッ
プS6では、ドライバ34を介してコマンドバリッドを
示すデータイン信号をパス12からDIR54に応答す
る。
ステップ87に進むと、主制御部25はトラックバッフ
ァ20に1トラック分の空き領域を求める。これは、ト
ラックバッファ20上の使用状況を表すLRUテーブル
を主制御部25内に設け、このテーブルをサーチして空
き領域を求める。また、トラックバッファ20の全領域
が使用されると、最も古いデータを消去し、その領域が
未使用となるよう上記テーブルを書き換えておく0この
場合、最も古いデータとは、いったんステージングされ
た後にヒツトされていないデータの中で最も古いデータ
を指し、ステージングの後にいったんヒツトされたデー
タは、ステージングされた順位は古くても新しいデータ
であるとしてデータの新旧の順位を書き換える。これも
主制御部25内のテーブルにて行なうことができる。
ァ20に1トラック分の空き領域を求める。これは、ト
ラックバッファ20上の使用状況を表すLRUテーブル
を主制御部25内に設け、このテーブルをサーチして空
き領域を求める。また、トラックバッファ20の全領域
が使用されると、最も古いデータを消去し、その領域が
未使用となるよう上記テーブルを書き換えておく0この
場合、最も古いデータとは、いったんステージングされ
た後にヒツトされていないデータの中で最も古いデータ
を指し、ステージングの後にいったんヒツトされたデー
タは、ステージングされた順位は古くても新しいデータ
であるとしてデータの新旧の順位を書き換える。これも
主制御部25内のテーブルにて行なうことができる。
ステップS8では、転送するブロック先頭アドレスをア
ドレスレジスタ15にセットする。さらにステップS9
では、転送制御回路26にステージング処理である旨の
傾11(W)をセットする。
ドレスレジスタ15にセットする。さらにステップS9
では、転送制御回路26にステージング処理である旨の
傾11(W)をセットする。
次いでステップS10では、ステージタグがX80(C
,に、Dフィールド)であるか否かを調べ、X80のと
きには、パスレジスタ18からのデータは先頭識別情報
部あるいは各レコードの識別情報部のデータとして認識
され、このデータに付加情報rlJを付してトラックバ
ッファ20に書込むためステップSll〜S14に進む
。一方、ステップS10においてステージタグがX80
でなくX81(キー)あるいはX82(データ)のとき
には、パスレジスタ18からのデータは各レコードのデ
ータ部のデータあるいはキーとして認識され、このデー
タに付加情報「0」を付してトラックバッファ加に書込
むためステップ815〜818に進む。
,に、Dフィールド)であるか否かを調べ、X80のと
きには、パスレジスタ18からのデータは先頭識別情報
部あるいは各レコードの識別情報部のデータとして認識
され、このデータに付加情報rlJを付してトラックバ
ッファ20に書込むためステップSll〜S14に進む
。一方、ステップS10においてステージタグがX80
でなくX81(キー)あるいはX82(データ)のとき
には、パスレジスタ18からのデータは各レコードのデ
ータ部のデータあるいはキーとして認識され、このデー
タに付加情報「0」を付してトラックバッファ加に書込
むためステップ815〜818に進む。
す表わちステップSIQでX80のときKはステップS
llに進み、バイトカウンタをセットし、ステップS1
2に進む。ステップS12において、パスレジスタ18
からトランス7アバツフア30に送られてくるデータが
4パイ)Kなったか否かを判定し、トランスバッファ3
0のデータが4バイトになるとステップS13に進み、
識別情報部の4バイトデータに付加情報1を付してトラ
ックバッファ20に書込む。次いでステップS14では
バイトカウンタが0になったか否かを調べ、Oになった
ときに書込みが終了したと判断する。
llに進み、バイトカウンタをセットし、ステップS1
2に進む。ステップS12において、パスレジスタ18
からトランス7アバツフア30に送られてくるデータが
4パイ)Kなったか否かを判定し、トランスバッファ3
0のデータが4バイトになるとステップS13に進み、
識別情報部の4バイトデータに付加情報1を付してトラ
ックバッファ20に書込む。次いでステップS14では
バイトカウンタが0になったか否かを調べ、Oになった
ときに書込みが終了したと判断する。
一方、ステップSIOでX81あるいはX82のときに
はステップS15に進み、バイトカウンタをセットシ、
ステップS16に進む。ステップ816において、ステ
ップS12のようにトランスバッファ30に送られたデ
ータが4バイトに々るとステップS17に進み、データ
部の4バイトデータに付加情報0を付してトラックバッ
ファ20に書込む。次いでステップ818ではバイトカ
ウンタが0になったか否かを調べ、Oになったときに書
込みが終了したと判断する。
はステップS15に進み、バイトカウンタをセットシ、
ステップS16に進む。ステップ816において、ステ
ップS12のようにトランスバッファ30に送られたデ
ータが4バイトに々るとステップS17に進み、データ
部の4バイトデータに付加情報0を付してトラックバッ
ファ20に書込む。次いでステップ818ではバイトカ
ウンタが0になったか否かを調べ、Oになったときに書
込みが終了したと判断する。
このようにしてトラックバッファ20には、第6図に示
すようにデータと付加情報とが書込まれる。第6図にお
いて付加情報が1となっているデータが識別情報部を意
味し、付加情報が0となっているデータがデータ部を意
味している。
すようにデータと付加情報とが書込まれる。第6図にお
いて付加情報が1となっているデータが識別情報部を意
味し、付加情報が0となっているデータがデータ部を意
味している。
即ち、トラックバッファ20は第6図に示すように、メ
モリをブロック分割し、各ブロックの先頭に付加情報を
付加するように構成したものである0 従って、トラックバッファ20のサーチは後述するよう
に予じめ決められたメモリ内のブロックの先頭のみを順
次アドレス切替えしてサーチすることによってデータ部
とこの他の部分を高速に区別することが可能となってい
る。
モリをブロック分割し、各ブロックの先頭に付加情報を
付加するように構成したものである0 従って、トラックバッファ20のサーチは後述するよう
に予じめ決められたメモリ内のブロックの先頭のみを順
次アドレス切替えしてサーチすることによってデータ部
とこの他の部分を高速に区別することが可能となってい
る。
(■−■) ヒツト動作
次に1ヒツトと事前に判断されたときKは、第5図の読
出し処理を行なう。@5図においてトラックバッファ2
0に書込まれたデータを読出すときKは、ステップS2
0−825 において書込み時のステップ81〜S6と
同様の処理を行ない、次いでステップ826に進む。
出し処理を行なう。@5図においてトラックバッファ2
0に書込まれたデータを読出すときKは、ステップS2
0−825 において書込み時のステップ81〜S6と
同様の処理を行ない、次いでステップ826に進む。
ステップS26ではアクセスのあったトラックに対応す
るトラックバッファ20のアドレス(ブロックアドレス
)を主制御部25内に設けられたバッジステーブルから
求める。次いでステップS27では、コマンドがトラッ
ク先頭の識別情報部HAあるいはt40レコードの識別
情報部Re−Cの読出し要求であると判断されたときに
ステップ828 K進む。f410図にて押1明したよ
うにこれらの識別情報部は固定長、例えば28バイトで
あるから、ステップ826でブロックアドレスを求めれ
ば、このアドレスに28バイト加算することによか、転
送開始アドレスが求まる。
るトラックバッファ20のアドレス(ブロックアドレス
)を主制御部25内に設けられたバッジステーブルから
求める。次いでステップS27では、コマンドがトラッ
ク先頭の識別情報部HAあるいはt40レコードの識別
情報部Re−Cの読出し要求であると判断されたときに
ステップ828 K進む。f410図にて押1明したよ
うにこれらの識別情報部は固定長、例えば28バイトで
あるから、ステップ826でブロックアドレスを求めれ
ば、このアドレスに28バイト加算することによか、転
送開始アドレスが求まる。
一方、ステップS27においてコマンドがトラック先頭
の識別情報部HAあるいは第0レコードの識別情報部R
e −Cの読出し要求でないときには、ステップ829
に進み、さらにコマンドが第ルコードの職別情報部R,
−C〜第nレコードの識別情報部Rn−Cのいずれかの
読出し要求であるか否かを判断する。第ルコードの識別
情報部R,−C〜f’ltnレコードの識別情報部Rn
−Cのいずれかの読出し要求のときには、ステップ83
0において、トラックバッファ20をサーチして付加情
@1のアドレスを求める。す々わち、ステップ828で
求め±第0レコード釦おける識別情報部Ro−Cのアド
レスに基づいて、トラックバッフ720上のサーチ開始
アドレスYを、 Y=R6−C+28/4 (1)か
ら求める。そして、このアドレスYからサーチを開始し
、付加情報1のアドレスを求める。次いでステ、プS3
1では、コマンドにより指示された第m番目のレコード
の識別情報部のアドレスであるか否かを調べる。第mレ
コードの識別情報部でないときにはステップS32に進
み、上述の(1)式と同じ様にして求めたサーチ開始ア
ドレスからトラックバッファ20を再びサーチして付加
情報1のアドレスを求め、ステップ832において第m
レコードの識別情報部と判断されたときにステップ83
5 K進む0このとき求められた付加情報1のアドレス
は主制御部250所定の領斌に記憶しておく。
の識別情報部HAあるいは第0レコードの識別情報部R
e −Cの読出し要求でないときには、ステップ829
に進み、さらにコマンドが第ルコードの職別情報部R,
−C〜第nレコードの識別情報部Rn−Cのいずれかの
読出し要求であるか否かを判断する。第ルコードの識別
情報部R,−C〜f’ltnレコードの識別情報部Rn
−Cのいずれかの読出し要求のときには、ステップ83
0において、トラックバッファ20をサーチして付加情
@1のアドレスを求める。す々わち、ステップ828で
求め±第0レコード釦おける識別情報部Ro−Cのアド
レスに基づいて、トラックバッフ720上のサーチ開始
アドレスYを、 Y=R6−C+28/4 (1)か
ら求める。そして、このアドレスYからサーチを開始し
、付加情報1のアドレスを求める。次いでステ、プS3
1では、コマンドにより指示された第m番目のレコード
の識別情報部のアドレスであるか否かを調べる。第mレ
コードの識別情報部でないときにはステップS32に進
み、上述の(1)式と同じ様にして求めたサーチ開始ア
ドレスからトラックバッファ20を再びサーチして付加
情報1のアドレスを求め、ステップ832において第m
レコードの識別情報部と判断されたときにステップ83
5 K進む0このとき求められた付加情報1のアドレス
は主制御部250所定の領斌に記憶しておく。
また、ステップS29において、コマンドが第nレコー
ドの職別情報部Rn−Cの読出し要求でもないときKは
データ部のキーまたはデータの読出し要求であるのでス
テップS33に進み、先にステ。
ドの職別情報部Rn−Cの読出し要求でもないときKは
データ部のキーまたはデータの読出し要求であるのでス
テップS33に進み、先にステ。
プ832で求めて記憶しておいたアドレスに、オフセッ
ト値、すなわち、第10図のフ2グF、シリンダヘッド
アドレスCClヘッドアドレスHH。
ト値、すなわち、第10図のフ2グF、シリンダヘッド
アドレスCClヘッドアドレスHH。
レコードRをそれぞれ加算した値を加え、これKよシキ
ーのアドレスを求めてキー長KLをトラックバッファ2
0かも読出し、ステップ834において、読出した中−
長KLからキーエリア/データエリアの先頭アドレスを
求めステップ835に進む。
ーのアドレスを求めてキー長KLをトラックバッファ2
0かも読出し、ステップ834において、読出した中−
長KLからキーエリア/データエリアの先頭アドレスを
求めステップ835に進む。
ステップ835ではステップ828.ステップS32゜
あるいはステップ834で求めたアドレスをアドレスレ
ジスタ15にセットし、転送制御回路26を駆動しステ
ップS36において転送モードを上げ、ステップ837
でバイトカウントをセットし、次いでステップ838に
おいてトラックバッファ20よりデータを読出し、マル
チプレクサ28,29. トラククバッ7730.マル
チプレクサ31.マルチプレクサ17.バスレジスタ1
8.ドライバ32を通してデータバスlOからD4R5
4へ転送する。
あるいはステップ834で求めたアドレスをアドレスレ
ジスタ15にセットし、転送制御回路26を駆動しステ
ップS36において転送モードを上げ、ステップ837
でバイトカウントをセットし、次いでステップ838に
おいてトラックバッファ20よりデータを読出し、マル
チプレクサ28,29. トラククバッ7730.マル
チプレクサ31.マルチプレクサ17.バスレジスタ1
8.ドライバ32を通してデータバスlOからD4R5
4へ転送する。
以上のように1読み出し指令されたレコードの順位に対
応した回数だけ付加情報1のアドレスを求めれば目的の
レコードを検索できるので、ヒツト時にDCF 1から
レコードデータを読み出すにあたり、従来のように各レ
コードのキー長やデータ長をいちいち読み取って屓々〈
目的のレコードを検索する場合に比べて検索時間が短縮
できる。
応した回数だけ付加情報1のアドレスを求めれば目的の
レコードを検索できるので、ヒツト時にDCF 1から
レコードデータを読み出すにあたり、従来のように各レ
コードのキー長やデータ長をいちいち読み取って屓々〈
目的のレコードを検索する場合に比べて検索時間が短縮
できる。
なお、本発明は磁気ディスク記憶装置に限らず光デイス
ク記憶装置等、他のディスク型記憶装置に適用できる。
ク記憶装置等、他のディスク型記憶装置に適用できる。
以上に説明したように本発明によれば、バッファ上のデ
ータに付加情報を付し、この付加情報に基づいてデータ
の検索を行なうよう圧しているので、バッファ上のデー
タの検索が単純化されアクセス時間を著しく短縮し計算
機システムの処理効率を改善することができる。
ータに付加情報を付し、この付加情報に基づいてデータ
の検索を行なうよう圧しているので、バッファ上のデー
タの検索が単純化されアクセス時間を著しく短縮し計算
機システムの処理効率を改善することができる。
第1図は発明の原理図である。
第2図は本発明の一実施例によるディスクキャッシュ装
置の構成図、第3図(a) 、 (b)はそれぞれディ
スク上のデータフォーマット、トラックメモリ上のデー
タフォーマットを示す図、第4図はステージング時の処
理流れを示すフローチャート、第5図は読出し時の処理
流れを示す7a−チャート、第6図はトラックバッファ
に書き込まれた付加情報およびデータを示す図、第7図
は計1を機システムの一構成側のブロック図、@8図は
従来のディスクキャッシュ装置の一構成図のブロック図
、第9図は従来のトラックバッファの記憶配置説明図、
第1O図は識別情報部の説明図である。 1 : DCF’ 。 20ニドラツクバツフア。 25:主制御部。 26:転送制御回路。 101:識別情報部。 102:デー2部。 103 :付加情報。
置の構成図、第3図(a) 、 (b)はそれぞれディ
スク上のデータフォーマット、トラックメモリ上のデー
タフォーマットを示す図、第4図はステージング時の処
理流れを示すフローチャート、第5図は読出し時の処理
流れを示す7a−チャート、第6図はトラックバッファ
に書き込まれた付加情報およびデータを示す図、第7図
は計1を機システムの一構成側のブロック図、@8図は
従来のディスクキャッシュ装置の一構成図のブロック図
、第9図は従来のトラックバッファの記憶配置説明図、
第1O図は識別情報部の説明図である。 1 : DCF’ 。 20ニドラツクバツフア。 25:主制御部。 26:転送制御回路。 101:識別情報部。 102:デー2部。 103 :付加情報。
Claims (1)
- 【特許請求の範囲】 所定長の識別情報部(101)とこの識別情報部(10
1)に続くデータ部(102)とを有するレコードデー
タをディスクキャッシュ装置のバッファに保持し、読み
出し指令されたレコードデータをこのバッファから読み
出すようにしたバッファ制御方式において、 レコードデータの書込み時には、前記バッファ上で識別
情報部(101)とデータ部(102)とを区別する付
加情報(103)を付し、 レコードデータの読み出し時には、トラック先頭におけ
るレコードの識別情報部(101)を検索した後、読み
出し指令されたレコードの順位に対応した回数だけいず
れかの付加情報(103)の付されたアドレスを順次に
求め、読み出し指令されたレコードのデータを検索する
ことを特徴とするバッファ制御方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62294621A JPH01134643A (ja) | 1987-11-20 | 1987-11-20 | バッファ制御方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62294621A JPH01134643A (ja) | 1987-11-20 | 1987-11-20 | バッファ制御方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH01134643A true JPH01134643A (ja) | 1989-05-26 |
Family
ID=17810127
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP62294621A Pending JPH01134643A (ja) | 1987-11-20 | 1987-11-20 | バッファ制御方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH01134643A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003531719A (ja) * | 2000-04-07 | 2003-10-28 | ソリステイツク | 紙封筒とプラスチック封筒とを弁別するための音響的方法 |
-
1987
- 1987-11-20 JP JP62294621A patent/JPH01134643A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003531719A (ja) * | 2000-04-07 | 2003-10-28 | ソリステイツク | 紙封筒とプラスチック封筒とを弁別するための音響的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3183993B2 (ja) | ディスク制御システム | |
US20050033930A1 (en) | High-speed snapshot method | |
US5860088A (en) | Method for extraction of a variable length record from fixed length sectors on a disk drive | |
JPH01134643A (ja) | バッファ制御方式 | |
JP4439798B2 (ja) | ディスクアレイ装置の制御方法、及びディスクアレイ装置 | |
JPS6184753A (ja) | バツフアメモリ | |
JPH0525359B2 (ja) | ||
JP2531538B2 (ja) | キャッシュメモリデ―タ書き戻し方法及びディスクキャッシュ制御装置 | |
JPS60163147A (ja) | リプレ−スメント方式 | |
JP2501353B2 (ja) | プリフェッチ制御方式 | |
JPS62271029A (ja) | デイスクキヤツシユ制御方式 | |
JP2580998B2 (ja) | 記憶制御装置 | |
JPS59125463A (ja) | 外部記憶制御方式 | |
JPS6331808B2 (ja) | ||
JPH09128158A (ja) | 記憶装置へのアクセス処理方式 | |
JPH01255028A (ja) | 外部記憶装置のアクセス方法 | |
JPH02259945A (ja) | ストア処理方式 | |
JPS63120349A (ja) | フアイル多重制御方式 | |
JPH04308917A (ja) | キャッシュ付きディスク制御装置 | |
JPS59195753A (ja) | デイスク・キヤツシユメモリの制御方式 | |
JPS63291145A (ja) | ファイル管理方法 | |
JPS5928288A (ja) | バツフアメモリ制御回路 | |
JPH0444295B2 (ja) | ||
JPH06290000A (ja) | ディスクコントローラ | |
JPH10198525A (ja) | 外部記憶装置のデータ出力方法 |