JPH06139122A - ファイル記憶装置 - Google Patents

ファイル記憶装置

Info

Publication number
JPH06139122A
JPH06139122A JP4285999A JP28599992A JPH06139122A JP H06139122 A JPH06139122 A JP H06139122A JP 4285999 A JP4285999 A JP 4285999A JP 28599992 A JP28599992 A JP 28599992A JP H06139122 A JPH06139122 A JP H06139122A
Authority
JP
Japan
Prior art keywords
data
disk
area
block
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
JP4285999A
Other languages
English (en)
Inventor
Tetsuo Hasegawa
哲夫 長谷川
Asako Kitamura
麻子 北村
Toshibumi Seki
俊文 關
Yasukuni Oiyake
泰邦 岡宅
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
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP4285999A priority Critical patent/JPH06139122A/ja
Publication of JPH06139122A publication Critical patent/JPH06139122A/ja
Pending legal-status Critical Current

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Power Sources (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

(57)【要約】 【目的】電源断などの障害によって失うファイルを最小
限に抑えることにある。 【構成】複数ブロックから構成されるキャッシュを有
し、このキャッシュのデータで不揮発なデイスクをアク
セスして該当するブロックのデータを更新するファイル
記憶装置において、デスク上に設けられた一時記憶エリ
アと、キャッシュのブロックのデータの更新要求が生じ
た時に一時記憶エリアに該ブロックのデータを保存でき
る空き領域があればその領域を確保し、不足していれば
ディスクのデータをこれまでに更新が行われたキャッシ
ュの全ブロックのデータに更新する要求を出し、一時記
憶エリアを解放して空き領域を確保する領域確保手段
と、ディスクのデータをキャッシュのデータで更新する
要求が生じた時にディスクのデータを確保された一時記
憶エリアの領域に転送して保存してディスクのデータを
キャッシュのブロックのデータで更新するディスク更新
手段とを備える。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は小形計算機のファイルシ
ステムにおいて、電源断等の障害発生時に喪失するファ
イルを最小限に抑えることが可能なファイル記憶装置に
関する。
【0002】
【従来の技術】近年、計算機システムのダウンサイジン
グに伴って、耐障害性の要求される分野においても、小
型計算機のファイルシステムのように耐障害性が考慮さ
れていないファイル記憶装置が利用されるようになって
きている。
【0003】このようなファイルシステムにおいては、
ファイルシステムの管理情報とファイルデータが別々の
キャッシユに格納され、独立してディスクに実更新され
ている。そのため、例えば管理情報のみがデイスクに実
更新された状態で電源断などの障害が発生し、ファイル
データに関するキャッシュ内の情報がファイルシステム
に反映されないと、ディスク上でファイルシステムの整
合性が取れずに多くのファイルを失ってしまう。従っ
て、最悪の場合には計算機の立ち上げ時に必要なファイ
ルを失ってしまい、立ち上げることもできなくなってし
まう。
【0004】そこで、従来では電源断などの障害発生時
に全キャッシュ内の情報をディスクに実更新する機構の
組込みとそのために必要な電力が供給可能な無停電電源
装置を設けることで対処していた。
【0005】
【発明が解決しようとする課題】しかし、電源断などの
障害発生時に備えて小型計算機に比して非常に高価な無
停電電源装置を設置することは、費用がかさむばかりで
なく、小型計算機を使用するメリットがなくなってしま
う。
【0006】本発明はこのような事情に対処してなされ
たもので、無停電電源装置などの新たな装置の追加を行
うことなく、電源断などの障害によって失うファイルを
最小限に抑えることによって経済的にも有利になると同
時に小型計算機を使用するメリットを十分に発揮させる
ことができるファイル記憶装置を提供することを目的と
する。
【0007】
【課題を解決するための手段】本発明は上記の目的を達
成するため、以下のような手段によりファイル記憶装置
を構成するものである。
【0008】請求項1に対応する発明は、一次メモリ上
に複数ブロックから構成されるディスクキャッシュを有
し、且つこのディスクキャッシュのデータで不揮発な二
次メモリを構成するデイスクをアクセスして該当するブ
ロックのデータを更新するファイル記憶装置において、
前記デスク上に設けられた一時記憶エリアと、前記ディ
スクキャッシュのブロックのデータの更新要求が生じた
時に前記一時記憶エリアに該ブロックのデータを保存で
きる空き領域があるか否かを判定し、空き領域があれば
その領域を確保し、空き領域が不足していれば前記ディ
スクのデータをこれまでに更新が行われたディスクキャ
ッシュの全ブロックのデータに更新する要求を出すと共
に、前記一時記憶エリアを解放して空き領域を確保する
領域確保手段と、前記ディスクのデータを前記ディスク
キャッシュのブロックのデータで更新する要求が生じた
時に前記ディスクのデータを前記領域確保手段で確保さ
れた一時記憶エリアの領域に転送して保存すると共に、
前記ディスクのデータを前記ディスクキャッシュのブロ
ックのデータで更新するディスク更新手段とを備えたも
のである。
【0009】請求項2に対応する発明は、一次メモリ上
に複数ブロックから構成されるディスクキャッシュを有
し、且つこのディスクキャッシュのデータで不揮発な二
次メモリを構成するデイスクをアクセスして該当するブ
ロックのデータを更新するファイル記憶装置において、
前記デスク上に設けられた一時記憶エリアおよび前記一
次メモリ上に設けられた連続した一時記憶領域と、前記
ディスクキャッシュのブロックのデータの更新要求が生
じた時に前記ディスク上の一時記憶エリアに該ブロック
のデータを保存できる空き領域があるか否かを判定し、
空き領域があればその領域を確保し、空き領域が不足し
ていればこれまでにデータの更新が行われた前記ディス
クキャッシュの全ブロックと同じアドレスの前記ディス
ク上のブロックのデータを前記一次メモリ上の連続した
一次記憶領域に保存すると共に、該一次メモリ上の連続
した一時記憶領域のデータを前記ディスク上の一時記憶
エリアに一括転送して保存し、且つ前記ディスクのデー
タを更新対象となったディスクキャッシュのブロックの
データで更新し、前記ディスク上の一時記憶エリアを解
放して空き領域を確保する領域確保手段と、前記ディス
クのデータを前記ディスクキャッシュのブロックのデー
タで更新する要求が生じた時に前記ディスクのデータを
前記領域確保手段で確保された一時記憶エリアの領域に
転送して保存すると共に、前記ブロックのデータを前記
ディスクキャッシュのブロックのデータで更新するディ
スク更新手段とを備えたものである。
【0010】請求項3に対応する発明は、一次メモリ上
に複数ブロックから構成されるディスクキャッシュを有
し、且つこのディスクキャッシュのデータで不揮発な二
次メモリを構成するデイスクをアクセスして該当するブ
ロックのデータを更新するファイル記憶装置において、
前記デスク上に設けられた一時記憶エリアおよび前記一
次メモリ上に設けられた連続した一時記憶領域と、前記
ディスクキャッシュのブロックのデータの更新要求が生
じた時に前記ディスク上の一時記憶エリアに該ブロック
のデータを保存できる空き領域があるか否かを判定し、
空き領域があればその領域を確保し、空き領域が不足し
ていればこれまでにデータの更新が行われた前記ディス
クキャッシュの全ブロックと同じアドレスの前記ディス
ク上のブロックのデータを前記一次メモリ上の連続した
一次記憶領域に保存すると共に、該一次メモリ上の連続
した一時記憶領域のデータを前記ディスク上の一時記憶
エリアに一括転送して保存し、且つ前記ディスクのデー
タを更新対象となったディスクキャッシュのブロックの
データで更新し、前記ディスク上の一時記憶エリアを解
放して空き領域を確保する領域確保手段と、前記ディス
クのデータを前記ディスクキャッシュのブロックのデー
タで更新する要求が生じた時に前記ディスクのデータを
前記領域確保手段で確保された一時記憶エリアの領域に
転送して保存すると共に、前記ブロックのデータを前記
ディスクキャッシュのブロックのデータで更新するディ
スク更新手段とを備えたものである。
【0011】
【作用】請求項1に対応する発明にあっては、ディスク
の複数のブロックのデータを更新する場合には、まずデ
ィスク上の一時記憶エリアにこれらブロックの古いデー
タを転送して保存し、その後でディスクを更新するた
め、どのタイミングで障害が発生してもディスクのデー
タを更新前に戻すことが可能である。また、これから行
なう操作で更新するブロックが一時記憶エリアの空き領
域が不足して確保できない場合は、ディスクキャッシュ
の中の変更のあった全ブロックを同様の手順でディスク
を更新し、ディスクのデータの整合性を取るため、ディ
スクデータは定期的に整合性が取られる。
【0012】従って、ディスクキャッシュのブロックの
データがディスクに反映されずにディスク上で整合性が
取れていない状態で障害が発生してディスクキャッシュ
のデータが失われたとしても、一時記憶エリアのデータ
でディスクを更新することにより、前回ディスク上の整
合性を取った時の状態に戻すことができる。
【0013】請求項2に対応する発明にあっては、ディ
スクを更新するときに同時に旧データキャッシュにも保
存することにより、次回ディスクの同一箇所を更に更新
する時にディスクの旧データは旧データキャッシュにも
保存されている。
【0014】従って、請求項1に対応する発明ではディ
スクデータを更新する前にディスクの旧データを一時記
憶エリア転送して保存するのに2回のアクセスが必要で
あるが、請求項2に対応する発明においては旧データキ
ャッシュから一時記憶エリアに転送して保存するため、
ディスクアクセスは1回で済ませることが可能となる。
【0015】さらに、請求項3に対応する発明にあって
は、変更のあったブロックすべてのデータを一旦メモリ
上に連続した一時記憶領域に集め、そこからNブロック
分を一括してディスク上の一時記憶エリアに転送して保
存している。
【0016】従って、請求項1に対応する発明では一時
記憶エリアの全領域が確保され、ディスクデータをディ
スクキャッシュの中の変更のあったすべてのブロックデ
ータで更新するときはブロック1個につきディスクの旧
データの読込み、一時記憶エリアへの保存、ディスクへ
の新データの書込みの計3回のアクセスがあり、ブロッ
クN個で3*N回のアクセスが必要になるが、請求項3
に対応する発明においては1回のアクセス、ブロック毎
のディスクへの新データの書込みでN回の計N+1回の
アクセスで済む。また、この一括の保存が終了するまで
に障害が発生した場合にはそれまでに一時記憶エリアに
保存してあったデータでディスクを更新することによっ
てディスクのデータを前回整合性を取った状態に戻すこ
とができる。さらに、一括の保存終了後、ディスクをブ
ロック毎に新データで更新中に障害が発生した場合には
この一括保存したデータでディスクを更新することによ
り、ディスクを整合性の取れた状態にすることができ
る。このことにより請求項1に対応する発明に比べて少
ないアクセス回数で障害発生時にもディスクを整合性の
取れた状態に戻すことができる。
【0017】
【実施例】以下本発明の実施例を図面を参照して説明す
る。図1は、本発明によるファイル記憶装置の第1の実
施例を示すブロック図である。
【0018】図1において、1は書込み要求が入力され
るとデータの確保先を操作するキャッシング手段、2は
一次メモリ上に複数のブロックから構成され且つ各ブロ
ックにデータが書込まれるディスクキャッシュで、この
ディスクキャッシュ1は例えば10個のブロックからな
り、初期状態にあるときはそれぞれ図2に示すようにな
っている。3はディスクキャッシュ2に書込まれたデー
タをブロックに対応させて保存する不揮発なディスク、
4はこのデイスク上に設けられた一時記憶エリアで、こ
の一時記憶エリア4は初期状態にあるとき図3に示すよ
うになっている。
【0019】また、5はキャッシング手段1よりブロッ
クのデータの書込み要求の問合わせがあるとディスクキ
ャッシュ2のブロックのデータの更新要求が生じた時に
ディスク上の一時記憶エリア4に該ブロックのデータを
保存できる空き領域があるか否かを判定し、空き領域が
あればその領域を確保し、空き領域がなければディスク
3のデータをこれまでに更新が行われたディスクキャッ
シュ2の全ブロックのデータに更新する要求を出すと共
に、ディスク上の一時記憶エリア4を解放して空き領域
として該領域を確保する領域確保手段である。
【0020】さらに、6はこの領域確保手段5によりデ
ィスク上の一時記憶エリア4に空き領域が確保される
と、この空き領域にディスク3のデータを転送して保存
すると共に、ディスク3のデータをディスクキャッシュ
2のデータで更新するディスク更新手段である。次に上
記のように構成された第1の実施例装置の作用を図13
及び図14に示すフローチャートを参照しながら述べ
る。
【0021】いま、図1に示すファイル記憶装置におい
て、最初ディスク上で整合性が保たれている時に図4に
示す操作の要求がきた場合を例とし、どの時点でもディ
スク上の一時記憶エリア4に整合性が保たれている時の
データが保存されているものとする。ここで、図4にお
いて、ブロックアドレスとは読書きの箇所が含まれるブ
ロックのアドレスである。
【0022】まず、図4の操作1で、アドレス2000〜20
09の10ブロックへの書込み要求がキャッシング手段1
に入力されると、図13に示すフローが起動され、領域
確保手段5に10ブロック分の確保を依頼する(ステッ
プS1)。
【0023】一方、領域確保手段5がキャッシング手段
1により呼出されると、図14に示すフローが起動さ
れ、この領域確保手段5はディスク上の一時記憶エリア
4が図3のように初期状態にあり、確保数が0でエリア
の大きさが15あるので、10ブロック分確保できると
判定し(ステップS11)、確保数(0)に10を加え
て10にする(ステップS16)。
【0024】引続きキャッシング手段1は、ブロック20
00〜2009に対して、まずアドレス2000が図2に示すディ
スクキャッシュ2内に存在していないことを判定し(ス
テップS2)、「変更無」のブロックが存在するので
(ステップS3)、ディスクキャッシュ2から1つ選ん
で(No.1とする)そのブロックにデイスク3からアドレ
ス2000のブロックを読込み「変更無」にし(ステップS
7)、且つ要求が書込みなので(ステップS8)、デー
タを変更して状態を「変更有」にする(ステップS
9)。この結果、ディスクキャッシュ2は図5に示すよ
うになる。まだブロック2001〜2009が未処理なので(ス
テップS10)、引続きブロック2001〜2009に対して、
同様にステップS2〜S10が繰返し処理され、操作1
が終了後のディスクキャッシュ2は図6に示すようにな
る。
【0025】次に図4の操作2のアドレス2010〜2014の
5ブロックの書込み要求がキャッシング手段1に入力さ
れると、図13のフローに従い、領域確保手段5にこれ
ら5ブロック分の確保を依頼する(ステップS1)。
【0026】一方、領域確保手段5が呼出されると、こ
の領域確保手段5は図14に示すフローに従い、確保数
が10でエリアの大きさが15あり、さらに5ブロック
分確保できるので(ステップS11)、確保数(10)
に5を加えて15にする(ステップS16)。
【0027】引続きキャッシング手段1はブロック2010
〜2014に対して、まずアドレス2010は図6に示すディス
クキャッシュ2内に存在せず(ステップS2)、更に
「空き」または「変更無」のブロックが存在しないので
(ステップS3)、ブロックを1つ選んで(No.1) (ス
テップS4)、このブロックのデータ(アドレス2000)
でディスク3を更新させる要求をディスク更新手段6に
出す。
【0028】この要求を受けるとディスク更新手段6は
図15に示すフローが起動され、アドレス2000のデータ
が一時記憶エリア4に存在しないので(ステップS1
7)、ディスク3のアドレス2000のデータを読み(ステ
ップS18)、図3で「回」が「今回」の1よりも小さ
い0となっているNO.1の「回」を1にして、アドレスと
データを書込む(ステップS19)。その後、ディスク
キャッシュ2のNO.1のブロックのデータでデイスク3の
アドレス2000を更新し(ステップS20)、ディスクキ
ャッシュ2のNO.1を「変更無」にする(ステップS2
1)。
【0029】この結果、一時記憶エリア4は図7に示す
ようになる。この時、ディスク3内のアドレス2000のデ
ィスクデータは他のアドレスと整合性が取れないが、他
のアドレスと整合性の取れていた古いデータは一時記憶
エリア4に保存されており、「今回」の1と同じ1を持
つブロックをディスク3に書き戻すことによって整合性
の取れていた最初の状態に復活できる。
【0030】キャッシング手段1は引続き、ディスクキ
ャッシュ2のNO.1を「空き」にし(ステップS6)、要
求が書込みなので(ステップS8)、データを更新して
状態を「変更有」にする(ステップS9)。まだブロッ
ク2011〜2014が未処理なので(ステップS10)、引続
きブロック2011〜2014に対して同様にステップS1〜S
10が繰返し処理され、この結果ディスクキャッシュ2
は図8に示すようになり、ディスク上の一時記憶エリア
4は図9に示すようになる。
【0031】次に図4の操作3のアドレス2015〜2019の
5ブロックへの書込み要求がキャッシング1に入力され
ると、図13のフローに従い、領域確保手段5にこれら
5ブロック分の確保を依頼する(ステップSS1)。
【0032】一方、領域確保手段5が呼出されると、図
14に従って確保数が15でエリアの大きさが15であ
り、要求の合った5ブロック分の空き領域が確保できな
いので(ステップS11)、ディスクキャッシュ2の
「変更有」の全ブロック(図8に示すようにブロック20
10〜2014,2005〜2009)のデータでディスク3を更新す
る要求をディスク更新手段6に出す(ステップS1
1)。
【0033】これを受けたディスク更新手段6は、図1
5に示すフローに従い、これまでと同様の処理を行な
う。この結果、ディスクキャッシュ2は図8の「変更
有」がすべて「変更無」に変り、一時記憶エリア4は図
10に示すようになる。これらの処理の最中のいずれの
時点でも一時記憶エリア4の「回」が「今回」と同じ1
のブロックをディスク3に書き戻すことによって最初の
整合性の取れた状態に復活できる。この処理終了後の時
点では、ディスク3のアドレス2000〜2014はすべて新し
いデータ(操作1と操作2で書換えたデータ)で書き変
わり、これらは相互に整合性が保たれている。
【0034】引続き領域確保手段5は一時記憶エリア4
の「今回」に1を加えて2とする(ステップS13)。
この結果、ディスク上の一時記憶エリア4は図11に示
すようになる。これ以降ディスクが更新される時は
「回」を2として一時記憶エリア4に保存され、現在の
整合性が保たれた状態が保存されることになる。
【0035】引続きキャシング手段1はブロック2015〜
2019に対してこれまでと同様のステップS1〜S10を
繰返し適用し、この結果ディスクキャッシュ2は図12
のようになる。
【0036】以上説明したように第1の実施例によれ
ば、どの時点で障害が発生してディスクキャッシュ2の
中身が失われ、ディスクの整合性が失なわれても、ディ
スク上の一時記憶エリア4の「今回」と同じ「回」のブ
ロックのデータでディスクを更新することにより、前回
に整合性の取れていた状態に復活することが可能であ
り、大量のファイルを失うことはなくなる。この図4に
示す操作を2回連続した場合のディスクへのアクセス数
を挙げると図21に示すような結果が得られた。次に本
発明の第2の実施例を図16を参照して説明する。
【0037】図16に示す実施例としては、図1の構成
にディスクを更新するときに同時にそのブロックのデー
タが保存される旧データキャッシュ7をディスクキャッ
シュ2を構成する一次メモリ上に設ける他は図1の構成
と同じであり、また各手段の処理機能についてはキャッ
シング手段1と領域確保手段5が図13と図14の処理
フローと同じであり、ディスク更新手段6のみが図17
に示すフローチャートに示す処理を行なうものである。
従って、ここではディスク更新手段6の処理機能につい
てみ言及することにする。すなわち、図7に示すフロー
チャートにおいて、ディスク上の一時記憶エリア4に要
求と同一アドレスで且つ「今回」と同じ「回」のブロッ
クが存在しない(ステップS22)場合には、要求アド
レスのデータが旧データキャッシュ7に存在するかどう
かを判定し(ステップS23)、存在すれば要求アドレ
スのブロックヘデータを旧キャッシュ7から読込み、ま
た旧アドレスに存在しなければ、要求アドレスのデータ
をディスク3から読込んで(ステップS25)、一時記
憶エリアの「今回」よりも小さな「回」のブロックを1
つ選んで、そこに「回」を「今回」の値に直して読込ん
だデータとアドレスとを書込む(ステップS26)。そ
の後、ディスクキャッシュ2の要求アドレスのデータを
ディスクのアドレス対応部分に書込み(ステップS2
7)、ディスクキャッシュ2の要求アドレスのデータを
含むブロックを「変更無」にする(ステップS28)。
そして、旧データキャッシュ7のブロックを1つ選んで
ディスクキャッシュ2の要求アドレスのデータとアドレ
スを書込む(ステップS29)。一方、ディスク上の一
時記憶エリア4に要求と同一アドレスで且つ「今回」と
同じ「回」のブロックが存在する場合(ステップS2
2)にはステップS27に進み、これよりステップS2
9まで上述同様の処理が行われる。
【0038】この場合、一時記憶エリア4に書込まれる
データデータ、タイミングとも第1の実施例の場合と変
わらず、第2の実施例の場合においてもいずれの時点で
も一時記憶エリア4の「回」が「今回」と同じブロック
をディスク3に書き戻すことによって前回の整合性の取
れた状態に復活できる。
【0039】また、第1の実施例においてはディスク3
へのアクセスが行われるのはキャッシング手段1におけ
る図13のステップS7のディスクキャッシュ1へのデ
ータ転送時、ディスク更新手段6における図15に示す
ステップS18の旧データ読込みとステップS19の一
時記憶エリア4への書込みとステップS20のディスク
更新であり、第2の実施例の場合もディスクアクセスの
種類は変わらない。
【0040】これらのディスクアクセスがそれぞれ何回
起こるかを第2の実施例の場合の旧データキャッシュ7
のサイズを20ブロック分として、図4の操作を2回連
続して行なった場合のディスク3へのアクセス数を挙げ
ると図21に示すような結果が得られた。この例は同一
操作を2回行なっているので、同一アドレスに対するア
クセスが複数回行われる例であるが、図21から解るよ
うに例えばUNIXのファイル管理情報の読書きのよう
に同一アドレスに対するアクセスが何度も起きる場合
に、第2の実施例では第1の実施例の場合と同様の効果
をより少ないディスクアクセス回数で実現できる。次に
本発明の第3の実施例を図18を参照して説明する。
【0041】図18に示す実施例としては、図1の構成
に一次メモリ上の連続した一時記憶領域8を設ける他は
図1の構成と同じであり、また各手段の処理機能につい
てはキャッシング手段1とディスク更新手段6が図13
と図15の処理フローと同じであり、領域確保手段5の
みが図19に示すフローチャートに示す処理を行なうも
のである。従って、ここでは領域確保手段5の処理機能
についてみ言及することにする。
【0042】この第3の実施例で図4の操作を実行した
場合、操作1,操作2については領域確保手段5が呼ば
れるまで第1の実施例の場合と全く同様に処理され、従
ってここまでの処理は何ずれの時点でも一時記憶エリア
の「回」が「今回」と同じブロックをディスクに書き戻
すことによって前回の整合性の取れた状態に復活でき
る。
【0043】さて、操作3の処理で領域確保手段5は、
図19のフローに従い、要求の合った5ブロック分の空
き領域を確保できないため(ステップS31)、この時
点で図8のようになっているディスクキャシュ2のう
ち、「変更有」のブロックの旧データ、すなわちこの場
合はディスク3のアドレス2010〜2014、2005〜2009のブ
ロックのデータをアドレスと「回」として今回の(1)
と共にメモリ上の連続した一時記憶領域8に用意し(ス
テップS32)、これをまとめてディスク上の一時記憶
エリア4に書込む(ステップS33)。この処理の時点
でディスク3はまだ更新されていないので、操作3を行
なう前の古いデータで整合性が保たれている。
【0044】一方、ディスク上の一時記憶エリア4の
「回」が「今回」と同じブロックをディスクに書き戻し
ても整合性の取れた状態にできる。その後、これらのブ
ロックの新データ(ディスクキャッシュ2上のデータ)
でディスク3を書換える(ステップS34)。しかし、
この書換を行なっている最中は、ディスク3上の一時記
憶エリア4には古いデータがあるので、一時記憶エリア
4の「回」が「今回」と同じブロックをディスクに書き
戻すことによって前回の整合性の取れた状態に復活でき
る。その後、ステップS35以降は図14のステップS
13以降と全く同様の処理が行われる。従って、第3の
実施例の場合もどの時点で障害が発生しても、ディスク
3の整合性が保たれた状態に復活できる。第3の実施例
で図4の操作を2回繰返した場合のディスクのアクセス
数は図21のようになり、第1の実施例に比べてアクセ
ス数が減る。次に本発明の第4の実施例を図20を参照
して説明する。
【0045】図20に示す実施例では、図1の構成に図
16で追加された旧データキャッシュ7と図18で追加
されたメモリ上の連続した一時記憶領域8をそれぞれ設
ける構成としたものである。この第4の実施例におい
て、キャッシング手段1の処理の流れは第1の実施例の
場合と全く同様の図13に示す処理の流れに従い、領域
確保手段5の処理の流れは第3の実施例の場合と全く同
じ図19に示す処理の流れに従い、ディスク更新手段6
の処理の流れは第2の実施例の場合と全く同様の図17
に示す処理の流れに従う。
【0046】従って、この第4の実施例の構成によれ
ば、第2の実施例において、デイスク更新手段6がディ
スク上の一時記憶エリア4にアクセスするデータとタイ
ミングは第1の実施例の場合と同じなので、第4の実施
例の場合は各手段がディスク上の一時記憶エリア4にア
クセスするデータとタイミングは第3の実施例と同じで
あり、どの時点で障害が起きてもディスクの整合性が保
たれた状態に復活できる。
【0047】さらに、第4の実施例において、図4の操
作を2回繰返した場合のディスクのアクセス数は図21
のようになり、第1の実施例の場合に比べてアクセス数
が減少している。
【0048】
【発明の効果】以上述べたように本発明によれば、無停
電電源装置などの新たな装置の追加を行うことなく、電
源断などの障害によって失うファイルを最小限に抑える
ことによって経済的にも有利になると同時に小型計算機
を使用するメリットを十分に発揮させることができるフ
ァイル記憶装置を提供できる。
【図面の簡単な説明】
【図1】本発明よるファイル記憶装置の第1の実施例を
示すブロック構成図。
【図2】同実施例におけるディスクキャッシュの初期状
態を示す図。
【図3】同実施例におけるディスク上の一時記憶エリア
の初期状態を示す図。
【図4】書込み要求の操作例を示す図。
【図5】操作1でブロック2000を処理した後のディスク
キャッシュの状態を示す図。
【図6】操作1終了後のディスクキャッシュの状態を示
す図。
【図7】操作2でブロック2010を処理した後のディスク
上の一時記憶エリアの状態を示す図。
【図8】操作2終了後のディスクキャッシュの状態を示
す図。
【図9】操作2終了後のディスク上の一時記憶エリアの
状態を示す図。
【図10】操作3で領域確保手段が「変更有」の全ブロ
ックを実更新した後のディスク上の一時記憶エリアの状
態を示す図。
【図11】操作3終了後のディスク上の一時記憶エリア
の状態を示す図。
【図12】操作3終了後のディスクキャッシュの状態を
示す図。
【図13】同実施例におけるキャッシング手段の処理の
流れを示すフローチャート。
【図14】同実施例における領域確保手段の処理の流れ
を示すフローチャート。
【図15】同実施例におけるディスク更新手段の処理の
流れを示すフローチャート。
【図16】本発明の第2の実施例を示すブロック構成
図。
【図17】同実施例におけるディスク更新手段の処理の
流れを示すフローチャート。
【図18】本発明の第3の実施例を示すブロック構成
図。
【図19】同実施例における領域確保手段の処理の流れ
を示すフローチャート。
【図20】本発明の第4の実施例を示すブロック構成
図。
【図21】本発明の第1の実施例乃至第4の実施例での
アクセス回数を示す図。
【符号の説明】
1…キャッシング手段、2…ディスクキャッシュ、3…
デイスク、4…デイスク上の一時記憶エリア、5…領域
確保手段、6…ディスク更新手段、7…旧データキャッ
シュ、8…メモリ上の連続した一時記憶領域。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 岡宅 泰邦 神奈川県川崎市幸区柳町70番地 株式会社 東芝柳町工場内

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 一次メモリ上に複数ブロックから構成さ
    れるディスクキャッシュを有し、且つこのディスクキャ
    ッシュのデータで不揮発な二次メモリを構成するデイス
    クをアクセスして該当するブロックのデータを更新する
    ファイル記憶装置において、前記デスク上に設けられた
    一時記憶エリアと、前記ディスクキャッシュのブロック
    のデータの更新要求が生じた時に前記一時記憶エリアに
    該ブロックのデータを保存できる空き領域があるか否か
    を判定し、空き領域があればその領域を確保し、空き領
    域が不足してれば前記ディスクのデータをこれまでに更
    新が行われたディスクキャッシュの全ブロックのデータ
    に更新する要求を出すと共に、前記一時記憶エリアを解
    放して空き領域を確保する領域確保手段と、前記ディス
    クのデータを前記ディスクキャッシュのブロックのデー
    タで更新する要求が生じた時に前記ディスクのデータを
    前記領域確保手段で確保された一時記憶エリアの領域に
    転送して保存すると共に、前記ディスクのデータを前記
    ディスクキャッシュのブロックのデータで更新するディ
    スク更新手段とを備えたことを特徴とするファイル記憶
    装置。
  2. 【請求項2】 一次メモリ上に複数ブロックから構成さ
    れるディスクキャッシュを有し、且つこのディスクキャ
    ッシュのデータで不揮発な二次メモリを構成するデイス
    クをアクセスして該当するブロックのデータを更新する
    ファイル記憶装置において、前記デスク上に設けられた
    一時記憶エリアおよび前記一次メモリ上に設けられた旧
    データキャッシュと、前記ディスクキャッシュのブロッ
    クのデータの更新要求が生じた時に前記ディスク上に設
    けられた一時記憶エリアに該ブロックのデータを保存で
    きる空き領域があるか否かを判定し、空き領域があれば
    その領域を確保し、空き領域が不足していれば前記ディ
    スクのデータをこれまでに更新が行われたディスクキャ
    ッシュの全ブロックのデータに更新する要求を出すと共
    に、前記一時記憶エリアを解放して空き領域を確保する
    領域確保手段と、前記ディスクのデータを前記ディスク
    キャッシュのブロックのデータで更新する要求が生じた
    時に前記ディスクのデータと同じデータが前記旧データ
    キャッシュに存在する場合には該旧データキャッシュか
    ら、存在しない場合には前記ディスクから該データを前
    記領域確保手段で確保された一時記憶エリアの領域に転
    送して保存すると共に、前記ディスクのデータと旧デー
    タキャッシュを、前記ディスクのデータと旧データキャ
    ッシュを前記ディスクキャッシュのブロックのデータで
    更新するディスク更新手段とを備えたことを特徴とする
    ファイル記憶装置。
  3. 【請求項3】 一次メモリ上に複数ブロックから構成さ
    れるディスクキャッシュを有し、且つこのディスクキャ
    ッシュのデータで不揮発な二次メモリを構成するデイス
    クをアクセスして該当するブロックのデータを更新する
    ファイル記憶装置において、前記デスク上に設けられた
    一時記憶エリアおよび前記一次メモリ上に設けられた連
    続した一時記憶領域と、前記ディスクキャッシュのブロ
    ックのデータの更新要求が生じた時に前記ディスク上の
    一時記憶エリアに該ブロックのデータを保存できる空き
    領域があるか否かを判定し、空き領域があればその領域
    を確保し、空き領域が不足していればこれまでにデータ
    の更新が行われた前記ディスクキャッシュの全ブロック
    と同じアドレスの前記ディスク上のブロックのデータを
    前記一次メモリ上の連続した一次記憶領域に保存すると
    共に、該一次メモリ上の連続した一時記憶領域のデータ
    を前記ディスク上の一時記憶エリアに一括転送して保存
    し、且つ前記ディスクのデータを更新対象となったディ
    スクキャッシュのブロックのデータで更新し、前記ディ
    スク上の一時記憶エリアを解放して空き領域を確保する
    領域確保手段と、前記ディスクのデータを前記ディスク
    キャッシュのブロックのデータで更新する要求が生じた
    時に前記ディスクのデータを前記領域確保手段で確保さ
    れた一時記憶エリアの領域に転送して保存すると共に、
    前記ブロックのデータを前記ディスクキャッシュのブロ
    ックのデータで更新するディスク更新手段とを備えたこ
    とを特徴とするファイル記憶装置。
  4. 【請求項4】 ディスク上の一時記憶エリアにブロック
    毎の更新番号を表す複数のブロックと全ブロックの中で
    最新の更新番号を記憶する領域を設け、一時記憶エリア
    のあるブロックのデータを更新するときにブロック毎の
    更新番号を最新の更新番号と同じ番号に更新する手段と
    ディスク上の一時記憶エリアを解放する時に最新の更新
    番号を1つ新しくする手段とを設けた請求項1乃至3の
    何ずれか項に記載されたファイル記憶装置。
JP4285999A 1992-10-23 1992-10-23 ファイル記憶装置 Pending JPH06139122A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4285999A JPH06139122A (ja) 1992-10-23 1992-10-23 ファイル記憶装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4285999A JPH06139122A (ja) 1992-10-23 1992-10-23 ファイル記憶装置

Publications (1)

Publication Number Publication Date
JPH06139122A true JPH06139122A (ja) 1994-05-20

Family

ID=17698701

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4285999A Pending JPH06139122A (ja) 1992-10-23 1992-10-23 ファイル記憶装置

Country Status (1)

Country Link
JP (1) JPH06139122A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7725666B2 (en) 2005-11-03 2010-05-25 Hitachi Global Storage Technologies Netherlands B.V. Micro-journaling of data on a storage device
US7986480B2 (en) 2005-11-03 2011-07-26 Hitachi Global Storage Technologies Netherlands B.V. Micro-journaling of data on a storage device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7725666B2 (en) 2005-11-03 2010-05-25 Hitachi Global Storage Technologies Netherlands B.V. Micro-journaling of data on a storage device
US7986480B2 (en) 2005-11-03 2011-07-26 Hitachi Global Storage Technologies Netherlands B.V. Micro-journaling of data on a storage device

Similar Documents

Publication Publication Date Title
US7325110B2 (en) Method for acquiring snapshot
JP4809040B2 (ja) ストレージ装置及びスナップショットのリストア方法
JP4248510B2 (ja) 計算機システム、ディスク装置およびデータ更新制御方法
JP4292882B2 (ja) 複数のスナップショット維持方法及びサーバ装置及びストレージ装置
US20040103104A1 (en) Snapshot creating method and apparatus
US8751765B2 (en) Computer system, storage system and method for saving storage area by integrating same data
JPS607818B2 (ja) フアイルのバツクアツプ方法
JP2007316691A (ja) トランザクション処理装置、トランザクション処理方法
US5706470A (en) Disk updating log recording system
JP2008090378A (ja) ハイブリッドファイルシステム、オペレーティングシステム、キャッシュ制御方法および記録媒体
JPH06139122A (ja) ファイル記憶装置
US6591264B1 (en) Method that allows I/O requests to run concurrently with a rollback from a snapshot in a drive array
JP2005215940A (ja) ストレージシステム、サーバ装置及び先行コピーデータ生成方法
JP2005165528A (ja) ディスクアレイ装置およびディスクキャッシュ管理方法ならびにプログラム
JP3882461B2 (ja) 記憶装置システム及びそのバックアップ取得方法
JP3808851B2 (ja) ディスクアレイコントローラ、ディスクアレイ装置及びディスクアレイ制御プログラム
JPH06139123A (ja) ファイル記憶装置
JP2002082833A (ja) 不揮発性キャッシュメモリを用いた高速データ書き込みシステム
WO1993003436A1 (en) Method and apparatus for reducing lock period of shared buffer
CN111566622B (zh) 一种文件系统调整方法及设备
JPH0973372A (ja) 記憶制御方法及び記憶制御装置
JP2574537B2 (ja) プロセス管理装置
US20040213070A1 (en) Method of recording and reproducing information
JP3822449B2 (ja) スタック保存方法、スタック保存プログラム及び高信頼計算機システム
JPH06332777A (ja) トランザクション処理方式