JPH0113571B2 - - Google Patents

Info

Publication number
JPH0113571B2
JPH0113571B2 JP58025773A JP2577383A JPH0113571B2 JP H0113571 B2 JPH0113571 B2 JP H0113571B2 JP 58025773 A JP58025773 A JP 58025773A JP 2577383 A JP2577383 A JP 2577383A JP H0113571 B2 JPH0113571 B2 JP H0113571B2
Authority
JP
Japan
Prior art keywords
disk
command
information
file
cache
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
Application number
JP58025773A
Other languages
English (en)
Other versions
JPS59153251A (ja
Inventor
Sotaro Ushiro
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.)
Toshiba Corp
Original Assignee
Tokyo Shibaura Electric Co 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 Tokyo Shibaura Electric Co Ltd filed Critical Tokyo Shibaura Electric Co Ltd
Priority to JP58025773A priority Critical patent/JPS59153251A/ja
Priority to US06/580,703 priority patent/US4593354A/en
Publication of JPS59153251A publication Critical patent/JPS59153251A/ja
Publication of JPH0113571B2 publication Critical patent/JPH0113571B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Debugging And Monitoring (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Description

【発明の詳細な説明】 〔発明の技術分野〕 本発明はデイスクコントローラにデイスクキヤ
ツシユバツフアを備え、当該デイスクキヤツシユ
バツフアを介してデイスクとの間の入出力を行な
うデイスクキヤツシユシステムに関する。
〔発明の技術的背景〕
一般にデイスクキヤツシユを採用している計算
機システムでは、ストアイン方式とストアスルー
方式が使用されている。ストアイン方式は、デイ
スクへの書き込み要求に対し、直ちにデイスクへ
の書き込み動作を行なわず、デイスクキヤツシユ
バツフア上の該当ブロツクのデイレクトリに書き
込みフラグを立て、デイスクコントローラの空き
時間を利用してデイスクへの書き込みを行なう方
式である。これに対し、ストアスルー方式は、デ
イスクへの書き込み要求に対し、その時点で該当
ブロツクをデイスクに書き込む方式である。
〔背景技術の問題点〕
このようなストアイン方式では、デイスクへの
書き込みが有効に行なわれ、デイスクキヤツシユ
の特長が生かされるものの、プログラムの論理的
な完了単位(これをCOMMIT時点と称する)で
プログラムの動作とデイスクの内容との同期が取
れない問題があつた。
これに対し、ストアスルー方式では、同期その
ものは取れるが、デイスクキヤツシユの特長を充
分生かすことができず、デイスクに対する書き込
み性能の向上が図れない問題があつた。
〔発明の目的〕
本発明は上記事情に鑑みてなされたものでその
目的は、デイスクキヤツシユバツフアを用い、ス
トアイン方式でデイスクへの書き込みを行なう場
合においても、プログラムの論理的な完了単位で
プログラムの動作とデイスクの内容との同期が取
れ、かつデイスクキヤツシユバツフアからデイス
クに書き込み中にエラーが発生してもプログラム
によるエラー回復が図れるデイスクキヤツシユシ
ステムを提供することにある。
〔発明の概要〕 本発明はプログラムの論理的な完了単位で特定
のコマンドを発する手段を設け、当該特定のコマ
ンドがデイスクコントローラに与えられた場合
に、デイスクキヤツシユバツフアに残されていた
データをデイスクに書き込むことによりプログラ
ムの動作とデイスクの内容との同期を取るように
したものである。
更に本発明は、デイスクキヤツシユバツフアの
内容をデイスクコントローラの空き時間を利用し
てデイスクに書き込んでいるときにエラーが発生
した場合に、そのエラーステータス情報が登録さ
れるエラーログテーブルを設け、上記特定のコマ
ンドに応じてデイスクキヤツシユバツフア内の残
りデータをデイスクに書き込んだ後に当該エラー
ログテーブルに登録されているエラーステータス
情報を含むステータスを上位装置に通知すること
により、上位装置による的確なエラー処理が行な
えるようにしたものである。
〔発明の実施例〕
以下、本発明の一実施例を図面を参照して説明
する。第1図はデイスクキヤツシユシステムの要
部構成を示すブロツク図である。図中、10はデ
イスク(デイスク装置)、20はデイスク10を
制御するデイスクコントローラ(以下、DISCと
称する)である。DISC20において、200は
DISC20の中心となる制御部であり、フアーム
ウエア機構(図示せず)を有している。210は
デイスク10に対する書き込み/読み出しデータ
がバツフアリングされるデイスクキヤツシユバツ
フア(以下、単にキヤツシユバツフアと称する)、
220はキヤツシユバツフア210のデイレクト
リ情報が登録されるキヤツシユデイレクトリであ
る。230は制御テーブルであり、DFAREA
(DEFINEAREA)テーブル231とエラーログ
テーブル232を有している。DFAREAテーブ
ル231はサイズ情報と(デイスク10の)デイ
スクアドレスからなるフアイルエクステント情報
(以下、単にエクステント情報と称する)が登録
されるテーブルである。また、エラーログテーブ
ル232は、キヤツシユバツフア210の内容が
DISC20の空き時間にデイスク10に書き込ま
れているときにエラーが発生した場合に、そのエ
ラーステータス情報(デイスクアドレス、ステー
タス、サイズ)が登録されるテーブルである。
次に本発明一実施例の動作を第2図のフローチ
ヤートおよび第3図のシステム状態図を参照して
説明する。まずユーザアプリケーシヨンプログラ
ムによるフアイルオープン時にそのOPENコマン
ドに応じてOS(オペレーシヨンシステム)から
DFAREAコマンドが発せられる。この
DFAREAコマンドはパラメータ情報として前述
したエクステント情報を有している。DISC20
内の制御部200は上位装置(図示せず)からコ
マンドを受け取ると、当該コマンドの解析を行な
い(第2図のステツプS1)、上述のように
DFAREAコマンドの場合には以下に述べる如く
フアイル単位にアクセスするエリアの定義を行な
う。すなわち、制御部200はサイズ情報および
デイスクアドレスからなるエクステント情報を第
3図に示されるようにDFAREAテーブル231
に登録してキヤツシユ(キヤツシユバツフア21
0)使用を宣言する(ステツプS2)。次に制御部
200はキヤツシユデイレクトリ220に
DFAREAテーブル231に登録されたエクステ
ント情報へのポインタを登録する(ステツプ
S3)。次に制御部200は上記エクステント情報
中のサイズ情報に従つてキヤツシユバツフア21
0のエリアを確保する(ステツプS4)。すなわち
制御部200はバツフアリングすべきフアイル
(データ)のキヤツシユバツフア210内格納先
アドレス(バツフアアドレス)等をキヤツシユデ
イレクトリ220に登録する。
次にユーザアプリケーシヨンプログラムに基づ
くWRITEコマンド(書き込みコマンド)が上位
装置(OPU)からDISC20に与えられる。制御
部200は前記コマンド解析ステツプ(ステツプ
S1)において、上記コマンドがWRITEコマンド
であることを判断するとキヤツシユバツフア21
0を制御して(ステツプS5)当該WRITEコマン
ドに伴うデータをキヤツシユバツフア210の上
記確保したエリアに格納すると共にキヤツシユデ
イレクトリ220内の該当フラグを“1”にし、
割り込みを上位装置に返す。上位装置はDISC2
0(の制御部200)からの割り込みを受け付け
ると次のWRITEコマンドをDISC20に与える。
これにより制御部200は上述したキヤツシユバ
ツフア210へのデータバツフアリング動作を行
なう。キヤツシユバツフア210をストアインモ
ードで使用している場合、上述のデータバツフア
リング動作の繰り返しと同時に、FIFO/LRU
(First In First Out/Least Recently Used
rule)制御によりDISC20の空き時間を利用し
てキヤツシユデイレクトリ220内のフラグが
“1”である該当ブロツクをキヤツシユバツフア
210から取り出して第3図の矢印aで示される
如くデイスク10に書き込む動作が行なわれる。
このとき、該当ブロツクに対応する上記フラグは
“0”にされる。制御部200はこの書き込み動
作でエラーが発生したか否かの判定を行ない(ス
テツプS6)、YES判定の場合そのエラーステータ
ス情報(デイスクアドレス、ステータス、サイ
ズ)を第3図の矢印bで示される如くエラーログ
テーブル232に登録する(ステツプS7)。な
お、このエラーログテーブル232へのポインタ
(エラーログポインタ)はDFAREAテーブル2
31に登録される。このようにエラー発生の場
合、制御部200はオールタネイト処理(欠陥ト
ラツク処理)を行なう。すなわちオールタネート
トラツク(代替トラツク)がアロケーシヨンさ
れ、そこで再試行が行なわれる。このオールタネ
イト処理において、再度エラーが発生すれば、そ
の旨を示すエラーステータス情報がエラーログテ
ーブル232に登録される。
ユーザアプリケーシヨンプログラムはプログラ
ムの論理的な完了単位(データ更新の区切り)で
COMMIT(コミツト)コマンドを発生するよう
に構成されている。本実施例ではこのCOMMIT
コマンド(CLOSE/COMMITコマンド)に応
じてOSからFORCE DFAREAコマンドが発せら
れるようになつている。このFORCE DFAREA
(FORCE OUT DEFINEAREA ON CACHE)
コマンドはパラメータ情報としてエクステント情
報を有し、更にはDFAREAテーブル231およ
びキヤツシユデイレクトリ220からエントリを
解放するためのクローズオプシヨンを必要に応じ
て有している。制御部200はFORCE
DFAREAコマンドを受付けると、そのパラメー
タ情報としてのエクステント情報に基づいてキヤ
ツシユデイレクトリ220をサーチし、ヒツトし
たエントリ(でフラグが“1”のエントリ)があ
れば当該エントリで示されるキヤツシユバツフア
210の内容(すなわちキヤツシユバツフア21
0に残されていたデータ)をデイスク10に書き
込む(ステツプS8)。次に制御部200はキヤツ
シユデイレクトリ220の該当エントリに登録さ
れている(DFAREAテーブル231に登録され
たエクステント情報への)ポインタを取り出し、
当該ポインタで示されるDFAREAテーブル23
1からエラーログポインタを取り出す。そして制
御部200はこのエラーログポインタに基づいて
エラーログテーブル232をリードアクセスし、
そのエラーステータス情報を得る(ステツプ
S9)。次に制御部200はエラーログテーブル2
32を初期化(解放)する(ステツプS10)。次
に制御部200はクローズオプシヨン有無の判定
(ステツプS11)を行ない、クローズオプシヨン
有りの場合にはDFAREAテーブル231および
キヤツシユデイレクトリ220を初期化(解放)
するステツプS12を行なつた後、上記ステツプS9
で得られたエラーステータス情報と、上記ステツ
プS8のデイスク書き込み時に得られるエラース
テータス情報とから成るステータス情報を上位装
置に転送する(ステツプS13)。なお、クローズ
オプシヨン無しの場合には、ステツプS12を経ず
にステツプS13が実行される。
〔発明の効果〕
以上詳述したように本発明によれば、ストアイ
ン方式でデイスクへの書き込みを行なつていて
も、プログラムの論理的な完了単位でキヤツシユ
バツフアに残されていたデータが全てデイスクに
書き込まれるのでプログラムの動作とデイスクの
内容との同期がとれる。したがつて、デイスクラ
イト時においてもデイスクキヤツシユの特長を最
大限に発輝することができる。
しかも本発明によれば、ストアイン方式でデイ
スクにデータ書き込み中にエラーが発生しても、
これらのエラーステータス情報をプログラムの論
理的な完了単位で当該プログラムに通知できるの
で、エラー回復を図ることが可能となる。
【図面の簡単な説明】
第1図は本発明のデイスクキヤツシユシステム
の一実施例を示すブロツク構成図、第2図は動作
を説明するためのフローチヤート、第3図は同じ
くシステム状態図である。 10……デイスク、20……デイスクコントロ
ーラ(DISC)、200……制御部、210……デ
イスクキヤツシユバツフア、232……エラーロ
グテーブル。

Claims (1)

  1. 【特許請求の範囲】 1 上位装置とデイスク装置との間に位置し、デ
    イスクキヤツシユバツフアを内蔵するデイスクコ
    ントローラを備えたデイスクキヤツシユシステム
    において、 上記デイスクコントローラに、 上記デイスクキヤツシユバツフアを一定サイズ
    のブロツク単位で管理するキヤツシユデイレクト
    リであつて、各エントリ中に書込みフラグを有す
    るキヤツシユデイレクトリと、 エラーステータス情報を登録するためのエラー
    ログテーブルと、 アクセス対象フアイル領域を定義するフアイル
    エクステント情報を登録するためのエクステント
    テーブルと、 上記上位装置から発せられる第1コマンドであ
    つて上記フアイルエクステント情報を有する第1
    コマンドに応じ、このフアイルエクステント情報
    を上記エクステントテーブルに登録すると共に、
    上記デイスクキヤツシユバツフアの該当領域を確
    保する手段と、 上記上位装置から発せられる第2コマンドであ
    つて上記デイスク装置への書込みを指定する第2
    コマンドに応じ、上記第1コマンドの実行によつ
    て確保された上記デイスクキヤツシユバツフア内
    の該当領域にデータをストアすると共に、上記キ
    ヤツシユデイレクトリの該当エントリの上記書込
    みフラグをセツトする手段と、 上記デイスクコントローラの空き時間に上記デ
    イスクキヤツシユバツフアにストアされているデ
    ータのうちの上記デイスク装置への未書込みデー
    タを対象に上記デイスク装置への書込みを行なう
    と共に、上記キヤツシユデイレクトリの該当エン
    トリの上記書込みフラグをリセツトする手段と、 上記上位装置からプログラムの論理的な完了単
    位で発せられる第3コマンドであつてフアイルエ
    クステント情報を有する第3コマンドに応じ、上
    記デイスクキヤツシユバツフア内の上記未書込み
    データのうち、この第3コマンド中の上記フアイ
    ルエクステント情報の示すフアイル領域に対応す
    るデータを全て上記デイスク装置に書込むと共
    に、上記キヤツシユデイレクトリの該当エントリ
    の上記書込みフラグをリセツトする手段と、 上記デイスク装置へのデータ書込み中にエラー
    が発生した場合、そのエラーステータス情報を、
    上記エクステントテーブルに登録されている上記
    フアイルエクステント情報のうち書込み対象領域
    を含む上記フアイル領域を定義しているフアイル
    エクステント情報に対応させて、上記エラーログ
    テーブルに登録する手段と、 上記第3コマンドに応じて行なわれる上記デイ
    スク装置へのデータ書込みの終了時に、この第3
    コマンド中の上記フアイルエクステント情報に対
    応する上記エラーステータス情報を上記エラーロ
    グテーブルから選択的に取出して上記上位装置に
    転送する手段と、 を設けたことを特徴とするデイスクキヤツシユシ
    ステム。
JP58025773A 1983-02-18 1983-02-18 デイスクキヤツシユシステム Granted JPS59153251A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP58025773A JPS59153251A (ja) 1983-02-18 1983-02-18 デイスクキヤツシユシステム
US06/580,703 US4593354A (en) 1983-02-18 1984-02-16 Disk cache system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58025773A JPS59153251A (ja) 1983-02-18 1983-02-18 デイスクキヤツシユシステム

Publications (2)

Publication Number Publication Date
JPS59153251A JPS59153251A (ja) 1984-09-01
JPH0113571B2 true JPH0113571B2 (ja) 1989-03-07

Family

ID=12175161

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58025773A Granted JPS59153251A (ja) 1983-02-18 1983-02-18 デイスクキヤツシユシステム

Country Status (2)

Country Link
US (1) US4593354A (ja)
JP (1) JPS59153251A (ja)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4835686A (en) * 1985-05-29 1989-05-30 Kabushiki Kaisha Toshiba Cache system adopting an LRU system, and magnetic disk controller incorporating it
JPS62243044A (ja) * 1986-04-16 1987-10-23 Hitachi Ltd デイスクキヤツシユメモリの制御方式
US4972316A (en) * 1987-03-30 1990-11-20 International Business Machines Corporation Method of handling disk sector errors in DASD cache
US5008820A (en) * 1987-03-30 1991-04-16 International Business Machines Corporation Method of rapidly opening disk files identified by path names
US5016121A (en) * 1988-02-25 1991-05-14 Tandon Corporation Disk drive controller system
US4912630A (en) * 1988-07-29 1990-03-27 Ncr Corporation Cache address comparator with sram having burst addressing control
JP2780372B2 (ja) * 1989-08-29 1998-07-30 株式会社日立製作所 デイスク制御装置のキヤツシユ組込制御方法
JPH03100718A (ja) * 1989-09-13 1991-04-25 Hitachi Ltd バッファ付きディスク装置の入出力処理方法
JP2826857B2 (ja) * 1989-12-13 1998-11-18 株式会社日立製作所 キャッシュ制御方法および制御装置
JPH0833864B2 (ja) * 1990-01-30 1996-03-29 富士通株式会社 データ保全方式
JPH0444673A (ja) * 1990-06-11 1992-02-14 Toshiba Corp ディスク装置のディフェクティブ情報記録方式
US5544347A (en) 1990-09-24 1996-08-06 Emc Corporation Data storage system controlled remote data mirroring with respectively maintained data indices
US5386553A (en) * 1990-10-10 1995-01-31 Fuji Xerox Co., Ltd. Disk file updating control device and method using updating data stored in a first-in-first-out queue
US5274799A (en) * 1991-01-04 1993-12-28 Array Technology Corporation Storage device array architecture with copyback cache
US5317713A (en) * 1991-09-19 1994-05-31 Quantum Corporation Micro-winchester disk drive having on-board segmented cache memory
JPH0659952A (ja) * 1992-08-07 1994-03-04 Toshiba Corp 磁気ディスク装置
WO1994022134A1 (en) * 1993-03-18 1994-09-29 Micropolis Corporation Buffer control for data transfer within hard disk during idle periods
US5748985A (en) * 1993-06-15 1998-05-05 Hitachi, Ltd. Cache control method and cache controller
JP3188071B2 (ja) * 1993-10-14 2001-07-16 富士通株式会社 ディスクキャッシュ装置
EP0781432B1 (en) * 1994-09-14 2006-12-06 Intel Corporation Multimedia editing system using pre-caching data utilizing thread lists
US5829018A (en) * 1994-10-25 1998-10-27 International Business Machines Corporation Apparatus and method for writing data from a cache to a storage device
JPH08185271A (ja) * 1994-12-27 1996-07-16 Internatl Business Mach Corp <Ibm> ディスク装置用データ処理方法及びディスク装置
US5805787A (en) * 1995-12-29 1998-09-08 Emc Corporation Disk based disk cache interfacing system and method
US5724501A (en) * 1996-03-29 1998-03-03 Emc Corporation Quick recovery of write cache in a fault tolerant I/O system
GB2345366B (en) 1997-10-08 2003-02-19 Seagate Technology Hybrid data storage and reconstruction system and method for a data storage device
JP3736305B2 (ja) * 2000-07-06 2006-01-18 日本電気株式会社 ディスクキャッシュシステムおよびディスクキャッシュ制御方法
US6640233B1 (en) * 2000-08-18 2003-10-28 Network Appliance, Inc. Reserving file system blocks
US6772288B1 (en) * 2000-09-06 2004-08-03 Stmicroelectronics, Inc. Extended cache memory system and method for caching data including changing a state field value in an extent record
US7000083B2 (en) * 2003-06-06 2006-02-14 International Business Machines Corp. Resynchronization of count key data with its corresponding meta data
US7130962B2 (en) * 2003-12-18 2006-10-31 Intel Corporation Writing cache lines on a disk drive
US7660945B1 (en) * 2004-03-09 2010-02-09 Seagate Technology, Llc Methods and structure for limiting storage device write caching
CN109725823B (zh) * 2017-10-27 2021-11-16 伊姆西Ip控股有限责任公司 用于管理混合存储盘阵列的方法和设备

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4399503A (en) * 1978-06-30 1983-08-16 Bunker Ramo Corporation Dynamic disk buffer control unit
JPS5892053A (ja) * 1981-11-28 1983-06-01 Nec Corp デイスクキヤツシユ装置

Also Published As

Publication number Publication date
JPS59153251A (ja) 1984-09-01
US4593354A (en) 1986-06-03

Similar Documents

Publication Publication Date Title
JPH0113571B2 (ja)
US9405680B2 (en) Communication-link-attached persistent memory system
US8700585B2 (en) Optimistic locking method and system for committing transactions on a file system
US7472138B2 (en) System and method for handing input/output errors during recovery of journaling files in a data processing system
EP1636690B1 (en) Managing a relationship between one target volume and one source volume
JP2710195B2 (ja) 記憶装置コントローラ
JPH03160534A (ja) 共用ファイルのアクセス制御方式
JPH04243458A (ja) チャネルー直接アクセス記憶装置間非同期通信システム
CN120704746A (zh) 寄存器重命名装置、处理器及维护寄存器映射表的方法
US20050223180A1 (en) Accelerating the execution of I/O operations in a storage system
US20170039110A1 (en) Computer
JPS6341149B2 (ja)
WO1991008537A1 (en) Data record copy apparatus for a virtual memory system
WO1991008536A1 (en) Data record move apparatus for a virtual memory system
JPH03218545A (ja) 計算機システム
JPH0447350A (ja) 主記憶読み出し応答制御方式
JPS6125168B2 (ja)
JPH01116851A (ja) プログラムのロード制御方式
JPH07271647A (ja) 二重化ファイルシステム
JPH0784727A (ja) ファイルシステム
JP2000311112A (ja) 情報システム
JPH02293947A (ja) 仮想記憶二重化方式
JPH04113432A (ja) 仮想記憶制御方法
JPH0157374B2 (ja)
JPS59195753A (ja) デイスク・キヤツシユメモリの制御方式