JP2580998B2 - 記憶制御装置 - Google Patents
記憶制御装置Info
- Publication number
- JP2580998B2 JP2580998B2 JP6088223A JP8822394A JP2580998B2 JP 2580998 B2 JP2580998 B2 JP 2580998B2 JP 6088223 A JP6088223 A JP 6088223A JP 8822394 A JP8822394 A JP 8822394A JP 2580998 B2 JP2580998 B2 JP 2580998B2
- Authority
- JP
- Japan
- Prior art keywords
- record
- format information
- data
- storage
- storage device
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Description
に可変長形式のデータを扱う上位装置と固定長形式のデ
ータを扱う記憶装置の間に設けられ、可変長形式のデー
タと固定長形式のデータとを相互に変換する記憶制御装
置に関する。
レコード(以下単に「レコード」という)がアクセスの
単位となる。固定長形式の記憶装置では、固定長のセク
タがアクセスの単位となる。このため、各レコードが格
納されているセクタ番号を特定する手段を設ける必要が
ある。
このような手段が設けられた記憶制御装置の一例が開示
されている。この公報のシステムでは、複数のレコード
がトラックを構成し、複数のトラックがシリンダを構成
する。各レコードは、カウント部C、キー部K、および
データ部Dの3つのフィールドを有するCKD形式であ
る。各レコードのキー部Kおよびデータ部Dは、記憶装
置の連続したブロック(セクタに対応する)に、分離さ
れることなく、格納される。
・ロケータ・テーブル(record locator
table)が設けられる。このテーブルには、各シ
リンダの物理アドレスが格納される(同公報第6欄第6
6行目参照)。また、レコード・ロケータ・テーブルに
は、各レコードのキー長およびデータ長も格納される。
置の各シリンダの先頭に記憶される。また、同じレコー
ド・ロケータ・テーブルは、高速アクセス可能なキャッ
シュにも記憶される。なお、レコード・ロケータ・テー
ブルの内容は、データ圧縮されている。小容量のキャッ
シュに格納するためである。
の物理アドレス(以下単に「所望のレコードの物理アド
レス」という)を求めるには、次の手順を実行する。
ら、所望のレコードが含まれるシリンダの物理アドレス
を読み出す。
コードが格納されているセクタまでのセクタ数を求め
る。この処理は、所望のレコードよりも前に配置されて
いるレコードが占有するセクタ数の総和を求めればよ
い。個々のレコードが占有するセクタ数は、このレコー
ドのキー長とデータ長とから計算する。各レコードのキ
ー長およびデータ長は、レコード・ロケータ・テーブル
に格納されている。
ード・ロケータ・テーブルの内容から、所望のレコード
が格納されているブロックの物理アドレスを求めること
ができる。
のような問題点がある。
求めるのに時間がかかるという問題点があった。すなわ
ち、所望のレコードの物理アドレスを求めるには、この
レコード以前のレコードのキー長およびデータ長を累算
しなくてはならない。
内容がデータ圧縮されているので、このデータを伸長す
る手間がかかる。
タ部Dを、それぞれ独立にアクセスすることができない
という問題点があった。これは、キー部Kとデータ部D
とを分離せずにブロックに書込むことに問題がある。
的は、記憶制御装置の処理を高速化することにある。
と固定長形式のデータとの間の変換を高速に実行する記
憶制御装置を提供することである。
憶されているセクタ番号を高速に求めることができる記
憶制御装置を提供することにある。
を格納するテーブルの内容がデータ圧縮されない記憶制
御装置を提供することにある。
現できる記憶制御装置を提供することにある。
する各部分を独立にアクセスすることができる記憶制御
装置を提供することにある。
コードの、カウント部C、キー部Kおよびデータ部Dを
独立にアクセスすることができる記憶制御装置を提供す
ることにある。
れた記憶制御装置を提供することにある。
め、本願発明の記憶制御装置は、複数のブロックからな
る可変長形式の論理レコードの読出/書込を要求する上
位装置とそれぞれが複数のセクタからなる複数のトラッ
クを有し前記論理レコードの内容を固定長形式で格納す
る記憶装置との間に設けられる記憶制御装置において、
前記論理レコードの複数のブロックの各々をそれぞれ異
なる少なくとも1つの前記セクタに割り当てる制御部
と、前記制御部でのセクタ割当の結果として得られる各
論理レコードの前記記憶装置上の格納アドレスを示すフ
ォーマット情報を保持するメモリと、前記上位装置が前
記論理レコードの書込を要求したときには前記メモリか
ら前記論理レコードに対応する前記フォーマット情報を
読み出しこのフォーマット情報を基に書込開始アドレス
を特定し前記記憶装置の前記書込開始アドレスに対応す
る領域から前記上位装置から送出されるデータを書き込
み、前記上位装置が前記論理レコードの読込を要求した
ときには前記メモリから前記論理レコードに対応する前
記フォーマット情報を読み出しこのフォーマット情報を
基に読出開始アドレスを特定し前記記憶装置の前記読出
開始アドレスに対応する領域からデータを読み出しこの
データを上位装置に送出する前記制御部とを含む。
ーマット情報に含まれる論理レコードのキー部の長さお
よびデータ部の長さから、この論理レコードが記憶装置
内で占有するセクタ数を求める機能を有する。
情報は1トラック毎にフォーマット情報ブロックを構成
し、フォーマット情報ブロックは記憶装置の各トラック
の先頭に格納される。
装置から送出されたデータをCKD形式に変換する機能
を有する。
装置から送出された記憶命令および読出命令の種類を判
定し、命令の種類に応じて記憶開始アドレスおよび読出
開始アドレスを求める機能を有する。
照して説明する。
1は、信号線91を介して上位装置2に接続されてい
る。また、記憶制御装置1は、信号線92を介して記憶
装置3に接続されている。
記憶装置3に対して、データの書込および読出を指示す
る。上位装置2が扱うデータは、可変長形式である。よ
り具体的には、上位装置2はCKD形式のデータを扱
う。CKD形式については、後に詳述する。
た書込命令および読出命令に応答して、データの書込お
よび読出を行う。記憶装置3が扱うデータは固定長形式
である。
れたCKD形式の命令およびデータを、記憶装置3で扱
える固定長形式のデータに変換する。また、記憶制御装
置1は、記憶装置3から送出された固定長形式のデータ
を、CKD形式のデータに変換する。
る。
ックは、ホームアドレスHAと、レコードR1〜Rmと
を含む。
よびデータ部Dとを含む。
ための情報を含む。カウント部Cに含まれる代表的な情
報は、シリンダアドレスCC、トラックヘッダHおよび
レコード番号Rである。これらの値を定めることによ
り、レコードを特定できる。
のキーである。データ部D内の情報は、格納すべきデー
タである。キー部Kおよびデータ部Dの長さは可変であ
る。
記憶装置3に格納する際の、情報の配置方法について説
明する。
ドR1〜Rmが、記憶装置3のNトラックに格納され
る。記憶装置3の各トラックは、96個のセクタを含
む。各セクタは、512バイトの情報を格納する。記憶
装置3の各セクタには、絶対セクタ番号が付与されてい
る。図2では、Nトラックの最初のセクタの絶対セクタ
番号はnである。
(以下「FIB」)に割り当てられる。FIBには、レ
コードR1〜Rmのカウント部Cの情報を合わせたもの
が格納される。セクタn+1は、予備のフォーマット情
報ブロックFIB’に割り当てられる。
ドのキー部Kおよびデータ部Dが、格納される。各キー
部Kおよび各データ部Dには、最低1つのセクタが割り
当てられる。キー部Kおよびデータ部Dが1つのセクタ
に混在して格納されることはない。また、他のデータ部
D同士が1つのセクタに混在して格納されることもな
い。このため、1つのトラックに格納できるレコードの
数は、最大94個である。
ー部R1Kは、セクタn+2に格納される。キー部R1
Kは512バイトに満たない。セクタn+2のうち、情
報が格納されなかったバイトには、0が格納される(パ
ッディングされる)。
分割される。分割されたR1Dは、セクタn+3〜セク
タn+5に格納される。
ド=512バイトの情報である。
納される。より詳細には、最初の2バイトにシリンダア
ドレスCCが格納される。続く1バイトにトラックヘッ
ダHが格納される。トラックヘッダHは、シリンダ内の
トラックを特定するための情報である。
マット情報コード(以下「FIC」)FIC1〜94が
割り当てられる。FICは、各レコードに関する情報を
格納する領域である。FICに格納される情報の詳細は
後述する。各FIC1〜94は、1つのトラックに格納
されるレコードに対応している。1つのトラックに格納
されるレコードの最大数は94である。レコードの数が
94個以下の場合は、いくつかのFICは使用されな
い。
Lおよびデータ長DLとを格納する。
格納されているセクタのうち、先頭のセクタの相対セク
タ番号を示す。トラックの先頭のセクタの絶対セクタ番
号にこの相対セクタ番号を加算すると、このセクタの絶
対セクタ番号が得られる。図2の第Nトラックの場合、
セクタn+2の相対セクタ番号は2である。
ータ長DLは、データ部の長さを示す。
は、対応するトラックの先頭のセクタの絶対セクタ番号
を格納する領域である。図2の第Nトラックの場合、L
BAにはnが格納される。
ない。
説明する。
置1は、制御部14を含む。制御部14は、信号線91
を介して、上位装置2と信号の授受を行う。制御部14
は、信号線92を介して、記憶装置3と信号の授受を行
う。
作成し、バッファメモリ12に格納する。
作成部11が作成したFIBを格納する。図5を参照す
ると、バッファメモリ12には、シリンダ内の各トラッ
クに対応するFIBが連続して格納されている。i番目
のシリンダのj番目のトラックのFIBをFIBijと
記述すると、バッファメモリ12にはFIBijが順に
格納されている。バッファメモリ12に格納されたFI
Bは、信号線93を介して、記憶装置3にも格納され
る。つまり、本実施例では、バッファメモリ12および
記憶装置3の両方に、FIBが格納される。
ダアドレスCC、トラックヘッダHおよびレコード番号
Rを基にして、ワードアドレスA1もしくはA2を計算
する。
ドのFICのワードアドレスである。レコードを指定す
るのは、シリンダアドレスCC、トラックヘッダH、お
よびレコード番号Rである。
クのLABのワードアドレスである。 FIBijが、
図5に示される順序でバッファメモリ12に格納されて
いるとき、ワードアドレスA1およびA2は、図6に示
される計算式で求められる。
説明する。
する。これらの命令は、信号線91を介して記憶制御装
置1に送出される。
動作は、シーク命令、サーチID命令および書込/読出
命令の3つの3つの連続した命令の実行により実現され
る。しかしながら、ここでは簡単のため、これら3つの
命令を合わせて表記する。すなわち、本明細書における
ライト命令は、シーク命令、サーチID命令および書込
命令が合わさったものである。また、本明細書における
リード命令は、シーク命令、サーチID命令および読出
命令が合わさったものである。このため、本明細書中の
ライト命令およびリード命令は、通常のものより多くの
オペランドを有する。
命令およびライトCKD命令の3種類がある。ライトD
命令は、指定されたレコードに、データ部Dのみを書込
む。ライトKD命令は、キー部Kおよびデータ部Dを書
込む。ライトCKD命令は、カウント部C、キー部Kお
よびデータ部Dの全てを書込む。
命令およびリードCKD命令の3種類がある。リードD
命令は、指定されたレコードのデータ部Dのみを読み出
す。リードKD命令は、キー部Kおよびデータ部Dを読
み出す。リードCKD命令は、カウント部C、キー部K
およびデータ部Dを読み出す。
は、オペランドとして、シリンダアドレスCC、トラッ
クヘッダH、レコード番号Rおよびデータ部Dを含む。
書込が行われるレコードは、シリンダアドレスCC、ト
ラックヘッダHおよびレコード番号Rで指定される。シ
リンダアドレスCCは、書込対象レコードが存在するシ
リンダを特定する。トラックヘッダHは、シリンダアド
レスCCが指定するシリンダ内のトラックのうち、書込
対象レコードが存在するものを特定する。レコード番号
Rは、トラックヘッダHが指定するトラック内のレコー
ド内における、書込対象レコードの番号を指定する。
のオペランドには、キー部Kが追加されている。
令のオペランドには、カウント部Cが追加されている。
オペランドは、シリンダアドレスCC、トラックヘッダ
Hおよびレコード番号Rを含む。
明する。
信する。これらの命令は、信号線92を介して、記憶制
御装置1から受信する。
ランドは、絶対セクタ番号AN、セクタ数SNおよびデ
ータ部D’から構成される。絶対セクタ番号ANは、書
込動作を開始すべきセクタの絶対セクタ番号である。
ランドは、絶対セクタ番号ANおよびセクタ数SNを含
む。絶対セクタ番号ANは、読出動作を開始すべきセク
タの絶対セクタ番号である。
の動作について、図面を参照して説明する。
の送出される命令に応じて3種類の動作を実行する。
示を受けた場合の動作について説明する。上位装置2
は、フォーマットの指示とともに、新たに追加されるレ
コードのシリンダアドレスCC、トラックヘッダH、レ
コード番号R、キー長KLおよびデータ長DLを送出す
る。
プ1において、上位装置2から送出されるシリンダアド
レスCC、トラックヘッダH、レコード番号R、キー長
KLおよびデータ長DLを受信する。
ップ1で受信した情報をフォーマット情報作成部11へ
送出する。
フォーマット情報作成部11は、制御部14から送出さ
れた情報を受信する。
部11は、シリンダアドレスCC、トラックヘッダHお
よびレコード番号Rをアドレス計算部13へ送出する。
アドレス計算部13は、これらの情報を基にワードアド
レスA1を計算する。計算されたワードアドレスA1
は、フォーマット情報作成部11へ送出される。
部11は、アドレス計算部13が送出したワードアドレ
スA1を受信する。
部11は、レコード番号Rの大きさを判断する。詳細に
は、レコード番号Rが1より大きいか否かを判定する。
1より大きい場合には、ステップS7が実行される。R
=1の場合は、ステップS5が実行される。
部11は、相対セクタ番号Sに2を設定する。
部11は、ワードアドレスA1で指定されるバッファメ
モリ12のワードに、相対セクタ番号S、キー長KLお
よびデータ長DLを設定する。バッファメモリ12に設
定されたデータは、信号線93を介して記憶装置3にも
送出される。記憶装置3に送出されたデータは、記憶装
置3の対応するセクタに格納される。
部11は、バッファメモリ12の(A1−1)番地のF
ICに格納されている相対セクタ番号S’、キー長K
L’およびデータ長DL’を読み出す。これらは、(R
−1)番目のレコードのものである。
部11は、相対セクタ番号S’、キー長KL’およびデ
ータ長DL’を基にして、新たに追加されるレコードが
格納されるセクタの相対セクタ番号Sを計算する。この
計算を行うには、キー長KL’およびデータ長DL’を
基にして、(R−1)番目のレコードが占有するセクタ
数をSNを求める。相対セクタ番号S’にSNを加算す
れば、追加すべきレコードの相対セクタ番号Sが得られ
る。ステップ8の終了の後、フォーマット情報作成部1
1はステップ6を実行する。
場合の記憶制御装置1の動作について説明する。
制御部14は、上位装置2が送出した命令を入力する。
上位装置2が送出する命令は、ライトCKD命令、ライ
トKD命令およびライトD命令のいずれかである。
アドレスA1およびA2を計算する。より詳細には、制
御部14は、ライト命令に含まれるシリンダアドレスC
C、トラックヘッダHおよびレコード番号Rを、アドレ
ス計算部13に送出する。この後、制御部14はアドレ
ス計算部13が送出するワードアドレスA1およびA2
を受信する。
プ1で受信した命令がライトCKD命令であるか否かを
判定する。ライトCKD命令である場合、ステップ4が
実行される。ライトCKD命令でない場合、ステップ6
が実行される。
アドレスA1で指定されるFICの内容を変更する。こ
の操作は、フォーマット動作の場合と同じ操作で実現で
きる。ただし、シリンダアドレスCC、トラックヘッダ
Hおよびレコード番号Rは、ステップ1で受信した命令
で指定されるものである。また、キー長KLおよびデー
タ長DLは、ステップ1で受信した命令のカウント部C
に含まれているものである。
アドレスA2で指定されるLBAの内容を読み出す。ス
テップ5が終了した後、制御部14はステップ8を実行
する。
アドレスA1およびA2でそれぞれで指定されるFIC
およびLBAの内容を読み出す。目的とするFICおよ
びLBAがバッファメモリ12に存在しないときは、こ
れらを記憶装置3から読み出す。
プ1で受信した命令の種類を判定する。それがライトK
D命令であるとき、ステップ8が実行される。それがラ
イトD命令であるとき、ステップ11が実行される。
およびLBAの内容に応じて、書込むべきレコードの絶
対セクタ番号ASを計算する。この処理は、図10のス
テップ4〜ステップ8と同じ手順で実行できる。このス
テップで計算される絶対セクタ番号ASは、書込まれる
べきレコードのキー部Kの絶対セクタ番号ASである。
れるべきレコードのキー長KLおよびデータ長DLに応
じて、書込まれるセクタ数SNを計算する。キー長KL
およびデータ長DLは、ワードアドレスA1で指定され
るFICに格納されたものである。
装置3にデータの書き込み指示を行う。この際、絶対セ
クタ番号としてASが、セクタ数としてSNが、書込む
べきデータD’としてステップ1で入力した命令のデー
タ部Dが、それぞれ指定される。
CおよびLBAの内容に応じて、書込むべきレコードの
絶対セクタ番号ASを計算する。この処理は、図10の
ステップ4〜ステップ8と同じ手順で実行できる。この
ステップで計算される絶対セクタ番号ASは、書込まれ
るべきレコードのデータ部Dの絶対セクタ番号ASであ
る。
まれるべきレコードのデータ長DLに応じて、書込まれ
るセクタ数SNを計算する。データ長DLは、ワードア
ドレスA1で指定されるFICに格納されたものであ
る。
装置3にデータの書き込み指示を行う。この際、絶対セ
クタ番号としてASが、セクタ数としてSNが、書込む
べきデータD’としてステップ1で入力した命令のデー
タ部Dが、それぞれ指定される。
ードが書込まれるセクタの絶対セクタ番号はバッファメ
モリ12の内容を参照することにより計算される。この
際、各レコードに対してセクタ番号Sが記憶されている
ので、計算は1回の加算で終了する。
場合の記憶制御装置1の動作について説明する。
制御部14は、リード命令を受信する。リード命令に
は、シリンダアドレスCC、トラックヘッダHおよびレ
コード番号Rが含まれている。
プ1で受信したデータを基に、ワードアドレスA1およ
びA2を計算する。このステップの処理は、図11のス
テップ2と同様の手順で実現できる。
アドレスA1およびA2でそれぞれ指定されるFICお
よびLBAの内容を読み出す。目的とするFICおよび
LBAがバッファメモリ12に存在しないときには、こ
れらを記憶装置3から読み出す。
種類を判定する。命令がリードD命令であるとき、ステ
ップ10が実行される。それ以外の場合、ステップ5が
実行される。
プ3で読み出したFICおよびLBAの内容を基にし
て、読み出すべきデータの絶対セクタ番号ASを計算す
る。ASは、読み出すべきレコードのキー部Kが格納さ
れているセクタの絶対セクタ番号である。
すべきレコードのキー長KLおよびデータ長DLから、
読み出すべきセクタ数SNを計算する。
種類を判定する。命令がリードCKD命令のとき、ステ
ップ8が実行される。それ以外の場合、すなわち命令が
リードKD命令のとき、ステップ9が実行される。
アドレスA1で指定されるFICの内容からカウント部
Cの内容を生成する。
置3に読み出し命令を送出する。その際、開始絶対アド
レス番号としてASが、セクタ数としてSNが、それぞ
れ指定される。
ップ3で読み出したFICおよびLBAの内容を基にし
て、読み出すべきデータの絶対セクタ番号ASを計算す
る。ASは、読み出すべきレコードのデータ部Dが格納
されているセクタの絶対セクタ番号である。
出すべきレコードのデータ長DLから、読み出すべきセ
クタ数SNを計算する。
装置3に読み出し命令を送出する。その際、絶対アドレ
ス番号としてASが、セクタ数としてSNが、それぞれ
指定される。
装置3が読み出したデータを上位装置2へ転送する。そ
の際、キー部Kが格納されたセクタの内容を修飾する。
より詳細には、パッディングされたデータ”0”を削除
する。
出し始めるセクタの絶対セクタ番号はバッファメモリ1
2の内容を参照することにより計算される。この際、各
レコードに対してセクタ番号Sが記憶されているので、
計算は1回の加算で終了する。
リ12内にフォーマット情報ブロックFIBを格納す
る。FIBには、各レコードの相対セクタ番号S、キー
長KLおよびデータ長DLが含まれる。制御部14は、
ライト命令およびリード命令を受信した時に、このバッ
ファメモリ12を参照して、レコードが格納されている
セクタの絶対セクタ番号ASを計算する。このため、本
実施例の記憶制御装置は以下の効果を達成する。
の計算が容易かつ高速に行えるということである。すな
わち従来の技術のように、複数のレコードのキー長KL
およびデータ長DLを累算する必要がない。この効果
は、バッファメモリ12に各レコードの相対セクタ番号
Sを保持したために実現された。
がデータ圧縮されないので、バッファメモリ12の内容
を読出/書込するのに手間がかからないということであ
る。この効果は、比較的容量の大きいバッファメモリ1
2にFIBを記憶したことによって実現された。ただ
し、バッファメモリ12はキャッシュではないため、ア
クセススピードは若干遅い。
キー部Kおよびデータ部Dを、それぞれ独立にアクセス
できるというということである。この効果は、キー部K
とデータ部Dとを別個のセクタに記憶したことによって
実現された。
参照して説明する。
装置1は、バッファメモリ12に代わってキャッシュメ
モリ15を有する。制御部14は、キャッシュメモリ1
5を介してFIBの読出/書込を行う。また、アドレス
計算部13は取り除かれている。
説明する。
5は、複数のFIBを保持している。また、FIBに対
応するトラックのシリンダアドレスCCおよびトラック
ヘッダHがタッグとして記憶される。必要とされるFI
Bを格納していないとき、現在格納しているFIBの1
つを記憶装置3に書込む。この後、キャッシュメモリ1
5は記憶装置3から必要なFIBを読み出して格納す
る。
き、制御部14はキャッシュメモリ15に、シリンダア
ドレスCC、トラックヘッダHおよびレコード番号Rを
送出する。シリンダアドレスCCおよびトラックヘッダ
Hで指定されるトラックのFIBを保持しているとき、
キャッシュメモリ15はこのFIBのR番面のFICの
内容を送出する。このトラックのFIBを保持していな
いとき、キャッシュメモリ15は記憶装置3からこのF
IBを読み出す。記憶装置3から目的のFIBを読み出
した後、キャッシュメモリ15は、このFIBのR番目
のFICの内容を送出する。
FIBを書込むとき、制御部14はキャッシュメモリ1
5にシリンダアドレスCC、トラックヘッダH、レコー
ド番号RおよびFICの内容を送出する。シリンダアド
レスCCおよびトラックヘッダHで指定されるトラック
のFIBを保持しているとき、キャッシュメモリ15は
このFIBのR番目のワードに受信したFICの内容を
設定する。このFIBを保持していないとき、キャッシ
ュメモリ15は、記憶装置3からこのFIBを読み出
す。記憶装置3から目的のFIBを読み出した後、キャ
ッシュメモリ15はこのFIBのR番目のワードに受信
したFICの内容を設定する。
って、制御部14は、シリンダアドレスCC、トラック
ヘッダHおよびレコード番号Rによって、目的のレコー
ドのFICを直接アクセスできる。ワードアドレスA1
およびA2の計算は不要である。したがって、アドレス
計算部13は取り除かれた。
いて説明する。
ついては、図9に示されたものと同じである。
時、ステップ1においてフォーマット情報作成部11
は、制御部14から、シリンダアドレスCC、トラック
ヘッダH、レコード番号R、キー長KLおよびデータ長
DLを受信する。
部11は、レコード番号Rの大きさを判定する。レコー
ド番号Rが1のときフォーマット情報作成部11はステ
ップ3を実行する。レコード番号Rが1よりも大きいと
き、フォーマット情報作成部11はステップ4を実行す
る。
部11は、相対セクタ番号Sに2を設定する。ステップ
3終了後、フォーマット情報作成部11はステップ6を
実行する。
部11は、シリンダアドレスCC、トラックヘッダHお
よびレコード番号(R−1)で指定されるFIC’の内
容を、キャッシュメモリ15を介して読込む。
部11は、FIC’に設定されている相対セクタ番号
S’、キー長KL’およびデータ長DL’を基にして、
新たに追加されるレコードの相対セクタ番号Sを計算す
る。ステップ5終了後、フォーマット情報作成部11は
ステップ6を実行する。
部11は、シリンダアドレスCC、トラックヘッダHお
よびレコード番号Rで指定されるFICに、相対セクタ
番号S、キー長KLおよびデータ長DLを設定する。
ド命令を受信した時の記憶制御装置1の動作について説
明する。
示されるものと本質的に同じである。これらの図面に示
される処理との相違点は以下の通りである。
計算は不要である。これは、キャッシュメモリ15がシ
リンダアドレスCC、トラックヘッダHおよびレコード
番号Rによって直接アクセスできるためである。したが
って、図11のステップ2および図12のステップ2
は、取り除かれる。
ッシュメモリ15を介して行われる。FICの内容の読
出/書き込みの際、キャッシュメモリ15には、シリン
ダアドレスCC,トラックヘッダHおよびレコード番号
Rが直接指定される。図11のうちステップ4および6
が、図12のうちステップ3が、それぞれこの変更を受
ける。
ッシュメモリ15を介して行われる。LBAの内容の読
出/書込の際、キャッシュメモリ15には、シリンダア
ドレスCC、トラックヘッダHおよびレコード番号Rが
直接指定される。ただし、LBAを指定するためのレコ
ード番号Rは95である。図11のうちステップ5およ
び6が、図12のうちステップ3が、それぞれこの変更
を受ける。
メモリ12の代わりに、キャッシュメモリ15が設けら
れる。キャッシュメモリ15は、一部のトラックのFI
Bのみを格納する。格納されていないFIBに対してア
クセスがなされたときには、記憶装置3からFIBを読
み出す。このため、第2の実施例では、以下の効果が達
成される。
の計算が容易かつ高速に行えるということである。この
効果は、第1の実施例の場合と同じ理由で達成される。
がデータ圧縮されないので、バッファメモリ12の内容
を読出/書込するのに手間がかからないということであ
る。つまり、キャッシュメモリ15の容量が小さくて
も、FIBの内容を圧縮する必要がない。この効果は、
キャッシュメモリ15に一部のトラックのFIBのみを
格納したことにより達成される。また、キャッシュメモ
リ15はバッファメモリ12よりも高速にアクセスする
ことが可能である。さらに、キャッシュメモリ15は通
常のディスクキャッシュとは別に設けられるので、FI
Bの内容がキャッシュメモリ15から追い出されること
もない。
キー部Kおよびデータ部Dを、それぞれ独立にアクセス
できるというということである。この効果は、第1の実
施例の場合と同じ理由で達成される。
参照して説明する。
装置1は、キャッシュメモリ15と記憶装置3の間にデ
ータ圧縮/伸長部16が設けられる。この他の構成につ
いては、本実施例の構成は第2の実施例のものと同じで
ある。
モリ15から送出されるデータを圧縮して記憶装置3に
送出する。データ圧縮/伸長部16は、記憶装置3から
送出されたデータを伸長してキャッシュメモリ15に送
出する。この結果、キャッシュメモリ15内には、FI
Bが通常のデータとして格納され、記憶装置3には圧縮
されたFIBが格納される。
と記憶装置3の間にデータ圧縮/伸長部16を設けても
同様の効果が得られる。
え、次の第4および第5の効果をも達成する。
FIBのデータ量を減縮できるということである。
るにもかかわらず、制御部14データ伸長を行う必要が
ないということである。これは、データ圧縮/伸長部1
6がキャッシュメモリ15と記憶装置3の間に設けられ
ること、および、制御部14はキャッシュメモリ15を
介してFIBの読出/書込を行うことによって達成され
る。
フォーマット情報ブロックFIBを格納する。FIBに
は、各レコードの相対セクタ番号S、キー長KLおよび
データ長DLが保持する複数のFICが含まれる。制御
部14は、書込命令および読出命令を受信した時に、メ
モリを参照して、レコードが格納されているセクタの絶
対セクタ番号ASを計算する。このため、本実施例の記
憶制御装置は以下の効果を達成する。
長形式のデータの間の変換を高速に行えるということで
ある。この効果はより詳細な2つの効果に還元できる。
この2つの効果とは、絶対セクタ番号の計算が容易かつ
高速に行えるという効果、および、データの伸長を経ず
にメモリの内容を参照できるという効果である。
タのアクセスができるということである。取り扱うデー
タがCKD形式のものであるときは、レコードのカウン
ト部C、キー部Kおよびデータ部Dを、それぞれ独立に
アクセスできるというということがこの効果に相当す
る。
データが固定長形式の記憶装置に格納される場合のレコ
ードとセクタの対応関係を示す図。
図。
図。
作を示す図。
情報作成部11の動作を示す図。
示す図。
示す図。
情報作成部11の動作を示す図。
Claims (9)
- 【請求項1】 複数のブロックからなる可変長形式の論
理レコードの読出/書込を要求する上位装置とそれぞれ
が複数のセクタからなる複数のトラックを有し前記論理
レコードの内容を固定長形式で格納する記憶装置との間
に設けられる記憶制御装置において、前記論理レコードの複数のブロックの各々をそれぞれ異
なる少なくとも1つの前記セクタに割り当てる制御部
と、 前記制御部でのセクタ割当の結果として得られる各論理
レコードの前記記憶装置上の格納 アドレスを示すフォー
マット情報を保持するメモリと、 前記上位装置が前記論理レコードの書込を要求したとき
には前記メモリから前記論理レコードに対応する前記フ
ォーマット情報を読み出しこのフォーマット情報を基に
書込開始アドレスを特定し前記記憶装置の前記書込開始
アドレスに対応する領域から前記上位装置から送出され
るデータを書き込み、前記上位装置が前記論理レコード
の読込を要求したときには前記メモリから前記論理レコ
ードに対応する前記フォーマット情報を読み出しこのフ
ォーマット情報を基に読出開始アドレスを特定し前記記
憶装置の前記読出開始アドレスに対応する領域からデー
タを読み出しこのデータを上位装置に送出する前記制御
部とを含むことを特徴とする記憶制御装置。 - 【請求項2】 前記メモリは前記記憶手段に格納される
論理レコードに対応するフォーマット情報を全て保持す
ることを特徴とする請求項1記載の記憶制御装置。 - 【請求項3】 前記フォーマット情報は前記メモリの他
に前記記憶装置にも格納されることを特徴とした請求項
1記載の記憶制御装置。 - 【請求項4】 前記メモリはキャッシュメモリであり、 このキャッシュメモリは前記記憶装置に格納される論理
レコードに対応するフォーマット情報の一部を保持し前
記制御部が要求するフォーマット情報を保持していない
ときには前記記憶装置からこのフォーマット情報を読み
出して自身に格納することを特徴とする請求項3記載の
記憶制御装置。 - 【請求項5】 前記論理レコードはCKD形式であって
カウント部とキー部とデータ部とを含み、 前記フォーマット情報は対応する前記論理レコードのキ
ー部の長さの情報とデータ部の長さの情報をも含むこと
を特徴とする請求項1記載の記憶制御装置。 - 【請求項6】 前記上位装置が前記論理レコードのデー
タ部のみの書込を要求したときに前記制御部は前記フォ
ーマット情報に含まれる前記記憶装置内における前記論
理レコードのアドレスと前記フォーマット情報に含まれ
る前記論理レコードのキー部の長さとを基にして前記書
込開始アドレスを特定し前記記憶装置の前記書込開始ア
ドレスに対応する領域から前記論理レコードのデータ部
を書き込み、 前記上位装置が前記論理レコードのデータ部のみの読出
を要求したときに前記制御部は前記フォーマット情報に
含まれる前記記憶装置内における前記前記論理レコード
のアドレスと前記フォーマット情報に含まれる前記論理
レコードのキー部の長さとを基にして前記読出開始アド
レスを特定し前記記憶装置の前記読出開始アドレスに対
応する領域からデータ部を読み出すことを特徴とする請
求項5記載の記憶制御装置。 - 【請求項7】 前記上位装置から送出された情報を基に
前記メモリおよび前記記憶装置の少なくとも一方に前記
フォーマット情報を作成するフォーマット情報作成部を
含むことを特徴とする請求項1記載の記憶制御装置。 - 【請求項8】 前記論理レコードを特定する情報を入力
し前記論理レコードに対応する前記フォーマット情報の
前記メモリ内におけるアドレスを計算するアドレス計算
部を含むことを特徴とする請求項1記載の記憶制御装
置。 - 【請求項9】 前記記憶装置に対して前記フォーマット
情報を送出するときにはこのフォーマット情報をデータ
圧縮し、前記記憶装置から前記フォーマット情報を受信
したときにはこのフォーマット情報をデータ伸長するデ
ータ圧縮/伸長部を含むことを特徴とする請求項1記載
の記憶制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6088223A JP2580998B2 (ja) | 1993-05-19 | 1994-04-26 | 記憶制御装置 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5-116699 | 1993-05-19 | ||
JP11669993 | 1993-05-19 | ||
JP6088223A JP2580998B2 (ja) | 1993-05-19 | 1994-04-26 | 記憶制御装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0736626A JPH0736626A (ja) | 1995-02-07 |
JP2580998B2 true JP2580998B2 (ja) | 1997-02-12 |
Family
ID=26429644
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP6088223A Expired - Fee Related JP2580998B2 (ja) | 1993-05-19 | 1994-04-26 | 記憶制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2580998B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7464321B2 (en) | 2004-11-18 | 2008-12-09 | International Business Machines Corporation | Apparatus and method to transfer information from a first information storage and retrieval system to a second information storage and retrieval system |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3185437B2 (ja) * | 1992-01-23 | 2001-07-09 | 株式会社日立製作所 | ディスク処理装置 |
JP3175371B2 (ja) * | 1992-03-06 | 2001-06-11 | 三菱電機株式会社 | データ記憶フォーマット変換方式及びその変換方法及びアクセス制御装置及びデータアクセス方法 |
-
1994
- 1994-04-26 JP JP6088223A patent/JP2580998B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH0736626A (ja) | 1995-02-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6324604B1 (en) | Magnetic disk storage for storing data in disk block size from fixed length of host block in non-integer multiple of the disk block size | |
US5394534A (en) | Data compression/decompression and storage of compressed and uncompressed data on a same removable data storage medium | |
US6748486B2 (en) | Method, system, and data structures for superimposing data records in a first data format to memory in a second data format | |
JP3175371B2 (ja) | データ記憶フォーマット変換方式及びその変換方法及びアクセス制御装置及びデータアクセス方法 | |
US6470421B1 (en) | Method and means for reducing device contention by random accessing and partial track staging of records according to a first DASD format but device mapped according to a second DASD format | |
JP3404289B2 (ja) | ディスク制御装置及びその制御方法 | |
US6567888B2 (en) | Method and apparatus for efficiently destaging data from a cache to two or more non-contiguous storage locations | |
US6041391A (en) | Storage device and method for data sharing | |
JP3180096B2 (ja) | システム間でデータおよびコマンドを動的にマッピングする方法、信号担持媒体および装置 | |
JP2804115B2 (ja) | ディスクファイルシステム | |
US5835939A (en) | Data transfer control method and apparatus for external storage subsystem adapted to perform erasing after writing | |
US5862363A (en) | Method of controlling a disk device by disk control unit | |
JP2851982B2 (ja) | 情報処理装置 | |
JP2580998B2 (ja) | 記憶制御装置 | |
JP4324993B2 (ja) | データ転送方法および装置 | |
JP3969809B2 (ja) | 記憶装置におけるデータバッファの管理方法 | |
JP2834081B2 (ja) | 磁気ディスク制御装置 | |
JP3093657B2 (ja) | Fba−ckd変換方式 | |
WO1984002016A1 (en) | Dynamic addressing for variable track length cache memory | |
JPH05257810A (ja) | 情報記録再生装置および情報記録方法 | |
JP2001211412A (ja) | 高速av情報サーバー及びその磁気ディスク装置増設方法 | |
JP2665180B2 (ja) | ディスクキャッシュバッファの確保方式 | |
JPS6041124A (ja) | 磁気デイスク制御装置 | |
WO1991008536A1 (en) | Data record move apparatus for a virtual memory system | |
JP3925246B2 (ja) | 計算機システム |
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: 19960924 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20071121 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081121 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081121 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091121 Year of fee payment: 13 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091121 Year of fee payment: 13 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101121 Year of fee payment: 14 |
|
LAPS | Cancellation because of no payment of annual fees |