[go: up one dir, main page]

JPH01112443A - スペース管理システム - Google Patents

スペース管理システム

Info

Publication number
JPH01112443A
JPH01112443A JP63179347A JP17934788A JPH01112443A JP H01112443 A JPH01112443 A JP H01112443A JP 63179347 A JP63179347 A JP 63179347A JP 17934788 A JP17934788 A JP 17934788A JP H01112443 A JPH01112443 A JP H01112443A
Authority
JP
Japan
Prior art keywords
space
file
catalog
processor
application support
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.)
Granted
Application number
JP63179347A
Other languages
English (en)
Other versions
JPH0682329B2 (ja
Inventor
Cherie C Barnes
チエリイ・カーライル・バーンズ
Robert B Bennett
ロバート・ブラツドリイ・ベネツト
Thomas J Szczygielski
トーマス・ジヨセフ・シイシエイギルスキイ
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH01112443A publication Critical patent/JPH01112443A/ja
Publication of JPH0682329B2 publication Critical patent/JPH0682329B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/176Support for shared access to files; File sharing support
    • G06F16/1767Concurrency control, e.g. optimistic or pessimistic approaches
    • 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
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99942Manipulating data structure, e.g. compression, compaction, compilation
    • 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
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 以下の順序で本発明を説明する。
A 産業上の利用分野 B 従来技術 C発明が解決しようとする問題点 D 問題点を解決するための手段 E 実施例 El データ・アクセス・システム及びその他の部分と
の関係(第1図) E2 データ・アクセス・システムの主な制御構造体(
第2図) E6 スペース管理システム(第3図、第4図) E4 動作の論理的流れ図(第5図、第6図、第7図、
第8図、第9図、第10図、 第11図) F 発明の効果 A 産業上の利用分野 本発明は一般的に云ってファイル・アクセス・プロセッ
サのデータ・アクセス・システムの一部を形成するスペ
ース管理システムに関する。ファイル・アクセス・プロ
セッサは大域ネットワーク中に存在する一組のアプリケ
ーション・サポート拳プロセッサからの要求にサービス
する。各アプリケーション・サポート・プロセッサは非
同期的に動作し、1つもしくはそれ以上のファイル・ア
クセス・プロセッサによって管理されるファイル・リソ
ースの組を共用する。ファイル・アクセス−プロセッサ
はその中のデータ・ファイルの組及びファイル中ディレ
クトリ中に保持されているファイルについての情報をア
クセスする。ファイル・ディレクトリはファイルの収集
を管理することが可能で、互罠階層的に関連でき、共用
できる。
ファイル・アクセス・プロセッサは又その中にそれ自身
で使用するファイル・アクセス・プロセッサ中の情報の
貯蔵庫であり、データ・ファイル及びディレクトリのよ
うにアプリケーション・サポート舎プロセッサに利用で
きず、アクセス可能ではないカタログの組を含んでいる
。各アプリケーション・サポート舎プロセッサは又ファ
イル情報の内部キャッシュを保持し、ファイルに関する
情報についてファイル・アクセス・プロセッサに対して
必要とされる通信を減少することによって、<ホーマン
スを改良している。ファイル・アクセス・プロセッサは
アプリケーション・サポート・プロセッサにキャッシュ
の変更の通知の集中的累積及び分散によってディレクト
リの局所ファイル及びファイル記述情報を更新及び保持
するための情報を与える。
さらに具体的には、本発明は各アプリケーション・サポ
ート・プロセッサに割当てられたファイル・スペースを
管理し、スペースを追加し、スペースを削除し、警告を
制限する閾値を設定し、スペースに照会し、使用してい
るスペースを管理し、警告を通知し、自由になったスペ
ースを保証し、ファイル・スペースが1つ以上のアプリ
ケーション拳サポート・プロセッサによって共用できる
ようにするスペース管理システムに関する。
B 従来技術 以下の説明のために、本発明のデータ・アクセス・シス
テムの機構を2つの従来のIBMシステム、即ちS Q
 L/D Sシステム(構造化照会言語/データ・シス
テム)及びVM(仮想メモリ)ミニディスク・ファイル
・システムの機構と比較する。
S Q L/D Sシステムは特定の機能を達成するた
めに特に設計された解釈要求ルーチンを与える本発明の
システムに対して、コンパイルされて実行されるコンパ
イルド優アクセス・ルーチンe与える本質的に異なるシ
ステム設計である。
S Q L/D Sシステムは本発明のようなファイル
情報の内部キャッシュを持たない。
さらに、S Q L/D Sシステムでは、アップデー
タによる変更はこの変更がコミットされる前に他のユー
ザに利用可能になる。本発明においては、変更はワーク
・ユニットが成功裡にコミットきれる迄は他のアプリケ
ーション・サポート・プロセッサに利用可能にならない
。各アプリケーション・プロセッサはファイルを最初に
アクセスした時に得たファイルのバージョンを保持して
いる。
S Q L/D Sシステムは又オンライン0データ・
スペース管理を用意せず、S Q L/D S中のファ
イル・スペース閾値に対応する値に達しても警告を与え
ない。さらに、スペースの限界に対するダイナミックな
変更が与えられていす、システムは新らしいデータ・ベ
ースのスペースへの移動ができるだけである。S Q 
L/D Sシステムは基本的には異なる要件にもとづく
スペースの限界の全(異なる認識方法を代表している。
S Q L/D Sシステムはスペースの消費の限界に
達した時を直ちに認識するが、DAS (データ・アク
セス・システム)のスペース管理システムバー時的に(
コミットの時間迄)限界を越えることができ、永続的な
スペースの消費時に強制的に限界にされる。
7Mミニディスク・ファイル・システムはファイルの共
用及び階層的ディレクトリ・サポートを用意しない。又
大域的に保持されているキャッシュ情報を与えず、ワー
ク・ユニット(たとえばファイルの古いバージョンの一
時的コピーを保持するのに必要)のために与えられてい
ない。7Mミニディスク・ファイル・システムはデータ
の共用を与えず、別個のキャッシュのサポートを与えな
い。
VMミニディスク・ファイルψシステムは又本発明と類
似のスペース管理を与えず、ミニ・ディスク(実デイス
クの連続的セグメントとして具体化された仮想ディスク
)のためにだけ与えられている。VMミニディスクφフ
ァイル・システムはスペースのオン・ライン管理の能力
(利用可能なスペース、限界等の変更)を持たない。ス
ペースは連続的な記憶の割当てに直接関連があるので、
拡張には他の(より大きな)ミニディスクへの再割当て
、遅延につながるデータ・ファイルの物理的移動、スペ
ースの断片化、管理上の負担等を必要とする。さら罠、
ミニディスクの共用は危険であり、手際よく行えない。
又、多重ライタ(書込みユーザ)の同期のための同時制
御が与えられていない(予想不能の結果を生ずる)。更
新後、リーダ(読取り・ユーザ)はミニディスクを再ア
クセスしなげればならず、そうでないと予測不可能な危
険(データの完全性の喪失)を生ずる。さらにスペース
の閾値は与えられていない。
VMミニディスク書スフアイルシステムにおいてはアク
セスの許可はミニディスク・レベルで制御されているが
、本発明はファイル・レベルで制御し、さらに細かい制
御を与える。
C発明が解決しようとする問題点 本発明の目的は、各アプリケーション・サポート・プロ
セッサに割当てられたファイル・スペースを管理し、ス
ペースの追加、スペースの削除、スペース限界警告の閾
値の設定、スペースの照会、使用しているスペースの管
理、警告の通知、自由になったスペースの保証及び1以
上のアプリケーション・サポート・プロセッサによるフ
ァイル・スペースの共用といったスペース管理機能をサ
ボ−4するファイル・アクセス・プロセッサのデータ・
アクセス・システムのためのスペース管理システムを与
えることにある。
本発明の他の目的は、ファイル・スペース中の別個のフ
ァイルの更新に関与する多くのアプリケーション・サポ
ート・プロセッサの非同時期間を最小にするスペース管
理システムを与えることにある。
D 問題点を解決するための手段 本発明のスペース管理システムには各アプリケーション
・サポート・プロセッサに割当てられた論理ファイル・
スペースを表わすレコードを記録したスペース会カタロ
グへのアクセスが与えられる。データ・アクセス・シス
テムにはこのデータ・アクセス・システムのすべてのア
クチベーションのために永久的に保持され、−時記憶の
ためのファイル・スペース情報を保持するファイル・ス
ペース制御ブロックを探すペースを与える犬域制御構造
体を含む。各ファイル・スペース制御ブロックは最初特
定のアプリケーション・サポート・アプリケーションの
ためのワーク・ユニットが開始される時にスペース・カ
タログ・レコードから形成される。さらにデータ・アク
セス・システムは上記ワーク・ユニットが終了し、コミ
ットされた時に上記特定のアプリケーション・サポート
・プロセッサのためのスペース−カタログ中のレコード
で更新される。
本発明に従えば、複数のアプリケーショ/・サポート・
プロセッサが同時にファイルΦスペース中のスペースを
費すことができ、データ・アクセス・システム及ヒスペ
ース管理システムはスペースの消費限界及び閾値の共通
の組を強化し、サポートする。さらに、本発明の7ステ
ムにおいては、1つのアプリケーション・サポート・プ
ロセッサは他のアプリケーション・サポート・プロセッ
サに許可を与えてそのファイル・スペースを共用できる
。アプリケーション・サポート−プロセッサがそれ自身
の所有ファイル・スペース中で7フイル・スペースの消
費を開始する時は、アクテイベーションの開始中に形成
されたファイル番スペース制御ブロックがスペースの管
理に使用される。
ファイル・スペースの消費が他のアプリケーション・サ
ポート拳プロセッサが所有しているファイル・スペース
中で行われる時は、開始したアプリケーション・スペー
ス・プロセッサは所有しているアプリケーション・スペ
ースープロセツtノ7クテイベ=ジョン中に形成された
ファイル・スペース制御ブロックを使用する。さらに、
所有者がアクティブでない時は、ファイル・スペース制
御ブロックはファイル・スペースを使用する最初の非所
有者によって形成される。
スペース管理システムはコミット時に一連の動作によっ
てこれ等システムの目的を達成する。最初すべてのカタ
ログはスペース−カタログ金除き更新される。書込みロ
ックが個々のファイル上に存在し、コミットが完了する
迄保持される。FSCB(ファイル・スペース制御ブロ
ック)上のコミット拳ラッテがスペース・カタログの変
更のコミットを直列化する。FSCBのコミット・ラッ
チはスペース・アクセス・システムにコミット・コール
を行っている間保持されるだけである。このようにして
書込みユーザの特定のファイル・スペースへの非同時性
の期間を最小にする。・コミット時の動作の基本のシー
ケンスは次の通りである。
(a)  スペース・カタログを除きすべてのカタログ
を更新する。
(b)FSCBをラッチして、FSCBからスペース・
カタログを更新する。
(c)  スペース・アクセス・システムを呼出して、
カタログ及びファイルの変更をコミットする。
(d)FSCBラッチを解放する。
これによってファイル・スペース中の別個のファイルの
更新に関与する複数のアプリケーション・サポート・プ
ロセッサのための非同時期間が最小になる。
実施例の詳細に従えば、アプリケーション・サポート・
プロセッサのためのファイル・スペース制御ブロックは
、ファイルのために使用可能な全スペーステアルスペー
ス限界、スペース限界のある百分率であるスペース閾値
、スペースの消費に影響を与える各ファイル要求に対し
て更新され、スペース閾値に達したかどうかを判断する
のに使用される現在消費(済)スペース、ワーク・ユニ
ットがコミットされる時に更新されるコミット・スペー
ス及ヒスペース・カタログへの変更を同期化するのに使
用されるファイル・スペース制御プOツク・ラッチのた
めのツイールドラ含ム。
さらに、ファイル・スペース制御ブロックの解放を制御
するために、アクテイビテー・カウンタが各ファイル・
スペース制御ブロック中に保持され、スペース消費の変
更を含む、開始した各アクテイビテーに対して1だけイ
ンクレメントされ、このファイル・スペース制御ブロッ
クの各コミットされたか終了されたアクテイビテーに対
して1だけデクレメントされる。ファイル・スベ・−ス
制御ブロックはそのアクティビテー・カウンタが0にな
った時にだけ最終的に解放される。アクティビテー・カ
ウンタは、再使用が予想されている間、もしくは現在ア
クティブ中にファイル・スペース制御ブロックを保持す
る。
実施例のさらに細部に従えば、データ・アクセス・シス
テムは又特定のアプリケーション・サポート・プロセッ
サの各アクテイベーションに対して局所制御構造体を形
成する。局所制御構造体はアプリケーション・サポート
−プロセッサの局所アクテイベーションによってアクセ
スされている間に特定のファイルについての情報を保持
するのに使用されるファイル制御ブロックを探すための
ベースを与える。ファイル制御ブロックはスペース管理
のための特定のフィールドを有し、ファイル・アクセス
が開始した時にセットされ、以後ファイル・スペース制
御ブロックに附する高速参照に使用されるロケータを含
んでいる。さらに詳細には、ファイル制御ブロックは又
このファイル制御ブロックによって表わされたファイル
に対する最新の要求の完了によって生じたスペース消費
の変更である消費スペース−現在の要求、現在のワ−り
・ユニット中で、このファイル制御ブbツクによって表
わされたファイルに対するすべての変更によって生じた
スペース消費の変更である消費スペース−現行ワーク・
ユニットのためのフィールドを含む。
大域制御構造体は又ファイル・スペース制御ブロック・
ハツシュ・テーブルを含み、これによって特定のアプリ
ケーション・サポート・プロセッサのファイル・スペー
ス制御ブロックを探すことができる。
さらに、特定のファイルΦアクセスが成功裡に完了した
時は、ファイル・スペース制御ブロック及びスペースの
カタログ・レコードを更新するのに必要な情報を含むワ
ーク要求ブロックが形成される。情報はファイル制御ブ
ロックからワーク要求ブロックに移動され、次にファイ
ル制御ブロックが解放される。ワーク要求ブロックはワ
ーク・ユニットが成功裡に完了し、コミットされた時に
スペース管理情報中の変更のためのスペース・カタログ
を更新するのに必要な情報を保持するのに使用される。
別個のワーク要求ブロックが更新しなければならない各
カタログ中の各レコードのために与えられる。
さらに詳細にはワーク要求ブロックは現在のワーク・ユ
ニット中のこのワーク要求ブロックによって表わされた
ファイルに対するすべての変更によって生じたスペース
消費の変更である消費スペース−現行ワーク・ユニット
、ワーク要求ブロックの発生を生じた要求のタイプのエ
ンコーディングである要求のタイプ、コミット時にファ
イル・スペース制御ブロックを修正するために使用され
る、スペースの追加、スペースの削除及び閾値変更要求
のための新らしいスペース限界もしくはスペースの閾値
を保持するのに使用するパラメータ値及び選択的に更新
するために備えてこの領域に読込まれるスペース・カタ
ログΦレコードのコピーであるスペース・カタログ・レ
コードのためのフィールドを含んでいる。
さらに局所制御構造体も又現行のワーク・ユニットの開
始時にファイル・スペース制御ブロックのステータスを
保管して、ファイル・スペース制御ブロックが、コミッ
ト処理中にスペース・カタログを更新する際の障害時に
回復できるようにするU N D OIJラスト探すた
めの基礎を与える。
本発明の原理に従えば、スペース管理システムは機能を
明確に分離して、高い性能を与え、保守及び拡張を容易
にし、必要な機能をサポートする技術的手段を与える。
データ・アクセス・システム(DAS)の制御構造体は
設計上の次の特定の機能をサポートする。
(1)DAS大域制御構造体はDASのすべてのアクテ
イベーションに対して1つ存在するすべての大域制御構
造体をアンカーする。
(2)DAS局所制御構造体はASP(アプリケーショ
ン・サポート・プロセッサ)によるDASのアクティ゛
ベーションに対して1つ存在するすべて0DAS局所制
御構造体をアンカーする。
(3)  ワーク要求ブロック(WRB)はカタログの
遅延更新、スペース消費値及びキャッシュの更新をサポ
ートする。
(4)  ファイル・スペース制御ブロック(FSCB
)はダイナミックな閾値警告及びファイル・スペースの
すべてのユーザによって共用されるスペース消費の限界
をサポートする。
(5)  キャッシュ構造体は中央キャッシュ保守能力
をサポートする。
データ・アクセス・システムの設計は次のための構造体
を与える。
(1)キャッシュ変更通告の集中蓄積及び分散によるデ
ィレクトリの局所キャッシュ及びファイル記述情報の保
守 (2)  ファイル、ディレクトリ及び制御情報に関す
る共用情報を保持するためのカタログ形式の持久メモリ
。別個のアクセス方法及び記憶機構がこれ等のカタログ
に使用されて、ファイル・データに使用され、カタログ
情報へのアクセス(時々必要になるだけのアクセス)に
柔軟性が与えられ、ファイル・データへのアクセスの高
いパホーマンスが保持される。
(3)  フ、アイル・データ・ブロックの持久的記憶
及び検索 (4)個々の別個の要求処理ルーチンによる各要求のタ
イプのための高速経路処理、カタログに対する遅延更新
及びイン・ラインと中央制御サービスとの妥当なバラン
ス (5)最小の環境スイッチング(イン・ラインもしくは
高速経路)で、要求処理ルーチンに使用される、経路指
定、応答の形式化及びバッファ管理を含むサービス、カ
タログ・アクセス、記憶管理、同時制御等 (6)障害時に逆戻り(変更の取りやめ)できるワーク
・ユニットへの集団化要求及び第2の書込みユーザが共
通のファイルへアクセスする時の制御(7)ファイル要
求の論理的集団化(共用のサポート)に各サビスする同
時アクティベーション(8)  カタログの変更の下見
。これによって最初のアプリケーション・サポート・プ
ロセッサは変更がコミットされる(ワーク・ユニットの
終り)前に変更を知り、他方他のアプリケーション・サ
ポート・プロセッサはコミット後迄は変更にアクセスで
きない。この下見はカタログの遅延更新及びカタログを
読取る前のWRBのイン・フライト嘲サーチによって可
能になる。
(9)スペース消費限界及び閾値によるオン・ライン・
ファイル・スペース管理。これによって1以上のASP
が同時に同じ゛ファイル・スペース中のスペースを消費
でき、同じ限界/閾値に支配される。又オン・ライン管
理(限界、閾値の変更、新らしいファイル・スペースの
指定等)をサポートする。
DASキャッシュ管理部分がキャッシュされたディレク
トリのためのファイル情報のための現在のステータスを
含む、各アプリケーション・サポートΦプロセッサ中の
局所キャッシュを保持スルために与えられる。キャッシ
ュ管理部分は変更を記録し適切なアプリケーション・サ
ポート・プロセッサへ分配する機能とともに、キャッシ
ュ変更情報の集中的収集を使用し、次のものを含む。
(1)情報を記録するための制御構造体の組(2)必要
なワークを遂行するための機能の組(6)キャッシュ管
理とDASの他の部分とを関連付ける制御の流れの記述
DASキャッシュ管理部分の設計はデータの共用及び高
性能化を与え、より具体的には(1)各アプリケーショ
ン・サポート・プロセッサに適時に他によってなされた
ものを含むディレクトリの変更を知ることを可能ならし
め、(2)機能をサポートするのに必要な大域制御構造
体に必要とされるものを同時に制御し、(3)通常の応
答によるピギーバック・キャッシュ変更通告を与え、 (4)複製されない集中化変更を記録しくディレクトリ
変更リフレッシュ・ブロック(DCRB)が記憶領域を
最小化する)、 (5)  ワーク・ユニットが成功裡に終る迄変更の記
録を遅延する。
DASスペース管理部分は複数のASPがファイル・ス
ペース中のスペースを同時に消費できる場合にファイル
・スペースの消費限界のオン・ライン制御のサポートを
与え、同時にスペースの消費限界及び閾値の共通の組を
強化し、サポートし、次のものを含む。
(1)各アクティブなファイル・スペースのための限界
、閾値及び他の制御情報を記録するための制御構造体の
組 (2)必要なワークを遂行するための機能の組(3)ス
ペース管理とDASの他の部分を関連付ける制御の流れ
の記述 (4)個々のファイル・スペースのための消費限界のオ
ン・ライン設定及び変更 (5)  警告のための閾値レベルのオン書ライン設定
及び変更 (6)(コミット時の)消費スペースのダイナミックな
記録 (7)各ファイル書込みに到達した閾値レベルのダイナ
ミックな報告(従ってFSCBに特に必要)(8)同時
性を最大化するような、スペース・カタログ変更と他の
ワーク・ユニットのカタログ等に対する更新との調整さ
れたコミット (9)障害時における、一貫性のある変更のバック・ア
ウト能力 E 実施例 El データ・アクセス・システム及びその他の部分と
の関係 第1図を参照するに、データ・アクセス・システム14
はそのサブ部分の機能、そのサブ部分間の関係、ファイ
ル・アクセス・プロセッサ12の他の部分との関係によ
って示されている。
データのアクセス・システム14はすでに米国特許とし
て出願されている。データ・アクセス・システム14は
、2つの他の部分即ちサービス・システム16及びメモ
リ・アクセス・システム18を含むファイル−アクセス
・プロセッサの1つの部分であり、その機能は現存のコ
ンピュータ・システムで一般に知られているので詳細に
は説明しないが、その基本的機能を簡単に説明する。
ファイル・アクセス・プロセッサ12は大域的ネットワ
ーク中に存在できるアプリケーション・サポート−プロ
セッサ100組からの要求にサービスする。各アプリケ
ーション・サポート・プロセッサ10はファイル・アク
セス・プロセッサ12によって記憶されているファイル
中のデータへのアクセスを共用できる。アプリケーショ
ン・サポート・プロセッサ10は非同期的に動作でき、
1つもしくはそれ以上のファイル・アクセス・プロセッ
サ12によって管理されるファイル・リソースの組を共
用する。各アプリケーション・サポート・プロセッサ1
0は又その中にファイル情報についての内部キャッシュ
を保持していて、ファイルに関する情報を求めるための
ファイル・アクセス・プロセッサ12との通信を減少す
ることによってパホーマンスを改良する。ファイル・ア
クセス・プロセッサ12はアプリケーション・サポート
Φプロセッサ10にこの内部キャッシュを更新するため
の情報を与え、又正規のファイル・アクセス要求に応答
する。
ファイル・アクセス・プロセッサ12はデータ・ファイ
ルの組及びファイル・ディレクトリ中に存在するファイ
ルについての情報へのアクセスを管理する。ファイルデ
ィレクトリはファイルの収集の管理を可能とし、互に階
層関係にあり、共用できる。ファイル・アクセス・プロ
セッサは又その中にそれ自身の使用のためのファイル・
アクセス・プロセッサ中の内部情報の記憶手段であり、
データ・ファイル及びディレクトリのようにはアプリケ
ーション・サポー1プロセッサに利用可能でなく、アク
セス可能であるカタログの組を保持している。ファイル
嗜アクセス・プロセッサ12によってサポートされる要
求の一部は次の通りである。
ファイル會アクセスのだめのオープン、読取り、書込み
及びクローズ ファイルの削除 ファイルのコピー ファイルへの許可の承認及び取消し ディレクトリの形成及び削除 ディレクトリ・アクセスのためのオーブン、読取り及び
クローズ ファイル及びディレクトリの再命名 ディレクトリから他のディレクトリへのファイルの再配
置 ファイルのためのファイル管理プログラム・メモリ サービス・システム16はプロセッサ12に環境に依存
するサービスを与え、要求の最初の受取り、ファイル・
アクセスのための順方向要求並びに本発明のデータ・ア
クセス・システム14のためのディスパッチ(タスク指
名)及びアクチペーションを含む。これ等のアクチベー
ションはコミットもしくはロールバック(バックアウト
)要求もしくはある他のイブリジットな完了によって明
確に終了する、回復可能なワークの単位(ワーク・ユニ
ットと定義さる)を表わすファイルの要求の組によって
持続する。
データ・アクセス・システム14は個々の要求を処理し
、ファイル・アクセス・プロセッサ12によって管理さ
れるファイルの組に関する制御及び記述情報を含むカタ
ログの組を保持している。
この情報はデータ・ファイル制御、安全保護、完全性、
同時性、交互関係、回復、ステータス及び制御情報を含
む。データ・アクセス・システム14はアプリケーショ
ン・サポート・プロセッサ中のキャッシュ中の現在のデ
ータを保持するように送られるファイルの記述及び特性
への変更を表わすキャッシュ更新情報を蓄積する。
メモリ・アクセス・システム18はデーターファイルよ
り成るデータ・ブロック(これ等を外部メモリ装置にマ
ツピングする)、カタログより成るレコードの組、同時
性を可能にするロックの組及び回復ユニットを表わすワ
ーク項目の集団化を管理する。これは論理的な集団化も
しくは内容への影響を最小にして物理データへのアクセ
スをマツプする。メモリやアクセス・システム18はこ
れを呼出したデータ・アクセス・システム14と同じア
クチペーションで走行する。
データOアクセス・システム14のサブ部分は次の機能
を有する。セツション管理サブ部分20はデータ・アク
セス・システム140階層上のトップにあって要求を処
理する。これはサービス・システム16を介して要求を
受取る。これは制御の中心であり、応答の形式化のため
の基本的サービスの組を含む。これはどの要求管理サブ
部分32のルーチーンが要求にサービスすべきかを決定
し、これに制御を渡す。要求処理の終りに、制御はセツ
ション管理サブ部分20に戻され、要求処理を終了し、
要求された応答を送出す。
セツション管理サブ部分はデータ・アクセス・システム
のための主な経路指定及び制御機能を与える。さらに、
これはワーク・ユニットを管理し、ワークの遅延コミッ
トをサポートシ、データ・アクセス・システム14の初
期設定及び終了のみならず応答バッファ管理及び順序付
けをサポートする。多くのルーチンがセツション管理の
動作をサポートする。これ等のルーチンの一部は又共通
のサービスとしてデータ・アクセス・システムの他のサ
ブ部分によって使用される。
次はセツション管理サブ部分2D中に含まれているサー
ビス・ルーチンの一部である。
開始ルーチン22−データ・アクセス・システム14の
制御構造体を初期設定する。
メモリ・プールナル−チン24−制御構造体のための作
業メモリを保持し、分配する。プール・ルーチンは作業
メモリの大きなブロックから制御構造体を割当て、割当
てを解除する。このルーチンは単一の呼出しで同じタイ
プ(変更される)の単一もしくは複数の制御構造体の割
当て及び割当ての解除にサービスする。
応答ルーチン26一応答メツセージの形成において要求
管理サブ部分62のルーチンを援助し、応答及びキャッ
シュ更新情報をアセンブルして適切な形式化された応答
メツセージにする。応答ルーチンは2つの面を有する。
(1)  これはデータ・アクセス・システム全体に使
用されるゲットバッファ・サービスを供給し、応答情報
を保持するバッファを与える。このサービスの場合、応
答ルーチンはバッファを供給するだけでな(、暗にこれ
等の責任をとり、現在の要求のだめの応答のアセンブル
に備えて獲得したバッファのリストを蓄積する。
(2)応答ルーチンは次のようにいくつかのソースから
応答を形成する。
(a)  これはすべてのキャッシュ通告レコード(c
NR)を発見して、これ等を応答ルーチンによって供給
されたバッファ中に置(ためのキャッシュ管理探索ルー
チンを呼出す。
(b)  これはCNRバッファ、ゲット・バッファ・
サービスによって割当てられたバッファ及び標準の要求
診断情報より成るバッファのロケータ・リストを形成す
る。これ等のロケータ・リストは要求したアプリケーシ
ョン・サポート・プロセッサに応答を戻すためにサービ
ス・システムに戻される。
ワーク・ルーチン28−要求の論理的集団化はコミット
もしくはロール・バックされる時、即ち回復の指定点(
ワーク・ユニットの終了)のアクティビティ−を管理す
る時に必要な処理を調整し、開始する。ワーク・ルーチ
ン28はコミット及びロールバックの明示的要求だけで
な(、コミット及びロールバックの陰伏的な条件をサポ
ートする。
明示的要求の場合は、ワーク・ルーチン2Bは要求管理
サブ部分32を介して呼出される。一貫性と完全性を保
持するために、実際のカタログ更新はワーク・ユニット
が成功裡に完了する迄遅延される。ワーク・ルーチン2
8は次のものを呼出す。
(a)  カタログ管理サブ部分36−要求管理サブ部
分32ルーチンによって形成されたWRB(ワーク要求
ブロック)に基づいてカタログ更新を達成する。
(b)  スペース管理サブ部分34−要求管理サブ部
分32によって形成されたWRBに基づいてスペース・
カタログの更新を調整スル。
(e>  メモリ◆アクセス・システム18−ファイル
・ブロック及びカタログに対する変更をコミットする。
(d)  キャッシュ管理サブ部分38−キャッシュ通
告情報(要求管理サブ部分32のルーチンによって形成
されたワーク要求ブロック中にも含まれる)。
終了ルーチン60−データ・アクセス・システム14の
アクテイベーションの完了時に制御構造Ctfクリーン
・アップする。終了ルーチンは特定のアプリケーション
・サポートeプロセッサへのサービスが終了した時にメ
モリ及び制御構造体のクリーン・アップを管理する。終
了は陰伏的(implicit)障害(アプリケーショ
ン・サポート・プロセッサとファイル・アクセス・プロ
セッサ間の通信、リソース上のデッドロック等)及び明
示的動作(システム・オペレータの強制、アプリケーシ
ョンeサポート・プロセッサの終了等)から生ずる。終
了はセツション管理への最初のエントリもしくはデータ
・アクセス・システムのアクテイベーションがサービス
0システムモt、<uメモリ・アクセス・システムの呼
出しの後に制御を再獲得した時の他の時点に発見される
。従って、終了ルーチンは他のファイル・アクセス・プ
ロセッサの部分が呼出されるデータ・アクセス・システ
ム中の多くの個所から呼出されるサービスである。
WRB(ワーク要求ブロック)縮小ルーチン61は同じ
カタログの項目への多くの変更を単一の変更に縮小する
ことをサポートする。データ・アクセス・システムはフ
ァイル及びディレクトリ情報のためのいくつかのカタロ
グを使用する。たとえば、オブジェクト・カタログ中の
各項目は特定のファイルについての記述的情報及び制御
情報を含む。WRBはファイル要求処理の時点からその
ワーク・ユニットがコミットされる時点迄のカタログ変
更情報を保管するのに使用される。複数のWRBが同一
のカタログ項目のために存在する時は、これ等は単一の
WRBへ縮小される。このことは次の2つの理由のため
に重要である。
(a)  カタログ更新動作数の減少(バホーマンス)
(b)  インフライト検索と呼ばれる特定のカタログ
管理ルーチンのサポート。アプリケーション・サポート
−プロセッサ要求が特定のカタログ項目の検索を要求す
る時は、カタログ管理のインフライト検索ルーチンが先
ず呼出され現行のワーク・ユニットのためのコミット可
能な連鎖を通して検索され、要求されているカタログ項
目のためのWRBが存在するかどうかが判断される。も
し存在すれば、WRBは現行のワーク・ユニットによっ
て受けた変化を含む、その項目のための完全な情報を含
む。WRBが見出されると、これは実際のカタログ項目
を検索することに代って、検索要求を満足するのに使用
される。これによって現行のワーク・ユニット中の処理
が、現行ワーク・ユニットのカタログ変更をこれ等がコ
ミットされる(カタログ中に書込まれる)前に常に見る
ことを可能にし、他のアプリケーション・サポート・プ
ロセッサに利用可能にする。これはワーク・ユニット内
の前後関係に依存する処理にとって重要である。インフ
ライト検索が単一のカタログ項目のイメージの戻りをサ
ポートするためには、このカタログ項目へのすべての変
更は単一のWRBに縮小されていなければならない。
要求管理サブ部分32はR1乃至R9として例示された
ルーチン、代表的には全部で30乃至40のルーチンを
含む。これはカタログ管理サブ部分56を使用してカタ
ログをアクセスし、スペース管理サブ部分38を使用し
て論理スペースを管理し、キャッシュ管理サブ部分38
を使用してキャッシュ制御を処理する。
要求管理サブ部分32はコミット時に(ワーク・ユニッ
トの成功裡の完了時)にワーク・ルーチン28に進むW
RBを形成、保持し、カタログ及びキャッシュ更新を駆
動する。
要求管理サブ部分32はメモリ・アクセス・システム1
8を使用し、ファイル及びカタログに対するコミットメ
ントを表わす1つもしくはそれ以上の論理ロックを直接
施錠もしくは解錠する。これはメモリ・アクセス・シス
テム18を呼出し現在の要求の必要に従って特定のファ
イルに関連するデータ・ブロックを追加し、削除し及び
更新する。
カタログ管理サブ部分36はメモリ・アクセス・システ
ム18を呼出すのに必要な制御構造体を形成し、データ
・アクセス・システム14がそのファイルの組のための
情報を制御するのに利用するカタログの組をアクセスす
る。
次のものがカタログ管理サブ部分36によって管理され
るカタログである。
(a)  ディレクトリ・カタログ−各項目はファイル
のコレクションである名前の付せられたディレクトリを
記述している。
(b)  オブジェクト・カタログ−これは各ファイル
、別名(ファイルに対する代替アクセス手段)及びディ
レクトリのための項目を含む。項目は名前、(ブイレフ
) IJのための)階層関係、ディレクトリ、許可、オ
ーナ、ステータス、ファイルの特性及びファイルのため
の実際のデータをアクセスするのに使用されるデータ・
ブロック識別子のリストを含む。
(c)権限カタログ−これはファイル及びディレクトリ
のためのアプリケーション・サポート・プロセッサ10
の権限を含む。
(d)  スペース・カタログ−これは各アプリケーシ
ョン・サポート−プロセッサ10のファイル・スペース
消費限界(ファイル・ブロックの数)を含む。
(、)  ロック・カタログ−これはアプリケーション
・サポート・プロセッサ10の処理セツションの終了を
越えて持越されるロックについての情報を含む。
カタログ情報の検索が必要になる時、カタログ。
管理サブ部分36は先ず現行のワーク・ユニットによっ
てなされたが、まだカタログに書込まれていない可能な
変更を先ず探索する。これはワーク・ユニットの終り迄
コミットされていない変更を表わすWRBを探索するこ
とによって行われる。
スペース管理サブ部分34はアプリケーション争サポー
ト・プロセッサ10のためのスペース・カタログ項目の
局所表示であるFSCB(ファイル・スペース制御ブロ
ック)によって表わされたアプリケーション・サポート
・プロセッサ10のための論理スペースを管理する。フ
ァイルによって消費されたメモリ中の変更によって論理
スペースの消費に影響を与える要求はスペース管理サブ
部分34によってスペースの計算を行う。スベース管理
すブ部分64はカタログ管理サブ部分36を使用し、ス
ペース・カタログをアクセスする。
キャッシュ管理サブ部分68はセツション管理サブ部分
20のワーク・ルーチン28によって、ワーク・ユニッ
トの成功裡の完了(コミット)時に呼出され、要求管理
サブ部分62によって形成されたワーク要求ブロック(
WRB)中の情報を使用してデータ自アクセス・システ
ム14によって保持されているキャッシュされたデータ
を更新し、どのディレクトリが現行のアプリケーション
・サポート・プロセッサ10のためのキャッシュにサポ
ートされるべきかを確定する。キャッシュ管理システム
38の目的はファイルの記述及び特性への更新を表わす
ディレクトリ変更情報の組(キャッシュ)を収集して、
これ等を定期的にアプリケーション・サポート・プロセ
ッサに分配してその局所キャッシュを更新することにあ
る。これ等のキャッシュはファイル情報を求めてファイ
ル・アクセス・プロセッサに進む機会を減少することに
よってパホーマンスを改良スる。
アプリケーション・サポート・プロセッサによってファ
イルはディレクトリ中で集団化が可能になる。キャッシ
ュはアプリケーション・サポート・プロセッサがディレ
クトリを獲得した時にはいつでも特定のディレクトリの
ために保持される。
ディレクトリの獲得に関連して、アプリケーション・サ
ポート・プロセッサはディレクトリに関すルスヘテの情
報及びそのファイルをファイル・アクセス・プロセッサ
から要求する。この情報はアプリケーション争サポート
・プロセッサの局所キャッシュに最初ロードするのに使
用される。同時に、ファイル・アクセス・プロセッサに
はアプリケーション・サポート・プロセッサがそのディ
レクトリに影響を与える将来の変更についての通告を必
要とすることが通告される。この変更の通告はディレク
トリが明示的に解放される迄継続する。
アプリケーション・サポート・プロセッサの局所キャッ
シュを更新するための情報はアプリケーション奉サポー
ト・プロセッサの要求によって戻される正規の応答情報
を伴っている。キャッシュを更新するための情報は、フ
ァイル名、ファイル長、ファイル・ステータス及び権限
のようなものを含んでいる。キャッシュ変更情報はキャ
シエ通告レコード(cNR)と呼はれる個々のレコード
中に現われる。
アプリケーション・サポート・プロセッサのためのキャ
ッシュ通告情報を管理するためには、データーアクセス
・システムは次の機能をサポートしなけれはならない。
(1)  どのディレクトリが特定のアプリケーション
・サポート・プロセッサによって獲得されたかを記録す
る(キャッシュ管理獲得動作) (2)  キャッシュに影響を与えるディレクトリ及び
ファイルの記述中の変更を認識する。
(6)ディレクトリの変更を記録し、これを問題のアプ
リケーション・サポート・プロセッサに送ってその局所
キャッシュを更新するため、適切な時間迄変更情報を蓄
積する。
(4)変更情報(cNR)e関連アプリケーション・サ
ポート・プロセッサに送る。
(5)すべての関連アプリケーション・サポート・プロ
セッサが受取った変更情報を除去する。
(6)  アプリケーション・サポート・プロセッサが
前に獲得したが、もはや必要としないディレクトリを解
放する。
データ・アクセス・システムの要求管理サブ部分32は
次の細目でキャッシュ管理機能をサポートする。
(1)  アプリケーション・サポート・プロセッサか
らの個々の要求を処理し、ディレクトリに獲得を生じせ
しめる(キャッシュ通告を受取り始める)特定の要求を
認識し、キャッシュ管理を呼出して、そのアプリケーシ
ョン・サポート・プロセッサをそのディレクトリに対す
る変更について通告すべ°きこれ等のリスト上に置(。
(2)キャッシュに変更を与える特定の要求を認識する
。一般にこれ等の要求は次のシステム・カタログ、即ち
ディレクトリ・カタログ、オブジェクトやカタログ及び
権限カタログに対しても変更を生ずる要求に対応する。
(3)各カタログの変更についてワーク要求ブロック(
WRB)を形成し、これに、キャッシュ通告が同じく必
要とされる場合に、キャッシュ管理のための追加の情報
を付加する。ワーク要求ブロックはワーク拳ユニットよ
り成る要求の集合の終り迄との情報を保持するのに使用
され、これによってカタログが更新され、キャッシュ管
理が呼出されて、キャッシュ通告情報を蓄積し、記憶す
る。
E2 データ・アクセス・システムの主な制御構造体 第2図はデータ・アクセス・システムの主す制御構造体
を示す。次にこれ等の主な制御構造体について説明する
1つのデータ・アクセス・システム(DAS)大域制御
構造体40がデータ・アクセス・システム14のための
恒久的ベースとして与えられる。
この1つは複数の大域制御構造体のためのアンカー(よ
りどころ)であり、データ・アクセス・システム14の
すべてのアクテイベーションによって共用されるもので
ある。その関連制御構造体は多重処理環境中で共用され
るので、構造体の各組には関連して適切なラッチが与え
られていて関与するアクテイペーションによる同時アク
セスを制御する。
別個のデータ・アクセス・システム(DAS )の局所
制御構造体42がデータ・アクセス・システム14の各
アクテイペーションについて形成される。局所制御構造
体42はアプリケーション・サポート・プロセッサ10
からの現在の要求もしくは要求の組の処理を制御するた
めのベースである。これは要求管理サブ部分32のルー
チンの1つによって形成される要求情報だけでなく、サ
ービス・システム16のプロセッサによって与えられる
要求/応答バッファ44のためのアンカーである。これ
は又要求処理のためのステータス情報を含み、データ・
アクセス・システム14のサブ部分とメモリ・アクセス
・システム18間で制御データを転送するのに必要な他
の制御構造体のためのアンカーである。DAS局所制御
構造体42及びその部分は現行のワーク・ユニットの終
り迄、即ち現行のアクテイベーションによってサービス
される要求の組のためにのみ形成され、保持される。ワ
ーク・ユニットの完了時に、ワークはコミットされるか
、ロール・バックされる。
次にDAS犬域制御構造体に関連する主な制御構造体を
示す。
ファイル・スペース制御ブロック46(FSCB)は特
定のアプリケーション・サポート・プロセッサ10のた
めのスペースの計算を行うのに使用される。これは関連
するアプリケーション・サポート・プロセッサ10によ
って消費されるデータ・ブロックの数の限界及び警報閾
値を与える。
71’(ル・スペース制御ブロック46はスペース骨カ
タログの項目から形成され、ワーク−ユニットがコミッ
トされた時にスペース・カタログを更新するためのベー
スである。FSCB46は各アプリケーション・サポー
ト・プロセッサ10のための一意的識別子を使用する)
・ツシュ・テーブル48によってアクセスされる。FS
CB46はスペース管理サブ部分64によって管理され
る。
ディレクトリ・ゲート・ブロック(DGB)50は現在
キャッシュ中に保持されているディレクトリを定義する
のに使用される。各DGB 50はキャッシュされたデ
ィレクトリを表わし、ディレクトリ中のファイルに関す
る変更情報のためのアンカーである。DGB 50は一
意的なデイレクト!jm別−1ハツシュするハツシュ・
テーブル52によってアクセスされる。DGB50はキ
ャッシュ管理サブ部分58によって管理される。
ディレクトリ変更リフレッシュ・ブロック(DCRB)
54はディレクトリ中のファイルについての実際の変更
情報を記録する。これ等は夫々のアプリケーション・サ
ポート・プロセッサ10に変更について通告するための
キャッシュされた関連ディレクトリを有するすべてのデ
ータ・アクセス・システム14のアクテイペーションに
よって使用される。DCRB 54はキャッシュ管理サ
ブ部分38によって管理される。
カタログ・ロケータ56は各データ・アクセス・システ
ム14のアクテイベーションによって使用され、カタロ
グ管理サブ部分36によってカタログをアクセスするた
めにメモリ春アクセス・システム1st−呼出す時にカ
タログを識別する。
メモリ・プール・アンカー58はメモリ・プール60の
各タイプのために保持され、データ争アクセス・システ
ム14のアクテイペーションに割当てられる未使用のメ
モリ・ブロックを高速アクセスするためのベースを与え
る。メモリ・プールはデータ・アクセス・システム14
の主なタイプの制御構造体のために存在する。メモリ・
プール60はセツション管理サブ部分20のメモリープ
ール・ルーチン24によって管理される。
各DAS局所制御構造体42に関連する主な制御構造体
は次の通りである。
獲得ディレクトリ・ブロック(DAB)62は特定のア
プリケーション・サポート・プロセッサ10がキャッシ
ュの目的のために獲得した各ディレクトリを表わす。こ
れ等はキャッシュ管理サブ部分38によって管理される
ワーク要求ブロック(WRB )64は特定の要求に関
する制御情報を保持するのに使用される。
この情報は次の事柄に使用される。
(、)  カタログから読取られた情報を保持する。
(b)  カタログがワーク・ユニットの終りに更新さ
れる迄カタログ変更情報を保持する。
(c)  ワーク・ユニットの完了時にキャッシュを更
新するための情報を保管する。
(d)  現在の要求処理が失敗した時の取消しくバッ
クアウト)処理を行う。
(、)  カタログへまだ書込まれていないカタログに
対する変更を探索する。
ワーク要求ブロックの次の2つのチェーンが使用される
。インプロセス・チェーン64−これは現在の要求の処
理に関連するワーク要求ブロックを表わす。
コミット可能チェーン64−これはすでに完了したが、
コミットされていない要求からのワーク要求ブロックを
表わす。
ワーク要求ブロック64d要求管理サブ部分32のルー
チンによって形成され、カタログ管理サブ部分66、ス
ペース管理サブ部分34及びキャッシュ管理サブ部分3
8によって使用される。
ファイル制御ブロック(rcn)6El:オープン・フ
ァイルに関する情報を保持するのに使用される。アプリ
ケーション拳サポート・プロセッサ10はファイルをオ
ープンし、ファイルの中の情報を検索し、完了した時に
ファイルをクローズする要求を使用できる。FSBは一
部の要求管理サブ部分32のルーチンによって使用され
る。
カタログ走査ブロック(c8B )70はカタログ探索
走査を処理するのに必要な情報を含む。C3B70は走
査がクローズされる迄保持される。
これ等はカタログ管理サブ部分36によって管理される
E3 スペース管理システム 本発明のスペース管理システムの目的は各アプリケーシ
ョン・サポート・プロセッサに割当てられたファイル・
スペースを管理して、スペース管理機能即ちスペースの
追加、スペース削除、制限警告のための閾値の設定、ス
ペースの照会、使用されるスペースの管理、警報の通告
、自由になったスペースの確認及びファイル・スペース
を2以上のアプリケーション拳サポート・プロセッサに
よって共用可能にすることをサポートすることにある。
1喪な設計上の特徴には次のものが含まれる。
体) ファイル拳スペースのオン・ライン管理(b) 
 複数の同時アプリケーション拳サポート・プロセッサ
間でのファイル・スペースの共用能力。スペース管理シ
ステムは同時性を最大化するように、競合するアプリケ
ーション・サポート・プロセッサ間でスペース・カタロ
グの調整が可能である。
(c)別個のユーティリティー機能を必要としないで最
後に完了した時点のワーク・ユニットについてのファイ
ル・スペース・ステータスのオン・ライン照合能力。
ファイル・スペースは管理者として許可された者によっ
てアプリケーション・サポート・プロセッサ10に割当
てられる。ファイル・スペースはファイルが形成もしく
は拡張される時に消費され、削除もしくは縮小される時
に減少される。
スペース管理情報は第3図のスペース・カタログ74中
に持久的に記録され、カタログ74は各アプリケーショ
ン・サポート・プロセッサ10のためのレコードを含む
。このレコードは各アプリケーション・サポート・プロ
セッサに割当てられる論理ファイル・スペースを表わす
。このレコードはファイル・スペースにインパクトを与
えるワーク・ユニットをコミットする時に更新される。
ワーク・ユニットが進行している時は、ファイル・スペ
ース管理情報はファイル・スペース制御ブロック(FS
CB)46中の非持久メモリ中に保持される。
FSCB46け最初、ワークeユニットがアプリケーシ
ョン・サポート・プロセッサのために開始された時にス
ペース・カタログ・レコードから形成される。データ・
アクセス・システムの局所アクテイベーションが開始さ
れ、ファイル・アクセス・プロセッサ12のワークのた
めにアプリケーション・サービス−プロセッサの要求に
サービスする。アプリケーションOサービス・プロセッ
サは他のアプリケーション・サービス・プロセッサに許
可を与えて、そのファイル・スペースを共用できるので
、ファイルOスペースを表わすFSCBはデータ番アク
セス・システムのアクテイベーションに対して大域的で
あり、このアクティベーションに共用される可能性があ
る。もし所有しているアプリケーション・サービス−プ
ロセッサがアクティブでない時は、FS CBの形成は
相方のアプリケーションのサポート・プロセッサが共用
のファイル・スペースのためのスペース消費アクティビ
ティーを開始した時にこれによって開始される。アプリ
ケーション・サポート・プロセッサはファイル・スペー
ス消費を、 (、)  それ自身のファイル・スペースで開始し、ア
クテイベーションの開始中に形成されたFSCBはスペ
ース管理に使用される。
(b)  他のアプリケーション・サポート・プロセッ
サによって所有されているファイル・スペース中で開始
し、これは所有しているアプリケーション・サポート・
プロセッサのアクテイペーション中に形成されたFSC
Bを使用する。もし所有アプリケーション・サポート・
プロセッサがアクティブでない時は、FSCBはファイ
ル・スペースを利用する最初の非所有アプリケーション
・サポート・プロセッサによって形成される。
第3図はスペース管理に関連する制御構造体の組を示す
FSCB46はFSCBハツシュ・テーブル48の項目
にアンカーされ、これ等の項目から探すことができる。
FSCBハツシュ・テーブルは大域制御構造体40中に
存在する。ハツシュ・テーブルの項目は所有しているア
プリケーション0サポート・プロセッサIDに適用され
るハツシング・アルゴリズムから判断される。ハツシン
グの衝突によって表わされる同意語のFSCBの組(同
ff−夕のロケーションの組)は関連FSCHのハツシ
ュ・テーブル項目から継がっている。
FSCBは、DASのアクテイペーション中にロケータ
が記憶されている所有アプリケーション・サポート・プ
ロセッサのDAS局所制御構造体42からロケータを通
しても見出すことができる。
論理的には、ワーク・ユニットがコミットされ、スペー
ス傘カタログ・レコードを更新するのに使用された後は
FSCBはもはや必要でなくなる。
しかしながら、 (−)  これが再び他のワーク・ユニットによって必
要になる十分な可能性がある時は、これの解放を避ける
方がより効率的である。このような場合は所有アプリケ
ーション・サポート・プロセッサがそのワーク・ユニッ
トをコミットする時に生ずる。
(b)  相方のアプリケーション・サポート・プロセ
ッサによって開始されるアクティブ・ワーク・ユニット
が存在する時は、FSCBの解放を避ける必要がある。
これ等の条件をサポートするために、アクティビティ−
・カウンタが各FSCB中に保持される(第4図参照)
。アクティビティ−・カウンタはFSCBt−含む開始
された各アクティビティ−(スペース消費の変更)ごと
に1だけインクレメントされ、各コミットされたもしく
は終了されたアクティビティ−について1だけデイクレ
メントされる。FSCBはそのアクティビティ−・カウ
ンタが0になった時にだけ解放される。アクティビティ
−・カウンタはFSCBが所有アプリケーション書サポ
ート・プロセッサのデータ・アクセス・システムのアク
テイベーションの開始のために形成された時にインクレ
メントされ、終了した時にデイクレメントされる。アク
ティビティ−・カウンタは又各折らしいファイルが書込
みのために形成されるか、アクセスされる時にインクレ
メントされ、ファイル・アクティビティ−がコミットさ
れるか終了した時にデクレメントされる。FSCBの再
使用が予期されるか、現在アクティブである間はアクテ
ィビティ−・カウンタはFSCBを保持する。ファイル
制御ブロック(PCB)68はアプリケーション・サポ
ート・プロセッサの局所アクテイベーションによってア
クセスされつつある間に特定のファイルについての情報
を保持するのに使用される。これはファイル・アクセス
が開始された時にセットされ、その後FSCBに高速参
照するのに使用されるFSCBのためのロケータを含む
スペース管理のためのある特定のフィールドを有する。
特定のファイルのアクセスが成功裡に完了した時に、ワ
ーク要求ブロック(WRB)64が形成される。ある情
報はファイル制御ブロック68からワーク要求ブロック
68に転送され、次にファイル制御ブロックが解放され
る。
ワーク要求ブロックはワークφユニットが成功裡に完了
した(コミットされた)時にオブジェクト・カタログを
更新(ファイル情報の変更)及びスペース・カタログを
更新(スペース管理情報の変更)するのに必要な情報を
保持するのに使用される。別個のWRB64が更新され
た各カタログ中の各レコードについて与えられる。
UNDO(取消し)リスト76は現行ワーク・ユニット
の開始時にFSCBのステータスを保管して、コミット
処理中にスペース・カタログ74を更新する際に回復す
るのに使用される。
第4図はFSCB46、F’CB68、WRB64及び
U N D OIJスト76中のスペース管理のための
関連フィールドを示す。
次はまだ説明していないFSCB46のフィールドであ
る。
(a)  スペース限界はファイルに許可された全スペ
ースである。これは消費がコミットされる時にチエツク
される。コミットはこの限界を越えると失敗する。これ
はスペース追加の要求によってインクレメントされ、ス
ペース削除要求によってデクレメントされる。
(b)  スペース閾値はスペース限界のある百分率で
ある。これはアクセス中のアプリケーション・サポート
・プロセッサのための警告の発生の可能性のためにスペ
ース消費に影響を与える各ファイル要求によってチエツ
クされる。これは閾値変更要求によって変更される。
(c)  現在消費スペースはスペース消費に影響を与
える各ファイル要求について更新され、スペース閾値に
到達したかどうかを判断するのに使用される。
(d)  コミット(された)スペースは、ワーク・ユ
ニツ)K関与する各WRB64から消費スペース−現行
ワーク・ユニットを適用することによってワーク・ユニ
ットがコミットされる時に更新される。
(e)FSCBラッチはスペース・カタログへの変更を
同期化するのに使用される。
次の項目はPCB68中の関与フィールドである。
(、)  消費スペース−現在要求はこのPCBによっ
て表わされファイルに対する最新の要求の完了によって
生じたスペース消費の変更である。
(b)  消費スペース−現行ワーク・ユニットは現行
のワーク・ユニットのこのWRBによって表わされるフ
ァイルに対するすべての変更によって生じたスペース消
費の変更である。
次の項目はWRB66中の関与フィールドである。
(a)消費スペース−現行ワーク・ユニットは現行のワ
ーク・ユニット中のこのWRBによって表わされたファ
イルに対するすべての変更によって生じたスペース消費
の変更である。
(b)  要求のタイプはWRBの発生を生じた要求の
タイプの二ンコーディングである。これは処理される要
求のタイプ(スペースの追加、スペース削除、閾値変更
もしくはスペース書込み)に依存して要求管理ルーチン
にセットされる。
(c)ハラメータ値はスペースの追加、スペース削除及
び閾値変更要求のため新らしいスペース限界もしくはス
ペース閾値を保持し、これをコミット時にFSCB及び
スペース・カタログを修正するのに使用されるようにす
る。
(d)  スペース中カタログ・レコードはスペース・
カタログのレコードのイメージである。これはレコード
を選択的に更新するための準備のためにこの領域に読込
まれる。
次の項目はUNDOリスト76中の関与フィールドであ
る。
(a)  要求のタイプはコミット処理を生ずる要求の
タイプを示す。
(b)  現在消費スペースは現行のワーク・ユニット
のための関連FSCBのためのすべてスペース書込み消
費の累積値である。
(c)保管値は現在のワーク・ユニットに関連する変更
を適用する前のスペース限界(スペース追加もしくはス
ペース削除のための)、スペース閾値(閾値変更のため
の)もしくはコミット・スペース(スペース書込みのタ
メの)FSCB中の値である。
(d)  アクティビティ・カウントは現在のワーク・
ユニットに適用された変更によるアクティビティ−Oカ
ウントに対する全変更である。
E4 動作の論理的流れ図 第5図はワーク・ユニットの制御の流れ及びワーク・ユ
ニットの完了(コミットもしくはロールバック)時に生
ずるデータを示した図である。
本発明のスペース管理システムはファイル・スペース中
の別個のファイルに対する更新に関与する複数のアプリ
ケーション・サポート・プロセッサのための非同時期間
を最小にするように設計されている。このシステムでは
ワーク・ロックが同じファイルへの同時変更を防止する
ために使用される。しかしながら、ファイル・スペース
中の異なるファイルへの同時変更はスペース・カタログ
の更新及びワーク・ユニットのコミット中を除いて許可
される。スペース管理システムは同時性を最大化するよ
うに競合するアプリケーション・サポート・プロセッサ
間のスペース・カタログ変更の調整が可能なように設計
されている。
スペース管理システムは第5図に示されたようにコミッ
ト時の動作のシーケンスによってこれ等のシステムの目
的を達成する。最初、すべてカタログはスペース・カタ
ログを除き更新される。書込みロックが個々のファイル
に存在し、コミットが完了する迄保持される。FSCB
のコミット・ラッチはスペース−カタログの変更のコミ
ットを直列化する。FSCBラッチはスペース・アクセ
ス会システムにコミット会コールを行っている間にだけ
保持され、これによって特定のファイル・スペースへの
書込みの非同時期間が最小にされる。
コミット時の動作の基本的シーケンスが第5図に示され
ているが、次のものより成る。
(a)  スペース・カタログを除き、すべてのカタロ
グを更新する。
(b)FSCBをラッチしてFSCBからスペース・カ
タログを更新する。
(c)  スペース・アクセス・システムヲ呼出して、
カタログ及びファイルの変更をコミットする。
(d)FSCBラッチを解放する。− これによってファイル・スペース中の別個のファイルへ
の更新に関与する複数のアプリケーション・サポート・
プロセッサに対する非同時期間が最小になる。ここで第
5図に示した段階の特定のシーケンスを参照されたい。
(1)  ファイル・スペース消費中に変更を生じた要
求管理サブ部分62のルーチンはFSCB及びスペース
・カタログ・レコードを更新する情報を含むWRB64
を形成する。これ等のWRBはワ−り・ユニットの完了
迄累積を行う。
(2)  ワーク・ユニットの完了時に、セツション管
理サブ部分20のワーク・ルーチンは成功した(コミッ
ト)ワークもしくは不成功の(ロールバック)ワークを
処理する。スペース管理のコミットの場合は、これは他
のアプリケーション・サポート・プロセッサが同時に未
解決のワーク・ユニットを有するFSCBと対応するス
ペース・カタログ・レコードの調整された更新を含む。
スペース管理のロールバックの場合には、スペース管理
サブ部分34のロールバック動作が呼出されて、FSC
Bの現在消費スペースをワーク・ユニットの開始時の値
に回復する。
(3)スペース・カタログの変更に加えて、WRBは又
オブジェクト・カタログを更新する(ファイル特性及び
記述の変更)。ワーク・ルーチン28はカタログ管理サ
ブ部分36を呼出してこれ等の変更をオブジェクト・カ
タログに行う。
(4)  もしオブジェクト・カタログの更新にエラー
があると、メモリ・アクセス・プロセッサ18はロール
バック処理を行って、現行のワーク・ユニットのすべて
のカタログ及びファイル変更を逆行させる。
(5)さらに、このようなエラーによってスペース管理
サブ部分34が呼出され、FSCB中の現在の消費スペ
ースの元の値が回復され(スペース管理のロールバック
動作)そしてワーク・ルーチン・コミット処理が終了す
る。
(6)オブジェクト・カタログの更新が成功すると、ス
ペース管理サブ部分34が呼出され、スペース・カタロ
グを更新する。この更新はスペース管理のコミット動作
によって行われる。
(カ スペース管理コミット動作中に障害が存在すると
、メモリ・アクセス・システム18はすべてのカタログ
変更をロールバックして、ワーク−ルーテン28のコミ
ット処理は終了する。
(8)  メモリ・アクセス・システム(SAS)18
が現行のワーク・ユニットのためのカタログ変更及びフ
ァイル変更のすべてをコミットする。
(9)  現行ワーク・ユニットのためのメモリ曹アク
セス・システム18のコミットが失敗すると、スペース
管理34のUNDO動作が呼出され現行ワーク・ユニッ
トについてなされたFSCBについての任意の変更がバ
ックアウトされる。FS CBランチも解放される。
(10)もしコミット処理が成功すると、スペース管理
64のアンラッチ動作が呼出され、FSCHのラッチを
解放する。ラッチはスペース管理のコミット動作によっ
て獲得され、メモリ・アクセス・プロセッサ18のコミ
ット動作中に保持され、現行のワーク・ユニットのコミ
ットが完了する迄他のアプリケーション・サポート・プ
ロセッサがFSCBを使用してそのワーク・ユニットを
コミットしようと試みないことを保証する。
(11)スペース管理サブ部分34のコミット動作はス
ペース管理の変更を記録した現行ワーク・ユニットのす
べてのWRBを処理する。
(12)FSCBへの変更を適用する前に、FSCBラ
ンチが獲得され、FSCBのステータスがUNDOリス
ト76中に保管され、障害が発生した時に回復できるよ
うにする。UNDOリストは又どのFSCBがコミット
のためにラッチされているかを示すのに使用される。
(13)WRBの変更が対応するFSCBに適用される
04)カタログ管理36が呼出されて、これに従ってス
ペース・カタログ74が更新される。
05)スペース管理34のアン2ツチ動作がUNDOリ
スト中に表わされた各FSCBのためのラッチを解放す
る。
06)スペース管理34のUNDO動作がUNDOリス
トを処理して、ラッチを解放し、すべてのFSCBをそ
のワーク・ユニットの開始前のステータスに戻す。
07)スペース管理サブ部分34のロールバック動作は
WRBもしくはPCB中の消費スペース−現行ワーク・
ユニットを使用することによって、対応するFSCB中
の現在消費スペースに対する現行ワーク・ユニットの影
響をバック・アウトする。
PCBは障害時にPCBからWRBが形成されていない
場合に適用される。
ラッチは同時に動作できる複数のデータ・アクセス・シ
ステムのアクテイペーション間に直列化を与える機構で
ある。スペース管理には次の2つのタイプのラッチが使
用される。
ハツシュ・テーブル・エントリ・ラッチ−これはFSC
Bの特定の同意語のチェーンのために次の事柄を同期化
する:FSCBの探索、FSCBの追加、FSCBの削
除、チェーンのFSCBのためのアクティビティ・カウ
ントの変更及びチエインのFSCHのため現在消費スペ
ース管理更。
FSCBラッチ−これはスペース・カタログの更新を同
期化し、ラッチのアクテイベーションによるコミットが
完了する迄他のアクティベーションがラッチされたFS
CBについて同じような動作を行うのを防止する。複数
のFSCBが単一のコミット中に含まれる時は、ラッチ
はFSCBのために獲得され、スペース・カタログの更
新が夫々のアプリケーション・サポート・プロセッサI
D値によって指示された順序で生ずる。これによって共
用アクテイベーション間のデッドロックの防止が保証さ
れる。
両方のタイプのラッチが同時に必要になる時は、ハツシ
ュ−テーブル・エントリ・ラッチがデッドロックを防止
するために先ず獲得される。
次の動作がスペース管理34によってサポートされる。
その詳細は第6図乃至第11図の論理的流れ図中に示さ
れている。
(1)スペースの追加 この動作は特定のアプリケーション・サポート・プロセ
ッサに許可されるファイル・スペースを加える。
入力はアプリケーション・サポート・プロセッサのID
及びスペースの量のインクレメント値である。
この要求のためのWRBを形成する。
要求のタイプをスペースの追加にセットする。
アプリケーション・サポート・プロセッサよりを記憶す
る。
スペース量のインクレメント値をパラメータ値フィール
ドに置く。
ワーク・ユニットの終りに処理するためにWRBをチェ
ーン・リストに置(。
(2)スペース削除 この動作は特定のアプリケーション・サポート・プロセ
ッサについて許可されたファイル魯スペースを減少する
。入力はアプリケーション・サポート・プロセッサのI
D及び減少のためのスペース量である。
この処理は要求のタイプがスペース削除である点を除き
スペースの追加の場合と略同じである。
(3)閾値の変更 この動作はファイル・スペースのための閾値を変更し、
警告が発生する点を変更する。入力は新らしい閾値の百
分率及びアプリケーション・サポート・プロセッサID
である。
この要求のためのWRBを形成する。
要求のタイプを閾値変更にセットする。
アプリケーション・サポート・プロセッサIDを記憶す
る。
新らしい閾値の値をパラメータ値フィールドに置く。
ワーク・ユニットの終りの処理のためにチェーン・リス
ト中KWRBを置く。
(4)閾値のチエツク この動作はF’SCHの現在消費スペース・フィールド
を更新し、閾値に到達している時にはインジケータを戻
す。入力はアプリケーション・サポート・プロセッサI
D、変更値及びPCBロケータである。
アプリケーション・サポート・プロセッサID’51?
 /’ツシュしてハツシュのテーブルの項目を決定する
ハツシュ・テーブルの項目のだめのラッチを獲得する。
PCBの消費スペース−現在の要求をFSCBの現在消
費スペースに加える。
もし現在消費スペース≧スペース閾値×スペース限界な
らば、警報インジケータを戻す。
消費スペース−現在要求を消費スペース−現行ワーク・
ユニットに追加する。
ハツシュ・テーブルの項目に関するラッチを解放する。
(5)スペース照会 この動作は特定のアプリケーション・サポート・プロセ
ッサのためのスペース・カタログから情報を戻す。この
情報はスペース限界、スペース閾値及びコミット・スペ
ースk 含tr。
適切なスペース・カタログのレコードを読取る。
情報をレコードから戻す。
(6)FSCBの形成 この動作は特定のアプリケーション・サポート・プロセ
ッサのための現存のFSCBを見出そうと試みる。もし
現存のFSCBが見出されると、アクティビティ・カウ
ントが1だけインクレメントされる。現存のFSCBが
見出されないと、FSCBが形成される。入力はアプリ
ケーション・サポート・プロセッサIDである。FSC
BSC−タが戻される。
アプリケーション・サポート・プロセッサIDをハツシ
ュしてハツシュ・テーブルの項目を求める。
ハツシュ拳テーブルの項目のためのラッチを獲得する。
ハツシュ・テーブル同意語チェーン中のアプリケーショ
ン・サポート・プロセッサのためのFSCBを探索する
FSCBが見出されないならば、 そのアプリケーション・サポートΦプロセッサのファイ
ル・スペースのスペース・カタログ・レコードを読取る
スペース・カタログ・レコードからFSCBを形成する
アクティビティ・カウントを1にセットする。
FSCBt−ハツシュ脅テーブル同意語チェーン中に置
(。
もしFSCIIが見出されると、アクティビティ・カウ
ントが1だけインクレメントされる。
ハツシュ・テーブル項目上のラッチを解放する。
ロケータt−FSCBに戻す。
(7)FSCBの獲得 この動作はFSCBSC−タを使用してFSCBに直接
進み、そのアクティビティ・カウントを1だけインクレ
メントする。入力はFSCBSC−タである。ロケータ
が知られている時はロケータがFSCB形成に代って使
用される。
入力パラメータであるロケータを使用して探されたFS
CB中のアプリケータ・サポート・プロセッサIDを使
用してノ\ツシュし、FSCBノ\ツシュ・テーブル項
目を求める。
ハツシュ・テーブル項目のためのラッチを獲得する。
FS CBのアクティビティ・カウントを1だけインク
レメントする。
(8)FSCBの解放 この動作はデーターアクセス・システムから現在のFS
CBを解放する。入力は存在しない。現在のDAS局所
制御構造体からのFSCBSC−タが使用される。
入力パラメータであるロケータを使用して探したFSC
B中のアプリケーション番サポート・プロセッサIDを
使用することによってハツシュL、FSCBハツシュ・
テーブルの項目を求める。
ハツシュ−テーブル項目のためのラッチを獲得する。
FSCBのアクティビティ・カウントを1だけ減少する
もしアクティビティ参カウントが0ならば、テーク・ア
クセス・システムからFSCB’i解放し、これをアン
チェーンして、再使用に備える。
ハツシュ・テーブル項目のためのラッチを解放する。
(9)  コミット この動作は現行のワーク・ユニットのための変更をFS
CBに加えて、この変更を使用して対応するスペース・
カタログ・レコードを更新する。
入力はファイル・スペース変更情報を含むWRBのチェ
ーン・リストである。第6図を一査上に、第7図を中央
に、第8図を下にした時これ等の図はスペース管理64
によってサポートされ、以下説、明されるコミット動作
の流れ図を示す。
すべてのWRBをアプリケーション・サポート・プロセ
ッサIDによって順序付ける。各WRBをこの順序に処
理する。各場合に、もし要求のタイプニスペース追加、
スペース削除もしくは閾値変更ならばFSCB形成を呼
出す。次に、 (a)  アプリケーション・サポート・プロセッサI
D’iハツシュしてFSCBハツシュ拳テーブルの項目
を決定する。
(b)FSCBラッチを獲得する。
((りFSCBロケータ、要求のタイプ及びアプリケー
ション・サポート・プロセッサIDをUNDOリスト中
に、関連するFSCBのための対応する値から保管する
(d)  もし要求のタイプがスペース追加モジ<はス
ペース削除である時はUNDOリストの保管値フィール
ド中にFSCBSC−ス限界を記憶する。
(e)  もし要求のタイプが閾値変更でめる時は、F
SCBスペース閾値’1UNDoリストの保管値フィー
ルド中に記憶する。
(f)  要求のタイプがスペース書込みの時は、FS
CBコミット・スペース’1UNDOIJストの保管値
フィールドに記憶する。
UNDOリストのアクティビティ・カウントに加える。
もし要求のタイプがメモリ追加である時は、FSCB中
のスペース限界をWRB中のパラメータ値だけインクレ
メントする。もし要求のタイプがスペース削除であると
、FSCB中のスペース限界’1)WRB中のパラメー
タ値だけデクレメントする。
もし要求のタイプが閾値変更である時はFSCB中のス
ペース閾値をWRB中のパラメータ値で置換する。
もし要求のタイプがスペース書込みである時は、 (a)WRBの消費スペース−現行ワーク・ユニットを
FSCBのコミット・スペース及ヒ1itUNDOリス
トの現在消費スペースに加える。
(b)FSCBのコミット・スペースがFSCBのスペ
ース限界よりも大きい時はエラー・インジケータをセッ
トする。
(c)もしこれがアプリケーション・サポート・プロセ
ッサIDのための最後のWRBである時は、スペース・
カタログ・レコードを対応するFSCBからの変更値で
更新する。
もしエラー・インジケータがセットされていると、UN
DO動作が呼出される。
(10)ロールバック この動作は現行のワーク・ユニットに関連するすべての
FSCBの現在消費スペース・フィールドになされた更
新を逆に戻す。現行ワーク・ユニットのためのWRB及
びPCBが入力として使用される。第9図はスペース管
理34によってサポートされ、以下に説明されるロール
パック動作の論理的流れ図である。
ワーク・ユニットのすべてのPCBを次のようこ処理す
る。
(aJFCB中のFSCBSC−タを使用してアプリケ
ーション・サポート・プロセッサIDを求める。
(b)IDiハツシュシテハッシューテーブルの項目に
する。
(c)ハツシュ・テーブルの項目のラッチを獲得する。
(d)FSCB中のアクティビティ・カウントを1だけ
減少する。
(e)  もしアクティビティ・カウントが0ならば、
FSCBを解放する。
(f)  アクティビティ−カウントが0でなければ、
FSCB中の現在消費スペースがPCB中の消費スペー
ス−現在ワーク・ユニット中の値だけ減少される。
(g)  ハツシュ・テーブル項目に関連するラッチを
解除する。
ワークφユニットのすべてのWRB’i次のように処理
する。
(a)WRB中のF’SCBを使用して、アプリケーシ
ョン・プロセッサのIDを求める。
(b)ID’izハツシュしてハツシュ・テーブルの項
目にする。
(c)  ハツシュΦテーブル項目のラッチを獲得する
(dlFSCB中のアクティビティ・カウントを1だけ
減少する。
(、)  もしアクティビティ・カウントが0ならば、
FSCBを解放する。
(f)  アクティビティ・カウントが0でなければ、
FSCB中の現在消費スペースをWRB中の消費スペー
ス−現行ワーク・ユニット中の値だけ減少する。
(g)  ハツシュ・テーブルの項目についてのラッチ
を解放する。
(11)UNDO この動作は現行のワーク拳ユニットのためのFSCBに
対するF’SCBにすべての変更を逆に戻し、FSCB
のための7クテイビテイーカウントを減少し、FSCB
に関するラッチを解放する。
入力はU N D OIJストである。第10図はスペ
ース管理34によってサポートされ、以下説明されるU
NDO動作の論理的流れ図を示す。
UNDOリストの各要素を次のように処理する。
アプリケーション・サポート拳プロセッサIDをハツシ
ュする。
ハツシュ・テーブル項目のラッチを獲得する。
もし要求のタイプがスペース書込みならば、(a)Fs
cn中の消費スペースをUNDO項目の保管値で回復す
る。
(b)FSCB中の現在消費スペースt−U N D 
O項目中の現在消費スペースの値だけ減少する。
もし要求のタイプがスペース追加もしくはスペース削除
である時は、FSCB中のスペース限界’1UNDO項
目の保管値で回復する。
要求のタイプが閾値変更である時は、FSCB中のスペ
ース閾値をUNDO項目の保管値で回復する。
FS CB中でアクティビティ・カウントをUNDO項
目中のアクティビティ・カウント値だけ減少する。
もしアクティビティ・カウントが0なら、FSCBを解
放し、これをアンチェーンし、これを再使用に備える。
もしアクティビティ−カウントが非0なら進行する。
FSCBランチを解放する。
FSCBハツシュ・テーブル項目に関するラッチに解放
する。
(12)アンラッチ この動作は現行のワーク・ユニットで獲得した、すべて
のFSCBのラッチを解放する。FSCBのだめのアク
ティビティ・カウントを減少する。
第11図はスペース管理34によってサポートされ、以
下に説明されるアンラッチ動作の論理流れ図を示す。
UNDOリストの各要素を次のように処理する。
アプリケーション・サポート拳プロセッサIDをハツシ
ュする。
ハツシュ・テーブル項目の一ラッチを獲得する。
FSCB中のアクティビティ・カウントをUNDO項目
中のアクティビティ・カウントの値だけ減少する。
もしアクティビティ・カウントが0ならば、FSCBを
解放しこれをアンチェーンし、再使用に備える。
もしアクティビティ・カウントが非Oならば、処理が進
行する。
FSCBラッチを解放する。
FSCBハツシュ・テーブル項目に関するラッチを解放
する。
F 発明の効果 本発明に従えば、各アプリケーション・サポート・プロ
セッサに割当てられたファイル・スペースを管理し、ス
ペースの追加、スペースの削除、スペース限界警告の閾
値の設定、スペースの照会、使用しているスペースの管
理、警告の通知、自由になったスペースの保証及び1以
上のアプリケージョン・サポート・プロセッサによるフ
ァイル・スペースの共用といったスペース管理機能をサ
ポートするファイル・アクセス・プロセッサのデータ・
アクセス・システムのためのスペース管理システムが与
えられる。
【図面の簡単な説明】
第1図はデータ・アクセス時システムの主要サブ部分間
の関係並びにデータ・アクセス・システムとファイル・
アクセス・プロセッサの他の2つの部分即ちサービス・
システム及びメモリ・アクセスφシステム間の関係を示
すブロック図である。 第2図はデータ・アクセス・システムの主な制御構造体
のブロック図である。 第3図はスペース管理サブ部分に関連する制御構造体の
組のブロック図である。 第4図はFSCB、FOB、WRB及びUNDOリスト
中のスペース管理のための関連フィールドを示した図で
ある。 第5図はワーク・ユニットの完了(コミットもしくはロ
ールパック)時に発生する制御及びデータの流れ図であ
る。 第6図、第7図及び第8図はこれ等を上、中、下の順に
並べた時に、スペース管理によるサポート動作を示す論
理的流れ図である。 第9図はスペース管理によってサポートされるロールバ
ック動作の論理的流れ図である。 第10図はスペース管理によってサポートされるUND
O動作の論理的流れ図である。 第11図はスペース管理によってサポートされるアンラ
ッチ動作の論理的流れ図である。 10・・・・アプリケーション・サポート・プロセッサ
、12・・・・ファイル・アクセス・プロセッサ、14
・・・・データ・アクセス・システム、16・・・・サ
ービス0システム、18・・・・メモリ・アクセス・シ
ステム、20・・・・セツション管理サブ部分、22.
24.26.28.30.31・・・・セツション管理
サブ部分のサービス・ルーチン、32・・・・要求管理
サブ部分、34・・・・スペース管理サブ部分、36・
・・・カタログ管理サブ部分、3日・・・・キャッシュ
管理サブ部分、4D・・・・DAS大域制御構造体、4
2・・・・DA8局所制御構造体。

Claims (1)

  1. 【特許請求の範囲】 ファイルのコピー、削除、オープン及びクローズのよう
    なファイル中のデータに関する、複数のアプリケーショ
    ン・サポート・プロセッサからの要求にサービスするフ
    ァイル・アクセス・プロセッサのためのデータ・アクセ
    ス・システムのスペース管理システムであつて、 上記データ・アクセス・システムがデータ・ファイル及
    びファイル・ディレクトリ中に含まれたファイルに関す
    る情報への共用アクセスを管理し、上記スペース管理シ
    ステムが各アプリケーション・サポート・プロセツサへ
    割当てられたファイル・スペースを管理し、スペースの
    追加、スペースの削除、限界警告の閾値の設定、スペー
    スの照会、使用中のスペースの管理、警告の通知、自由
    なスペースの確認及びファイル・スペースの2以上のア
    プリケーション・サポート・プロセッサによる共用とい
    つたスペース管理機能をサポートするものにおいて、 (a)各アプリケーション・サポート・プロセッサに割
    当てられた論理ファイル・スペースを表わす、各アプリ
    ケーション・サポート・プロセッサのためのレコードを
    その中に記録するためのスペース・カタログを有し、 (b)上記データ・アクセス・システムが該データ・ア
    クセス・システムのすべてのアクテイベーシヨンのため
    に持久的に保持される大域制御構造体を含み、上記大域
    制御構造体が一時メモリ中にファイル・スペース情報を
    保持するファイル・スペース制御ブロックを探すための
    ベースを与え、各上記ファイル・スペース制御ブロック
    は特定のアプリケーション・サポート・プロセッサのた
    めのワーク・ユニットが開始される時に最初スペース・
    カタログのレコードから形成されることと、(c)ワー
    ク・ユニットが完了し、コミットされた時に上記データ
    ・アクセス・システムが特定のアプリケーション・サポ
    ート・プロセッサのための上記スペース・カタログ中の
    レコードを更新することを特徴とする、 スペース管理システム。
JP63179347A 1987-10-19 1988-07-20 スペース管理システム Expired - Lifetime JPH0682329B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/110,463 US4888681A (en) 1987-10-19 1987-10-19 Space management system for data files having shared access
US110463 1998-07-07

Publications (2)

Publication Number Publication Date
JPH01112443A true JPH01112443A (ja) 1989-05-01
JPH0682329B2 JPH0682329B2 (ja) 1994-10-19

Family

ID=22333146

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63179347A Expired - Lifetime JPH0682329B2 (ja) 1987-10-19 1988-07-20 スペース管理システム

Country Status (4)

Country Link
US (1) US4888681A (ja)
EP (1) EP0312865B1 (ja)
JP (1) JPH0682329B2 (ja)
DE (1) DE3853460T2 (ja)

Families Citing this family (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5237682A (en) * 1987-10-19 1993-08-17 International Business Machines Corporation File management system for a computer
CA1337132C (en) * 1988-07-15 1995-09-26 Robert Filepp Reception system for an interactive computer network and method of operation
US5251318A (en) * 1988-09-02 1993-10-05 Hitachi, Ltd. Multiprocessing system comparing information copied from extended storage before and after processing for serializing access to shared resource
IT1228728B (it) * 1989-03-15 1991-07-03 Bull Hn Information Syst Sistema multiprocessore con replicazione di dati globali e due livelli di unita' di traduzione indirizzi.
ATE148241T1 (de) * 1989-06-13 1997-02-15 Ibm Verfahren zum entfernen unbestätigter änderungen an gespeicherten daten durch ein datenbankverwaltungssystem
JPH0666056B2 (ja) * 1989-10-12 1994-08-24 甲府日本電気株式会社 情報処理システム
US5410691A (en) * 1990-05-07 1995-04-25 Next Computer, Inc. Method and apparatus for providing a network configuration database
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
JPH04165541A (ja) * 1990-10-30 1992-06-11 Hitachi Ltd ファイル再配置方法
US5276835A (en) * 1990-12-14 1994-01-04 International Business Machines Corporation Non-blocking serialization for caching data in a shared cache
US5237681A (en) * 1991-05-24 1993-08-17 Bell Communications Research, Inc. Relational data base memory utilization analyzer
US5355483A (en) * 1991-07-18 1994-10-11 Next Computers Asynchronous garbage collection
US5475833A (en) * 1991-09-04 1995-12-12 International Business Machines Corporation Database system for facilitating comparison of related information stored in a distributed resource
US5627967A (en) * 1991-09-24 1997-05-06 International Business Machines Corporation Automated generation on file access control system commands in a data processing system with front end processing of a master list
US5386525A (en) * 1991-10-29 1995-01-31 Pacific Bell System for providing application programs with direct addressability into a shared dataspace
JP3349715B2 (ja) * 1991-12-03 2002-11-25 富士通株式会社 分散メモリ型計算機システム。
US6026452A (en) * 1997-02-26 2000-02-15 Pitts; William Michael Network distributed site cache RAM claimed as up/down stream request/reply channel for storing anticipated data and meta data
EP0579368A1 (en) * 1992-07-17 1994-01-19 International Computers Limited File system for a computer
CA2108833A1 (en) * 1992-10-22 1994-04-23 Masanori Ishii File compression processor
WO1994018634A1 (en) * 1993-02-01 1994-08-18 Lsc, Inc. Archiving file system for data servers in a distributed network environment
US5491818A (en) * 1993-08-13 1996-02-13 Peoplesoft, Inc. System for migrating application data definition catalog changes to the system level data definition catalog in a database
JP3197403B2 (ja) * 1993-09-07 2001-08-13 富士通株式会社 計算機システムのアプリケーションプログラム障害発生時の制御方法
US5588147A (en) * 1994-01-14 1996-12-24 Microsoft Corporation Replication facility
US6119151A (en) 1994-03-07 2000-09-12 International Business Machines Corp. System and method for efficient cache management in a distributed file system
JP2682811B2 (ja) * 1994-03-22 1997-11-26 インターナショナル・ビジネス・マシーンズ・コーポレイション データ記憶管理システム及び方法
US5627994A (en) * 1994-07-29 1997-05-06 International Business Machines Corporation Method for the assignment of request streams to cache memories
WO1996032685A1 (en) 1995-04-11 1996-10-17 Kinetech, Inc. Identifying data in a data processing system
US5956712A (en) * 1995-06-07 1999-09-21 International Business Machines Corporation Byte range locking in a distributed environment
US6412017B1 (en) 1996-07-01 2002-06-25 Microsoft Corporation Urgent replication facility
US6049809A (en) * 1996-10-30 2000-04-11 Microsoft Corporation Replication optimization system and method
US6088764A (en) * 1997-07-14 2000-07-11 International Business Machines Corporation Method and apparatus for reducing space allocation failures in storage management systems
US6260040B1 (en) 1998-01-05 2001-07-10 International Business Machines Corporation Shared file system for digital content
US6189069B1 (en) 1998-02-17 2001-02-13 Microsoft Corporation Optimized logging of data elements to a data storage device
US6295608B1 (en) * 1998-02-17 2001-09-25 Microsoft Corporation Optimized allocation of data elements among cache lines
US8631066B2 (en) * 1998-09-10 2014-01-14 Vmware, Inc. Mechanism for providing virtual machines for use by multiple users
US6823338B1 (en) 1998-11-19 2004-11-23 International Business Machines Corporation Method, mechanism and computer program product for processing sparse hierarchical ACL data in a relational database
US6502174B1 (en) * 1999-03-03 2002-12-31 International Business Machines Corporation Method and system for managing meta data
US6513097B1 (en) 1999-03-03 2003-01-28 International Business Machines Corporation Method and system for maintaining information about modified data in cache in a storage system for use during a system failure
US6438661B1 (en) * 1999-03-03 2002-08-20 International Business Machines Corporation Method, system, and program for managing meta data in a storage system and rebuilding lost meta data in cache
FR2795197A1 (fr) * 1999-06-21 2000-12-22 Galina Luquet Procede de gestion de donnees contenues dans une bibliotheque de supports de stockage
US6751635B1 (en) * 2000-08-18 2004-06-15 Network Appliance, Inc. File deletion and truncation using a zombie file space
JP2002116945A (ja) * 2000-10-11 2002-04-19 Nec Corp オブジェクト配信システム及びそれに用いる携帯端末におけるメモリ管理方法
US7716187B2 (en) * 2003-05-21 2010-05-11 Microsoft Corporation System and method for transparent storage reorganization
GB2405495B (en) 2003-08-18 2006-09-20 Orchestria Ltd Data storage system
JP4526337B2 (ja) * 2004-09-15 2010-08-18 株式会社日立製作所 データ管理システム及び方法
US8185576B2 (en) 2006-03-14 2012-05-22 Altnet, Inc. Filter for a distributed network
US7653664B2 (en) * 2006-11-03 2010-01-26 Microsoft Corporation Anchor for database synchronization excluding uncommitted transaction modifications
US20080243966A1 (en) * 2007-04-02 2008-10-02 Croisettier Ramanakumari M System and method for managing temporary storage space of a database management system
US20090049449A1 (en) * 2007-08-15 2009-02-19 Srinidhi Varadarajan Method and apparatus for operating system independent resource allocation and control
US9692840B2 (en) 2013-11-11 2017-06-27 Dropbox, Inc. Systems and methods for monitoring and applying statistical data related to shareable links associated with content items stored in an online content management service
US9690910B2 (en) * 2013-11-11 2017-06-27 Dropbox, Inc. Systems and methods for monitoring and applying statistical data related to shareable links associated with content items stored in an online content management service
US10802973B1 (en) 2019-07-01 2020-10-13 Bank Of America Corporation Data access tool

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63305438A (ja) * 1987-06-05 1988-12-13 Nec Corp 複数ホストコンピュ−タ間のファイル共有排他制御方式

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4408273A (en) * 1980-05-27 1983-10-04 International Business Machines Corporation Method and means for cataloging data sets using dual keyed data sets and direct pointers
US4399504A (en) * 1980-10-06 1983-08-16 International Business Machines Corporation Method and means for the sharing of data resources in a multiprocessing, multiprogramming environment
US4480304A (en) * 1980-10-06 1984-10-30 International Business Machines Corporation Method and means for the retention of locks across system, subsystem, and communication failures in a multiprocessing, multiprogramming, shared data environment
JPS57101939A (en) * 1980-12-18 1982-06-24 Nippon Telegr & Teleph Corp <Ntt> Dynamic control system of data base substance storage area
US4432057A (en) * 1981-11-27 1984-02-14 International Business Machines Corporation Method for the dynamic replication of data under distributed system control to control utilization of resources in a multiprocessing, distributed data base system
US4498145A (en) * 1982-06-30 1985-02-05 International Business Machines Corporation Method for assuring atomicity of multi-row update operations in a database system
US4507751A (en) * 1982-06-21 1985-03-26 International Business Machines Corporation Method and apparatus for logging journal data using a log write ahead data set
US4641274A (en) * 1982-12-03 1987-02-03 International Business Machines Corporation Method for communicating changes made to text form a text processor to a remote host
US4506326A (en) * 1983-02-28 1985-03-19 International Business Machines Corporation Apparatus and method for synthesizing a query for accessing a relational data base
DE3381300D1 (de) * 1983-03-31 1990-04-12 Ibm Abbildungsraumverwaltung und wiedergabe in einem bestimmten teil des bildschirms eines virtuellen mehrfunktionsterminals.
AU575182B2 (en) * 1984-06-28 1988-07-21 Wang Laboratories, Inc. Self extending memory file

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63305438A (ja) * 1987-06-05 1988-12-13 Nec Corp 複数ホストコンピュ−タ間のファイル共有排他制御方式

Also Published As

Publication number Publication date
EP0312865A3 (en) 1990-07-18
DE3853460D1 (de) 1995-05-04
DE3853460T2 (de) 1995-10-12
EP0312865A2 (en) 1989-04-26
JPH0682329B2 (ja) 1994-10-19
EP0312865B1 (en) 1995-03-29
US4888681A (en) 1989-12-19

Similar Documents

Publication Publication Date Title
JPH01112443A (ja) スペース管理システム
US5077658A (en) Data access system for a file access processor
US5237682A (en) File management system for a computer
US5287473A (en) Non-blocking serialization for removing data from a shared cache
US5355477A (en) Method for updating a block using record-level locks by committing the update if the block has not been updated by another process otherwise spinning
Levandoski et al. High performance transactions in deuteronomy
US5717921A (en) Concurrency and recovery for index trees with nodal updates using multiple atomic actions
CN101981545B (zh) 用于事务缓存的系统和方法
EP0890915B1 (en) Parallel file system and method for granting byte range tokens
US5987477A (en) Parallel file system and method for parallel write sharing
EP0892347B1 (en) Parallel file system and method for independent metadata logging
US5963963A (en) Parallel file system and buffer management arbitration
US5893086A (en) Parallel file system and method with extensible hashing
CA2302981C (en) Online database table reorganization
US5537574A (en) Sysplex shared data coherency method
Levandoski et al. Multi-version range concurrency control in deuteronomy
Bohannon et al. Distributed multi-level recovery in main-memory databases
EP0312786B1 (en) Data access system for a file access processor
KR100292643B1 (ko) 바이트 범위 api 로킹(byte rangeati locking)을 갖춘병렬 파일 시스템 및 방법
Zou et al. Towards efficient online database reorganization
Hisgen et al. New-value logging in the Echo replicated file system
Kim et al. A design and implementation of savepoints and partial rollbacks considering transaction isolation levels of SQL2
KR100314879B1 (ko) 주기억장치데이터베이스관리시스템을위한락관리방법
Phatak et al. Bounded locking for optimistic concurrency control
Kumar et al. An integrated data structure with multiple access paths for database systems and its performance