JPH0772981A - 記憶制御装置及びその制御方法 - Google Patents

記憶制御装置及びその制御方法

Info

Publication number
JPH0772981A
JPH0772981A JP6147398A JP14739894A JPH0772981A JP H0772981 A JPH0772981 A JP H0772981A JP 6147398 A JP6147398 A JP 6147398A JP 14739894 A JP14739894 A JP 14739894A JP H0772981 A JPH0772981 A JP H0772981A
Authority
JP
Japan
Prior art keywords
data record
processing
update
storage
generation
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
JP6147398A
Other languages
English (en)
Inventor
Takao Sato
孝夫 佐藤
Akira Yamamoto
山本  彰
Shigeo Honma
繁雄 本間
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP6147398A priority Critical patent/JPH0772981A/ja
Publication of JPH0772981A publication Critical patent/JPH0772981A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】 ダンプ処理を他のジョブと並行して実行して
も、ダンプ開始時点の完全なダンプ情報を採取する。 【構成】 処理装置1上で動作するダンプ処理プログラ
ム12は、ダンプ処理に先立ち記憶制御装置2に対し、
ダンプ処理対象のデータレコードの凍結状態設定要求を
発行する。記憶制御装置2は、ダンプ処理対象のデータ
レコードに更新要求が発行された場合、更新前のデータ
レコードを未使用領域52に保存しつつ更新処理を実行
する。ダンプ処理プログラム12による読出し時に、保
存された更新前のデータレコードがあれば、記憶制御装
置2は、そのデータレコードを処理装置1に転送する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、計算機システムの記憶
装置の制御を行う記憶制御装置とその制御方法に関し、
特に、記憶装置上のデータレコードのダンプ処理を他の
ジョブと並行して行った場合においても、ダンプ処理開
始時点の完全なダンプ情報を採取する機能を有する記憶
制御装置と、そのダンプ処理方法に関する。
【0002】
【従来の技術】計算機システムを運用するにあたって、
例えば、磁気ディスク装置のような外部記憶装置に記憶
されているデータレコードの信頼性をシステムとして高
めるために、例えば、磁気テープのような他の記録媒体
に複写、すなわちダンプすることが一般的に行なわれて
いる。
【0003】従来よりダンプ処理のダンプ処理量低減、
高性能化を狙った種々の技術が提案されている。例え
ば、特開昭57−90770号公報に記載されたシステ
ムでは、ディスク制御装置がディスク装置上の更新され
たデータレコードの位置を示す情報をディスク制御装置
内の制御メモリに記録する。中央処理装置上で動作する
ダンプ処理プログラムは、ディスク装置のダンプ処理に
先立ち、前記制御メモリに記録されたデータレコード更
新位置情報を読出す。その後、データレコード更新位置
情報に基づいて更新のあったデータレコードのみをディ
スク装置から読出し、他の記録媒体に書き出す。これに
より更新のあったデータレコードのみがダンプ処理対象
となるため、ダンプ処理のデータレコード量を低減する
ことができる。
【0004】このようなシステムでは、ダンプ処理が完
了するまで、他のジョブの処理を行なうことができない
という問題がある。その理由は、もし、ダンプ処理の途
中で、データレコード更新が発生すると、この更新が看
過されて、その更新されたデータレコードがダンプされ
ない恐れがあるためである。
【0005】この問題を解決するための技術として、特
開平1−231150号公報に記載されたシステムがあ
る。このシステムでは、ディスク装置上の更新されたデ
ータレコードの位置情報を2種類持ち、第1の識別情報
は、各時点で更新が行なわれたデータレコードの位置を
識別し、第2の識別情報は、特にダンプ処理中に更新さ
れたデータレコードの位置を識別する。これによりダン
プ処理中に更新されたデータレコードの識別が可能とな
り、当該データレコードを次のダンプ処理の対象とする
ことができる。したがって、通常のデータ処理と並行し
て、あるいはその合間に、更新されたデータレコードの
みを漏れなくダンプすることができる。
【0006】一方、記憶装置システムの性能、および信
頼性を向上させる技術として、特開昭62−29335
5号公報に記載されたディスクアレイシステムがある。
このシステムでは、複数のデータレコードから複数のパ
リティセグメントを生成し、1つのパリティレコードに
対応する組におけるデータレコードをそれぞれ異なる記
憶装置に格納する。さらに、全ての組に対応するデータ
レコードに対するパリティレコードを1つの記憶装置が
持つことがないよう配置する方式を採用している。この
ような制御方式を採用するシステムにおいては、データ
レコードを更新する際、パリティレコードも更新する必
要がある。パリティレコードの更新方法としては、更新
前のデータレコードと更新後のデータレコードから変更
マスクを生成する。次いで、パリティレコードを記憶装
置から読出し、読出したパリティレコードと変更マスク
とから新パリティレコードを生成し、記憶装置に書き戻
す方法が採用されている。
【0007】
【発明が解決しようとする課題】先に述べた特開平1−
231150号公報に記載された技術では、ダンプ採取
対象データレコードが更新されたデータレコードのみに
限定されるため、ダンプ処理データ量を低減するととも
に、ダンプ処理とダンプ処理以外のジョブを並行して実
行できる。この結果、通常業務を中断することなく短時
間でダンプ処理を実行できる。しかし、このシステムで
は、前述のように、ある時点の完全なダンプ情報を採取
することはできない。すなわち、ダンプ開始時点より、
データレコードが実際に処理装置にダンプされ終わるま
での間に、当該データレコードに対し更新要求が発生す
ると、ダンプ開始時点のデータレコードが失われてしま
う。
【0008】一方、ディスクアレイシステムでは、複数
のデータレコードから複数のパリティレコードを生成
し、生成したパリティレコードを複数の記憶装置に分散
することによりデータレコードの信頼性を高め、かつ高
信頼化のオーバヘッドを抑えることができる。また、こ
れにより、記憶システムのハードウェア障害に対する信
頼性は向上できる。しかし、利用者の操作ミス等に対し
ては対応できない。したがって、このようなディスクア
レイシステムにおいてもダンプ処理は不可欠であり、こ
の場合にも、特開平1−231150号公報に開示され
たものと同様の問題が生じる。
【0009】本発明の目的は、ダンプ処理を他のジョブ
と並行して実行しても、ダンプ開始時点の完全なダンプ
情報を採取することができる記憶制御装置およびダンプ
処理方法を提供することにある。
【0010】
【課題を解決するための手段】上記目的を達成するため
に、本発明による記憶制御装置は、複数のデータレコー
ドを格納する記憶装置を制御する記憶制御装置に、ダン
プ処理の対象となるデータレコードの指定を受け、ダン
プ処理中に指定されたデータレコードに対する更新の要
求があった場合に、更新前のデータレコードを予め定め
られた記憶手段に書き込むことにより保存する手段と、
処理装置上で実行されるダンプ処理プログラムにより発
行されるデータ読み出し要求に応じて、予め定められた
記憶手段に保存したデータレコードの中に、読み出し要
求で指定されたデータレコードに対応するデータレコー
ドがあれば、そのデータレコードを処理装置に転送する
手段とを設ける。また、読み出し要求に応じて待避した
データレコードの転送を行うために、更新要求に応じて
更新されたデータレコードと、予め定められた記憶手段
に待避した更新前のデータレコードとを対応づける手段
を設ける。
【0011】本発明による記憶制御装置は、より具体的
には、データレコード凍結の範囲を指定した、外部から
のデータレコード凍結要求に応答し、当該指定された範
囲のデータレコードに対し、データレコード凍結の時点
を一意に識別する世代番号を付加して凍結状態を設定す
る凍結状態設定手段、外部からのデータレコード更新要
求に応答し、前記凍結状態設定手段を参照することによ
り、前記更新要求の対象となるデータレコードに凍結状
態が設定されているか否かを判定する判定手段、該判定
手段により、更新対象データレコードに凍結状態が設定
されていると判定された場合、前記更新対象となるデー
タレコードを前記世代番号と対応付けて前記記憶装置内
の未使用領域に複写する更新前データレコード複写手
段、及び前記データレコード更新要求に伴って外部から
転送されたデータレコードを前記記憶装置に格納する手
段を有する。
【0012】本発明の他の態様によれば、データレコー
ドが格納された記憶装置とは別の記憶装置を備え、更新
前データレコード複写手段は、この別の記憶装置に、更
新対象となるデータレコードを複写する。
【0013】また、本発明のさらに他の態様では、記憶
制御装置内に、記憶装置に格納されているデータレコー
ドの一部の写しを保持するためのキャッシュメモリが備
えられており、更新前データレコード複写手段は、キャ
ッシュメモリ上に更新対象となるデータレコードを複写
する。
【0014】
【作用】以上のような記憶制御装置を用いることによ
り、本発明によるダンプ処理では、以下のように処理が
実行される。
【0015】処理装置上で動作するダンプ処理プログラ
ムは、記憶装置からのダンプ処理に先立ち記憶制御装置
に対してダンプ処理の対象となるデータレコードの指定
を行う。この指定を行うために、処理装置は、ダンプ処
理の範囲と、世代番号とをパラメタとした世代凍結要求
を発行する。この世代凍結要求を受領した記憶制御装置
は、凍結状態設定手段により、指定されたデータレコー
ドの範囲と、世代番号とを制御メモリに保持し、凍結状
態が設定される。
【0016】このようにして、凍結状態が設定された
後、ダンプ処理プログラムと並行して動作するプログラ
ムによりデータレコードの更新要求が発行された場合、
記憶制御装置は、更新の対象となるデータレコードが凍
結状態に設定されたデータレコードの範囲内にあるか否
かを、判定手段によりチェックする。そして、凍結状態
に設定されたデータレコードの範囲内にあると判断され
ると、格納手段により、その更新要求により更新される
前のデータレコードが世代番号と対応づけられて、記憶
装置内の未使用領域、データレコードを記憶した記憶装
置とは別の記憶装置、あるいは、記憶制御装置内のキャ
ッシュメモリに保存される。これにより、ダンプ処理開
始時点のデータレコードを世代凍結データレコードとし
て保持しておくことができ、ダンプ処理開始後にダンプ
処理の対象範囲にあるデータレコードに対する更新要求
を受け付け、データレコードの更新を行ったとしても、
ダンプ処理開始時点におけるデータレコードを確実に処
理装置に渡すことができる。また、更新されたデータレ
コードは、更新前のデータレコードのアドレス位置に格
納されるため、他のデータレコードとのアドレス関係は
変わらない。従って、更新データレコードを含む一連の
データレコードを逐次読出しても、無駄なシーク処理等
は発生しない。
【0017】また、更新前のデータレコードを記憶制御
装置内のキャッシュメモリ上に保存するようにすれば、
更新前のデータレコードを保存する際の記憶装置へアク
セス処理が不要になり、データレコードの更新処理に伴
うオーバヘッドを削減できる。また、キャッシュメモリ
容量が十分でない場合においても、キャッシュメモリ上
の更新前のデータレコードを所定のタイミングで記憶装
置へ書き込むようにすることで、キャッシュメモリを有
効に利用することができる。この記憶装置への書き込み
処理を、処理装置からのデータレコード更新要求と非同
期に実行すれば、データレコードの更新要求に対する応
答時間を遅延させることはない。
【0018】
【実施例】図1は、本発明の一実施例に係る、記憶制御
装置を有する計算機システムのハードウエア構成図であ
る。この計算機システムは、処理装置1、記憶制御装置
3、記憶制御装置3により制御される複数のディスク装
置5,6、およびテープ装置7からなる。処理装置1
は、演算装置15、主記憶装置17、および入出力プロ
セッサ18から構成される。処理装置1は、記憶制御装
置3を介してディスク装置5,6に接続される。記憶制
御装置3は、バッテリにより不揮発化された制御メモリ
31、処理装置1とディスク装置5との間で授受される
データレコードを一時的に格納するデータバッファ3
2、処理装置1とデータバッファ32との間のデータ転
送を制御するチャネル制御回路46、データバッファ3
2とディスク装置5,6との間のデータ転送を制御する
ディスク制御回路47、およびこれら制御回路を制御す
るプロセッサ45から構成されている。データバッファ
32の容量は、本実施例では数メガバイト程度である。
【0019】図2は、図1に示した計算機システムの論
理的な構成を示す論理構成図である。
【0020】処理装置1上では、オンライン処理等の通
常業務プログラム14と、ディスク装置5上のデータレ
コードをテープ装置7にバックアップするダンプ処理プ
ログラム13が演算装置15により実行される。ダンプ
処理プログラム13は、ダンプ処理を行うに当たり、後
述するタイミングで、凍結状態設定要求、凍結状態解除
要求、及び凍結データレコード読み出し要求を記憶制御
装置3に対して発行する。また、通常業務プログラム1
4は、その処理の過程において、必要に応じてデータレ
コード更新要求を記憶制御装置3に対して発行する。ダ
ンプ処理プログラム12と通常業務プログラム14と
は、並行して動作することが可能である。
【0021】記憶制御装置3内のプロセッサ45は、デ
ィスク装置5をアクセスするための制御プログラムの他
に、ダンプ処理を支援するための処理プログラムを実行
する。この処理プログラムにより実行される処理として
は、凍結状態設定/解除処理33、凍結データレコード
読出し処理34、未使用領域管理処理35、データレコ
ード更新処理36、データレコード複写処理37、リー
ド/ライト処理38がある。制御メモリ31には、これ
らダンプ処理を支援するための処理プログラムにより参
照、あるいは、更新される世代管理テーブル312、未
使用領域管理テーブル314を格納している。また、本
実施例において、ディスク装置5上の記憶領域は、処理
装置1上の通常業務プログラム14からのデータレコー
ドの入出力対象となるオンライン記憶領域51と、この
オンライン記憶領域51以外の未使用領域52に分割さ
れている。未使用領域52は、シリンダ境界の記憶領域
であり、未使用領域管理テーブル314により管理され
ている。本実施例では、未使用領域52を、ダンプ処理
のために凍結状態に設定されているデータレコードに対
する更新要求があった場合に、更新前のデータレコード
を保持しておくために利用する。以降において、この未
使用領域51に格納された更新前のデータレコードを世
代凍結データレコードと呼ぶ。
【0022】世代管理テーブル312は、図3に示すよ
うに、複数のエントリから構成されている。各エントリ
は、処理装置1から発行された凍結状態設定要求に対応
しており、各凍結状態設定要求に関する世代凍結情報が
登録される。本実施例では、世代凍結情報として、凍結
状態を設定する対象となるディスク装置のディスク装置
番号、凍結状態設定要求を発行した処理装置のホスト番
号、凍結状態設定要求の世代を示す世代番号、凍結状態
を設定する範囲の最初のデータレコードのアドレス、凍
結状態を設定する範囲の最後のデータレコードのアドレ
ス、及び凍結状態設定要求を受け付けた時間を用いる。
これらの世代凍結情報は、世代管理テーブル312の各
エントリのフィールド3121から3126にそれぞれ
登録される。なお、世代番号とは、処理装置1から発行
された個々の世代凍結要求を一意に識別することができ
る識別子として機能するものである。従って、この世代
番号を世代凍結データレコードに対応づけておくことに
より、その世代凍結データレコードがいつの時点で発行
された凍結状態設定要求により世代凍結されたものであ
るか識別することが可能となる。見方を変えれば、世代
凍結データレコードに対応づけられた世代番号により、
その世代凍結データレコードが、どの時点で開始された
ダンプ処理の対象となるものか特定することが可能とな
る。
【0023】図4に、未使用領域管理テーブル314の
構成図を示す。未使用領域管理テーブル314は、図4
(a)に示すように、ディスク装置5上の未使用領域5
1の開始シリンダアドレスと終了シリンダアドレスを管
理する未使用領域管理表3141、未使用領域51の個
々のシリンダの利用状況を管理するシリンダ管理表31
42、およびシリンダを構成するトラックの利用状況を
管理するトラック管理表3143から構成されている。
シリンダ管理表3142の各エントリは、未使用領域5
1の個々のシリンダに対応しており、そのシリンダ内の
トラックを管理するトラック管理表3143が存在する
制御メモリ内のアドレスがポインタ情報として登録され
ている。なお、図において、シリンダ管理表3142
の”0”が登録されているエントリに対応するシリンダ
は、そのシリンダに属する全てのトラックが未使用状態
であることを示している。トラック管理表3143の各
エントリ3144は、図4(b)に示すように、世代凍
結データレコードを格納する記憶領域の利用状況を管理
するデータレコード管理フィールド3145から構成さ
れている。データレコード管理フィールド3145は、
対応する記憶領域に格納された世代凍結データレコード
の世代番号が登録さる。データレコード管理フィールド
3145の中で、”0”が登録されているフィールド
は、そのフィールドに対応する領域が未使用の状態であ
ることを表している。
【0024】図5にディスク装置5上のトラックのフォ
ーマットを示す。ディスク装置5上の各トラックは、そ
の開始点がINDEXよって示されており、複数のデー
タレコード901を格納している。トラック上で各デー
タレコードは、GAP902により他のデータレコード
と区切られており、管理情報を格納しているIDフィー
ルド903、および処理装置1から転送されたデータを
格納するDATAフィールド904を含んで構成されて
いる。データレコード901の管理情報を格納している
IDフィールド903は、当該データレコードを識別す
るための情報として、シリンダアドレス(CC)、トラ
ックアドレス(HH)、およびレコード番号(R)から
なるデータレコードアドレスを含んでいる。さらに当該
データレコードが世代凍結データレコードの場合は、世
代番号906が設定される。また、当該データレコード
に対し複数の世代のデータレコードが存在する場合は、
1世代前のデータレコードの格納領域を示すアドレス9
07が格納されている。
【0025】以上説明した計算機システムにおいて行わ
れるダンプ処理について、以下に説明する。
【0026】図6は、処理装置1上で動作するダンプ処
理プログラム12により実施される処理のフローチャー
トである。ダンプ処理プログラム12は、ダンプ処理に
先立ち、ダンプ処理範囲のデータレコードに対し凍結状
態を設定する処理を実行する(ステップ201)。この
処理は、記憶制御装置3に対し、凍結状態設定範囲と世
代番号をパラメタとする凍結状態設定要求(コマンド)
を発行することにより行なわれる。凍結状態設定要求に
は、凍結状態に設定するデータレコードの範囲、すなわ
ち凍結状態を設定する最初のデータレコードアドレスと
最後のデータレコードアドレス、および世代番号がパラ
メタとして含まれる。記憶制御装置3は、この凍結状態
設定要求を受けると、凍結状態設定/解除処理33を実
行し、指定されたデータレコードを凍結状態に設定す
る。凍結状態に設定されたデータレコードに対して更新
要求が処理装置1から記憶制御装置3に発行されると、
記憶制御装置3は、更新前のデータレコードをディスク
装置5上の未使用領域52に保存した後、更新処理を実
施する。ダンプ処理プログラム12は、ステップ201
で凍結状態設定処理を実行後、凍結状態に設定した範囲
のデータレコードを読出す(ステップ202)。ステッ
プ202では、データレコードを読み出すために、記憶
制御装置3に対し、凍結データレコード読出しコマンド
が発行される。本コマンドのパラメタは、読出し対象デ
ータレコードのアドレスと世代番号であり、このコマン
ドを受領した記憶制御装置3は、指定された世代番号を
持つデータレコードを処理装置1に転送する。これによ
りダンプ処理中にダンプ対象データレコードが更新され
ても、ダンプ処理開始時にディスク装置に格納されてい
たデータレコードを入手することができる。ステップ2
02で記憶制御装置3から転送されたデータレコード
は、ステップ203で他の記録媒体、即ち、テープ装置
7に書き出される。ステップ204では、ダンプ処理対
象の全てのデータレコードについてステップ202、2
03の処理、即ち、ダンプ処理が実施されたか判定す
る。ステップ204においてダンプ処理対象の全てのデ
ータレコードの処理が終了したと判断された場合は、ス
テップ205でダンプ処理開始時に設定したダンプ処理
範囲のデータレコードの凍結状態を解除する。この凍結
状態解除は、記憶制御装置3に対し、凍結状態解除コマ
ンドを発行することにより行われる。記憶制御装置3で
は、この凍結状態解除コマンドを受けてデータレコード
の凍結状態を解除する。
【0027】以上がダンプ処理プログラム12により実
施される処理の流れである。以下にダンプ処理プログラ
ム12から凍結状態設定コマンドが発行された後、これ
により凍結状態に設定されたデータレコードの凍結状態
が解除されるまでの記憶制御装置3で実施される処理に
ついて説明する。
【0028】ダンプ処理プログラム12による処理のス
テップ201において発行された凍結状態設定コマンド
を受領した記憶制御装置3は、凍結状態設定/解除処理
33を実行する。なお、凍結状態設定/解除処理33で
は、データレコードの凍結状態の設定と解除の両方の処
理を行うが、ここでは、まず、凍結状態の設定処理につ
いて説明し、凍結状態解除処理については、後述する。
【0029】図7に示すように、凍結状態設定/解除処
理33は、まず、処理装置1から指定されたパラメタの
妥当性をチェックする(ステップ301)。ステップ3
01でのチェックの結果、パラメタに矛盾がある場合
は、ステップ305で処理装置1に凍結状態設定/解除
処理の異常終了を報告し処理を終了する。ステップ30
1で、パラメタが妥当であると判断された場合は、ステ
ップ302に移り、処理要求種別、すなわち処理装置1
から受け取ったコマンドが凍結状態の設定を要求するも
のか凍結状態の解除を要求するものかを判定する。ここ
では、処理装置1から受け取ったコマンドは、凍結状態
の設定を要求するものであるので、ステップ303によ
り凍結状態設定範囲と世代番号を制御メモリ31上の世
代管理テーブル312に登録する。ステップ303で
は、具体的には、凍結範囲として指定されたデータレコ
ードを格納したディスク装置、即ちデータレコード凍結
状態設定の対象となったディスク装置を識別するディス
ク装置番号をフィールド3121に、凍結状態設定要求
を発行した処理装置を識別するホスト番号をフィールド
3122に、凍結状態設定要求でパラメタとして与えら
れた世代番号をフィールド3123に、同じく、パラメ
タとして与えられた凍結状態設定範囲の最初のデータレ
コードのアドレス、最後のデータレコードのアドレスを
それぞれフィールド3124、3125に登録する。ま
た、フィールド3126には、処理装置1から凍結状態
設定コマンドを受領した日時を登録する。世代管理テー
ブル302に世代凍結情報を登録した後、ステップ30
4で凍結状態設定/解除処理の正常終了を報告し処理を
終了する。
【0030】なお、凍結状態設定処理中は、ダンプ処理
の対象範囲内にあるデータレコードへのアクセスは禁止
されるが、凍結状態設定処理は、記憶制御装置内の制御
メモリ上でのみ実行されるため短時間ですむ。従って、
この間のデータレコードへのアクセスの禁止は、実質的
に問題となることはない。
【0031】このようにしてダンプ処理の対象となるデ
ータレコードが凍結状態に設定された後、処理装置1
は、凍結データレコード読み出し要求を発行することに
より、これらのデータレコードを読み出し、テープ装置
7に複写する。本実施例では、先に述べたように、処理
装置1において、ダンプ処理プログラム12と通常処理
プログラムとは並行して動作することができるため、ダ
ンプ処理中に、データレコードの更新要求が発生するこ
とがあり得る。ここでは、説明の都合上、凍結データレ
コード読み出し要求に応じて記憶制御装置3が行う処理
について説明する前に、処理装置1から更新要求が発行
された場合の記憶制御装置3の処理について説明する。
【0032】記憶制御装置3は、データレコード更新要
求を受領すると、データレコード更新処理36を実行す
る。以下に、データレコード更新処理の流れを図8を参
照して説明する。
【0033】データレコード更新要求は、更新対象とな
るデータレコードのアドレスをパラメタとして含んでい
る。データレコード更新処理36では、まず、データレ
コード更新要求で与えられたパラメタの妥当性のチェッ
クを行う(ステップ501)。このチェックの結果パラ
メタに矛盾があると判定された場合は、ステップ510
で、処理装置1にデータレコード更新処理の異常終了を
報告し、処理を終了する。ステップ501においてパラ
メタが正しいと判定された場合は、続いて、処理装置1
より更新データレコードを受領し、データバッファ32
に格納する(ステップ502)。その後、更新の対象と
なるデータレコードが凍結状態設定の対象となっている
か否かの判定を世代管理テーブル312を参照して行う
(ステップ503)。この結果、更新対象のデータレコ
ードが凍結状態設定の対象となっている場合、更新対象
となったデータレコードの世代凍結処理を実行する(ス
テップ505)。この世代凍結処理については後で詳し
く説明する。更新対象のデータレコードに関して世代凍
結処理を行った後、ステップ502でデータバッファ3
2上に格納した更新データレコードに対して、世代凍結
されたデータレコードのチェインの先頭のデータレコー
ド、即ち、この更新要求で更新される前のデータレコー
ドが格納されているディスク装置上のアドレスをIDフ
ィールドの領域907に付加する。この後、データバッ
ファ32に格納した更新データレコードをディスク装置
に格納し(ステップ508)、処理装置1にデータレコ
ードの更新処理が正常に終了したことを報告して処理を
終了する(ステップ509)。
【0034】一方、ステップ503で、更新対象のデー
タレコードが凍結状態設定対象でないと判断された場合
は、ステップ505、507の処理は行わず、ステップ
508に進み、更新データレコードのディスク装置への
格納、処理の終了の報告を行う。
【0035】ステップ507で実施される世代凍結処理
の詳細なフローを図9に示す。
【0036】更新対象となったデータレコードの世代凍
結処理(図8、ステップ505)では、まず、制御メモ
リ31の作業領域に世代凍結要求テーブル230を作成
する(ステップ2300)。この世代凍結要求テーブル
230のエントリは、図9中に示すように世代番号と凍
結済みフラグにより構成されている。ステップ2300
では、世代管理テーブル312を検索し、更新対象とな
ったデータレコードを、凍結状態とするデータレコード
の範囲内に含む凍結状態設定要求の世代番号を抽出し、
その一覧を世代要求テーブルとして作成する。その後、
ステップ2301で、更新対象となったデータレコード
をディスク装置5から読出し、データバッファ32に格
納する。次に、データバッファ32に読出したデータレ
コードのIDフィールド903に1世代前のデータレコ
ードのアドレスが格納されているか否かを判定する(ス
テップ2302)。データレコードに1世代前のデータ
レコードのアドレスが格納されている場合には、当該デ
ータレコードより古い世代のデータレコードが存在する
ことを意味する。この判定により、データバッファ32
上に読出したデータレコードより古い世代のデータレコ
ードが存在すると判断された場合は、現在データバッフ
ァ32上に存在するデータレコードの1世代前のデータ
レコードをディスク装置5からデータバッファ32に読
みだす(ステップ2303)。その後、ステップ230
3で読出したデータレコードのIDフィールド903に
格納されている世代番号に対応する世代凍結要求テーブ
ル230のエントリの凍結済みフラグをONに設定す
る。図9において、点線で表された矢印がこの処理を示
している。ステップ2303と2304の処理を、更新
対象となったデータレコードに対応する世代凍結された
データレコードすべてに対して行うことにより、更新対
象となったデータレコードに対し世代凍結処理が行われ
ていない凍結状態設定要求の世代番号を検査することが
できる。ステップ2305では、世代凍結要求テーブル
230に凍結済みフラグがOFFの世代凍結要求が存在
するか否かを判定する。この判定により、世代凍結処理
が行われていない凍結状態設定要求が見つかれば、その
凍結状態設定要求について、データ複写処理37を実行
する(ステップ2306)。ここでは、ステップ230
1でデータバッファ32に読出したデータレコードに凍
結済みフラグがOFFの凍結状態設定要求の世代番号を
付加して、ディスク装置5上の未使用領域52に格納す
る。ステップ2305で凍結済みフラグがOFFの世代
が存在しない場合には、そのまま、世代凍結処理を終了
する。
【0037】図10は、上述した世代凍結処理におい
て、ステップ2306で実行されるデータレコード複写
処理37のフローチャートである。データレコード複写
処理では、まず、世代凍結データレコードを格納するた
めに、デイスク装置5上の未使用領域52に記憶領域を
確保する(ステップ601)。その後、データバッファ
32上の世代凍結を行うデータレコードのIDフィール
ド内に、ステップ601で確保したディスク装置5上の
未使用領域のアドレスと、世代凍結要求テーブル230
上の世代番号を格納する(ステップ602、603)。
そして、データバッファ32上の更新対象のデータレコ
ードをステップ601で確保したディスク装置上の領域
に格納する(ステップ604)。次に、世代凍結要求テ
ーブル230の世代凍結データレコードのディスク装置
5への格納を行った世代番号のエントリに凍結済みフラ
グをONに設定する(ステップ605)。ステップ60
6では、世代凍結要求テーブル230に、凍結済みフラ
グがOFFのエントリが残っているかチェックする。凍
結済みフラグがOFFのエントリが残っていれば、デー
タバッファ32上に残されているデータレコードのID
フィールド内の領域905に格納されているアドレスを
領域907に複写する。これにより、データバッファ3
2上のデータレコードは、先に、ステップ604でディ
スク装置5に格納したデータレコードとチェインで結ば
れたことになる。その後、ステップ601に戻って世代
凍結処理が行われていない凍結状態設定要求の各世代に
対して同様の処理を行う。ステップ606で、チェック
の結果全ての凍結済みフラグがONになっていれば、デ
ータレコード複写処理を終了する。
【0038】図11に未使用領域管理処理35による処
理のフローチャートを示す。未使用領域管理処理35で
は、未使用領域管理テーブル314を参照し、ディスク
装置5上の未使用領域52上から使われていない記憶領
域を求める(ステップ701)。続くステップ702で
は、ステップ701で求めた未使用領域を世代凍結デー
タレコードの格納領域として割り当てる。この際、未使
用領域管理テーブル314の世代凍結データレコードの
格納領域として割り当てた領域に対応するデータレコー
ド管理フィールド3145に世代番号を格納し、未使用
領域管理テーブル314を更新する。
【0039】以上の処理により、凍結状態に設定されて
いるデータレコードを対象とした更新要求があった場合
には、更新前のデータレコードが世代凍結データレコー
ドとして、ディスク装置5の未使用領域52に保存され
る。1つのデータレコードに対応して複数の世代凍結デ
ータレコードが存在する場合、すなわち複数の時点で世
代凍結要求が重ねて発行された場合の各データレコード
の関係を図12に示す。ディスク装置5のオンライン領
域51には、最新のデータレコード1001が格納され
る。このデータレコード1001のIDフィールドに
は、そのデータレコードに対応する1世代前の世代凍結
データレコード1002の格納領域を示すアドレスが格
納される。さらに、世代凍結データレコード1002の
IDフィールドには、さらにその前の世代の世代凍結デ
ータレコードが格納されている領域のアドレスが格納さ
れる。このようにして、対応する各データレコード間に
結合関係(チェーン)が結ばれる。図において、データ
レコードのIDフィールドから延びる矢印は、図5にお
ける領域907に格納されている情報により、1つ前の
世代の世代凍結データレコードの格納位置が示されるこ
とを表している。
【0040】次に、処理装置1が実行するダンプ処理プ
ログラム12のステップ202で発行される凍結データ
レコード読出し要求に応じて記憶制御装置3が実行する
処理について説明する。
【0041】記憶制御装置3は、処理装置1から凍結デ
ータレコード読出し要求を受領すると、凍結データレコ
ード読出し処理34を実行する。図13に凍結データレ
コード読出し処理34のフローチャートを示す。処理装
置1のダンププログラム12により発行される凍結デー
タレコード読出し要求は、読出し対象となるデータレコ
ードのアドレスと世代番号とを入力パラメタとして有し
ている。要訣データ読み出し処理34では、まずこのパ
ラメタの妥当性のチェックを行う(ステップ110
1)。ステップ1101でパラメタに矛盾が検出される
と、ステップ1110でデータレコード読出し処理の異
常終了が処理装置1に報告され、凍結データレコード読
み出し処理による処理は終了する。ステップ1101で
パラメタの妥当性が確認されると、パラメタにより指定
されたアドレスに格納されているデータレコードがディ
スク装置5からデータバッファ32に読出される(ステ
ップ1102)。次に、データバッファ32上に読出さ
れたデータレコードについて、世代凍結されたデータレ
コードを持つか否か判定される(ステップ1103)。
ステップ1103において、データバッファ32上に読
み出したデータレコードが、対応する世代凍結データレ
コードを持たないと判断されたときには、そのデータレ
コードが、凍結状態に設定された時点から以降、更新さ
れていないことを意味する。従って、この場合には、ス
テップ1107に移り、ステップ1102でデータバッ
ファ32上に読み出したデータレコードを処理装置1に
転送する。一方、ステップ1103において、データバ
ッファ32上に読み出したデータレコードが対応する世
代凍結データレコードを持つと判断されたときには、ス
テップ1104で1つ前の世代のデータレコードをディ
スク装置5からデータバッファ32に読出す。なお、デ
ータバッファ32は、2つ以上のデータレコードを格納
可能な容量を持っており、ステップ1102で読み出し
たデータレコードと、ステップ1104で読み出したデ
ータレコードは、それぞれ異なる領域に格納される。次
に、ステップ1104で読出したデータレコードの世代
番号が、指定された世代番号と一致するか否か確認する
(ステップ1105)。ステップ1105において、世
代番号の一致が確認されると、記憶制御装置3は、その
データレコードを処理装置1に転送する(ステップ11
08)。世代番号が一致しない場合には、読み出したデ
ータレコードが最も古いデータレコードであるかを判定
する(ステップ1106)。この結果、最も古いデータ
レコードであると判定された場合は、世代凍結データレ
コードには、指定された世代番号を持つものがない、す
なわち、指定された世代番号の凍結状態が設定されてか
ら更新されていないと判断できる。そこで、この場合に
は、ステップ1107に進み、ステップ1102でデー
タバッファ32上に読出したデータレコードを処理装置
1に転送する。ステップ1107、またはステップ11
08において処理装置1にデータレコードを転送した
後、データレコード読出し処理の正常終了を処理装置1
に報告し、凍結データレコード読出し処理を終了する。
【0042】なお、以上の処理において、ステップ11
03、1105、および1106の判定は、図5に示
す、IDフィールド903の領域906に格納されてい
る世代番号と領域907に格納されている1世代前のデ
ータレコードアドレスに基づいて行われる。つまり、ス
テップ1103及び1106の処理は、IDフィールド
903に1世代前のデータレコードアドレスが設定され
ているか否かを判定することにより行われる。また、ス
テップ1105の処理は、IDフィールド903に格納
されている世代番号と、凍結データレコード読出し要求
のパラメタで指定された世代番号とが一致するか否かを
判定することにより行われる。
【0043】以上のようにして、ダンプ処理の対象とな
るデータレコードが処理装置1に転送されると、処理装
置1はそのデータレコードをテープ装置7に書き込む。
そして、ダンプ対象となるデータレコードを全てについ
て処理を終えると、記憶制御装置3に対して、凍結状態
解除要求を発行する。この凍結状態解除要求は、ダンプ
処理を行うデータレコードを凍結状態にするために発行
した凍結状態設定要求で指定した世代番号をパラメタと
して有する。このコマンドを受領した記憶制御装置3
は、凍結状態設定/解除処理33を実行する。以下に凍
結状態設定/解除処理33により実行される凍結状態解
除処理を再び図7を参照して説明する。
【0044】凍結状態設定処理の説明のところで述べた
ように、凍結状態設定/解除処理33は、ステップ30
1で、パラメタである世代番号の妥当性をチェックし、
世代番号に矛盾が検知されると、ステップ305で凍結
状態解除処理の異常終了を処理装置1に報告し、処理を
終了する。ステップ301において世代番号が妥当であ
ると判定されると、ステップ302で処理要求種別が判
定される。ここでは、受け付けた要求が凍結状態解除要
求であるので、ステップ306に進む。ステップ306
では、未使用領域管理テーブル314上の世代番号に対
応するデータレコード領域を未使用状態にする。具体的
には、未使用領域管理テーブル314内の各トラック管
理表3143の各エントリのデータレコード管理フィー
ルド3145を検索し、凍結状態解除要求でパラメタと
して指定された世代番号が登録されているデータレコー
ド管理フィールド3145を探す。そして、該当する世
代番号が登録されていたデータレコード管理フィールド
3145に”0”を登録する。続いて、ステップ307
で世代管理テーブル312から指定された世代番号に対
応する世代管理情報を削除し、最後に凍結状態解除処理
の正常終了を処理装置1に報告して、処理を終了する。
【0045】以上が、ダンプ処理プログラム12と、ダ
ンプ処理プログラム12が発行するコマンドを受領した
際の記憶制御装置3の処理である。
【0046】以上説明した処理により、ダンプ処理の開
始時点以降に、ダンプ処理の対象となるデータレコード
に対する通常業務プログラムからの更新処理があった場
合でも、更新処理時にディスク装置の未使用領域に待避
された世代凍結データレコードを読み出すことで、ダン
プ処理開始時に存在したデータレコードをテープ装置に
複写することが可能となる。なお、本実施例では、更新
前の世代凍結データレコードをディスク装置5上の未使
用領域に格納したが、記憶制御装置3に更新前のデータ
レコードを格納する専用のディスク装置を備えるように
しても良い。
【0047】図14は、本発明の第2の実施例に係る記
憶制御装置を有する計算機システムの構成図である。本
実施例が第1の実施例と異なる点は、記憶制御装置3内
にキャッシュメモリ40を備えることにある。これに伴
い、制御メモリ31にはキャッシュ管理テーブル316
を設けている。キャッシュメモリ40上のデータレコー
ドは、このキャッシュ管理テーブル316により管理さ
れる。また、本実施例において、記憶制御装置3は、処
理装置1からデータレコードの書き込み要求を受けた
際、更新対象となったデータレコードをキャッシュメモ
リ40に格納した時点で処理装置1に更新処理の終了を
報告し、処理装置1からのデータレコード更新要求とは
非同期に更新データレコードをディスク装置5に格納す
るライトアフタ機能を備える。記憶制御装置3は、ライ
トアフタ機能を実現するために、プロセッサ45により
実行される処理プログラムとして、第1の実施例で説明
した各処理に加えデータレコードデステージ処理39を
備える。記憶制御装置3が処理装置1に更新処理の終了
を報告してから実際に更新データレコードをディスク装
置5に格納する間に、電源障害等の発生により更新デー
タレコードが消失しないようにするため、キャッシュメ
モリ40と制御メモリ31は、バッテリ電源等により不
揮発化されている。
【0048】図15にキャッシュ管理テーブル316の
構成を示す。本実施例では、キャッシュメモリ40上の
データレコードは、ディスク装置5上のトラック単位に
まとめられて管理されている。キャッシュ管理テーブル
316は、ディスク装置5の各シリンダに対応するエン
トリを有するシリンダ表3161、シリンダ表311の
各エントリからポイントされ、そのシリンダ内の各トラ
ックに対応するエントリを有するトラック表3162、
及びトラック表の各エントリからポイントされ、そのト
ラックのデータレコードを格納するキャッシュメモリ4
0の領域を管理するスロット制御ブロック(SCB)3
165を含んでいる。更新データレコード(データレコ
ードデステージ処理が実行された更新データレコードを
除く)を含まないキャッシュメモリの領域を管理するS
CB3165は、LRUポインタ3163を始点、MR
Uポインタ3164を終点とするSCBチェインを構成
する。あるトラック内のデータレコードが処理装置1に
より参照されると、そのトラックを管理するSCBはM
RUポインタ3164の前に接続される。従って、LR
Uポインタ3163側のSCB3165により管理され
るトラックほど、そこに含まれるデータレコードが参照
されてからの経過時間が長いことになる。記憶制御装置
3は、新たなキャッシュメモリ40上の領域が必要とな
った場合、キャッシュメモリ40に未使用の領域がなけ
れば、LRUポインタ3163からポイントされるSC
B3165により管理される領域を割り当てる。
【0049】各SCB3165には、図16に示すよう
に、SCBチェインを構成するために用いられるSCB
チェイン順方向ポインタ3651、SCBチェイン逆方
向ポインタ3652、対応するSCBの状態を管理する
状態管理フラグ3653、ディスク装置番号,シリンダ
アドレス(CC),トラックアドレス(HH)からなる
データレコードアドレス3654、及びキャッシュメモ
リ40上での格納場所を示すキャッシュメモリアドレス
3655の各エントリを含む。この他に、本実施例で
は、世代凍結データレコードの管理を行うために、世代
番号3656と、1世代前のデータレコードを格納する
キャッシュメモリ領域を管理するSCBアドレス365
7とを格納するエントリがSCB3165に設けられて
いる。世代凍結データレコード含むキャッシュメモリの
領域は、世代番号毎にまとめて管理されている。このた
めに、同一の世代番号を持つ世代凍結データレコードを
格納した領域を管理するSCB3165により、後述す
る世代管理テーブル312のSCBポインタ3127を
始点とするSCBチェインが構成されている。このSC
Bチェインに登録されているSCBは、データレコード
のアドレス順にソートされている。
【0050】図17に本実施例で用いる世代管理テーブ
ル312の構成を示す。本実施例の世代管理テーブル3
12も、図3に示す第1の実施例の世代管理テーブル3
12とほぼ同様の構成を有している。ただし、本実施例
の世代管理テーブル312は、上述した、同じ世代番号
を持つ世代凍結データレコードを含むキャッシュメモリ
の領域を管理するSCBによるSCBチェインの始点と
なるSCBポインタ3127を格納するフィールドを有
している点で第1の実施例の世代管理テーブルとは異な
っている。
【0051】本実施例において、以上説明した以外の構
成については、第1の実施例と同様であるためここでは
説明を省略する。
【0052】次に、本実施例において記憶制御装置3に
より実行される各処理について説明する。なお、処理装
置1上で動作するダンプ処理プログラム12、及び通常
業務プログラム14による処理は、第1の実施例と同じ
であるため説明を省略する。また、ダンプ処理プログラ
ム12により発行される凍結状態設定要求に応じて実行
される凍結状態設定処理33についても、第1の実施例
と同様に実行されるため、説明を省略する。
【0053】まず、処理装置1上で動作する通常業務プ
ログラム14から更新要求が発行された場合の処理につ
いて説明する。記憶制御装置3は、データレコード更新
要求を受領するとデータレコード更新処理36を実行す
る。図18に本実施例におけるデータレコード更新処理
36のフローチャートを示す。データレコード更新要求
には、更新対象となるデータレコードのアドレスがパラ
メタとして含まれており、データレコード更新処理で
は、まず、このパラメタの妥当性がチェックされる(ス
テップ1401)。ここでのチェックによりパラメタに
矛盾があると判定された場合は、ステップ1409にお
いて処理装置1にデータレコード更新処理の異常終了を
報告し処理を終了する。ステップ1401においてパラ
メタが正しいと判定された場合は、次に、そのパラメタ
により示されるデータレコードがキャッシュメモリ40
上に存在するかを判定するヒット/ミス判定処理行う
(ステップ1402)。ヒット/ミス判定処理は、制御
メモリ31上のキャッシュ管理テーブル316を参照す
ることにより行われる。更新対象のデータレコードがキ
ャッシュメモリ40上に存在しないと判定された場合
は、ステップ1403において、更新対象のデータレコ
ードをディスク装置5からキャッシュメモリ40に読出
す。この際、更新対象のデータレコードが存在するトラ
ックに含まれる全てのデータレコードが一括してキャッ
シュメモリ40上に読み出される。ステップ1403で
更新対象のデータレコードをキャッシュメモリ40上に
読出した後、またはステップ1402で更新対象のデー
タレコードがキャッシュメモリ40上に存在すると判定
された場合、そのデータレコードが凍結状態とすべきデ
ータレコードに含まれるか否か判定する(ステップ14
04)。ここでの判定は、世代管理テーブル312を参
照することにより行われる。この結果、更新対象のデー
タレコードが、凍結状態設定の対象であれば、続いて、
更新対象となったデータレコードに対して世代凍結処理
がすでに実施されているか判定する(ステップ140
5)。具体的には、更新対象となったデータレコードを
凍結状態にするデータレコードの範囲に含む世代管理テ
ーブル312の各エントリについて、フィールド312
7のSCBポインタに接続するSCBチェインをたど
り、データレコードアドレスに更新対象のデータレコー
ドのアドレスを保持するSCBが存在するか調べる。該
当するSCBが存在しないエントリがあれば、そのエン
トリに登録された世代番号での更新対象のデータレコー
ドの世代凍結処理は行われていないものとして判定する
ことができる。更新対象のデータレコードについて、世
代凍結処理が実施されていないと判定された場合は、ス
テップ1406において、データレコード複写処理37
により更新対象のデータレコードを世代凍結データレコ
ードとしてキャッシュメモリ40上の領域に格納(複
写)する。なお、世代凍結データレコードは、処理装置
1から世代凍結解除要求が発行されるまでキャッシュメ
モリ40上に保持される。ステップ1406による処理
の終了後、若しくはステップ1405において、更新対
象のデータレコードについて既に世代凍結処理が実施さ
れていると判定された場合、または、ステップ1404
にて更新対象のデータレコードが凍結状態設定の対象で
ないと判断された場合は、ステップ1407の処理を実
行する。ステップ1407では、処理装置1から更新デ
ータレコードを受領し、更新対象のデータレコードが存
在するキャッシュメモリ40の領域にその更新データレ
コードを格納する。その後、処理装置1にデータレコー
ド更新処理の正常終了を報告し(ステップ1408)、
処理を終了する。
【0054】図19は、ステップ1406で実施される
データレコード複写処理のフローチャートである。ま
ず、キャッシュ管理テーブル316を参照して、キャッ
シュメモリ40上に、世代凍結データレコードを格納す
るための領域を確保する(ステップ1701)。ここで
は、LRUポインタ3163からポイントされるSCB
により管理されるキャッシュメモリ40の領域を世代凍
結データレコードを格納するための領域として割り当て
る。そして、キャッシュメモリ40上に保持されている
更新前のデータレコードを世代凍結データレコードとし
て、ステップ1701で確保したキャッシュメモリ40
の領域に複写する(ステップ1702)。世代凍結デー
タレコードが格納されたキャッシュメモリ40の領域を
管理するSCBは、世代管理テーブル312の対応する
世代番号を持つエントリのSCBポインタにつながるS
CBチェインに、データレコードのアドレス順に接続さ
れる。データレコード更新処理のステップ1405にお
いて、世代凍結処理が実施されていない世代が複数見つ
かれば、それら各世代について上述したデータレコード
複写処理を実施する。
【0055】以上の処理により、凍結状態が設定されて
いるデータレコードに対して更新要求が発行された場
合、更新前のデータレコードがキャッシュメモリ40上
に保持されることになる。なお、処理装置1から転送さ
れた更新データレコードは、データレコードデステージ
処理39により処理装置1からの更新処理要求とは非同
期にディスク装置5に格納される。本実施例におけるデ
ステージ処理39は、従来の記憶制御装置における処理
を適用することができるので、ここでは特に説明は行わ
ない。
【0056】次に、凍結状態に設定されたデータレコー
ドをテープ装置7に複写するために、処理装置1上で動
作するダンプ処理プログラム12により発行される凍結
データレコード読み出し要求に応じて記憶制御装置3が
実施する凍結データレコード読出し処理34について説
明する。
【0057】本実施例における凍結データレコード読出
し処理34のフローチャートを図20に示す。凍結デー
タレコード読出し要求は、読出そうとするデータレコー
ドのアドレス、及び世代番号とをパラメタとして含む。
凍結データレコード読出し処理では、まず、このパラメ
タの妥当性がチェックされる(ステップ1801)。こ
こでのチェックにより、パラメタに矛盾が検出される
と、ステップ1810において、データレコード読出し
処理の異常終了を処理装置1に報告して処理を終了す
る。ステップ1801においてパラメタの妥当性が確認
されると、パラメタとして指定された世代番号を持つ世
代凍結データレコードを管理するSCB3165のアド
レスを世代管理テーブル312の対応する世代番号を持
つエントリのSCBポインタ3127から得る(ステッ
プ1802)。そして、世代凍結データレコードが存在
するか否か調べる(ステップ1803)。先に説明した
ように、同一の世代番号を持つ世代凍結データレコード
を格納したキャッシュメモリ40の領域を管理するSC
B3165は、SCBポインタ3165を始点とするS
CBチェインに接続されている。このSCBチェイン上
のSCB3165は、データレコードアドレス順にソー
トされている。そこでステップ1803では、SCB3
165に登録されているデータレコードアドレスと要求
されたデータレコードアドレスとを比較することによ
り、指定された世代番号を持つキャッシュメモリ40上
に存在するか否か判定する。この比較の結果、SCB3
165に登録されているデータレコードアドレスが、パ
ラメタで指定されたデータレコードアドレスよりも小さ
い場合は、ステップ1805においてSCBチェイン上
で次に接続されているSCB3165を処理対象として
ステップ1803に戻る。ステップ1803において、
処理対象となったSCB3165に登録されているデー
タレコードアドレスが指定されたデータレコードアドレ
スより大きい場合は、SCBチェインに接続されたSC
B3165により管理されるキャッシュメモリ40の領
域には、指定されたデータレコードアドレスの世代凍結
データレコードは存在しない。このことはすなわち、処
理装置1から要求されたデータレコードは、凍結状態に
設定された後更新されていないこと意味している。従っ
てこの場合には、ステップ1806に進み、キャッシュ
管理テーブル316を参照して、パラメタにより指定さ
れたアドレスのデータレコードが、キャッシュメモリ4
0上に存在するか否か判定する。この判定の結果ミスヒ
ットであれば、そのデータレコードアドレスに基づい
て、目的のデータレコードをキャッシュメモリ40上に
読み出す(ステップ1807)。ステップ1806の判
定によりヒットであると判定された場合、または、ステ
ップ1807で目的のデータレコードをキャッシュメモ
リ上に読み出した後、キャッシュメモリ40上にある目
的のデータレコードを処理装置1に転送する(ステップ
1808)。一方、ステップ1803において、処理対
象となったSCB3165に登録されているデータレコ
ードアドレスが指定されたデータレコードアドレスと一
致した場合は、そのSCB3165により管理されるキ
ャッシュメモリ40の領域に、転送すべき世代凍結デー
タレコードが存在することになる。そこで、ステップ1
804において、その世代凍結データレコードをキャッ
シュメモリ40から読み出し、処理装置1に転送する。
ステップ1804、あるいは1808において、データ
レコードを転送した後、データレコード読出し処理の正
常終了を処理装置1に報告し処理を終了する(ステップ
1809)。
【0058】以上のようにして処理装置1に転送された
データレコードは、処理装置1によりテープ装置7に格
納される。ダンプ処理の対象となる全てのデータレコー
ドをテープ装置7に格納した後、処理装置1は、凍結状
態解除要求を発行する。凍結状態解除要求には、パラメ
タとして、ダンプ処理を行ったデータレコードを凍結状
態とするために発行された凍結状態設定要求で指定され
た世代番号が含まれている。凍結状態設定要求を受け取
った記憶制御装置3は、凍結状態設定/解除処理33を
実行する。本実施例における凍結状態解除処理は、大部
分が図7に示す第1の実施例の場合と同様であるが、ス
テップ306における処理が異なる。第1の実施例で
は、ステップ306において、世代凍結データレコード
を格納したディスク装置5上の領域を未使用状態に戻す
処理を行った。本実施例では、この処理に代えて、キャ
ッシュメモリ40上に格納されている世代凍結データレ
コードを保持するキャッシュメモリ40の領域を管理す
るSCB3165を未使用状態とする処理が実施され
る。
【0059】以上説明した実施例では、ダンプ処理を行
うために凍結状態が設定されたデータレコードを対象と
して更新要求が発生したときに、更新前のデータレコー
ドを世代凍結データレコードとしてキャッシュメモリ上
に保存される。従って、ダンプ処理中にダンプ処理の対
象となっているデータレコードが更新された場合でも、
世代凍結データレコードとしてキャッシュメモリ上に保
存されたデータレコードを読み出すことにより、ダンプ
処理開始時のデータレコードを確実にテープ装置に書き
込むことができる。
【0060】また、第2の実施例では、データレコード
の更新処理時に、更新対象となるデータレコードをキャ
ッシュメモリ40上に読出している。これは、ディスク
装置5が、特に、アレイ型記憶装置の場合に適したもの
である。この点につき図21を参照して説明する。図2
1は、アレイ型の記憶装置におけるデータレコードの更
新の様子を簡略化して示している。アレイの型記憶装置
は、図21に示すように、複数のディスク装置51−5
4を備えており、処理装置から送られてきた複数のデー
タレコード(図21では3つのデータレコード)からパ
リティに代表される冗長レコード(図中、斜線で埋めら
れたレコード)を生成し、それぞれ異なるディスク装置
に格納する。これにより、アレイ型の記憶装置は、高性
能、かつ信頼性の高い記憶装置を実現している。このよ
うなアレイ型の記憶装置では、処理装置からデータレコ
ードの更新の要求があった場合には、対応する冗長レコ
ードを更新し、新たな冗長レコードを作成する必要があ
る。この新たな冗長レコードは、更新前のデータレコー
ド、更新データレコード、及び更新前の冗長レコードか
ら求めることができる。特に、新たな冗長レコードの作
成をキャッシュメモリを用いて行う場合、更新前のデー
タレコードは一旦キャッシュメモリ上に読み出される。
つまり、更新データレコード以外に、更新前のデータレ
コード、及び更新前の冗長レコードがキャッシュメモリ
上に読み出され、これらの間で排他的論理和をとること
で新たな冗長レコードが生成される。従って、記憶装置
としてこのようなアレイ型の記憶装置を用いる場合に
は、図18のステップ1403で実施される更新前のデ
ータレコードの読み出し処理が、オーバヘッドとなるよ
うなことはない。
【0061】第2の実施例では、世代凍結データレコー
ドは、キャッシュメモリ40上に凍結状態解除要求が発
行されるまで保持されている。このため、第2の実施例
では十分な容量のキャッシュメモリが必要となる。そこ
で、世代凍結データレコードをディスク装置5に格納
し、キャッシュメモリを有効に利用できるようにしたも
のを第3の実施例として以下に説明する。
【0062】本実施例が第2の実施例と異なるのは、デ
ータレコードデステージ処理39における処理の対象と
なるデータレコードに、世代凍結データレコードが含ま
れる点にある。このため、第2の実施例とは、データレ
コードデステージ処理39と、凍結データレコード読出
し処理34が異なり、その他の部分については第2の実
施例と同じである。以下に第2の実施例と異なる処理に
ついて説明する。なお、以下では、これらの処理以外の
部分については、第2の実施例で用いた図面を参照する
こととし、その参照番号により説明を行う。
【0063】図19は、本実施例におけるデータレコー
ドデステージ処理39のフローチャートである。データ
レコードデステージ処理39は、処理装置1からのデー
タレコード更新要求の受領とは無関係に、更新の結果が
ディスク装置5に反映されていない更新データレコード
が存在する場合、所定のタイミングで起動される。デー
タレコードデステージ処理39では、まず、デステージ
処理の対象となったデータレコードが世代凍結データレ
コードであるかを判定する(ステップ1901)。デス
テージ処理の対象となったデータレコードが世代凍結デ
ータレコードである場合には、当該データレコードを格
納するために、ディスク装置5の未使用領域を確保する
必要がある。従って、この場合には、未使用領域管理処
理35を起動し、ディスク装置5上の未使用領域を確保
する(ステップ1902)。未使用領域管理処理35に
より実行される処理は、第1の実施例において、図11
を参照して説明した処理と同じであるため説明を省略す
る。ディスク装置5上に未使用領域を確保できたら、次
に、確保したディスク装置5の未使用領域のアドレスを
1世代後のデータレコードを管理しているSCB316
5上のエントリ3657に格納する(ステップ190
3)。その後、世代凍結データレコードのIDフィール
ド903の領域906にSCB3165のエントリ36
56に格納されている世代番号を格納するステップ19
04)。ステップ1904終了後、もしくはステップ1
901においてデステージ処理の対象が世代凍結データ
レコードでないと判定された場合は、1世代前のデータ
レコードが存在するかを判定する(ステップ190
5)。この判定は、SCB3161上のエントリ365
7にデータレコードアドレスが登録されているか判定す
ることにより行なわれる。1世代前のデータレコードが
存在すると判定された場合は、1世代前のデータレコー
ドの格納アドレスをIDフィールド903の領域907
に格納する(ステップ1906)。その後、でステージ
処理の対象のデータレコードをディスク装置5に格納し
て(ステップ1907)、データレコードデステージ処
理39を終了する。なお、ディスク装置5に格納される
通常のデータレコード及び世代凍結データレコードのフ
ォーマットは、図5に示すものと同様となる。
【0064】図23は、本実施例におけるデータレコー
ド読出し処理34のフローチャートである。まず、凍結
データレコード読出し要求でパラメタとして受け取った
読み出し対象となるデータレコードのアドレスと世代番
号の妥当性をチェックする(ステップ2001)。パラ
メタに矛盾が検出されると、ステップ2011において
データレコード読出し処理の異常終了を処理装置1に報
告し処理を終了する。ステップ2001でパラメタの妥
当性が確認されると、パラメタにより指定されたアドレ
スのデータレコードがキャッシュメモリ40上に存在す
るか判定する(ステップ2002)。この判定の結果、
読出し対象データレコードがキャッシュメモリ40上に
存在しないと判定された場合は、そのデータレコードを
キャッシュメモリ40上に読出す(ステップ200
3)。その後、キャッシュメモリ40上の処理の対象と
なっているデータレコードが、対応する世代凍結データ
レコードを持つか否か判定する(ステップ2004)。
この判定は、SCB3165、またはIDフィールド9
03に1世代前の世代凍結データレコードの格納アドレ
スが設定されているかどうか判定することにより行なわ
れる。1世代前のデータレコードが存在すると判定され
た場合は、1世代前のデータレコードをディスク装置5
からキャッシュメモリ40に読出す(ステップ200
5)。そして、キャッシュメモリ40に読出した世代凍
結データレコードの世代番号を確認する(ステップ20
06)。世代番号の確認により、ステップ2005でキ
ャッシュメモリ40に読出された世代凍結データレコー
ドの世代番号がパラメタで指定された世代番号でないと
判定された場合は、続いて、この世代凍結データレコー
ドが最も古い世代凍結データレコードかどうか判定する
(ステップ2007)。この結果、ステップ2005で
キャッシュメモリ40に読出した世代凍結データレコー
ドが最も古い世代凍結データレコードであると判定され
た場合は、指定された世代番号の凍結状態設定要求を受
け付けた時点から当該データレコードが更新されていな
いことを意味する。したがって、この場合には、最新の
データレコード、即ち、パラメタで指定されたアドレス
により指定されるデータレコードを処理装置1に転送す
る(ステップ2008)。ステップ2007でさらに古
い世代の世代凍結データレコードが存在すると判定され
た場合は、ステップ2005に戻り、さらに1つ前の世
代の世代凍結データレコードを読み出し、同様の処理を
繰り返す。また、ステップ2006において、指定され
た世代番号を持つ世代凍結データレコードが検索された
場合は、当該データレコードを処理装置1に転送する
(ステップ2009)。ステップ2008、あるいは2
009で処理装置1にデータレコードを転送した後
は、、データレコードの読出し処理の正常終了を処理装
置1に報告して処理を終了する(ステップ2010)。
【0065】本実施例によれば、世代凍結データレコー
ドが適宜ディスク装置の空き領域に待避されるため、第
2の実施例に比べて、キャッシュメモリを有効に利用し
つつ、ダンプ処理開始時点のデータレコードを保持して
おくことができる。
【0066】以上説明した第3の実施例では、世代凍結
データレコードをディスク装置5に格納することにより
キャッシュメモリの有効利用を図ったが、他の方法によ
り同様の目的を達成することもできる。以下にその一例
として、処理装置1から指定された世代番号毎に使用す
るキャッシュメモリ容量を限定する方式について説明す
る。本実施例もかなりの部分において第2の実施例と共
通している。以下、第2の実施例と相違する部分を主と
して本実施例を説明する。
【0067】本実施例では、世代番号ごとに使用するキ
ャッシュメモリの容量を規定するため、世代管理テーブ
ル312の各エントリに、使用できるキャッシュメモリ
の容量を登録するフィールドを有する。本実施例で使用
する世代管理テーブル312の構成を図24に示す。図
24において、各世代ごとに使用することが許されるキ
ャッシュメモリの容量は、フィールド3128に登録さ
れる。フィールド3128以外のフィールドについて
は、第2の実施例と変わるところはない。
【0068】処理装置1上で実行されるのダンプ処理プ
ログラム12は、並行して動作することができる複数の
タスクからなるマルチタスク構造を有している。具体的
には、これまでの実施例で説明したきたように、ダンプ
処理の範囲に含まれるデータレコードを順次記憶制御装
置3から読出す処理を行なうメインタスクと、キャッシ
ュメモリ上の世代凍結データレコードを読出す処理を行
なう子タスクから構成される。図25は、ダンプ処理プ
ログラム12のメインタスクのフローチャートである。
ダンプ処理プログラム12のメインタスクでは、ダンプ
処理を開始するのに先立ち、主記憶装置内にある読出し
済みデータレコードビットマップをクリアする(ステッ
プ2401)。読出し済みデータレコードビットマップ
は、後述するダンプ処理子タスクにより記憶制御装置3
から読出されたデータレコードを認識するために使われ
る。特に図示はしないが、ダンプ処理の対象となる個々
のデータレコードに対応するビットを有しており、ダン
プ処理子タスクにより読み出されたデータレコードに対
応するビットがセットされる。続いて、ダンプ処理子タ
スクを生成する(ステップ2402)。その後、ダンプ
処理範囲のデータレコードに対し凍結状態を設定するた
めに、凍結状態設定要求を記憶制御装置3に対して発行
する(ステップ2403)。凍結状態設定要求には、パ
ラメタとして、世代番号、凍結状態に設定する先頭のデ
ータレコードのアドレス、及び最後部のデータレコード
のアドレスの他に、世代凍結済みデータレコードを格納
するために使用するキャッシュメモリの容量を指定する
情報が含まれている。ダンプ処理の対象となるデータレ
コードを凍結状態に設定した後、処理装置1は、記憶装
置3からダンプ処理の対象となっているデータレコード
を読み出し、テープ装置7に書き込む。具体的には、ま
ず、読み出そうとしているデータレコードが、ダンプ処
理子タスクによってすでに主記憶装置17に読み出され
ているかどうかチェックする(ステップ2404)。こ
のチェックは、主記憶装置17にある読出し済みデータ
レコードビットマップを参照して行なわれる。この結
果、読み出そうとしているデータレコードが、主記憶装
置17に読み出されていないと判断された場合は、その
データレコードを読み出す(ステップ202)。ステッ
プ202で行われる処理は、他の実施例と同様、記憶制
御装置3に対し、凍結データレコード読出し要求を発行
することにより行なわれる。ステップ2404におい
て、読み出そうとしているデータレコードが既に主記憶
装置17上に読み出されていると判断された場合は、ス
テップ202の処理はスキップされる。ステップ20
2、またはダンプ処理子タスクにより主記憶装置17上
に読み出されたデータレコードは、テープ装置7に書き
込まれる(ステップ203)。ステップ204では、ダ
ンプ処理の対象となっている全てのデータレコードにつ
いて以上の処理が終了したかを判定する。ダンプ処理が
終了したと判断された場合は、ダンプ処理範囲のデータ
レコードの凍結状態を解除し(ステップ205)、ダン
プ処理子タスクを消滅させる(ステップ2405)。
【0069】図26は、ステップ2402で生成される
ダンプ処理子タスクによる処理の流れを示すフローチャ
ートである。ダンプ処理子タスクは、生成された後、直
ちにWAIT状態となる(ステップ2501)。このW
AIT状態は、処理装置1が、記憶制御装置3から凍結
データレコード格納用キャッシュメモリが満杯であるこ
とを知らせる状態報告を受けると解除される。記憶制御
装置3からの状態報告によりWAIT状態が解除される
と、キャッシュメモリ40上に格納されている世代凍結
データレコードを読出すため、記憶制御装置3に対し、
世代凍結データレコード読出し要求を発行する(ステッ
プ2502)。世代凍結データレコード読出し要求に
は、パラメタとして世代番号を含んでいる。この要求を
受領した記憶制御装置3は、指定された世代番号に基づ
きキャッシュメモリ40上の世代凍結データレコードを
処理装置1に転送すると共に、転送したデータレコード
以外に、同一の世代番号を持つ世代凍結データレコード
がキャッシュメモリ40上に存在するか報告する。処理
装置1は、記憶装置3から世代凍結データレコードを受
け取ると、それを主記憶装置17に格納する。それか
ら、読出したデータレコードの位置(シリンダ番号、ト
ラック番号等)を読出し済みデータレコードビットマッ
プに記録する(ステップ2503)。読出し済みデータ
レコードビットマップを設定した後、未転送の世代凍結
データレコードが存在するか判定する(ステップ250
4)。この判定は、ステップ2502において、記憶制
御装置3からデータレコードと共に、世代凍結データレ
コードがないことの報告があったかどうかにより判定す
る。この判定の結果、未転送の世代凍結データレコード
が存在すると判断された場合は、ステップ2502に戻
り、さらに世代凍結データレコードの読み出しを続け
る。一方、ステップ2504において、未転送の世代凍
結データレコードが存在しないと判断された場合は、ス
テップ2501に戻りWAIT状態になる。なお、ダン
プ処理子タスクは、ダンプ処理プログラム12のメイン
タスクのステップ2405において消滅させられる。
【0070】以上が、処理装置1上で実行されるダンプ
処理プログラム12の処理の流れであるが、以下に、記
憶制御装置3上での各処理について説明する。
【0071】ダンプ処理プログラム12により、ステッ
プ2403において発行される凍結状態設定要求を受け
取ると、記憶制御装置3は、凍結状態設定/解除処理3
3を実行する。本実施例における凍結状態設定/解除処
理33は、図7に示す他の実施例での凍結状態設定/解
除処理とほぼ同様の処理を行う。図7に示す凍結状態設
定/解除処理との相違は、図27に示すように、図7に
おけるステップ303に代えて、ステップ2601にあ
る処理を行う点にある。ステップ2601では、ディス
ク装置番号、ホスト番号、世代番号、凍結状態設定範
囲、及び日時の他に、本実施例でパラメタとして新たに
与えられるキャッシュメモリの容量を世代管理テーブル
312に設定する。ステップ2601以外のステップで
実施される処理は、図7の対応するステップと同一であ
るので説明を省略する。
【0072】次に、本実施例にけるデータレコード更新
処理36は、図18に示す第2の実施例のデータレコー
ド更新処理と同様に進められる。ただし、本実施例で
は、世代凍結データレコードを格納するキャッシュメモ
リの領域が規定されているため、図18におけるステッ
プ1406で実行されるデータレコード複写処理37に
より実施される処理が第2の実施例と異なっている。以
下、第2の実施例と異なっているデータレコード複写処
理について説明する。
【0073】図28は、本実施例において実施されるデ
ータレコード複写処理のフローチャートである。ステッ
プ1701、および1702では、第2の実施例の場合
(図19)と同じく、キャッシュメモリ40上に、領域
が確保され、そこに、更新の対象となったデータレコー
ドの更新前の値を複写する。その後、世代凍結データレ
コードの格納に使用しているキャッシュメモリ容量がし
きい値を越えているか判定する(ステップ2801)。
この判定に用いるしきい値は、世代凍結処理の対象とな
っている世代番号について、世代管理テーブル312の
対応するエントリのフィールド3128に設定されてい
るキャッシュメモリ容量を基に決定される。本実施例で
は、フィールド3128に設定されているキャッシュメ
モリ容量の8割の値をしきい値としていることとする。
世代凍結データレコードの格納に使用しているキャッシ
ュメモリの容量がしきい値を越えていると判断された場
合は、処理装置1にキャッシュメモリ満杯を割込みとし
て報告しする(ステップ2802)。この割込みが処理
装置1に報告されると、先に説明したように、ダンプ処
理子タスクが起動され、キャッシュメモリ上の世代凍結
データレコードが読み出される。なお、ここでの報告に
おいて、使用しているキャッシュメモリの容量がしきい
値をこえた世代番号を処理装置1に報告するようにし、
ダンプ処理子タスクで報告された世代番号についてのみ
世代凍結データレコードを読み出すようにすると、処理
装置1における処理負荷が不要に増大することを防ぐと
ともに、キャッシュメモリをより有効に利用することが
できる。ステップ2801において、世代凍結データレ
コードの格納に使用しているキャッシュメモリの容量が
しきい値を越えていないと判断された場合は、そのまま
処理を終了する。これにより、通常業務プログラム14
から発行されるデータレコード更新要求に伴ってキャッ
シュメモリ上に生成される凍結データレコードの容量を
制限できる。
【0074】図29は、ダンプ処理プログラム12のメ
インタスクにより発行される凍結データレコード読出し
要求に応じて凍結データレコード読出し処理34により
実施される処理のフローチャートである。本実施例にお
いて凍結データレコード読み出し要求に応じて実施され
る処理は、図20に示す第2の実施例における凍結デー
タレコード読出し処理とほぼ同様に進められるが、以下
の2つの点で第2の実施例とは異なっている。
【0075】・図29のステップ1804aでは、図2
0のステップ1804と同様に処理の対象となったSC
Bによって管理される全ての凍結データレコードを処理
装置1に転送した後、さらに次の処理を行う。即ち、転
送したデータレコードが、世代凍結データレコードであ
る場合には、処理の対象となったSCBを削除する。こ
の追加された処理により、ダンプ処理を終了し、不要と
なった世代凍結データレコードをキャッシュメモリから
削除することにより、キャッシュメモリの無駄な使用を
回避することができる。
【0076】・ステップ1809において、処理装置1
に処理の終了を報告した後に、転送を終了したダンプ対
象データレコードの次のデータレコードアドレスを世代
管理テーブル312の開始データレコードアドレスフィ
ールド3124に格納するステップ2901が追加され
ている。ステップ2901の処理により、ダンプ処理の
進行状態に応じて、世代凍結処理の対象となるデータレ
コードの範囲を狭め、無駄な世代凍結処理の実行、およ
びキャッシュメモリの無駄な使用を回避することができ
る。
【0077】本実施例の凍結データレコード読み出し処
理34には、凍結データレコード読み出し要求に応じて
実行される上述した処理の他に、処理装置1上のダンプ
処理子タスクにより発行される世代凍結データレコード
読出し要求に応じて世代凍結データレコード読み出し処
理が含まれる。図30に、世代凍結データレコード読み
出し処理のフローチャートを示す。
【0078】世代凍結データレコード読み出し処理で
は、まず、世代凍結データレコード読出し要求で与えら
れたパラメタの妥当性をチェックする(ステップ300
1)。具体的には、パラメタとして指定された世代番号
が世代管理テーブル312に登録されているか判定す
る。この結果、指定された世代凍結番号が世代管理テー
ブル312に登録されていなければ、入力パラメタが不
当であると判断され、ステップ3007に進み、処理装
置1に異常終了を報告する。一方、指定された世代番号
が世代管理テーブル312に登録されている場合は、ス
テップ3002に進む。ステップ3002では、世代管
理テーブル312を参照し、指定された世代番号に対応
するエントリのSCBポインタフィールド3127か
ら、その世代番号により凍結されたデータレコードを格
納するキャッシュメモリ上の領域を管理するSCB31
65のアドレスを得る。続いて、ステップ3002にお
いて求めたSCBアドレスが示すSCBにより管理され
るキャッシュメモリ上のデータレコードを処理装置1に
転送し、転送を終了したSCBを削除する(ステップ3
003)。ここでは、キャッシュメモリの領域上の1つ
以上のデータレコードを一括して、ディスク装置5のト
ラックと同じイメージで処理装置1に転送する。キャッ
シュメモリ上の世代凍結データレコードを処理装置1に
転送した後、処理装置1に転送を行なっていない同一の
世代番号を持つ世代凍結データレコードがキャッシュメ
モリ上に存在するか判定する(ステップ3004)。こ
の判定は、具体的には、世代管理管理テーブル312を
参照して、SCBポインタフィールド3127にSCB
アドレスが設定されているか否かにより行われる。指定
された世代番号を持つ世代凍結データレコードがキャッ
シュメモリ40上にまだ存在すると判定された場合は、
世代凍結データレコードの読出し処理が正常に終了した
ことを処理装置1に報告する(ステップ3005)。ま
た、ステップ3004において、読出し処理を行うべき
世代凍結データレコードがキャッシュメモリ40上に存
在しないと判定された場合は、世代凍結データレコード
読出し処理の正常終了に加え、転送すべき世代凍結デー
タレコードが存在しないことを処理装置1に報告する
(ステップ3006)。
【0079】以上説明した実施例では、世代凍結データ
レコードをディスク装置に格納することなく、世代凍結
データレコードの格納に必要なキャッシュメモリの容量
を制限できる。したがって、ダンプ処理中であっても、
通常業務プログラム14からのアクセス要求に対するキ
ャッシュヒット率を保証することができ、かつ、ダンプ
処理開始時のデータレコードを確実に読出すことが可能
になる。
【0080】
【発明の効果】本発明によれば、ダンプ処理の最中に更
新要求が発行された場合、更新前のデータレコードを所
定の記憶領域に待避した上で更新処理を行うので、その
後のダンプ処理プログラムからの要求により、ダンプ処
理を開始した時点でのデータレコードを入手することが
できる。したがって、ダンプ処理を、他の処理と並行し
て実行しても、ダンプ開始時点の完全なダンプ情報を採
取できる。
【図面の簡単な説明】
【図1】第1の実施例における計算機システムのハード
ウエア構成を示すブロック図。
【図2】本発明の第1の実施例の計算機システムの論理
的な構成を示す構成図。
【図3】世代管理テーブルの構成図。
【図4】未使用領域管理テーブルの構成図。
【図5】ディスク装置上のトラック、及びデータレコー
ドのフォーマット図。
【図6】ダンプ処理プログラムのフローチャート。
【図7】凍結状態設定/解除処理のフローチャート。
【図8】データレコード更新処理のフローチャート。
【図9】データレコード更新処理のステップ505の詳
細フローチャート。
【図10】データレコード複写処理のフローチャート。
【図11】未使用領域管理処理のフローチャート。
【図12】世代凍結データレコードと更新後のデータレ
コードとの関連図。
【図13】凍結データレコード読出し処理のフローチャ
ート。
【図14】第2の実施例の計算機システムの論理的な構
成を示す構成図。
【図15】キャッシュ管理テーブルの構成図。
【図16】スロット管理ブロック(SCB)の構造図。
【図17】第2の実施例における世代管理テーブルの構
成図。
【図18】第2の実施例におけるデータレコード更新処
理のフローチャート。
【図19】第2の実施例におけるデータレコード複写処
理のフローチャート。
【図20】第2の実施例における凍結データレコード読
出し処理のフローチャート。
【図21】アレイ型記憶装置におけるデータ更新処理の
概略図。
【図22】第3の実施例におけるデータレコードデステ
ージ処理のフローチャート。
【図23】第3の実施例における凍結データレコード読
出し処理のフローチャート。
【図24】第4の実施例における世代管理テーブルの構
成図。
【図25】第4の実施例におけるダンプ処理プログラム
のメインタスクによる処理のフローチャート。
【図26】第4の実施例におけるダンプ処理子タスクに
よる処理のフローチャート。
【図27】第4の実施例における凍結状態設定/解除処
理のフローチャート。
【図28】第4の実施例におけるデータレコード複写処
理のフローチャート。
【図29】第4の実施例における凍結データレコード読
出し処理のフローチャート。
【図30】世代凍結データレコード読出し処理のフロー
チャート。
【符号の説明】
1…処理装置、3…記憶制御装置、5…ディスク装置、
7…テープ装置、12…ダンプ処理プログラム、14…
通常業務プログラム、31…制御メモリ、32…データ
バッファ、40…キャッシュメモリ、33…凍結状態設
定/解除処理、34…凍結データレコード読出し処理、
35…未使用領域管理処理、36…データレコード更新
処理、37…データレコード複写処理、38…リード/
ライト処理、39…データレコードデステージ処理、5
1…ディスク装置5上のオンライン領域、52…ディス
ク装置5上の未使用領域。

Claims (14)

    【特許請求の範囲】
  1. 【請求項1】複数のデータレコードを格納する記憶装置
    を制御する記憶制御装置において、データレコード凍結
    の範囲を指定した、外部からのデータレコード凍結要求
    に応答し、当該指定された範囲のデータレコードに対
    し、データレコード凍結を一意に識別する世代番号を付
    加して凍結状態を設定する凍結状態設定手段と、外部か
    らのデータレコード更新要求に応答し、前記凍結状態設
    定手段を参照することにより、前記更新要求の対象とな
    るデータレコードに凍結状態が設定されているか否かを
    判定する判定手段と、該判定手段により、更新対象デー
    タレコードに凍結状態が設定されていると判定された場
    合、前記更新対象となるデータレコードを前記世代番号
    と対応付けて前記記憶装置内の未使用領域に複写する更
    新前データレコード複写手段と、前記データレコード更
    新要求に伴って外部から転送されたデータレコードを前
    記記憶装置に格納する手段とを有することを特徴とする
    記憶制御装置。
  2. 【請求項2】前記記憶装置とは別の記憶装置を備え、前
    記更新前データレコード複写手段は、前記更新対象とな
    るデータレコードの複写を、前記記憶装置の未使用領域
    に代えて前記別の記憶装置に対して行なうことを特徴と
    する請求項1記載の記憶制御装置。
  3. 【請求項3】複数のデータレコードを格納する記憶装置
    を制御し、前記記憶装置上のデータレコードの一部の写
    しを格納するキャッシュメモリを有する記憶制御装置で
    あって、外部からのデータレコード凍結要求に応答し、
    指定された範囲のデータレコードに対し、世代番号を付
    加して凍結状態を設定する凍結状態設定手段と、外部か
    らのデータレコード更新要求に応答し、前記凍結状態設
    定手段を参照することにより、前記更新要求の対象とな
    るデータレコードに凍結状態が設定されているか否かを
    判定する判定手段と、該判定手段により、更新対象デー
    タレコードに凍結状態が設定されていると判定された場
    合、更新対象となるデータレコードを前記世代番号と対
    応付けて前記キャッシュメモリ上に複写する更新前デー
    タレコード複写手段と、前記データレコード更新要求に
    より転送されたデータレコードを前記記憶装置に格納す
    る第1の格納手段とを有することを特徴とする記憶制御
    装置。
  4. 【請求項4】請求項3記載の記憶制御装置において、前
    記キャッシュメモリ上の世代番号と対応付けた更新前デ
    ータレコードを、前記記憶装置内の未使用領域に格納す
    る第2の格納手段を有することを特徴とする記憶制御装
    置。
  5. 【請求項5】前記記憶装置とは別の記憶装置を備え、前
    記第2の格納手段は、前記更新前データレコードの格納
    を前記記憶装置の未使用領域に代えて前記別の記憶装置
    に対して行うことを特徴とする請求項4記載の記憶制御
    装置。
  6. 【請求項6】請求項1ないし5いずれかに記載の記憶制
    御装置において、外部からのデータレコード読出し要求
    に応答し、前記読出し対象データレコードに付加された
    世代番号と前記データレコード読出し要求に指定された
    世代番号とを比較する世代番号比較手段と、該世代番号
    比較手段の比較結果に応じて、前記読出し要求を満足す
    るデータレコードを読出す手段とを有することを特徴と
    する記憶制御装置。
  7. 【請求項7】請求項1ないし5いずれかに記載の記憶制
    御装置において、データレコード凍結解除の対象となる
    世代番号を指定した、外部からのデータレコード凍結解
    除要求に応答し、該当する範囲のデータレコードの凍結
    状態を解除する手段と、前記指定された世代番号に応じ
    て、凍結状態が設定されているデータレコードを格納し
    ている記憶領域を解放する手段とを有することを特徴と
    する記憶制御装置。
  8. 【請求項8】前記記憶制御装置が制御する記憶装置は、
    複数のデータレコードから生成される1つ以上の冗長レ
    コードと前記複数のデータレコードとをそれぞれ独立の
    ディスク装置に格納するディスクアレイ装置であること
    を特徴とする請求項1ないし5いずれかに記載の記憶制
    御装置。
  9. 【請求項9】前記更新前データレコード複写手段は、1
    つのデータ凍結要求につき当該複写が未だ実行されてい
    ないデータレコードに対して複写処理を行なうことを特
    徴とする請求項1ないし5いずれかに記載の記憶制御装
    置。
  10. 【請求項10】第1の記憶装置に格納されているデータ
    レコードを第2の記憶装置に退避するダンプ処理方法で
    あって、 ダンプ処理に先立ち、第1の記憶装置を制御する記憶制
    御装置に対しダンプ処理対象のデータレコードの凍結状
    態設定を要求するステップと、 前記凍結状態設定後、ダンプ処理対象のデータレコード
    に対する更新要求があった場合、当該更新対象のデータ
    レコードの更新前データレコードを任意の記憶領域に退
    避しておくステップと、 ダンプ処理に際し、前記凍結状態設定を行なった第1の
    記憶装置上のダンプ処理対象について、前記更新要求の
    なかったデータレコードと、前記更新要求があり任意の
    記憶領域に退避された更新前のデータレコードとを読出
    すステップと、 該読出したデータレコードを第2の記憶装置に格納する
    ステップと、 ダンプ処理終了時、前記設定したデータレコードの凍結
    状態を解除するステップとを有することを特徴とするダ
    ンプ処理方法。
  11. 【請求項11】処理装置、該処理装置により利用される
    データレコードを格納した第1の記憶装置、該第1の記
    憶装置を制御する記憶制御装置、及び前記第1の記憶装
    置に格納されたある時点におけるデータレコードのコピ
    ーを格納するための第2の記憶装置とを含む計算機シス
    テムにおいて、前記記憶制御装置により実行されるデー
    タレコードの管理方法であって、前記第2の記憶装置に
    コピーすべき前記第1の記憶装置に格納されているデー
    タレコードの範囲の指定を前記処理装置から受け取り、
    前記処理装置から発行されたデータレコードの更新要求
    に応じて、更新の対象となるデータレコードが前記指定
    により指定されたデータレコードの範囲に含まれるか否
    かチェックし、該チェックの結果、前記更新の対象とな
    るデータレコードが前記範囲に含まれれば、前記更新の
    対象となるデータレコードの更新前の値を持つデータレ
    コードを予め決められた記憶手段に格納し、前記処理装
    置から前記コピーのために発行された読み出し要求に応
    じて、前記記憶手段に、前記読み出し要求により指定さ
    れたデータレコードに対応する更新前の値を持つデータ
    レコードが存在するか判定し、前記更新前の値を持つデ
    ータレコードが存在すればそのデータレコードを前記処
    理装置に転送することを特徴とするデータレコードの管
    理方法。。
  12. 【請求項12】前記範囲の指定は、前記指定の出された
    時点を特定するための世代番号を含んでおり、前記受け
    取るステップは、前記範囲と前記世代番号とを対応づけ
    て記憶するステップを含むことを特徴とする請求項11
    記載のデータレコードの管理方法。
  13. 【請求項13】前記格納するステップは、前記更新前の
    値を持つデータレコードを前記世代番号と対応づけて格
    納することを特徴とする請求項12記載のデータレコー
    ドの管理方法。
  14. 【請求項14】前記読み出し要求は対応する前記範囲の
    指定に含まれる前記世代番号を含んでおり、前記判定す
    るステップでは、該世代番号に基づいて、前記判定を実
    施することを特徴とする請求項13記載のデータレコー
    ドの管理方法。
JP6147398A 1993-07-07 1994-06-29 記憶制御装置及びその制御方法 Pending JPH0772981A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6147398A JPH0772981A (ja) 1993-07-07 1994-06-29 記憶制御装置及びその制御方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP16811293 1993-07-07
JP5-168112 1993-07-07
JP6147398A JPH0772981A (ja) 1993-07-07 1994-06-29 記憶制御装置及びその制御方法

Publications (1)

Publication Number Publication Date
JPH0772981A true JPH0772981A (ja) 1995-03-17

Family

ID=26477959

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6147398A Pending JPH0772981A (ja) 1993-07-07 1994-06-29 記憶制御装置及びその制御方法

Country Status (1)

Country Link
JP (1) JPH0772981A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7200725B2 (en) 2004-08-09 2007-04-03 Hitachi, Ltd. Storage remote copy system
JP2008299360A (ja) * 2007-05-29 2008-12-11 Hitachi Ltd 履歴情報管理方法及び履歴情報管理システム
US7558937B2 (en) 2004-10-04 2009-07-07 Fujitsu Limited Disk array device memory having areas dynamically adjustable in size
US7747799B2 (en) 2005-03-16 2010-06-29 Hitachi, Ltd. Storage system
US10895986B2 (en) 2018-08-23 2021-01-19 Fujitsu Limited Control apparatus and non-transitory recording medium having stored therein control program
CN112445805A (zh) * 2019-08-29 2021-03-05 北京国双科技有限公司 一种数据的查询方法及装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7200725B2 (en) 2004-08-09 2007-04-03 Hitachi, Ltd. Storage remote copy system
US7558937B2 (en) 2004-10-04 2009-07-07 Fujitsu Limited Disk array device memory having areas dynamically adjustable in size
US7747799B2 (en) 2005-03-16 2010-06-29 Hitachi, Ltd. Storage system
JP2008299360A (ja) * 2007-05-29 2008-12-11 Hitachi Ltd 履歴情報管理方法及び履歴情報管理システム
US10895986B2 (en) 2018-08-23 2021-01-19 Fujitsu Limited Control apparatus and non-transitory recording medium having stored therein control program
CN112445805A (zh) * 2019-08-29 2021-03-05 北京国双科技有限公司 一种数据的查询方法及装置

Similar Documents

Publication Publication Date Title
US5555389A (en) Storage controller for performing dump processing
US6557073B1 (en) Storage apparatus having a virtual storage area
JP3808007B2 (ja) 記憶装置のキャッシング方法およびシステム
JP2557172B2 (ja) タイムゼロ・バックアップ・コピー・プロセスにおける副ファイル状態のポーリングのための方法およびシステム
US7028216B2 (en) Disk array system and a method of avoiding failure of the disk array system
US6397229B1 (en) Storage-controller-managed outboard incremental backup/restore of data
US7698518B2 (en) Disk array with capacity management
US6119209A (en) Backup directory for a write cache
US6148367A (en) Controller limiting modification of cache based upon amount of dirty lines in the cache
JP5529283B2 (ja) ストレージシステム及びストレージシステムにおけるキャッシュの構成変更方法
KR100238925B1 (ko) 비휘발성 메모리를 갖는 복원 가능 디스크 제어 시스템
US7640276B2 (en) Backup system, program and backup method
US8656104B2 (en) Prefetching source tracks for destaging updated tracks in a copy relationship
EP1191442A2 (en) Data storage array apparatus and operating method for storing error information without delay in data access
US20060248125A1 (en) Method and system for data processing with data backup
JPH0823841B2 (ja) データ処理システム及びその方法
JPH0683677A (ja) データの増分タイム・ゼロ・バックアップ・コピーの方法及びシステム
JPH037978B2 (ja)
JPS6367686B2 (ja)
US20040064600A1 (en) Composite DMA disk controller for efficient hardware-assisted data transfer operations
US6658541B2 (en) Computer system and a database access method thereof
US5809542A (en) Dumping method for dumping data to a dump data storage device that manages the the dumping of data updated since a previous dump request
US5590298A (en) Method of restoring and updating records in a disk cache system during disk drive idle time using start and end addresses
US20090063797A1 (en) Backup data erasure method
US7152147B2 (en) Storage control system and storage control method

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees