JPH08123729A - キャッシュ機構 - Google Patents

キャッシュ機構

Info

Publication number
JPH08123729A
JPH08123729A JP6264240A JP26424094A JPH08123729A JP H08123729 A JPH08123729 A JP H08123729A JP 6264240 A JP6264240 A JP 6264240A JP 26424094 A JP26424094 A JP 26424094A JP H08123729 A JPH08123729 A JP H08123729A
Authority
JP
Japan
Prior art keywords
data
writing
recording medium
write
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.)
Pending
Application number
JP6264240A
Other languages
English (en)
Inventor
Tsukuru Hougiyoku
造 宝玉
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.)
Sharp Corp
Original Assignee
Sharp Corp
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 Sharp Corp filed Critical Sharp Corp
Priority to JP6264240A priority Critical patent/JPH08123729A/ja
Publication of JPH08123729A publication Critical patent/JPH08123729A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【構成】 キャッシュ機構13は、電源を切っても書き
込んだ内容を保持するフラッシュメモリ12と、記録媒
体10側からホストコンピュータ2側への書き込み終了
の通知の発行の後で上記データを記録媒体10上へ記録
するのに失敗した場合に、上記データを上記フラッシュ
メモリ12に書き込むドライブコントローラ11とを備
えている。 【効果】 ライトビハインド動作を行っている場合で、
なおかつ、キャッシュの掃き出し動作において実際の記
録媒体への書き込みに失敗した場合に、確実にデータを
保存することができる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、コンピュータなどのホ
ストマシン用の外部記憶装置のキャッシュ機構に関する
ものである。
【0002】
【従来の技術】ハードディスクや光ディスク装置のよう
な外部記憶装置においては、ホストマシンとしてのコン
ピュータからの外部記憶装置に対する入出力にかかる時
間を短縮するために、実際の記録媒体に対して書き込み
・読み出しを行う代わりに、揮発性の半導体メモリを使
った一時記憶部としてのキャッシュメモリに対してデー
タの読み書きを行う場合がある。キャッシュ用のメモリ
素子として、通常は、外部記憶装置の内部に設けた半導
体メモリ素子が使用されている。
【0003】読み出し、書き込み、いずれの動作の場合
にも、記録媒体に対する動作を行った場合には、磁気ヘ
ッドあるいは光ヘッドといった機構部品を移動させる必
要があるため、数十〜数百ミリ秒の処理時間が必要とな
る。しかし、上記の半導体を用いたキャッシュメモリに
対する動作を行った場合には、数十マイクロ秒程度の処
理時間しか必要としないため、コンピュータ側から見た
場合の命令実行時間が見掛け上短縮されるので、処理の
高速化が図れるというものである。
【0004】読み出し命令に対するキャッシュの代表的
な方法は、一度読んだデータをキャッシュメモリに記録
しておき、再度同じアドレスに対する読み出し命令が発
せられた場合はキャッシュメモリ上のデータを返すこと
により、読み出し命令に対する実行時間の短縮が期待で
きるというものである。
【0005】また、書き込み命令に対しては、キャッシ
ュメモリにデータを書き込んだ時点で、データの書き込
みが終了したことをコンピュータに通知し、該外部記憶
装置に対するコンピュータからの命令が一定時間発せら
れなければ、実際の記録媒体への記録を実行する方法が
一般的で、一般にライトビハインド(後書き)キャッシ
ュと呼ばれている。
【0006】ここで、外部記憶装置における一般的な書
き込み動作について図9のフローチャートに基づいて説
明する。書き込み動作は、コンピュータから外部記憶装
置に対して書き込み命令を通知する(図中Aで示す)こ
とにより開始される。
【0007】このときのコンピュータ側の動作は、書き
込み命令を発行することである(S101)。この後、
コンピュータは外部記憶装置からの書き込み終了の通知
(図中Bで示す)を待つ(S102)。コンピュータ
は、この書き込み終了の通知Bが確認できれば、次の動
作へ進むことができる(S103)。すなわち、コンピ
ュータ側の動作においては、この書き込み終了の通知B
がなされなければ、次の動作(S103)へ進むことが
できない。
【0008】一方、書き込み命令を受信した外部記憶装
置側では、指定された領域に磁気ヘッドまたは光ヘッド
を移動し(S111)、指定されたデータを記録媒体に
書き込み(S112)、これが完了した時点で書き込み
の終了をコンピュータに対して送信する(S113)。
【0009】この場合、書き込み命令の受信から書き込
み終了の送信までの間に、磁気ヘッド等の移動を伴って
いるので、上で述べたように数十〜数百ミリ秒の時間を
必要とする。
【0010】したがって、外部記憶装置側において、磁
気ヘッド等を移動して記録媒体への書き込みを行ってい
る数十〜数百ミリ秒の間、コンピュータ側では、書き込
み終了の通知Bを待つ動作(S102)を続けることに
なり、結果として、書き込み命令の発行(S101)か
ら次の動作へ進む(S103)までに数十〜数百ミリ秒
がかかることになる。
【0011】次に、ライトビハインドキャッシュが動作
している場合の書き込み動作について図10のフローチ
ャートに基づいて説明する。動作の開始は、上記の場合
と同様、書き込み命令の通知である(図中Cで示す)。
コンピュータから外部記憶装置に対して書き込み命令を
発行し(S121)、コンピュータは外部記憶装置から
の書き込み終了の通知(図中Dで示す)を待つ(S12
2)。コンピュータは、上記同様、この書き込み終了の
通知が確認できれば次の動作へ進むことができる(S1
23)。すなわち、コンピュータ側の動作においては、
この書き込み終了の通知Dがなされなければ次の動作
(S123)へ進むことができないことは、上記のキャ
ッシュなしの場合と全く同じである。
【0012】書き込み命令を受信した外部記憶装置側で
は、キャッシュメモリへのデータの書き込みを行い(S
131)、上記と異なり、この時点で、書き込みの終了
をコンピュータに対して送信する(S132)。その
後、一定時間経過後に(S133)、キャッシュメモリ
に書き込んだ指示されたデータを読み取り(S13
4)、磁気ヘッドまたは光ヘッドを指定された領域に移
動し(S135)、指示されたデータを記録媒体上に実
際に書き込む(S136)。一般に、このS133から
S136までの動作はキャッシュの掃き出し動作(図中
Eで示す)と呼ばれている。
【0013】ところで、ライトビハインドキャッシュ動
作を伴った場合、コンピュータが書き込み終了の通知D
を待つ動作(S122)を行っている間には、外部記憶
装置においては、磁気ヘッドなどの移動が発生せず、半
導体メモリであるキャッシュメモリへの書き込み(S1
31)を行うだけなので、上述したように数十マイクロ
秒の時間しか必要としない。すなわち、書き込み命令の
発行(S121)から次の動作へ進む(S123)まで
に数十マイクロ秒しかかからない。
【0014】したがって、図9(ライトビハインドな
し)と図10(ライトビハインドあり)とを比べると、
図9(ライトビハインドなし)の場合は数十〜数百ミリ
秒だったものが、図10(ライトビハインドあり)にお
いては数十マイクロ秒に短縮されている。すなわち、こ
の短縮された時間がライトビハインドキャッシュの効果
である。
【0015】ここで、書き込み命令を発したコンピュー
タが、記録媒体上にデータを書いたかどうかということ
よりも、書き込み終了の通知だけをたよりに次の動作へ
進んでいるという点に注目すべきである。ライトビハイ
ンドキャッシュ動作によれば、外部記憶装置が書き込み
命令で指示されたデータを記録媒体上には書き込んでい
ないにもかかわらず、コンピュータは次の動作へ進むこ
とができるということである。
【0016】なお、通常、書き込み命令は、コンピュー
タ側で作成したデータ等を保存するために発せられるも
のであり、書き込み命令が終了したということは、デー
タの保存が完了したことを意味する。したがって、書き
込み命令を発したコンピュータ側では、次の動作に移行
するために、外部記憶装置側が命令の終了を通知した時
点で、この書き込み命令に使用したデータ等は破棄され
るのが普通である。
【0017】ここで、記録媒体への書き込みに失敗した
場合について考察する。まず、ライトビハインドキャッ
シュが動作していない場合で、書き込みに失敗した場合
について図11に基づいて説明する。これは、コンピュ
ータから外部記憶装置に対して書き込み命令を発行する
(S141)ことにより動作が開始する。ここで、コン
ピュータが書き込み命令に失敗した場合のことを考慮し
て作られておれば、書き込み終了の通知(図中Fとす
る)とともに書き込み失敗の通知(図中Gとする)を待
つ(S142、S144)。書き込み失敗の通知Gを受
け取った場合は、コンピュータは、データの保全動作
(S143)を行う。
【0018】データの保全動作とは、例えば、同一の書
き込み命令を再試行するか、または、全く別の領域を指
定した新たな書き込み命令を発行するなどの手段によ
り、書き込むべきデータを確実に記録するための何らか
の方策を講じることである。データの保全動作を行うの
は、コンピュータが次の動作へ進むためには前述した通
りこの書き込み命令に使用したデータ等を破棄する必要
があるため、もしデータの保全動作を行わず、書き込み
に失敗したままで次の動作へ進めば、コンピュータ上で
作成したデータ等が消失することになるからである。
【0019】コンピュータは、この書き込み終了の通知
Fが確認できれば、次の動作へ進むことができる(S1
45)。すなち、コンピュータ側の動作においては、こ
の書き込み終了の通知Fがなされなければ次の動作(S
145)へ進むことができない。
【0020】書き込み命令を受信した外部記憶装置側で
は、指定された領域に磁気ヘッドまたは光ヘッドを移動
し(S151)、指定されたデータを記録媒体に書き込
むが(S152)、正しく書き込まれたかどうかを確認
して(S153)、正しく書き込めていた場合は、コン
ピュータに対して書き込み終了を送信する(S15
5)。また、正しく書き込まれたかどうかを確認して
(S153)、正しく書き込めていないことがわかった
場合は、コンピュータに対して書き込みが失敗したこと
を送信する(S154)。
【0021】コンピュータ側では、書き込み終了の通知
Fを受信した場合は次の動作へ進むことができるが(S
145)、書き込み失敗の通知Gを受信した場合は、前
述のように、データ保全の動作が行われる(S14
3)。
【0022】このように、ライトビハインド動作を伴わ
ない場合は、例えば、記録媒体に傷があったなどの原因
により正しく書き込みができなかった場合でも、外部記
憶装置が書き込み失敗を通知し、コンピュータが書き込
み命令を発行した後で、書き込み失敗の通知が来ていな
いかを確認し、なおかつ、書き込み失敗の通知を受け取
った場合にコンピュータ側において何らかのデータ保全
のための方策を講じておくことにより、作成したデータ
等を消失することなく確実に保存することができる。
【0023】次に、ライトビハインド動作を行っている
場合で、記録媒体への書き込みに失敗した場合の動作に
ついて、図12のフローチャートを用いて説明する。こ
の場合もやはり、コンピュータから外部記憶装置に対し
て書き込み命令を発行する(S161)ことにより動作
が開始される。ここで、コンピュータが書き込み命令に
失敗した場合のことを考慮して作られておれば、書き込
み終了の通知(図中Iで示す)または書き込み失敗の通
知(図中Jで示す)を待つ(S162、S164)。こ
こで、書き込み失敗の通知Jを受け取った場合はコンピ
ュータがデータの保全動作を行う(S163)ことは、
ライトビハインドなしの場合と同様である。また、同様
に、コンピュータが、この書き込み終了の通知Iが確認
できれば次の動作へ進む(S165)ことができる。
【0024】命令を受信した外部記憶装置側では、キャ
ッシュメモリへのデータの書き込みを行い(S17
1)、この時点でコンピュータに対して書き込みの終了
を送信する(S172)。したがって、コンピュータは
この時点で終了の通知Iを受信し、これにより書き込み
終了が確認でき、次の動作へ進む(S165)ことがで
きる。そして、この時点で、書き込みに使用したデータ
等が破棄される。
【0025】そのあと、外部記憶装置側では、一定時間
経過後(S173)に、キャッシュの掃き出し動作を行
う。すなわち、キャッシュメモリに書き込んだ、指示さ
れたデータを読み取り(S174)、磁気ヘッドまたは
光ヘッドを指定された領域に移動し(S175)、指示
されたデータを記録媒体上に実際に書き込む(S17
6)という一連の動作を実行する。
【0026】
【発明が解決しようとする課題】ところが、上記キャッ
シュの掃き出し動作を実行中に、例えば、記録媒体上に
傷があったために、正しく書き込めなかった(S17
7)とする。この場合、外部記憶装置は書き込みに失敗
したことをコンピュータに送信する(S178)が、コ
ンピュータ側では、ほとんどの場合、以前に終了したは
ずの命令に対する失敗の通知Jを受け取れる構造になっ
ていないため、このような通知が来たことにより、実行
中のプログラムが暴走する。このような場合はコンピュ
ータシステムの全体を停止するしか方法はなく、保存す
べきデータは消失してしまう。
【0027】また、コンピュータ側において、以前の命
令が失敗したという通知を受け取る機能が備わっていた
としても、通知が来たときにはコンピュータ側では全く
別の動作を行っているために、S165において、すで
に書き込むべきデータが破棄されてしまっており、書き
込み命令の再試行等の回復手段を講じることができな
い。このため、やはり作成したデータが消失してしま
う。
【0028】すなわち、従来は、このように、ライトビ
ハインド動作を行っている場合で、なおかつ、キャッシ
ュの掃き出し動作において実際の記録媒体への書き込み
に失敗した場合に、確実にデータ消失が起こるという問
題がある。
【0029】
【課題を解決するための手段】上記の課題を解決するた
め、請求項1記載のキャッシュ機構は、ホストマシン側
から記録媒体上へのデータの書き込みの命令に対して一
旦上記データを一時記憶部上に記憶し、記録媒体側から
ホストマシン側への書き込み終了の通知の発行の後で一
定時間ホストマシンからの命令が入らない場合に上記の
記憶したデータを上記記録媒体上へ記録し、上記データ
が上記記録媒体上に正しく記録されなかった場合に書き
込み失敗をホストマシン側へ通知するキャッシュ機構に
おいて、電源を切っても書き込んだ内容を保持する補助
記憶部と、記録媒体側からホストマシン側への書き込み
終了の通知の発行の後で上記データを記録媒体上へ記録
するのに失敗した場合に上記データを上記補助記憶部上
に書き込む第1非常書き込み手段とを備えていることを
特徴としている。
【0030】請求項2記載のキャッシュ機構は、請求項
1記載のキャッシュ機構において、上記補助記憶部から
上記データを読み取る非常読み取り手段と、非常読み取
り手段によって読み取られたデータを記録媒体に書き込
む第2非常書き込み手段とを備えていることを特徴とし
ている。
【0031】請求項3記載のキャッシュ機構は、請求項
1または2記載のキャッシュ機構において、上記補助記
憶部として、上記記録媒体の中で、製造者領域とされ
る、通常の一般利用者が使うことができないように設定
された領域を用いることを特徴としている。
【0032】
【作用】上記の構成により、請求項1記載のキャッシュ
機構においては、記録媒体側からホストマシン側への書
き込み終了の通知の発行の後で上記データを記録媒体上
へ記録するのに失敗した場合、言い換えれば、ライトビ
ハインド動作を行っていて、キャッシュの掃き出し実行
の際の実際の記録媒体へのデータの書き込みに失敗した
場合、第1非常書き込み手段によって上記データが補助
記憶部に書き込まれる。
【0033】そのため、書き込み失敗の通知を受け取っ
たホストマシン側におけるプログラムの暴走等に対処す
るためにホストマシンおよびキャッシュ機構の電源を一
旦切ることとなっても、上記データが補助記憶部上に確
実に保存される。
【0034】したがって、あらためて、上記データを記
録媒体に保存する動作に戻ることができるようになるの
で、最終的には記録媒体上の通常の記憶部位に上記デー
タを保存することが確実に可能となる。
【0035】それによって、ライトビハインド動作を行
っている場合で、なおかつ、キャッシュの掃き出し動作
において実際の記録媒体への書き込みに失敗した場合
に、確実にデータを保存することができる。
【0036】また、請求項2記載のキャッシュ機構にお
いては、記録媒体側からホストマシン側への書き込み終
了の通知の発行の後で上記データを記録媒体上へ記録す
るのに失敗した場合、上記補助記憶部から、非常読み取
り手段によって上記データが読み取られ、非常読み取り
手段によって読み取られたデータが第2非常書き込み手
段によって記録媒体に書き込まれる。
【0037】それによって、記録媒体上の通常の記憶部
位に上記データを保存することがさらに確実に可能とな
る。
【0038】また、請求項3記載のキャッシュ機構にお
いては、上記補助記憶部として、上記記録媒体の中で、
製造者領域とされる、通常の一般利用者が使うことがで
きないように設定された領域が用いられるので、上記補
助記憶部専用の部材を新たに設ける必要がない。それに
よって、構成を簡略化することができる。
【0039】
【実施例】本発明の一実施例について図1ないし図8に
基づいて説明すれば、以下の通りである。ここでは、コ
ンピュータ用の外部記憶装置の一つである光磁気ディス
ク装置に対して、本発明に係るキャッシュ機構を、書換
え可能な不揮発性メモリであるフラッシュメモリ(フラ
ッシュEEROM、flush electrically erasableprogr
ammable read only memory )を用いて実現し、さら
に、データ復旧の手段も提供する一実施例を図とともに
説明する。
【0040】図1に示すように、本実施例のキャッシュ
機構を内蔵した光磁気ディスク装置1は、インターフェ
ースであるSCSI(small computer system interfac
e 、スカジー)3を用いてホストコンピュータ2(ホス
トマシン)と接続されており、このホストコンピュータ
2および光磁気ディスク装置1によってコンピュータシ
ステムが構成されている。したがって、光磁気ディスク
装置1に対する、ホストコンピュータ2からのデータの
読み取り、書き込み等の各種命令はSCSI3を経由し
て行われる。
【0041】一方、光磁気ディスク装置1の内部では、
SCSI3に、SCSI3を経由してホストコンピュー
タ2と記録媒体10との間でデータをやりとりするため
のデータバッファ4、エンコーダ6、デコーダ7、光ヘ
ッド8が接続されている。記録媒体10はサーボ機構9
によってフォーカスやトラッキング等を自動制御されて
いる。
【0042】また、ドライブコントローラ11(第1非
常書き込み手段、非常読み取り手段、第2非常書き込み
手段)が、データバッファ4、キャッシュメモリ5(一
時記憶部)、エンコーダ6、デコーダ7、サーボ機構
9、およびフラッシュメモリ12(補助記憶部)を制御
している。
【0043】上記キャッシュメモリ5、ドライブコント
ローラ11、およびフラッシュメモリ12によって、キ
ャッシュ機構13が構成されている。
【0044】ドライブコントローラ11のキャッシュ機
構が動作していない場合の大まかな制御の内容につい
て、図2に示すフローチャートを参照しつつ、以下に説
明する。
【0045】ホストコンピュータ2は、読み取り、書き
込み等の命令を、SCSI3を通して光磁気ディスク装
置1に送信する。光磁気ディスク装置1の内部では、ド
ライブコントローラ11が命令を解読し(S1)、読み
取り命令であるかどうかを判断する(S2)。読み取り
命令であった場合は、ドライブコントローラ11がホス
トコンピュータ2からの命令で指定された領域に光ヘッ
ド8を移動すべくサーボ機構9を制御する(S3、S
4)。ヘッド8の移動が完了したら、記録媒体10に記
録されたデータを光ヘッド8、デコーダ7経由で読み出
し、データバッファ5に格納し(S5)、そのデータを
SCSI3へ送り出す(S6)。そして、ドライブコン
トローラ11が、ホストコンピュータ2に対して、読み
出し命令の終了を通知する(S7)。
【0046】また、書き込み命令であると判断した場合
は(S8)、ドライブコントローラ11がホストコンピ
ュータ2からの命令で指定された領域に光ヘッド8を移
動すべくサーボ機構9を制御する(S9、S10)。ヘ
ッド8の移動が完了したら、SCSI3から受信した記
録すべきデータを、データバッファ5に格納した(S1
1)後にエンコーダ6、光ヘッド8経由で記録媒体10
に書き込む(S12)。そして、ドライブコントローラ
11が、ホストコンピュータ2に対して、書き込み命令
の終了を通知する(S13)。
【0047】読み出し、書き込み以外の命令であった場
合は該当する処理を実行する(S14)。
【0048】ここで、記録媒体10は、図3に示すよう
に、一般記憶領域10aと製造者領域10bとの2つの
領域に分割されており、次のような論理的構造を有して
いる。
【0049】一般記憶領域10aには、読み取り、書き
込み命令でデータの記憶場所を指定するためのロジカル
ブロックアドレス(LBA)が設定されている。このた
め、ホストコンピュータ2からの読み取り、書き込み命
令においてはLBAを用いて領域指定を行っている。
【0050】製造者領域10bは、記録媒体10の製造
者が製造時の検査等を行うために用意してある領域であ
り、LBAが設定されていない。このため、光磁気ディ
スク装置1の外部からこの領域に対して通常はデータの
読み取り、書き込みを行うことができない。したがっ
て、通常のデータの読み書きには利用されない。
【0051】次に、ホストコンピュータ2からデータ書
き込み命令を受信したときの、キャッシュ機構が動作し
ていない場合の大まかな制御の内容について、図4に示
すフローチャートに基づいて以下に説明する。ただし、
受信した書き込み命令の内容は、「nバイトのデータを
LBA=a1から始まる領域に記録する」という内容と
する。
【0052】ドライブコントローラ11がSCSI3経
由で受信したホストコンピュータ2からの命令を解読し
(S21)、書き込み命令であれば(S22)、命令の
内容が「nバイトのデータをLBA=a1から始まる領
域に記録する」という内容であることを検出する(S2
3)。
【0053】ここで、ドライブコントローラ11は、ホ
ストコンピュータ2からの命令で指定された領域、すな
わちLBA=a1の領域に光ヘッド8を移動すべくサー
ボ機構9を制御し(S24、S25)、ヘッド8の移動
が完了したら、SCSI3から受信した記録すべきデー
タnバイトを、データバッファ5に格納した(S26)
後にエンコーダ6、光ヘッド8経由で記録媒体10に書
き込む(S27)。
【0054】ここで、書き込みが正しく行われたかどう
かを検査し(S28)、正しく行われた場合は、書き込
み命令の終了をホストコンピュータ2に通知し(S3
0)、命令に対する動作を終了する。書き込みの検査を
行ったところ、正しく書き込めなかった場合は、書き込
み命令の失敗をホストコンピュータ2に通知し(S2
9)、命令に対する動作を終了する。
【0055】書き込み以外の命令であった場合は該当す
る処理を実行する(S31)。
【0056】次に、本実施例におけるキャッシュ動作を
有効にした場合の書き込み動作について図5に基づいて
説明する。受信した書き込み命令の内容は、先ほどの説
明と同様に、「nバイトのデータをLBA=a1から始
まる領域に記録する」という内容とする。
【0057】この場合も、ドライブコントローラ11が
SCSI3経由で受信したホストコンピュータ2からの
命令を解読し(S41)、書き込み命令であるかどうか
を検査する(S42)。書き込み命令でなかった場合
は、書き込み以外の該当する命令に対する処理を行う
(S43)。書き込み命令であった場合は、キャッシュ
データの書き込み動作を実行する(S44)。
【0058】ここで、このキャッシュの書き込み動作の
詳しい内容について図6に基づいて説明する。キャッシ
ュを伴わない場合と同様に、ドライブコントローラ11
がSCSI3経由で受信したホストコンピュータ2から
の命令を解読し(S61)、命令の内容が「nバイトの
データをLBA=a1から始まる領域に記録する」とい
う内容であることを検出する(S62)。そして、書き
込むデータをSCSI3から受信し、データバッファ4
に格納する(S63)。
【0059】次に、上記データに、制御用データとし
て、本来記録すべきLBA(すなわちa1)と、本来記
録すべきバイト数(n)とを付加する(S64)。これ
により、上記データに対するキャッシュ用データが生成
される。
【0060】次に、生成したキャッシュ用データをキャ
ッシュメモリ5に書き込む(S65)。この動作が完了
した時点で、ホストコンピュータ2に対して、SCSI
3経由で書き込み命令の終了を通知し(S66)、キャ
ッシュの書き込み動作を完了する。
【0061】ホストコンピュータ2は、従来同様、この
書き込み終了の通知が確認できれば次の動作へ進むこと
ができる。なお、上記キャッシュの書き込み動作は、半
導体メモリであるキャッシュメモリ5への書き込みを行
うだけなので、従来同様、数十マイクロ秒の時間しか必
要としない。すなわち、書き込み命令の発行から次の動
作へ進むまでに数十マイクロ秒しかかからず、十分敏速
な処理を行うことが可能となっている。
【0062】ここで、前述の図5に示す全体動作に説明
を戻す。キャッシュの書き込み動作が完了(S44)す
ると、ドライブコントローラ11が時間の計測を開始し
(S45、S46)、一定時間(本実施例ではこの時間
を30秒と定めることにする)が経過してもホストコン
ピュータ2からの新たな命令を受信しなかった場合、上
記キャッシュ用データの本来の記録場所である記録媒体
10の該当領域(LBA=a1から始まるnバイトの領
域)(図3参照)への書き込み動作(掃き出し動作、後
述)を開始する(S47)。新たな命令が発行されてい
た場合は、その新たな命令の処理を行う(S48)。
【0063】ここで、上記キャッシュ用データの掃き出
し動作の詳細な内容について図7に基づいて説明する。
まず、上記S44においてキャッシュメモリ5に記録さ
れたデータをデータバッファ4に転送・読み込む(S7
1)。ここで、元のデータにあらかじめ付加しておいた
上記制御用データを調べて、先ほどの書き込み命令の内
容が「nバイトのデータをLBA=a1から始まる領域
に記録する」という内容であったことを検出する(S7
2)。
【0064】次に、本来の書き込み命令で指定された記
録を実行すべく、記録媒体10のLBA=a1の場所に
光ヘッド8を移動するよう、サーボ機構9を制御する
(S73、S74)。光ヘッド8の移動が完了した後、
データバッファ4上にある、本来記録すべき、与えられ
た通りの(制御用データを除いた)データnバイトを、
エンコーダ6および光ヘッド8経由で記録媒体10に記
録する(S75)。
【0065】そして、書き込みが正しく行われたかどう
かを検査し(S76)、正しく行われた場合は、キャッ
シュ用データの掃き出し動作を完了する。
【0066】一方、S76において書き込みの検査を行
ったところ、正しく書き込めなかった場合は、ドライブ
コントローラ11が、キャッシュメモリ5にあるキャッ
シュ用データをフラッシュメモリ12に転送して書き込
み(S77)、書き込み命令の失敗をホストコンピュー
タ2に通知して(S78)、命令に対する動作を終了す
る。
【0067】そのため、ドライブコントローラ11から
書き込み失敗の通知を受け取ったホストコンピュータ2
側におけるプログラムの暴走等に対処するために、コン
ピュータシステムの電源を一旦切ることとなっても、上
記データがフラッシュメモリ12上に確実に保存され
る。
【0068】したがって、あらためて、上記データを記
録媒体10に保存する動作に戻ることができるようにな
るので、最終的には記録媒体10上の通常の記憶部位で
ある一般記憶領域10a(図3参照)に上記データを保
存することが確実に可能となる。
【0069】それによって、ライトビハインド動作を行
っている場合で、なおかつ、キャッシュの掃き出し動作
において実際の記録媒体への書き込みに失敗した場合
に、確実にデータを保存することができる。
【0070】次に、上記のように記録媒体への書き込み
が失敗し、ホストコンピュータ2が、以前の書き込み命
令への失敗の通知を受信した結果、プログラムが暴走し
た場合において、上記書き込み命令で受信したデータを
復旧する手順について図8に基づいて説明する。まず、
プログラムの暴走を終了させるために、オペレータが、
ホストコンピュータ2および光磁気ディスク装置1の電
源を一旦すべて切り(S81)、電源を再投入する(S
82)。これによって新たな作業を開始できる状態にな
る。
【0071】次に、ドライブコントローラ11が、フラ
ッシュメモリ12に書き込んである前記キャッシュ用デ
ータの内容を、キャッシュメモリ5経由でデータバッフ
ァ4に転送する(S83)。そして、ドライブコントロ
ーラ11が上記キャッシュ用データ中の制御データを読
み、元の書き込み命令が「nバイトのデータをLBA=
a1から始まる領域に記録する」という内容であったこ
とを検出する(S84)。
【0072】そして、S73ないしS75と同様の動作
(S85〜S87)を行う。すなわち、ドライブコント
ローラ11が、本来の書き込み命令で指定された記録を
実行すべく、記録媒体10のLBA=a1の場所に光ヘ
ッド8を移動するよう、サーボ機構9を制御する(S8
5、S86)。光ヘッド8の移動が完了した後、データ
バッファ4上にある、本来記録すべき、与えられた通り
の(制御用データを除いた)データnバイトを、エンコ
ーダ6および光ヘッド8経由で記録媒体10に記録する
(S87)。
【0073】それによって、記録媒体10上の通常の記
憶部位に上記データを保存することがさらに確実に可能
となる。
【0074】また、例えば記録媒体10の上記LBA=
a1の場所に傷がある等の記録上の支障がある場合に
は、一般記憶領域10a内の別の場所を指定して新たな
書き込み命令を発行することもできる。あるいは、記録
媒体10以外の記録媒体(例えば別の光磁気ディスクや
磁気ディスク等)を指定して新たな書き込み命令を発行
することもできる。それにより、上記データを保存する
ことがさらに確実に可能である。
【0075】なお、本実施例では補助記憶部としてフラ
ッシュメモリを用いたが、これに限定されず、電源を切
っても記憶内容が保持されればよい。そのため、上記フ
ラッシュメモリの代わりに、前述の、記録媒体10内の
製造者領域10bを用いてもよい。
【0076】この場合は、上で説明した、「nバイトの
データをLBA=a1から始まる領域に記録する」とい
う内容の命令に対する動作は、(データnバイト)+
(LBA=a1)+(バイト数n)という内容のキャッ
シュデータを製造者領域10bの先頭(アドレスb1)
に記録することである。
【0077】このような構成にすれば、補助記憶部専用
の部材を新たに設ける必要がないので、キャッシュ機構
の構成を簡略化することができる。
【0078】
【発明の効果】以上のように、本発明の請求項1記載の
キャッシュ機構は、ホストマシン側から記録媒体上への
データの書き込みの命令に対して一旦上記データを一時
記憶部上に記憶し、記録媒体側からホストマシン側への
書き込み終了の通知の発行の後で一定時間ホストマシン
からの命令が入らない場合に上記の記憶したデータを上
記記録媒体上へ記録し、上記データが上記記録媒体上に
正しく記録されなかった場合に書き込み失敗をホストマ
シン側へ通知するキャッシュ機構において、電源を切っ
ても書き込んだ内容を保持する補助記憶部と、記録媒体
側からホストマシン側への書き込み終了の通知の発行の
後で上記データを記録媒体上へ記録するのに失敗した場
合に上記データを上記補助記憶部上に書き込む第1非常
書き込み手段とを備えている構成である。
【0079】それゆえ、ライトビハインド動作を行って
いる場合で、なおかつ、キャッシュの掃き出し動作にお
いて実際の記録媒体への書き込みに失敗した場合に、確
実にデータを保存することができるという効果を奏す
る。
【0080】請求項2記載のキャッシュ機構は、請求項
1記載のキャッシュ機構において、上記補助記憶部から
上記データを読み取る非常読み取り手段と、非常読み取
り手段によって読み取られたデータを記録媒体に書き込
む第2非常書き込み手段とを備えている構成である。
【0081】それゆえ、記録媒体上の通常の記憶部位に
上記データを保存することがさらに確実に可能となると
いう効果を奏する。
【0082】請求項3記載のキャッシュ機構は、請求項
1または2記載のキャッシュ機構において、上記補助記
憶部として、上記記録媒体の中で、製造者領域とされ
る、通常の一般利用者が使うことができないように設定
された領域を用いる構成である。
【0083】それゆえ、構成を簡略化することができる
という効果を奏する。
【図面の簡単な説明】
【図1】本発明の一実施例のキャッシュ機構を備えた光
磁気ディスク装置およびホストコンピュータの概略の構
成を示す説明図である。
【図2】図1のキャッシュ機構におけるドライブコント
ローラの読み出し命令および書き込み命令に対する制御
内容の概略を示すフローチャートである。
【図3】図1の光磁気ディスク装置に設けられた記録媒
体の論理的構造を示す説明図である。
【図4】書き込み命令を受信したときの通常の書き込み
動作の概略を示すフローチャートである。
【図5】図1のキャッシュ機構において書き込み命令を
受信したときの動作の概略を示すフローチャートであ
る。
【図6】図1のキャッシュ機構において書き込み命令を
受信したときのデータ書き込み動作の概略を示すフロー
チャートである。
【図7】図1のキャッシュ機構において書き込み命令を
受信したときのデータ掃き出し動作の概略を示すフロー
チャートである。
【図8】図1のキャッシュ機構において書き込みに失敗
したときのデータ復旧動作の概略を示すフローチャート
である。
【図9】従来のキャッシュ機構のない記録装置およびコ
ンピュータにおける書き込み動作の概略を示すフローチ
ャートである。
【図10】従来のキャッシュ機構のある記録装置および
コンピュータにおける書き込み動作の概略を示すフロー
チャートである。
【図11】従来のキャッシュ機構のない記録装置および
コンピュータにおける書き込みに失敗したときのデータ
復旧動作の概略を示すフローチャートである。
【図12】従来のキャッシュ機構のある記録装置および
コンピュータにおける書き込みに失敗したときの動作の
概略を示すフローチャートである。
【符号の説明】
1 光磁気ディスク装置 2 ホストコンピュータ(ホストマシン) 5 キャッシュメモリ(一時記憶部) 10 記録媒体 10a 一般記憶領域 10b 製造者領域 11 ドライブコントローラ(第1非常書き込み手
段、非常読み取り手段、第2非常書き込み手段) 12 フラッシュメモリ(補助記憶部) 13 キャッシュ機構

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】ホストマシン側から記録媒体上へのデータ
    の書き込みの命令に対して一旦上記データを一時記憶部
    上に記憶し、記録媒体側からホストマシン側への書き込
    み終了の通知の発行の後で一定時間ホストマシンからの
    命令が入らない場合に上記の記憶したデータを上記記録
    媒体上へ記録し、上記データが上記記録媒体上に正しく
    記録されなかった場合に書き込み失敗をホストマシン側
    へ通知するキャッシュ機構において、 電源を切っても書き込んだ内容を保持する補助記憶部
    と、 記録媒体側からホストマシン側への書き込み終了の通知
    の発行の後で上記データを記録媒体上へ記録するのに失
    敗した場合に上記データを上記補助記憶部上に書き込む
    第1非常書き込み手段とを備えたことを特徴とするキャ
    ッシュ機構。
  2. 【請求項2】上記補助記憶部から上記データを読み取る
    非常読み取り手段と、 非常読み取り手段によって読み取られたデータを記録媒
    体に書き込む第2非常書き込み手段とを備えていること
    を特徴とする請求項1記載のキャッシュ機構。
  3. 【請求項3】上記補助記憶部として、上記記録媒体の中
    で、製造者領域とされる、通常の一般利用者が使うこと
    ができないように設定された領域を用いることを特徴と
    する請求項1または2記載のキャッシュ機構。
JP6264240A 1994-10-27 1994-10-27 キャッシュ機構 Pending JPH08123729A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6264240A JPH08123729A (ja) 1994-10-27 1994-10-27 キャッシュ機構

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6264240A JPH08123729A (ja) 1994-10-27 1994-10-27 キャッシュ機構

Publications (1)

Publication Number Publication Date
JPH08123729A true JPH08123729A (ja) 1996-05-17

Family

ID=17400439

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6264240A Pending JPH08123729A (ja) 1994-10-27 1994-10-27 キャッシュ機構

Country Status (1)

Country Link
JP (1) JPH08123729A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6418519B1 (en) * 1998-08-18 2002-07-09 International Business Machines Corporation Multi-volume, write-behind data storage in a distributed processing system
JP2016021133A (ja) * 2014-07-14 2016-02-04 株式会社東芝 磁気ディスク装置、及びライトコマンドを実行する方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6418519B1 (en) * 1998-08-18 2002-07-09 International Business Machines Corporation Multi-volume, write-behind data storage in a distributed processing system
JP2016021133A (ja) * 2014-07-14 2016-02-04 株式会社東芝 磁気ディスク装置、及びライトコマンドを実行する方法

Similar Documents

Publication Publication Date Title
JPH05303539A (ja) ディスク制御装置
US20020012298A1 (en) Information recording apparatus, information recording system and information recording medium
JPH08123729A (ja) キャッシュ機構
JP2004062663A (ja) ディスク記憶装置において実行されるプログラムを書き換えるための方法及び装置
JP3595550B1 (ja) 情報記録再生装置と情報記録再生方法とプログラム
JP3244203B2 (ja) 情報処理装置
US20050071558A1 (en) Method and apparatus for increasing storage capacity in a disk array system
JPH0793101A (ja) データバックアップ装置
JPH06348600A (ja) ディスクキャッシュ装置
JP3439425B2 (ja) データ記録装置およびデータ記録方法
JPS5834003B2 (ja) 信号の保全性の確認方法
JPS59206963A (ja) 入出力制御方式
JPS59197947A (ja) 二重化フアイルの情報更新方式
JPS61248107A (ja) 数値制御装置における大容量パ−トプログラム運転方式
JPS6324501Y2 (ja)
JPH07295761A (ja) ミラーリング磁気ディスク装置
JP2957380B2 (ja) 磁気ディスク用ヘッド位置づけ制御装置
JPS63201885A (ja) Icメモリカ−ドリ−ダ/ライタ
JPS62235662A (ja) 磁気デイスク制御装置
JPH03129515A (ja) ディスク装置の二重化制御方式
JPH02312068A (ja) 記録制御方法
JPH02173849A (ja) 半導体記憶装置
JPS6086622A (ja) デイスク装置の入出力制御装置
JPH08255058A (ja) ディスクキャッシュ制御装置
JPS5887636A (ja) プログラム・ロ−ド方式