JPS6041125A - 記憶装置の制御装置 - Google Patents
記憶装置の制御装置Info
- Publication number
- JPS6041125A JPS6041125A JP58149868A JP14986883A JPS6041125A JP S6041125 A JPS6041125 A JP S6041125A JP 58149868 A JP58149868 A JP 58149868A JP 14986883 A JP14986883 A JP 14986883A JP S6041125 A JPS6041125 A JP S6041125A
- Authority
- JP
- Japan
- Prior art keywords
- buffer
- data
- record
- fixed
- length
- 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
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
発明の技術分野
本発明は、磁気ディスクなどの固定長ファイル装置に対
しバッファエミュレーション制御を行なう制御装置に関
する。
しバッファエミュレーション制御を行なう制御装置に関
する。
従来技術と問題点
磁気ディスク装置は中央処理装置(CPU)の外部記憶
装置に用いられ、固定長レコードファイル装置を構成す
る。即ちディスクは多数の同心円(トラック又はシリン
ダと呼ぶ)に区分され、各トランクに基準点が設けられ
、各トランクは該基準点より複数個の所定長の小区分(
セクタと呼ぶ)に分けられ、アクセスはセクタ単位で行
なわれる。
装置に用いられ、固定長レコードファイル装置を構成す
る。即ちディスクは多数の同心円(トラック又はシリン
ダと呼ぶ)に区分され、各トランクに基準点が設けられ
、各トランクは該基準点より複数個の所定長の小区分(
セクタと呼ぶ)に分けられ、アクセスはセクタ単位で行
なわれる。
CPUの入出力データは可変長であるので、CPU出力
データをディスクへ書込む場合は該出力データをセクタ
(固定長レコード)単位に区切る必要がある。
データをディスクへ書込む場合は該出力データをセクタ
(固定長レコード)単位に区切る必要がある。
このように、あるファイル形式のものを異なるファイル
形式のものに見えるようにする、上記の例で言えば固定
長レコードファイル装置を等測的に可変長レコードファ
イル装置にするには、制御装置内にデータを一時貯える
バッファを設け、そのバッファ上でデータの読み、書き
をすることが行なわれている。これをバッファエミュレ
ーションという。
形式のものに見えるようにする、上記の例で言えば固定
長レコードファイル装置を等測的に可変長レコードファ
イル装置にするには、制御装置内にデータを一時貯える
バッファを設け、そのバッファ上でデータの読み、書き
をすることが行なわれている。これをバッファエミュレ
ーションという。
ところで従来は、バッファ上で更新されたデータを固定
長レコードファイル装置へ書き戻す場合、バッファデー
タをそのま\該ファイル装置へ送り出すようにしている
。しかしこの方式では書き戻しの際にバッファでエラー
が発生すると、書込みが開始されているので該ファイル
装置のデータも失なわれることになる。即ち、該バッフ
ァとしてはディスクの1トラック分のデータを収容でき
る容量のものが用いられ、該トラック上のレコードを更
新する場合は、ディスクをアクセスして当該トランク上
の全データを読出して該バッファに格納し、CPUから
送られた更新データで該バッファ上の該当部分を書換え
、然るのち該バッファのデータを当該トラックへ書き戻
すという処理をするが、ディスクは固定長レコードファ
イルであるからこの書き戻しにはバッファ上の1トラッ
ク分データをセクタ(固定長レコード)毎に区切る必要
があり、そしである固定長レコードはディスクから読出
したデータと更新データで構成され(区切った結果、こ
のようになった)、リード・アフター・ライトのチェッ
ク結果、該レコードにエラーが発見されると、該レコー
ドのデータ即ちディスクから読出したデータの一部とC
PUから送られたデータの一部が失なわれる(信用でき
なくなる)。
長レコードファイル装置へ書き戻す場合、バッファデー
タをそのま\該ファイル装置へ送り出すようにしている
。しかしこの方式では書き戻しの際にバッファでエラー
が発生すると、書込みが開始されているので該ファイル
装置のデータも失なわれることになる。即ち、該バッフ
ァとしてはディスクの1トラック分のデータを収容でき
る容量のものが用いられ、該トラック上のレコードを更
新する場合は、ディスクをアクセスして当該トランク上
の全データを読出して該バッファに格納し、CPUから
送られた更新データで該バッファ上の該当部分を書換え
、然るのち該バッファのデータを当該トラックへ書き戻
すという処理をするが、ディスクは固定長レコードファ
イルであるからこの書き戻しにはバッファ上の1トラッ
ク分データをセクタ(固定長レコード)毎に区切る必要
があり、そしである固定長レコードはディスクから読出
したデータと更新データで構成され(区切った結果、こ
のようになった)、リード・アフター・ライトのチェッ
ク結果、該レコードにエラーが発見されると、該レコー
ドのデータ即ちディスクから読出したデータの一部とC
PUから送られたデータの一部が失なわれる(信用でき
なくなる)。
発明の目的
本発明はバッファと固定長レコードファイル装置との間
に固定長レコード相当分の容量を持つ中間バッファを持
つことにより、書き戻し時のデータバッファエラーでデ
ータが失なわれるの防止しようとするものである。
に固定長レコード相当分の容量を持つ中間バッファを持
つことにより、書き戻し時のデータバッファエラーでデ
ータが失なわれるの防止しようとするものである。
発明の構成
本発明は固定長レコードの記憶装置から読出した固定長
レコード複数個からなる単位データを一時蓄積するバッ
ファを備える、固定長レコード記憶装置を可変長レコー
ド記憶装置として制御する制御装置において、前記バッ
ファから固定長レコードを転送される中間バッファを設
け、書込みに際して前記バッファから中間バッファへ固
定長レコードを転送し、該中間バッファより固定長レコ
ード記憶装置へ該固定長レコードを書込むようにしてな
ることを特徴とするが次に実施例を参照しながらこれを
説明する。
レコード複数個からなる単位データを一時蓄積するバッ
ファを備える、固定長レコード記憶装置を可変長レコー
ド記憶装置として制御する制御装置において、前記バッ
ファから固定長レコードを転送される中間バッファを設
け、書込みに際して前記バッファから中間バッファへ固
定長レコードを転送し、該中間バッファより固定長レコ
ード記憶装置へ該固定長レコードを書込むようにしてな
ることを特徴とするが次に実施例を参照しながらこれを
説明する。
発明の実施例
第1図は本発明の実施例を示し、10はホストCPU(
中央処理装置)、12は固定長レコードの外部記憶装置
具体的には磁気ディスク記憶装置、14はディスク制御
装置でトラックバッファ16を備え、バッファエミュレ
ーションによる制御を行なう。この制御装置14はホス
トインタフェイス回路20、デバイスインタフ六イス回
路22、データ転送回路24などを備え、そして本発明
では更に中間バッファ18を追加する。前述のようにト
ラックバッファ16は磁気ディスク12の1トランク分
のデータを格納できる記憶容量を持ち、そして中間バッ
ファ18は1セクタ分(1固定長レコ一ド分)の記憶容
量を持つ。磁気ディスク12は図面では1つのみ示すが
実際には複数個設けられるのが普通である。
中央処理装置)、12は固定長レコードの外部記憶装置
具体的には磁気ディスク記憶装置、14はディスク制御
装置でトラックバッファ16を備え、バッファエミュレ
ーションによる制御を行なう。この制御装置14はホス
トインタフェイス回路20、デバイスインタフ六イス回
路22、データ転送回路24などを備え、そして本発明
では更に中間バッファ18を追加する。前述のようにト
ラックバッファ16は磁気ディスク12の1トランク分
のデータを格納できる記憶容量を持ち、そして中間バッ
ファ18は1セクタ分(1固定長レコ一ド分)の記憶容
量を持つ。磁気ディスク12は図面では1つのみ示すが
実際には複数個設けられるのが普通である。
第2図は固定長レコードと可変長レコードとトランクバ
ッファの関係を示す。fa)は可変長レコードの形式を
、(blはトラックバッファの内容を、(C)は固定長
レコードの形式を示す。HAはホームアドレス領域、R
oはレコードゼロ領域、R1−Rnは一部レコード領域
である。印はトランク基準点を示す。
ッファの関係を示す。fa)は可変長レコードの形式を
、(blはトラックバッファの内容を、(C)は固定長
レコードの形式を示す。HAはホームアドレス領域、R
oはレコードゼロ領域、R1−Rnは一部レコード領域
である。印はトランク基準点を示す。
ホストCPUl0より制御装置14にトラック番号及び
トラック内レコード位置を指定して読取り指示がなされ
ると、該制御装置は該トランク番号で磁気ディスク12
をアクセスし、当該トランクを読出しその1トラック分
データをバッファ16へ取込む。そして該当するレコー
ドをバッファ16より取出してホストCPU1’0へ送
る。またホストcpuioより制御装置14に書込みが
指示されると、該制御装置はホス)CPUよりデータを
受取ってバッファ16へ書込み、その書込みが終了した
時点で固定長レコードに分割し、それらを磁気ディスク
の一部トランクへ書込む。第2図で説明すると同図(a
lがホストCPUからの可変長データとすると、トラン
クバッファ16は同図+blの如くこれを連続させた状
態で取込み(最初より順次詰めて可変長データを取込ん
でゆく)、これを同図(C)の如く固定長レコードに細
分して各レコードを該当トランクへ逐次書込む。この固
定長レコードへの分割でボストCPUがらの可変長レコ
−1’Ro、R+〜Rnは図示の如く2つのセクタに跨
ったりする。
トラック内レコード位置を指定して読取り指示がなされ
ると、該制御装置は該トランク番号で磁気ディスク12
をアクセスし、当該トランクを読出しその1トラック分
データをバッファ16へ取込む。そして該当するレコー
ドをバッファ16より取出してホストCPU1’0へ送
る。またホストcpuioより制御装置14に書込みが
指示されると、該制御装置はホス)CPUよりデータを
受取ってバッファ16へ書込み、その書込みが終了した
時点で固定長レコードに分割し、それらを磁気ディスク
の一部トランクへ書込む。第2図で説明すると同図(a
lがホストCPUからの可変長データとすると、トラン
クバッファ16は同図+blの如くこれを連続させた状
態で取込み(最初より順次詰めて可変長データを取込ん
でゆく)、これを同図(C)の如く固定長レコードに細
分して各レコードを該当トランクへ逐次書込む。この固
定長レコードへの分割でボストCPUがらの可変長レコ
−1’Ro、R+〜Rnは図示の如く2つのセクタに跨
ったりする。
ファイルの部分更新を行なう場合は磁気ディスクに記憶
しているレコード群の一部を修正することになるが、こ
の場合は更新すべきレコードのみホストCPUから送ら
れ、該当トランクのデータを読出してそのうちの該当レ
コードをホストcPUから送られて来た新レコードに置
き換えることになる。今ホストから新レコードRiが送
られ、該当トランクを読出してレコードRi相当部分を
上記新レコードで置き換え、固定長レコードに区分した
ところレコードRiは2つの固定長レコードに分割され
、従って該2つの固定長レコードの前半又は後半は磁気
ディスクから読出したデータであったとする。が−るレ
コードを書込み、リードアフターライトのチェックの結
果エラーが発生すると、該レコード全体が信用できない
ものとなり、ディスクからの1トラツクデータの読出し
、ホストCPUからの新レコードの送出など全て最初か
らやり直さねばならなくなる。そこで本発明では中間バ
ッファ18を設け、書込み(更新)を次の如く行なう。
しているレコード群の一部を修正することになるが、こ
の場合は更新すべきレコードのみホストCPUから送ら
れ、該当トランクのデータを読出してそのうちの該当レ
コードをホストcPUから送られて来た新レコードに置
き換えることになる。今ホストから新レコードRiが送
られ、該当トランクを読出してレコードRi相当部分を
上記新レコードで置き換え、固定長レコードに区分した
ところレコードRiは2つの固定長レコードに分割され
、従って該2つの固定長レコードの前半又は後半は磁気
ディスクから読出したデータであったとする。が−るレ
コードを書込み、リードアフターライトのチェックの結
果エラーが発生すると、該レコード全体が信用できない
ものとなり、ディスクからの1トラツクデータの読出し
、ホストCPUからの新レコードの送出など全て最初か
らやり直さねばならなくなる。そこで本発明では中間バ
ッファ18を設け、書込み(更新)を次の如く行なう。
固定長レコードに細分したトラックバッファ16のデー
タはその1固定長レコ一ド分が中間バッファ18に移さ
れ、然るのち磁気ディスク4に書込まれる。ファイルの
部分更新の場合は該当する固定長レコード(書換えられ
たレコードが存在する固定長レコード)のみ書換えを行
ない、前述のようにそれが2つに跨る場合は上記中間バ
ッファ18経由の書込みを2回行なう。書込みが多数回
に亘る場合は1固定長レコードの容量の中間バッファ3
を2組設け、これを交互に使用する(一方が書込みのと
き他方は読取りとしこれを交互に繰り返す)ことにより
、書込みを連続化することができる。中間へソファ18
から磁気ディスク12への書込みでエラーが発見された
場合は、トランクバッファ16にデータが残っているか
ら当該データを中間バッファ18へ移し、該バッファか
ら磁気ディスク12へ再書込みすればよい。トラックバ
ッファ16から中間バ・ノファ18へのデータ転送でエ
ラーが発見された場合は磁気ディスク12からトラック
バッファ16へデータを移し、書込み(更新)コマンド
の再試行を行なう。
タはその1固定長レコ一ド分が中間バッファ18に移さ
れ、然るのち磁気ディスク4に書込まれる。ファイルの
部分更新の場合は該当する固定長レコード(書換えられ
たレコードが存在する固定長レコード)のみ書換えを行
ない、前述のようにそれが2つに跨る場合は上記中間バ
ッファ18経由の書込みを2回行なう。書込みが多数回
に亘る場合は1固定長レコードの容量の中間バッファ3
を2組設け、これを交互に使用する(一方が書込みのと
き他方は読取りとしこれを交互に繰り返す)ことにより
、書込みを連続化することができる。中間へソファ18
から磁気ディスク12への書込みでエラーが発見された
場合は、トランクバッファ16にデータが残っているか
ら当該データを中間バッファ18へ移し、該バッファか
ら磁気ディスク12へ再書込みすればよい。トラックバ
ッファ16から中間バ・ノファ18へのデータ転送でエ
ラーが発見された場合は磁気ディスク12からトラック
バッファ16へデータを移し、書込み(更新)コマンド
の再試行を行なう。
第3図はホストCPUからのコマンドの処理を示すフロ
ーチャートである。図示のようにホストCPUl0より
コマンドを受取ると制御装置1′4はコマンドはライト
(書込み)か否かをチェックし、ライトなら(Y)トラ
・ツクバッファ1Gにデータが格納されているか否かを
チェックし、格納されていなければ外部記憶装置12よ
り該当トラックデータを読出してへソファ16へ格納し
、該バッファにトラックデータがある状態でボストCP
Uより書込みレコードデータを受取り、固定長レコード
に区分する。次いで書込むべきブロック(固定長レコー
ド)を捜し、それを中間バッファ18へ移し、こ−でパ
リティチェックする。エラーが発見され−ば再試行し、
エラーがなげれば中間バッファ18より磁気ディスク1
2へ書込みを行なう。こ−でリードアフターライトのエ
ラーチェックをし、エラーが発見され\ばトラックバッ
ファ16から中間バッファ18へデータを取込む上記操
作から繰り返し、エラーが発見されなければ次の固定長
レコードの書込みに移り、書込むべき固定長レコードが
なくなれば書込み処理終了となる。
ーチャートである。図示のようにホストCPUl0より
コマンドを受取ると制御装置1′4はコマンドはライト
(書込み)か否かをチェックし、ライトなら(Y)トラ
・ツクバッファ1Gにデータが格納されているか否かを
チェックし、格納されていなければ外部記憶装置12よ
り該当トラックデータを読出してへソファ16へ格納し
、該バッファにトラックデータがある状態でボストCP
Uより書込みレコードデータを受取り、固定長レコード
に区分する。次いで書込むべきブロック(固定長レコー
ド)を捜し、それを中間バッファ18へ移し、こ−でパ
リティチェックする。エラーが発見され−ば再試行し、
エラーがなげれば中間バッファ18より磁気ディスク1
2へ書込みを行なう。こ−でリードアフターライトのエ
ラーチェックをし、エラーが発見され\ばトラックバッ
ファ16から中間バッファ18へデータを取込む上記操
作から繰り返し、エラーが発見されなければ次の固定長
レコードの書込みに移り、書込むべき固定長レコードが
なくなれば書込み処理終了となる。
コマンドがライトでない場合(N)は、これはリード(
読取り)コマンドであるが、トラックバッファ16に該
当トランクのレコードがあるか否かをチェックし、あれ
ばそれをトラックバッファよりホストCP Uへ送り、
なければ磁気ディスクの該当トラックを読出してそのト
ラックデータをバッファ16へ取込み、該当レコードを
ホストCPUへ送る。
読取り)コマンドであるが、トラックバッファ16に該
当トランクのレコードがあるか否かをチェックし、あれ
ばそれをトラックバッファよりホストCP Uへ送り、
なければ磁気ディスクの該当トラックを読出してそのト
ラックデータをバッファ16へ取込み、該当レコードを
ホストCPUへ送る。
発明の詳細
な説明したように本発明によれば、バッファでエラーが
発生してもデータが失なわれることがないのでデータの
信頼度が向上でき、制御装置で再試行が可能なのでO3
(オペレーティングシステム)下での再試行の必要がな
くなり、O8の負荷を軽減できる。
発生してもデータが失なわれることがないのでデータの
信頼度が向上でき、制御装置で再試行が可能なのでO3
(オペレーティングシステム)下での再試行の必要がな
くなり、O8の負荷を軽減できる。
第1図は本発明の実施例を示すブロック図、第2図は固
定長、可変長各レコードの説明図、第3図は処理要領を
示すブロック図である。 図面で14は制御装置、12は固定長レコードファイル
装置、16はバッファ1.18は中間バッファである。 出願人 富士通株式会社 代理人弁理士 青 柳 稔 第1図 第2図 (リ 、前た国コ」T丁丑コz←…f===L工[ヨ第
3図
定長、可変長各レコードの説明図、第3図は処理要領を
示すブロック図である。 図面で14は制御装置、12は固定長レコードファイル
装置、16はバッファ1.18は中間バッファである。 出願人 富士通株式会社 代理人弁理士 青 柳 稔 第1図 第2図 (リ 、前た国コ」T丁丑コz←…f===L工[ヨ第
3図
Claims (1)
- 【特許請求の範囲】 固定長レコードの記憶装置から読出した複数個の固定長
レコードからなる単位データを一時蓄積するバッファを
備える、固定長レコード記憶装置を可変長レコード記憶
装置として制御する制御装置において、 前記バッファから固定長レコードを転送される中間バッ
ファを設け、書込みに胤して前記バッファから中間バッ
ファへ固定長レコードを転送し、該中間バッファより固
定長レコード記憶装置へ該固定長レコードを書込むよう
にしてなることを特徴とする記憶装置の制御装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP58149868A JPS6041125A (ja) | 1983-08-17 | 1983-08-17 | 記憶装置の制御装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP58149868A JPS6041125A (ja) | 1983-08-17 | 1983-08-17 | 記憶装置の制御装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPS6041125A true JPS6041125A (ja) | 1985-03-04 |
Family
ID=15484405
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP58149868A Pending JPS6041125A (ja) | 1983-08-17 | 1983-08-17 | 記憶装置の制御装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS6041125A (ja) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5263232A (en) * | 1991-10-17 | 1993-11-23 | Yoshida Kogyo K.K. | Cord stopper |
| JPH06222890A (ja) * | 1993-01-22 | 1994-08-12 | Nec Corp | 拡張記憶機構における仮想ディスク装置データ更新制御方式 |
-
1983
- 1983-08-17 JP JP58149868A patent/JPS6041125A/ja active Pending
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5263232A (en) * | 1991-10-17 | 1993-11-23 | Yoshida Kogyo K.K. | Cord stopper |
| JPH06222890A (ja) * | 1993-01-22 | 1994-08-12 | Nec Corp | 拡張記憶機構における仮想ディスク装置データ更新制御方式 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5584008A (en) | External storage unit comprising active and inactive storage wherein data is stored in an active storage if in use and archived to an inactive storage when not accessed in predetermined time by the host processor | |
| US5301304A (en) | Emulating records in one record format in another record format | |
| JPS605023B2 (ja) | 記憶システム | |
| JPH05224822A (ja) | 集合型記憶装置 | |
| EP0701208A2 (en) | Disk array subsystem and data generation method therefor | |
| JP3032321B2 (ja) | 光ディスク装置のアクセス制御方式 | |
| KR20030009047A (ko) | 자기 디스크장치, 데이터 기록방법 및 데이터 재생방법 | |
| JP2968181B2 (ja) | ディスク装置及びデータ書込読出方法 | |
| EP0347032A2 (en) | Record format emulation | |
| JP2761289B2 (ja) | ディスクトラックエミュレーション方法 | |
| JPS6041125A (ja) | 記憶装置の制御装置 | |
| JPH10240453A (ja) | ディスクアレイ装置 | |
| JP3030949B2 (ja) | ディジタルデータ記録再生装置 | |
| JP2733189B2 (ja) | ディスクアレイ装置の入出力制御方法 | |
| JP3555871B2 (ja) | ディスクアレイ装置 | |
| JPH06274282A (ja) | 磁気記録装置 | |
| JPH08147111A (ja) | ディスクアレイ装置の拡張構成方法 | |
| JPH08161123A (ja) | ディスク・アレイ装置 | |
| JPS63224487A (ja) | デイジタルデ−タレコ−ダ制御装置 | |
| JPH0950353A (ja) | ライブラリ型記憶装置 | |
| JPH0736633A (ja) | 磁気ディスクアレイ | |
| JPH08221216A (ja) | 記憶装置システム | |
| JPS59197947A (ja) | 二重化フアイルの情報更新方式 | |
| JP3226047B2 (ja) | 入出力装置 | |
| JPH04341977A (ja) | データ再生制御方式 |