JP2001154895A - 記憶されたレコードについてのフォーマット情報を効率的に提供するためのディレクトリを含むデジタル・データ記憶サブシステム - Google Patents

記憶されたレコードについてのフォーマット情報を効率的に提供するためのディレクトリを含むデジタル・データ記憶サブシステム

Info

Publication number
JP2001154895A
JP2001154895A JP2000291218A JP2000291218A JP2001154895A JP 2001154895 A JP2001154895 A JP 2001154895A JP 2000291218 A JP2000291218 A JP 2000291218A JP 2000291218 A JP2000291218 A JP 2000291218A JP 2001154895 A JP2001154895 A JP 2001154895A
Authority
JP
Japan
Prior art keywords
record
format
records
track
size
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
JP2000291218A
Other languages
English (en)
Inventor
Natan Vishlitzky
ヴィシュリツキー ナータン
Haim Kopylovitz
コピロヴィッツ ハイム
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.)
EMC Corp
Original Assignee
EMC 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 EMC Corp filed Critical EMC Corp
Publication of JP2001154895A publication Critical patent/JP2001154895A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0607Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0674Disk device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Management Or Editing Of Information On Record Carriers (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)

Abstract

(57)【要約】 (修正有) 【課題】 デジタル・データ記憶サブシステムによって
記憶されたレコードについてのフォーマット情報を効率
的に提供するためのディレクトリを含むデジタル・デー
タ記憶サブシステムを提供。 【解決手段】 情報が一つ以上のディスク記憶装置に記
憶される大容量サブシステムを具備するデジタル・デー
タ記憶システムであって、記憶装置エレメントは、ディ
スク記憶装置上のトラックを構成し、及び各トラックは
複数のレコードを記憶する。前記各トラックは、記述子
と関連する。前記制御装置がレコードのコンテンツを検
索する時、トラックと関連する記述子のフォーマット定
義タイプ識別子を使用して、前記トラックについてのフ
ォーマット定義タイプを決定し、特定のフォーマット情
報を使用して、前記トラック上のレコードの場所及びサ
イズを決定し、及び前記レコードを検索することができ
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は一般的にはデジタル
・コンピュータ・システムの分野に関し、及びより特定
的には、前記デジタル・データ記憶サブシステムによっ
て記憶されるレコードについてのフォーマット情報を効
率的に提供するためのディレクトリを含むデジタル・デ
ータ記憶サブシステムに関する。
【0002】
【従来の技術】現代の「企業」コンピュータ環境、すな
わち、企業におけるオフィス環境で使用するためのコン
ピュータ・システムにおいて、数多くのパーソナル・コ
ンピュータ(personal computer)、ワークステーショ
ン(workstation)、ミニ・コンピュータ(mini-comput
er)、及びメインフレーム・コンピュータ(mainframe
computer)が、大容量記憶サブシステム、ネットワーク
・プリンタ(network printer)及び公衆電話システム
へのインターフェース等の他の装置とともに、情報が企
業内ユーザの間で共有される統合された環境を提供する
ために相互接続されるかもしれない。通常は、ユーザは
受注、生産、発送、請求伝票発行業務、在庫管理、及び
他の業務を含む、様々な業務を実行しているかもしれ
ず、そこではリアル・タイムでのデータ共有が、例えば
個別のレコードを保守し及び後にそれらを修復するよう
試みることに対して大きな効果を提供するかもしれな
い。前記ユーザは、自らのデータで操作してもよく、彼
らは使用中のコンピュータ上でそれらを保守してもよ
く、又は大容量記憶サブシステムを通してデータを共有
してもよい。
【0003】前記のような大容量記憶サブシステムが、
例えば、1993年4月27日、モシェ・ヤナイらに付
与(以下、「939号特許」と称する)、アメリカ合衆
国特許第5,206,939号、「ディスク・マッピン
グ及びデータ検索のためのシステム及び方法」、及びモ
シェ・ヤナイら名義、アメリカ合衆国特許出願第07/
893,509号、1995年6月4日提出、「キャッ
シュ管理を動的に制御するためのシステム及び方法」に
記載されており、これら両方は、本発明の譲受人に譲渡
され、その内容はここに参照のために採用されている。
前記特許及び出願は、コンピュータによって使用される
ように、各レコードが著名な「CKD(カウント−キー
−データ)(count-key-data)」フォーマットであるレ
コードにおいて編成されたデータが、「固定ブロック」
記憶装置アーキテクチャを提供する記憶装置に記憶され
ることができるようにする配列を一般的に説明する。こ
の配列において、大容量のキャッシュが、前記個別のコ
ンピュータによって使用されるために、前記記憶装置か
ら転送され、及び前記データが更新された場合は、記憶
のために、前記記憶装置へと戻されるデータをバッファ
するために使用される。
【0004】前述の特許及び特許出願に記述されたシス
テムにおいて、大容量記憶サブシステムに記憶されるデ
ータに関する情報を提供するために、ディレクトリ・テ
ーブル(directory table)が使用される。一つの実施
形態において、前記大容量記憶サブシステムは、ナンバ
ー・ディスク(number disk)記憶装置にデータを記憶
し、前記テーブルは、装置、シリンダ及び読み取り/書
き取りヘッド又はトラックによって編成された、前記大
容量記憶サブシステムに記憶された前記CKDレコード
の各々の選択された特性に関する情報を含み、及びレコ
ードのサイズ及び一定のフォーマット特性等の情報を含
む。個別の記憶装置によって記憶されることができるデ
ータの量は、各装置が記憶することができるシリンダの
数についてと、各トラックが記憶することができるデー
タ量についての両方において、頻繁に時間経過とともに
増加するので、前記テーブルが記憶する必要がある情報
の量は、大変大きくなる可能性がある。アメリカ合衆国
特許出願第08/790,642号、1997年1月2
9日提出、ナタン・ヴィシュリツキ名義、「記憶された
レコードについてのフォーマット情報を効率的に提供す
るためのディレクトリを含むデジタル・データ記憶サブ
システム」で、本発明の譲受人に譲渡され、ここに参照
として採用されている前記出願は、様々なレコードに必
要とされる情報量が、効果的に低減されることができる
ディレクトリ・テーブルを記述する;しかしながら、前
記ディレクトリ・テーブルのサイズをさらに低減させる
と、有用であるだろう。
【0005】
【発明が解決しようとする課題】本発明は、デジタル・
データ記憶サブシステムによって記憶されたレコードに
ついてのフォーマット情報を効率的に提供するためのデ
ィレクトリを含む新しく、改良されたデジタル・データ
記憶サブシステムを提供する。
【0006】
【課題を解決するための手段】簡潔に要約すると、本発
明は、複数の記憶装置のエレメント、メモリ及び制御装
置を具備するデジタル・データ記憶システムを提供す
る。前記記憶装置エレメントは、一連のレコードを、検
索ができるように記憶するように構成されており、前記
レコードは、複数のフォーマット定義タイプの一つを具
備するフォーマットで記憶される。前記メモリは、前記
記憶装置によって記憶されるレコードのフォーマットを
記述するための記述子であって、前記レコードが記憶さ
れる前記複数のフォーマット定義タイプの一つを識別す
るフォーマット定義タイプ識別子を含む前記記述子と、
及び前記レコードが記憶される前記複数のフォーマット
定義タイプの一つの中にさらにフォーマット情報を提供
する特定のフォーマット情報とを記憶する。前記制御装
置は、前記記憶装置エレメントから前記レコードの一つ
を検索することに関連して、前記記憶装置から前記レコ
ードのうちの複数を検索することに関して、前記フォー
マット定義タイプ識別子及び前記記述子における特定の
フォーマット情報を使用するように構成される。
【0007】一つの実施形態において、前記デジタル・
データ記憶サブシステムは、情報が一つ以上のディスク
記憶装置に記憶される大容量サブシステムの形式であっ
て、記憶装置エレメントは、ディスク記憶装置上のトラ
ックを構成し、及び各トラックは複数のレコードを記憶
する。デジタル・データ記憶システムの各ディスク記憶
装置における各トラックは、記述子と関連する。その実
施形態において、前記制御装置が前記レコードのコンテ
ンツを検索する時、それは前記トラックと関連する記述
子のフォーマット定義タイプ識別子を使用して、前記ト
ラックについてのフォーマット定義タイプを決定し、前
記特定のフォーマット情報を使用して、前記トラック上
のレコードの場所及びサイズを決定し、及び前記レコー
ドを検索することができる。同様に、前記レコードが更
新される場合、前記制御装置は、前記トラックと関連す
る記述子のフォーマット定義タイプ識別子を使用して、
前記トラップについてのフォーマット定義タイプを決定
し、前記特定のフォーマット情報を使用して、前記トラ
ック上のレコードの場所及びサイズを決定し、及び前記
トラック上のレコードを更新することができる。多くの
フォーマット定義タイプが開示される。
【0008】本発明は、添付の特許請求の範囲における
詳細によって指摘される。本発明の上述の及びさらなる
効果は、添付の図面を参考にして以下の説明を参照する
ことによって、より良く理解されるであろう。
【0009】
【発明の実施の形態】本発明は、図1に記載の機能的ブ
ロック図に記載されたデジタル・コンピュータ・システ
ム10と関連して説明される。図1を参照すると、コン
ピュータ・システム10は、複数のホスト・コンピュー
タ(host computer)11(1)乃至11(N)(通常
は、参照番号11(n)で識別される)及び共通バス1
3によって相互接続されたデジタル・データ記憶サブシ
ステム12を含む。各ホスト・コンピュータ11(n)
は、例えば、パーソナル・コンピュータ、ワークステー
ション、又は単一のオペレータによって使用される類似
のもの、あるいは多くのオペレータによって使用される
マルチユーザ・コンピュータ・システムを具備してもよ
い。各ホスト・コンピュータ11(n)は、関連するホ
スト・アダプタ(host adapter)15(n)に接続さ
れ、それは順にバス13に接続される。各ホスト・コン
ピュータ11(n)は、検索オペレーションを実行する
ために、それの関連するホスト・アダプタ15(n)を
制御してもよく、そこでは前記ホスト・アダプタ15
(n)が、それの処理オペレーションにおける前記ホス
ト・コンピュータ11(n)による使用のために、前記
デジタル・データ記憶サブシステム12からのコンピュ
ータ・プログラム及びデジタル・データ(通常「情報」
と称される)の検索を開始する。さらに、ホスト・コン
ピュータ11(n)は、前記ホスト・アダプタ15
(n)が、デジタル・データ記憶サブシステム12にお
ける処理されたデータの記憶を開始する記憶オペレーシ
ョンを実行するために、それの関連するホスト・アダプ
タ15(n)を制御してもよい。通常は、デジタル・デ
ータ記憶サブシステム12と関連した検索オペレーショ
ン及び記憶オペレーションは、集合的に「アクセス・オ
ペレーション(access operation)」と称される。
【0010】検索及び記憶の両方のオペレーションに関
連して、ホスト・アダプタ11(n)は、記憶オペレー
ション中に記憶されるべき処理されたデータとともに、
アクセス・オペレーション・コマンド情報を、バス13
を介して転送する。バス13へのアクセスは、ある実施
形態においては、個別のホスト・アダプタ15(n)に
統合されるバス・アクセス制御回路によって制御され
る。前記バス・アクセス制御回路は、バス13へのアク
セスを要求する、バス13に接続された装置間のアービ
トレーション(arbitrate)をする。バス13へのアク
セスを制御する時に、前記バス・アクセス制御回路は、
多くの公知のバス・アクセス・アービトレーション技術
のいずれを使用してもよい。
【0011】一つの実施形態におけるデジタル・データ
記憶サブシステム12は一般的に、アメリカ合衆国特許
第5,206,939号、モシェ・ヤナイらに1993
年4月27日付与、「ディスク・マッピング及びデータ
検索のためのシステム及び方法」(以後「939号特
許」と称する)に記載されているデジタル・データ記憶
サブシステムに類似している。図1に記載のとおり、デ
ジタル・データ記憶サブシステム12は、複数のデジタ
ル・データ記憶装置20(1)乃至20(M)(一般的
に参照番号29(m)によって識別される)を含み、そ
の各々は、バス13にも接続される。前記データ記憶装
置20(m)の各々は、プログラム及びデータを含む、
ホスト・コンピュータ11(n)によってデジタル・デ
ータ記憶サブシステム12へと提供される処理されたデ
ータと同様に、ホスト・コンピュータ11(n)によっ
てアクセスされてもよい情報を記憶する。
【0012】各データ記憶装置20(m)は、順に、記
憶コントローラ21(m)及び参照番号22で一般的に
識別される一つ以上の記憶装置を含む。記憶装置22
は、そこから情報が検索される光学ディスク記憶装置及
びCD−ROM装置と同様に、従来の磁気ディスク及び
テープ記憶装置のいずれを具備してもよい。各記憶コン
トローラ21(m)は、バス13へと接続し、及びそれ
に接続される記憶装置において、それを介して受信され
る情報の記憶を制御する。さらに、各記憶コントローラ
21(m)は、バス13を介しての転送のために、それ
に接続される記憶装置22からの情報の検索を制御し、
及び一つの実施形態においては、バス13へのアクセス
を制御するためのバス・アクセス制御回路を含む。
【0013】デジタル・データ記憶サブシステム12は
また、アクセス・オペレーション中の情報及びそれらの
オペレーションにおける一定の点で、ホスト・コンピュ
ータ11(n)及びデータ記憶装置20(m)の状態に
関する選択された状態の情報を提供するイベント状態情
報をキャッシュするための共通メモリ・サブシステム3
0も含む。共通メモリ・サブシステム30によるイベン
ト状態情報のキャッシュは、本発明の譲受人に譲渡さ
れ、参照のためにここに採用されているアメリカ合衆国
特許出願第 号、1995年9月25日提
出、エリ・シャガムら名義、「複数の装置によって生成
されるイベント情報をログするための共通イベント・ロ
グを含むデジタル・コンピュータ・システム」(代理人
登録番号95−034)に詳細が記載されている。アク
セス・オペレーション中に共通メモリ・サブシステム3
0によってキャッシュされる情報は、検索オペレーショ
ン中にホスト・コンピュータ11(n)によって検索さ
れるべきである、データ記憶装置20(m)によって提
供されるデータと同様に、記憶オペレーション中にデー
タ記憶装置20(m)に記憶されるべきである、ホスト
・コンピュータ11(n)によって提供されるデータを
含む。共通メモリ・サブシステム30は、アクセス・オ
ペレーション中に、前記ホスト・コンピュータとデータ
記憶装置20(m)との間で転送される情報をバッファ
リングするためのバッファとして効率的に動作する。
【0014】共通メモリ・サブシステム30は、キャッ
シュ・メモリ(cache memory)31、キャッシュ・イン
デックス・ディレクトリ(cache index directory)3
2及びキャッシュ・マネージャ(cache manager)33
を含み、それらは一般的に、本発明の譲受人に譲渡さ
れ、参照のためにその内容がここに採用されているアメ
リカ合衆国特許出願第07/893,509号、199
5年6月4日、モシェ・ヤナイら名義、「キャッシュ管
理を動的に制御するためのシステム及び方法」に記載さ
れている。キャッシュ・メモリ31は、記憶及び検索オ
ペレーションと関連してバッファとして動作し、特にホ
スト・コンピュータ11(n)から受信され、記憶のた
めの記憶装置に転送されるべきデータをバッファリング
し、及びデータ記憶装置20(m)から受信され、処理
のためのホスト・コンピュータ11(n)へと転送され
るべきデータを、バッファリングする。
【0015】キャッシュ・メモリ31及びキャッシュ・
インデックス・ディレクトリ32は、一般的に、図2と
関連して説明される。図2を参照すると、キャッシュ・
メモリ31は、一連の記憶場所を含み、それらは一連の
キャッシュ・スロット31(0)乃至31(S)(一般
的に参照番号31(s)によって識別される)に編成さ
れる。前記記憶場所は、順に、一連のアドレスによって
識別され、キャッシュ・スロットの開始アドレスは、ベ
ース・アドレス(base address)によって識別される。
前記キャッシュ・スロット31(s)は順に、上述のと
おりにキャッシュ・メモリのバッファとして動作する。
【0016】キャッシュ・インデックス・ディレクトリ
32は、キャシュ・メモリ31においてキャッシュ・ス
ロット31(s)のためのインデックスとして動作す
る。キャッシュ・インデックス・ディレクトリ32は、
複数のキャッシュ・インデックス・テーブル32(0)
乃至32(D)(一般的に参照番号32(d)によって
識別される)を含み、その各々は、記憶サブシステム1
2における記憶装置22の一つと関連する。各キャッシ
ュ・インデックス・テーブル32(d)は、装置ヘッダ
・フィールド34を含み、それは例えばキャッシュ・イ
ンデックス・テーブル32(d)と関連する装置22の
ための選択された識別及び状態情報を提供する。さら
に、各キャッシュ・インデックス・テーブル32(d)
は、複数のシリンダ記述子35(1)乃至35(C)
(一般的に参照番号35(c)によって識別される)を
含み、その各々は、キャッシュ・インデックス・テーブ
ル32(d)と関連する記憶装置22におけるシリンダ
の一つと関連する。各シリンダ記述子35(c)は、順
に、シリンダ・ヘッダ36(c)を含み、それは例え
ば、シリンダ記述子35(c)と関連するシリンダのた
めの選択された識別及び状態情報を提供する。
【0017】さらに、各シリンダ記述子35(c)は、
複数のトラック記述子35(c)(0)乃至35(c)
(T)(一般的に参照番号35(t)によって識別され
る)を含み、その各々は、シリンダ35(c)における
トラックの一つと関連する。各トラック記述子35
(c)(t)は、順に、トラックに記憶されたデータの
コピーがキャッシュ・メモリ31にキャッシュされてい
るか、もしそうであれば、データがキャッシュされるキ
ャッシュ・スロット31(s)の識別を含む、記憶装置
22の関連するトラックについての情報を含む。以下で
より詳細に記載されるとおり、各トラック記述子35
(c)(t)は、キャッシュされたフラグ及びキャッシ
ュ・スロット・ポインタ(cache slot pointer)を含
む。前記キャッシュされたフラグは、設定される場合、
前記トラックと関連するトラック上のデータが、キャッ
シュ・スロット31(s)にキャッシュされることを示
し、及びキャッシュ・スロット・ポインタ38(s)
(t)は、前記データがキャッシュされる特定のキャッ
シュ・スロットを識別する。さらに、各トラック記述子
35(c)(t)は、前記キャッシュ・スロット・ポイ
ンタによって識別されるキャッシュ・スロットに記憶さ
れた後、前記データが検索オペレーション中にホスト・
コンピュータ11(n)によって使用されたかを示すた
めに使用されてもよい、使用されたフラグ39(c)
(t)を含む。この「ホストが使用した(host use
d)」フラグは、前記キャッシュ・スロットが他のアク
セス・オペレーションのために再利用されてもよいか決
定するために使用されてもよい。
【0018】ホスト・アダプタ15(n)の各々及び装
置コントローラ21(m)の各々は、キャッシュ・メモ
リ31、キャッシュ・インデックス・ディレクトリ32
及びキャッシュ・マネージャ・メモリ33へアクセスす
るための、キャッシュ・マネージャ16(n)及び23
(m)をそれぞれ含む。アクセス・オペレーション中に
実行される特定のオペレーションは、実行されるべきア
クセス・オペレーション、アクセスされるべき特定のト
ラックからのデータが、キャッシュ・メモリ31にキャ
ッシュされるのかされないのか、及びキャッシュ・スロ
ット31(s)に含まれるデータが、記憶オペレーショ
ン中にホスト・アダプタのキャッシュ・マネージャ16
(n)によって変更され又は更新されたのかされなかっ
たのか、を含む多くの要素に依存する。上述のシャガム
の出願に記載されているとおり、ホスト・アダプタ15
(n)は通常、キャッシュ・メモリ31におけるデータ
と関連する記憶及び検索オペレーションを実行し、及び
装置コントローラ21(m)は、(前記ステージング・
オペレーションを)バッファリングするために、記憶装
置22におけるデータをキャッシュ・メモリ31へ転送
し、及び(前記非ステージング・オペレーションを)記
憶するために、キャッシュ・メモリ31からのデータを
記憶装置22へ転送するために、「ステージング(stag
ing)」及び「非ステージング(de-staging)」オペレ
ーションを実行する。前記ステージング及び非ステージ
ング・オペレーションを実行する時、装置コントローラ
21(m)は一般的に、トラック単位でキャッシュ・メ
モリ31へ、及びキャッシュ・メモリ31からデータを
転送する。すなわち、それらはステージング・オペレー
ション中に、トラックにおけるデータのすべてを、記憶
装置22からキャッシュ・メモリ31におけるキャッシ
ュ・スロット31(s)に転送し、及び非ステージング
・オペレーション中に、キャッシュ・メモリ31におけ
るスロットのデータのすべてを、本来それがそこからス
テージングされていた記憶装置22のトラックへとコピ
ーする。
【0019】キャッシュ・マネージャ・メモリ33は、
アクセス・オペレーション中に、ホスト・アダプタ15
(n)及び記憶コントローラ21(m)によるオペレー
ションを制御するために使用される多くの作業リストを
保守する。特に、キャッシュ・マネージャ・メモリ33
は、キャッシュ・スロット置き換えリスト、保留書き込
みリスト、及びホスト・アダプタ15(n)並びに記憶
コントローラ21(m)が開始オペレーション(図示さ
れていない)を調整するために通信をするために使用す
る様々なリストを含む。キャッシュ・マネージャ・メモ
リ33によって保守される様々なリストが、待ち行列、
ツリー(tree)、スタック(stack)等を含む、数多く
の便利な形式のいずれをも具備してもよいことが評価さ
れるであろう。キャッシュ・スロット置き換えリスト
は、便利なキャッシュ‐スロット再利用法論に従って、
ステージング・オペレーション中にキャッシュ・スロッ
トの再利用を制御するために使用される。ステージング
・オペレーション中に、記憶コントローラのキャッシュ
・マネージャ23(m)は、キャッシュ・スロット置き
換えリストを使用して、記憶装置から検索されたデータ
をロードするキャッシュ・スロット31(s)を選択す
る。(前述のシャガムの出願は、本発明の一つの実施形
態において使用される、変更され、最も以前に使用され
たキャッシュ‐スロット再利用方法論を記載する。)前
記保留書き込みリストは、記憶装置に書き込まれなかっ
た、更新されたデータを含むキャッシュ・スロット31
(s)を識別するために使用される。非ステージング・
オペレーション中に、記憶コントローラのキャッシュ・
マネージャ23(m)は、前記書き込み保留リストを使
用して、記憶装置22に書き込まれるべきキャッシュ・
スロットを識別する。好ましくは、前記保留書き込みリ
ストにおいて識別されるキャッシュ・スロット31
(s)は、キャッシュ・スロット置き換えリストにも列
挙されないので、更新されたデータを含むキャッシュ・
スロット31(s)は、前記データが非ステージング・
オペレーションを通して記憶装置に書き込まれなくなる
まで使用されない。
【0020】ステージング・オペレーション調整通信リ
スト(staging operation coordination communication
list)は、複数のステージ要求リスト及び複数のステ
ージ完了リストを含み、一つのステージ要求リストは各
データ記憶装置20(m)と関連し、及び一つのステー
ジ完了リストは各ホスト・コンピュータ11(n)と関
連する。前記ホスト・アダプタのキャッシュ・マネージ
ャ16(m)は、前記ステージ要求リストを使用して、
個別のデータ記憶装置20(m)によって実行されるべ
きステージ要求を記憶し、及び前記データ記憶装置のキ
ャッシュ・マネージャ23(n)はステージ完了リスト
を使用して、個別のホスト・アダプタのキャッシュ・マ
ネージャ16(m)に、前記ステージ要求が完了したこ
とを示すためのステージ完了メッセージを記憶する。
【0021】通常は、ホスト・アダプタ15(n)は、
検索オペレーション中、前記データをキャッシュ・メモ
リ31から検索するよう試みる。しかしながら、前記デ
ータがキャシュ・メモリ31にない場合、それによっ
て、検索されるべきデータを含む記録装置22を制御す
る装置コントローラ21(m)が、検索されるべきデー
タを含むトラックを「ステージング」できるようにす
る。すなわち、検索されるべきデータを含むトラックに
おけるデータのすべてを、キャッシュ・メモリ31にお
けるスロットに転送することができるようにする。検索
されるべきデータがキャッシュ・メモリ31に入った
後、ホスト・アダプタ15(n)は、前記データを前記
スロットから検索する。同様に、記憶オペレーション中
に、ホスト・アダプタ15(n)は、前記データが書き
込まれる特定のトラックが、キャッシュ・メモリ31に
おけるスロットにあるかを決定し、もしそうであれば前
記データを前記スロットに記憶する。しかしながら、前
記データがキャッシュ・メモリ31にない場合、ホスト
・アダプタ15(n)によって、キャッシュ・マネージ
ャ23(m)及び更新されるべきデータを有するトラッ
クを含む記憶装置22を制御する記憶コントローラ21
(m)は、前記トラックと関連してステージング・オペ
レーションを実行することができるようにし、それによ
って前記トラックにおける前記データをキャッシュ・メ
モリ31におけるスロットに転送することができるよう
にする。前記トラックからのデータが、キャッシュ・メ
モリ31にコピーされた後、ホスト・アダプタ15
(n)は、前記トラックにおけるデータを更新する。
【0022】記憶コントローラ21(m)は通常、キャ
ッシュ・メモリ31の空白スロットと関連してステージ
ング・オペレーションを実行することを試みる。しかし
ながら、キャッシュ・メモリ31におけるすべてのキャ
ッシュ・スロットがいっぱいになっていることを記憶コ
ントローラ21(m)が見つけると、それはどんな場合
にも、前記ステージング・オペレーションと使用される
べきスロットの一つを選択するであろう。前記データを
前記トラックから選択されたキャッシュ・スロットに転
送する前に、それは、前記スロットにおけるデータが記
憶オペレーションによって更新されたかを決定し、もし
そうであれば、前記データを、非ステージング・オペレ
ーションにおいて記憶装置22にコピーし、その後、前
記データを前記記憶装置から前記選択されたキャッシュ
・スロットにコピーするためにステージング・オペレー
ションを実行する。前記スロットの前に更新されなかっ
た前記キャッシュ・スロットにおけるデータが再利用さ
れる場合(ホスト・アダプタ15(n)が、それととも
に検索オペレーションを実行したにすぎない場合に発生
するかもしれないことである)、前記キャッシュ・スロ
ットにおけるデータは、記憶装置22におけるデータに
対応するので、前記キャッシュ・スロットにおけるデー
タが更新された場合に、前記記憶コントローラ21
(m)は、キャッシュ・スロットと関連して非ステージ
ング・オペレーションを実行するだけでよいことが評価
されるであろう。
【0023】より特定的には、上述のシャガムの出願に
おいて記載されたとおり、検索オペレーション中は、起
動しているホスト・アダプタ15(n)のキャッシュ・
マネージャ16(n)は、前記検索されるべきデータが
記憶されている記憶装置22と関連するキャッシュ・イ
ンデックス・ディレクトリ32におけるキャッシュ・イ
ンデックス・テーブル32(d)に最初にアクセスし、
特に、キャッシュされたフラグの状態から、前記トラッ
クからのデータが、キャッシュ・メモリにおけるキャッ
シュ・スロット31(s)にキャッシュされるのかを決
定するために、シリンダ記述子36(c)のトラック記
述子36(c)(t)にアクセスする。前記トラックか
らのデータが、キャッシュ・スロット31(s)にキャ
ッシュされることを、前記キャッシュされたフラグが示
す場合、前記キャッシュ・マネージャ16(n)は、前
記キャッシュ・スロット・ポインタ38(t)を使用し
て、前記データがキャッシュされる特定のキャッシュ・
スロット31(s)を識別し、及び要求されたデータを
前記キャッシュ・スロット31(s)から検索する。
【0024】その一方で、前記キャッシュ・マネージャ
16(n)が前記キャッシュされたフラグから、前記ト
ラックからのデータがキャッシュ・スロット31(s)
にキャッシュされていないことを決定する場合、それ
は、検索されるべきデータを保守する記憶装置22のた
めの記憶コントローラ21(m)を使用可能にするため
のステージ要求を生成し、前記データ記憶装置21
(m)のために、前記ステージ要求待ち行列に前記ステ
ージ要求をロードし、及び記憶コントローラ21(m)
に、ステージ要求が、前記ステージ要求待ち行列にロー
ドされたことを通知する。前記通知を受信した後、ある
点において、記憶コントローラ21(m)は、前記ステ
ージ要求を検索し、及びそれに応答してステージング・
オペレーションを実行する。前記ステージング・オペレ
ーションを実行する時に、記憶コントローラ21(m)
は、前記データを前記要求されたトラックから検索し、
上述のキャッシュ・スロット置き換えリストを使用して
キャッシュ・スロット31(s)を選択し、前記データ
をキャッシュ・ストッロ31(s)にロードし、及び前
記トラックからのデータがキャッシュ・スロット31
(s)にあることを示すために、記憶装置22に関連す
るキャッシュ・インデックス・テーブル32(d)にお
けるトラック記述子36(c)(t)を更新し、特に前
記キャッシュされたフラグを設定し、及び前記キャッシ
ュ・スロット・ポインタにおける前記キャッシュ・スロ
ットに、ポインタをロードする。
【0025】記憶コントローラ21(m)がステージン
グ・オペレーションを完了した後、それは、ステージン
グが完了したメッセージを、前記ステージ要求を発行し
たホスト・コンピュータ11(n)に関連したキャッシ
ュ・マネージャ・メモリ33におけるステージ完了リス
トにロードし、及びステージングが完了したメッセージ
がそこにロードされたことを、ホスト・コンピュータの
キャッシュ・マネージャ16(n)に通知する。前記通
知を受信した後、ある点において、前記ホスト・コンピ
ュータのキャッシュ・マネージャ16(n)は、上述の
とおり、前記検索要求と関連して実行されるオペレーシ
ョンを反復することができ、特に検索されるべきデータ
が記憶される記憶装置22と関連したキャッシュ・イン
デックス・ディレクトリ32におけるキャシュ・インデ
ックス・テーブル32(d)にアクセスし、特に、前記
キャッシュされたフラグの状態から、前記トラックから
のデータがキャッシュ・メモリにおけるキャッシュ・ス
ロット31(s)にキャッシュされているかを決定する
ために、もしそうであれば、キャッシュ・スロット・ポ
インタ38(t)を使用して、前記データがキャッシュ
される特定のキャッシュ・スロット31(s)を識別す
るため、及び前記要求されるデータをキャッシュ・スロ
ット31(s)から検索するために、シリンダ記述子3
6(c)のトラック記述子36(c)(t)にアクセス
する。この点においては、前記キャッシュされたフラグ
は、前記トラックからのデータがキャッシュ・スロット
31(s)にキャッシュされることを示すので、前記ホ
スト・アダプタのキャッシュ・マネージャ16(n)
は、前記検索オペレーションを完了させることができる
であろう。
【0026】類似のオペレーションが記憶オペレーショ
ン中に発生し、そこでは特定のトラックにおけるデータ
が更新され、更新されるべきデータを含むキャッシュ・
スロット31(s)の識別を、置き換えリストから削除
し、及びそれを保留書き込みリストにロードする追加の
オペレーションを伴う。記憶オペレーション中に、起動
しているホスト・アダプタ15(n)のキャッシュ・マ
ネージャ16(n)は、更新されるべきデータが記憶さ
れている記憶装置22に関連したキャッシュ・インデッ
クス・ディレクトリ32におけるキャッシュ・インデッ
クス・テーブル32(d)に最初にアクセスし、特に前
記キャッシュされたフラグから、前記トラックからのデ
ータが、前記キャッシュ・メモリにおけるキャッシュ・
スロット31(s)にキャッシュされるかを決定するた
めにシリンダ記述子36(c)のトラック記述子36
(c)(t)にアクセスする。前記トラックからのデー
タがキャッシュ・スロット31(s)にキャッシュされ
ていることを前記キャッシュされたフラグが示す場合、
キャッシュ・マネージャ16(n)は、キャッシュ・ス
ロット・ポインタ38(t)を使用して、前記データが
キャッシュされる特定のキャッシュ・スロット31
(s)を識別し、及び前記更新されたデータをキャッシ
ュ・スロット31(s)にロードする。さらに、ホスト
・アダプタのキャッシュ・マネージャ16(n)は、選
択されたキャッシュ・スロット31(s)の識別を、前
記置き換えリストから前記保留書き込みリストへと移す
ので、前記キャッシュ・スロット31(s)は、非ステ
ージング・オペレーションが、キャッシュ・スロット3
1(s)と関連して実行されるまで再利用されない。
【0027】その一方で、キャッシュ・マネージャ16
(n)が、前記キャッシュされたフラグ36(c)
(t)から、前記トラックからのデータがキャッシュ・
スロット31(s)にキャッシュされていないと決定す
る場合、それは、検索されるべきデータを保守する記憶
装置22のために、記憶コントローラ21(m)を使用
可能にするためにステージ要求を生成し、前記ステージ
要求を、データ記憶装置21(m)に対してステージ要
求待ち行列にロードし、及びステージ要求が前記ステー
ジ要求待ち行列にロードされたことを記憶コントローラ
21(m)に通知する。前記通知を受信した後、ある点
で、記憶コントローラ21(m)は、前記ステージ要求
を検索し、及びそれに応答してステージング・オペレー
ションを実行する。ステージング・オペレーションを実
行する時に、記憶コントローラ21(m)は、前記デー
タを前記要求されたトラックから検索し、キャッシュ・
スロット31(s)を選択し、前記データをキャッシュ
・スロット31(s)にロードし、及び前記トラックか
らのデータがキャッシュ・スロット31(s)にあるこ
とを示すために、記憶装置22と関連したキャッシュ・
インデックス・テーブル32(d)におけるトラック記
述子36(c)(t)を更新し、特に前記キャッシュさ
れたフラグを設定し、及び前記キャッシュ・スロットへ
のポインタを前記キャッシュ・スロット・ポインタにロ
ードする。
【0028】記憶コントローラ21(m)が前記ステー
ジング・オペレーションを完了した後、それは、前記ス
テージング要求を発行したホスト・コンピュータ11
(n)に関連したキャッシュ・マネージャ・メモリ33
におけるステージング完了待ち行列に、ステージング完
了メッセージをロードし、及びステージング完了メッセ
ージがそこにロードされたことをキャッシュ・マネージ
ャ16(n)に通知する。前記通知を受信した後、ある
点において、キャッシュ・マネージャ16(n)は、上
述のとおり検索要求と関連して実行されるオペレーショ
ンを反復することができ、特に、検索されるべきデータ
が記憶されている記憶装置22に関連したキャッシュ・
インデックス・ディレクトリ32におけるキャッシュ・
インデックス・テーブル32(d)にアクセスし、特
に、前記キャッシュされたフラグの状態から、前記トラ
ックからのデータが前記キャッシュ・メモリにおけるキ
ャッシュ・スロット31(s)にキャッシュされること
を決定するために、及びもしそうであれば、キャッシュ
・スロット・ポインタ38(t)を使用して、前記デー
タがキャッシュされている特定のキャッシュ・スロット
31(s)を識別するため、及び前記要求されたデータ
をキャッシュ・スロット31(s)から検索するため
に、シリンダ記述子36(c)のトラック記述子36
(c)(t)にアクセスする。この点において、前記キ
ャッシュされたフラグは、前記トラックからのデータが
キャッシュ・スロット31(s)にキャッシュされてい
ることを示すので、キャッシュ・マネージャ16(n)
は、上述のとおり、記憶オペレーションを完了させるこ
とができるであろう。
【0029】上述のとおり、データ記憶装置のキャッシ
ュ・マネージャ23(m)はまた、本来の記憶装置22
に書き戻されるべき更新されたデータを含むキャッシュ
・スロット31(s)及び個別のキャッシュ・スロット
31(s)にキャッシュされたデータを有するトラック
を識別するために、前記保留書き込みリストを使用して
非ステージング・オペレーションも実行する。キャッシ
ュ・スロット31(s)が非ステージングされる時、そ
の点においては、キャッシュ・スロット31(s)にお
けるデータは、個別の記憶装置22上にあるデータに対
応するので、非ステージング・オペレーションを実行す
るデータ記憶装置のキャッシュ・マネージャ23(m)
は、前記保留書き込みリストから前記キャッシュ・スロ
ットの識別を削除し、それを置き換えリストに戻すの
で、キャッシュ・スロット31(s)は削除されること
ができる。しかしながら、ホスト・コンピュータのキャ
ッシュ・マネージャ16(n)は、スロットにキャッシ
ュされたトラックにあるデータがステージングされた後
に、及びそれが非ステージングされる前に、同じキャッ
シュ・スロット31(s)におけるデータと関連して多
くの検索オペレーション及び/又は記憶オペレーション
を実行してもよいことが評価されるであろうし、それゆ
えに、キャッシュ・スロット31(s)におけるデータ
は、それが非ステージングされる前に何回も更新される
ことができる。さらに、キャッシュ・スロット31
(s)が非ステージングされた後に、キャッシュ・スロ
ット31(s)がステージング・オペレーション中に再
利用される前に、記憶オペレーション中にもそれは更新
されてよい。しかしながら、それが発生する時は、上述
のとおり、ホスト・コンピュータのキャッシュ・マネー
ジャ16(m)は、キャッシュ・スロットの識別を置き
換えリストから削除し、及びそれを書き込み保留リスト
に記憶オペレーションの一部として配置するので、キャ
ッシュ・スロット31(s)は、それが再利用される前
に、他の非ステージング・オペレーションにかけられる
であろう。このように、特定のキャッシュ・スロット3
1(s)は、再利用されることなく、同じ記憶装置2
2、シリンダ及びトラックに対してキャッシュされたデ
ータとともに、何回も非ステージングされてもよい。
【0030】本発明は、比較的高密度のデータを記憶
し、及びそうでなければ記憶される必要がある情報の量
を低減させることができる記憶装置の使用に効果的に対
処するために、個別のトラック記述子36(c)(t)
(図2参照)におけるトラック記述子情報をコンパクト
に提供するための配列を提供する。図3は、本発明の一
つの実施形態と関連した使用について、参照番号36
(c)(t)によって識別されるトラック記述子の構造
を示している。
【0031】図3を参照すると、トラック記述子36
(c)(t)は、ヘッダ40及び本体セクション41を
含む。ヘッダ40は、前記トラックがキャッシュ・メモ
リ31にキャッシュされているかについての情報、及び
もしそうであれば前記トラックがキャッシュされている
キャッシュ・スロット31(s)へのポインタを含む、
前記トラックについての情報を含む。さらに、前記ヘッ
ダ40は、他のデジタル・データ記憶システム上のトラ
ックについてのミラー・コピー(mirror copies)が存
在するかを示す。その一方で、前記セクタCRCセクシ
ョン(sector CRCsection)41は、トラックにおける
個別のレコードについてのレコードに特化した基本情報
を含む。一つの実施形態において、前記レコードは、例
えば一つ以上のブロック又はセクタ(一般的には「セク
タ」と称される)等、固定された長さであり、及び各ト
ラックは予め決められた数の前記セクタを具備する。
【0032】より特定的には、ヘッダ40は、トラック
/キャッシュ情報フラグ・フィールド50、テーブルC
RCフィールド51、拡張フォーマット・コード・フィ
ールド52、ミラー・フラグ・レコード・フラグ53、
及びキャッシュ・スロット・ポインタ・フィールド54
を含む、図3に記載の多くのフラグ及びフィールドを含
む。トラック/キャッシュ情報フラグ・フィールド50
は、キャッシュ・フラグにおけるトラック、先取りされ
たトラック・フラグ、トラック書き込み保留フラグ、及
び永久にキャッシュされたトラック・フラグを含むいく
つかのフラグ(個別には図示されていない)を含み、そ
のすべては、前記トラックに関連したキャッシュを管理
する時に使用される。前記キャッシュ・フラグにおける
トラックは、設定される場合、前記トラックがキャッシ
ュ・メモリ31に現在キャッシュされていることを示
す;それが発生する時、キャッシュ・スロット・ポイン
タ・フィールド54は、前記トラックがキャッシュされ
るキャッシュ・スロット31(s)を識別するポインタ
を含む。前記先取りトラック・フラグは、設定される場
合、ホスト・アダプタのキャッシュ・マネージャ25
(n)によってそうするように要求される前に、データ
記憶装置のキャッシュ・マネージャ23(m)が、前記
トラックを先取りし、及びそれをキャッシュ・メモリ3
1にロードしたことを示す。一般的には、キャッシュ・
マネージャ23(m)は、ホスト・アダプタのキャッシ
ュ・マネージャ25(n)が、一連の先行するトラック
に対して一連のステージング・オペレーションを開始す
る場合、特定のトラックを先取りしてもよく、それは前
記関連するホスト・コンピュータ11(n)によって処
理されるプログラムが、特定のトラックがステージング
されることも要求するであろうことを示しうる。
【0033】トラック/キャッシュ情報フラグ・フィー
ルド50の前記永久にキャッシュされたトラック・フラ
グは、前記トラックがキャッシュ・スロット31(s)
に永久にキャッシュされるべきであり、及び上書きされ
るべきでない場合に設定される。ホスト・コンピュータ
のキャッシュ・マネージャ25(n)は、前記関連した
ホスト・コンピュータによって処理されているプログラ
ムが、前記トラックにおけるレコードに頻繁にアクセス
すると思われる場合に、トラックが永久にキャッシュさ
れることを要求してもよい。
【0034】前記トラック書き込み保留フラグは、前記
トラックにおける情報が、ホスト・コンピュータ11
(n)によって更新されたこと、及びデータ記憶装置2
0(m)によって非ステージングされる必要があること
を示すために使用される。非ステージング・オペレーシ
ョンが実行されるべきであることを示すために、前記書
き込み保留フラグが設定される一方で、前記トラックが
キャッシュされるキャッシュ・スロット31(s)は、
非ステージング・オペレーションが完了するまで、他の
トラックに対しては使用されない。永久にキャッシュさ
れたトラック・フラグも設定される場合、非ステージン
グ・オペレーションの後で、キャッシュ・スロット31
(s)が他のトラックに対して使用されず、代わりに前
記トラックが、永久にキャッシュされたトラック・フラ
グが設定されるかぎり、キャッシュ・スロット31
(s)に残るであろうことは、評価されるであろう。
【0035】トラック記述子36(c)(t)のテーブ
ルCRCフィールド51は、トラック記述子36(c)
(t)に対する巡回冗長検索(cyclical redundancy ch
eck)(CRC)値に対応するCRC値を記憶する。前
記CRC値は、他のフィールド50、及び52乃至54
及び本体セクション41における情報から、便利なCR
Cアルゴリズムを使用して生成されることができ、及び
前記フィールド50及び52乃至54及び前記本体セク
ション41における情報を検査するために使用されるこ
とができる。
【0036】拡張フォーマット・コード・フィールド5
2は、前記トラックに記憶されたレコードに対する複数
の拡張フォーマット定義の一つを識別するために使用さ
れることができ、及び本体セクション41はさらに、前
記レコードについてのレコード・フォーマット情報を含
む。本発明の一つの実施形態に使用されるレコード・フ
ォーマット定義の詳細は、以下に記載される。一つの実
施形態において、16のレコード・フォーマットが定義
され、その場合、拡張フォーマット・コード・フィール
ド52は、4ビットで対処されることができる。キャッ
シュ・マネージャ23(m)は、トラックについてのト
ラック記述子36(c)(t)の本体セクション41に
おいて、上述のとおり、個別のトラックについてのレコ
ード・フォーマット定義を使用して、ステージング・オ
ペレーション中に検索されるべきトラック上の特定のレ
コードの場所及びそれらが記憶されるべきキャッシュ・
メモリ31における特定のキャッシュ・スロット31
(s)における場所を識別することができる。同様に、
非ステージング・オペレーション中に、キャッシュ・マ
ネージャ23(m)は個別のトラックについてのレコー
ド・フォーマット定義を使用して、更新された及び非ス
テージングされるべきレコードのキャッシュ・スロット
における場所及び非ステージング・オペレーション中に
それらが記憶されるべきトラックにおける対応する場所
を識別することができる。さらに、ホスト・アダプタ2
4(n)は、本体セクション41における上述の個別の
トラックについてのレコード・フォーマット定義を使用
して、キャッシュ・スロット31(s)に記憶されるよ
うに、検索オペレーション中に検索されるべきであり、
及びそこにおいては、データは書き込みオペレーション
中に記憶されるべきである前記トラックからのレコード
の場所を配置することができる。
【0037】ミラー・フラグ・フィールド53は、前記
トラックが一つ以上の他のデジタル・データ記憶サブシ
ステムにミラーされたか、もしそうであれば、前記ミラ
ーは最新のものであるかを示す一つ以上のフラグを含
む。一つの実施形態において、前記デジタル・データ記
憶サブシステム12は、互いにミラーを提供するように
機能するデジタル・データ記憶サブシステムのクラスタ
における4つのうちの1つであり、及びミラー・フラグ
・フィールド53におけるフラグは、前記デジタル・デ
ータ記憶サブシステムのいずれに前記トラックがミラー
されたのか、及び前記デジタル・データ記憶サブシステ
ムの各々におけるトラックの更新状態の両方を示す。前
記デジタル・データ記憶サブシステムは、ミラー・フラ
グ53を使用して、トラックがミラーされた場合に、前
記ミラーのすべてが更新され及び同期された状態で保守
されているかを検査することができる。
【0038】上述のとおり、本体セクション41は、前
記トラックにおけるレコードについての拡張フォーマッ
ト定義を含む。一つの実施形態において、16の拡張フ
ォーマット定義が定義され、特定の拡張フォーマット定
義が、トラック記述子36(c)(t)の拡張フォーマ
ット・コード・フィールド32によって識別されるトラ
ックと関連して使用される。一つの実施形態において、
拡張フォーマット定義のすべては、8バイト長である。
拡張フォーマット定義の各々は、以下に記述される: (i)同等レコード・フォーマット定義であって、そこ
ではすべてのレコードのすべてのカウント、キー及びデ
ータ・フィールドは同じサイズである。同等レコード・
フォーマット定義において、前記本体セクションは、前
記トラックに記憶されたレコードの数を識別する1バイ
トのレコード・カウント・フィールド(record count f
ield)と、及び個別のレコードのキー及びデータ・フィ
ールドのサイズを識別するための7バイトのフィールド
を有する。
【0039】(ii)特殊ケース定義(special case def
inition)を有する同等レコードである。特殊ケース定
義を有する同等レコードにおいては、4つのバージョン
(version)があり、本体の第二のバイトで記憶された
値によって識別される。すべてのバージョンにおいて、
第一のバイトは、トラックに記憶されたレコードの数を
識別する、1バイト・レコード・カウント・フィールド
と、前記バージョンを識別する1バイト・バージョン・
フィールドと、1バイト特殊レコード識別子フィールド
と、2バイトの新データ長フィールドと及び前記第一の
レコードのキー並びにデータ・フィールドのサイズを識
別する3バイト・フィールドとを具備する。
【0040】(A)第一のバージョンにおいては、前記
トラック上に記憶されたすべてのレコードは、特殊レコ
ード識別子フィールドによって識別されるレコードを除
いて、3バイト・キー並びにデータ・フィールド・サイ
ズ・フィールドで特定されたサイズのキー及びデータ・
フィールドを有し、及び特殊レコード識別子フィールド
によって識別されるレコードは、新しいデータ長フィー
ルドで識別されたデータ・フィールド・サイズを有す
る;このバージョンは、一つを除くすべてのレコード
が、同じキー及びデータ長を有する場合に有用である; (B)第二のバージョンにおいては、前記トラック上に
記憶されたすべてのレコードは、特殊レコード識別子フ
ィールド及びその後の次のレコードによって識別される
レコードを除いて、3バイト・キー並びにデータ・フィ
ールド・サイズ・フィールドで特定されるサイズのキー
及びデータ・フィールドを有し、及び特殊レコード識別
子フィールドによって識別され、新しいデータ長フィー
ルド及びその後の次のレコードで識別されるデータ・フ
ィールド・サイズを有するレコードは、キー・フィール
ドを有さず、及びデータ長がゼロである;このバージョ
ンは、一つを除くすべてのレコードが同じキー及びデー
タ長を有する場合に有用であり、及び前記レコードがそ
の後「フィールドの終端(end of field)」として動作
する; (C)第三のバージョンにおいては、前記特殊レコード
識別子フィールドによって識別されたレコードまでの、
前記トラック上に記憶されたレコードは、3バイト・キ
ー及びデータ・フィールド・サイズ・フィールドで特定
されたサイズのキー及びデータ・フィールドを有し、及
び前記特殊レコード識別子フィールドによって識別され
るレコードは、キー・フィールドを有さず、データ長は
ゼロであり、それによって「フィールドの終端」として
動作し、及びその後、前記レコードは、新しいデータ長
フィールドにおいて特定されたデータ長を有する; (D)第四のバージョンにおいては、前記トラック上に
記憶されたすべてのレコードは、前記特殊レコード識別
子フィールド及びその後の次のレコードによって識別さ
れたレコードを除いて、3バイト・キー及びデータ・フ
ィールド・サイズ・フィールドで特定されたサイズのキ
ー及びデータ・フィールドを有し、及び前記特殊レコー
ド識別子フィールドによって識別されたレコード及びに
その後のレコードは、新しいデータ長フィールドで識別
される同じキー・フィールド・サイズ及びデータ・フィ
ールド・サイズを有する; (iii)3つまでのレコードに対処する定義であり、そ
のデータ長は、2バイトまでのバイナリ・コード化され
た値によって特定されることができる。この定義は、6
4K(K=1024)までのデータ長を有するレコード
に対処する。この定義において、本体セクション41に
おける第一のバイトは、トラックにおけるレコードの数
を識別するレコード・カウント・フィールドと、及び3
つの2バイト・データ長フィールドを含む。
【0041】(iv)2バイトまでのバイナリ・コード化
された値によって特定されることができるデータ長を有
する4つのレコードに対処する定義である。この定義
は、64K(K=1024)までのデータ長を有するレ
コードに対処する。この定義において、本体セクション
41は、4つの2バイト・データ長フィールドを含む。
この定義で、前記トラック上に記憶されたレコードの数
は4であるので、レコード・カウント・フィールドは必
要ない。
【0042】(v)前記レコードの一つと関連したレコ
ード数の変化に対処する定義である。この定義におい
て、本体セクション41における第一のバイトは、前記
トラックにおけるレコードの数を識別するレコード・カ
ウント・フィールドを含む。前記バイトのうち4つは、
レコード数及びキー長値(1バイトずつ)及び前記トラ
ック上に記憶された第一のレコードについてのデータ長
を含む。他のバイトは、レコード数格差値(record num
ber differential value)を含む。
【0043】(vi)偶数及び奇数の番号のレコードが、
二つの異なるデータ長に交互になる偶数/奇数フォーマ
ット定義である。この定義において、本体セクション4
1における第一のバイトは、前記トラックにおけるレコ
ードの数を識別するレコード・カウント・フィールドを
含み、及びそれに続くバイトは、2つの2バイト・デー
タ長フィールドを具備し、前記第一のデータ長フィール
ドは、偶数番号のレコードのデータ長を識別し、及び前
記第二のデータ長フィールドは、奇数番号のレコードの
デーダ長を識別する。
【0044】(vii)一つ、すなわち第二のレコードを
除く、前記トラックに記憶されたすべてのレコードが、
予め決められた標準フォーマットである場合に使用され
るためのフォーマット定義である。この定義において、
本体セクション41における第一のバイトは、前記トラ
ックにおけるレコードの数を識別するレコード・カウン
ト・フィールド、及びトラックにおける第二のレコード
についてのレコード数、キー長、及びデータ長値を含む
レコード数、キー長及びデーダ長フィールドを含む。
【0045】(viii)2バイト・データ長値で対処され
ることができる同じキー長及びデータ長を有する3つま
でのレコードを有するトラックとともに使用するための
フォーマット定義である。この定義において、本体セク
ション41における第一のバイトは、前記トラックにお
けるレコードの数を識別するレコード・カウント・フィ
ールドを含み、第二のバイトは前記レコードにおけるキ
ーの長さを識別するキー長フィールドを含み、及び次の
6バイトは、各々が前記レコードの一つについての長さ
の値を含む、3つの2バイト長フィールドを含む。一つ
の実施形態において、前記長フィールドは、それら(前
記レコード)が前記トラックに記憶される順番とは逆の
順番で、個別のレコードについての長さを識別する。
【0046】(ix)予め決められた最大数のレコード
(ある実施形態においては、24レコードまで)が記憶
されるトラックとの使用のためのフォーマット定義であ
って、前記レコードは二つの異なるデータ長を有する。
どちらの場合でも、データ長は、例えば2バイト・デー
タ長フィールドによって特定されるべきである。この定
義において、本体セクション41における第一のバイト
は、前記トラック上のレコードの数を識別するレコード
・カウント・フィールドを含む。次の3バイトは、一連
のビットを具備するマスク・フィールド(mask field)
を含み、連続したビットは、前記トラック上の連続した
レコードと関連している;B(i)(指数「i」は1か
ら24まで拡大する)が、前記ビット・マスクの「第i
番目の」ビットであることを表す場合、前記ビットは、
(前記レコードが存在する場合)、前記トラック上の
「第i番目の」レコードと関連するだろう。次の4バイ
トは、2つの2バイト・データ長フィールドを含む。前
記ビット・マスクにおける前記「i番目の」ビットB
(i)が設定される場合、前記関連する「i番目の」レ
コードのデータ・フィールドの長さは、データ長フィー
ルドの一つによって特定され、及び前記ビット・マスク
における「第i番目の」ビットB(i)がクリアされる
場合、関連する「第i番目の」レコードのデータ・フィ
ールドの長さは、前記データ長フィールドの他方によっ
て特定されるだろう。
【0047】(x)3つの連続するレコードが記憶され
ているトラックとともに使用するためのフォーマット定
義であって、各連続の中のレコードはすべて、同じ長さ
のデータ・フィールドを有する。この定義において、本
体セクション41における第一のバイトは、前記トラッ
ク上のレコードの数を識別するレコード・カウント・フ
ィールドを含む。次のバイトは、二つの部分、すなわち
「ニブル(nibble)」を含み、その各々は、前記トラッ
ク上に記憶されたレコードの一つを識別するレコード・
ポインタ値を含む。次の6バイトは、3つの2バイト・
データ長フィールドを含む。第一のデータ長フィールド
は、第一のレコード・ポインタ値によって識別されるレ
コードまでの、しかしそれを含まない前記トラック上の
第一のレコードから、前記レコードのデーダ・フィール
ドの長さを識別するデータ長値を含み、次のデータ長フ
ィールドは、第二のレコード・ポインタ値によって識別
される前記レコードまでの、しかしそれを含まない前記
トラック上の第一のレコード・ポインタ値によって識別
されるレコードからのレコードのデータ・フィールドの
長さを識別するデータ長値を含み、及び最後の次のデー
タ長フィールドは、前記トラック上の第二のレコード・
ポインタ値から前記トラック上の最後のレコードまでに
よって識別される前記レコードからのレコードのデータ
・フィールドの長さを識別するデータ長値を含む。
【0048】(xi)5つのレコードが記録されたトラッ
クとともに使用するためのフォーマット定義であって、
その長さは、本体セクション41の個別のバイトの部分
によって対処されることができる。一つの実施形態にお
いて、本体セクションの64ビットを含む8バイトは、
4つの13ビットのフィールドと一つの12ビットのフ
ィールドに分割され、連続するフィールドは、前記トラ
ック上の連続するレコードについてのデータ長値を含
む。13ビットのフィールドが、8K(K=1024)
バイトまでのデータ長を特定することができ、及び12
ビットのフィールドが、4Kバイトまでのデータ長を特
定することができるということは、評価されるであろ
う。
【0049】(xii)各レコードが、前記定義(xi)に
よって特定されたものの2倍のデータ長を有する点を除
いて、上述の定義(xi)と類似したフォーマット定義で
ある。このように、すべてのレコードが、2で割れる数
に対応した長さを有するということが評価されるであろ
う。
【0050】(xiii)12ビットのデータ長フィールド
によって特定された、最後のレコードの長さが、12ビ
ット・データ長フィールドによって特定されたものの4
倍になるであろう点を除いて、上述の定義(xi)及び
(xii)と類似したフォーマット定義である。このよう
に、第一の4つのレコードが、2で割れる数に対応した
長さを有すること、及び最後のレコードが4で割れる数
に対応した長さを有することが評価されるであろう。
【0051】(xiv)すべての前記レコードの長さが、
個別のデータ長フィールドによって特定されるものの4
倍である点を除いては、上述の(xi)乃至(xiii)の定
義に類似したフォーマット定義である。このように、前
記レコードは、4で割れる数に対応した長さを有するこ
とが評価されるであろう。
【0052】(xv)ほぼ同じデータ長を有する5つのレ
コードが記録されたトラックとともに使用されるための
フォーマット定義である。この定義において、本体セク
ションの第一の2バイトは、前記トラック上に記憶され
た第一のレコードについてのデータ長を識別するデータ
長値を含む。次の4バイトは、前記トラック上に記憶さ
れた他の4つのレコードについてのデータ長を識別する
データ長値の低位の部分を含む。前記トラック上のレコ
ードについての他方についてのデータ長を識別するデー
タ長値の高位の部分は、本体セクションにおける第二の
バイトにおいて特定されるとおり、第一のレコードにつ
いてのデータ長値の高位部分と、及び本体セクション4
1における最後の2バイトの個別の部分から導出され
る。一つの実施形態において、本体セクション41の最
後の2バイトは、4つのニブルN(j)(指数「j」
は、1乃至4の整数である)を具備し、個別のニブルN
(j)における値は、8に、第一のレコードについての
データ長値の高位部分と個別のレコードR(j+1)の
データ長値の高位の部分の間の差を足したものに対応す
る。このように、個別のレコードR(j+1)について
のデータ長値の高位部分は、8に、第一のレコードにつ
いてのデータ長値の高位部分とニブルN(j)に含まれ
る値との間の差を足したものに対応する。
【0053】(xvi)5つのレコードが記録されている
トラックとともに使用するためのフォーマット定義であ
って、そこでは前記レコードのうちの2つの、データ長
値の高位バイトは一様にゼロである。この定義におい
て、前記レコードのうちの2つの、データ長値の高位バ
イトが一様にゼロであるレコードは、ア・プリオリ(ap
riori)として公知であり、及び一つの実施形態におい
て、それらは、第二及び第四のレコードを具備する。そ
のような場合、本体セクション41の第一の6バイト
は、それぞれ第一、第三及び第五のレコードについての
データ長値を含む3つの2バイト・データ長フィールド
を具備し、及び最後の2バイトは、それぞれ第二及び第
四のレコードについてのデータ長値を含む2つの1バイ
ト・データ長フィールドを具備する。
【0054】本発明は、多くの効果を提供する。特に、
大きなトラック記述子36(c)(t)を対応して要求
することなく、大多数のレコードにおける大量の情報を
それぞれが記憶することができるトラックを有する記憶
装置22に記憶されたレコードについてのフォーマット
情報に効率的に対応するために、様々なトラックについ
てのフォーマット情報が効率的に記憶されるデジタル・
データ記憶サブシステムを提供する。
【0055】図1乃至3を参照した上述のデジタル・デ
ータ記憶サブシステムには、多くの変更がされてもよい
ことが評価されるであろう。例えば、記憶サブシステム
12は、複数のホスト・コンピュータ11(n)と接続
されているものとして説明されてきたが、前記記憶サブ
システムは、単一のホスト・コンピュータ11(n)の
みと接続されて使用されてもよいことが評価されるであ
ろう。さらに、前記記憶サブシステム12は、複数のデ
ータ記憶装置20(m)及び複数の記憶装置22を含む
ものとして説明されてきたが、記憶サブシステム12
は、単一のデータ記憶装置及び単一の記憶装置を備えて
いてもよいことが評価されるであろう。
【0056】本発明に従ったシステムは、特殊ハードウ
ェア又は汎用コンピュータ・システムから、全体的ある
いは部分的に、又はそれらの組み合わせで構築されても
よく、それのどの部分も適切なプログラムによって制御
されてよいことが評価されるであろう。
【0057】前述の説明は、この発明の特定の実施形態
に限定されてきた。しかしながら、本発明の効果のいく
つか又はすべてを獲得しつつ、本発明に様々な変形及び
変更がなされてもよいことが明らかになるであろう。添
付の特許請求の範囲の目的は、これら及び本発明の本来
の精神と範疇の中に入るような変形及び変更を網羅する
ことである。
【0058】本発明に従ったシステムは、特殊ハードウ
ェア又は汎用コンピュータ・システムから、全体的ある
いは部分的に、又はそれらの組み合わせで構築されても
よく、それのどの部分も適切なプログラムによって制御
されてよい。あらゆるプログラムは、全体的又は部分的
に、従来の方法で前記システムの一部を具備し、あるい
は前記システム上に記憶されてもよく、又は従来の方法
で情報を転送するためのネットワーク又は他のメカニズ
ムを介して、全体的にあるいは部分的に前記システムに
提供されてもよい。さらに、前記システムは、前記シス
テムに直接接続され、又は従来の方法で情報を転送する
ためのネットワークあるいは他のメカニズムを介して、
前記システムに情報を転送してもよいオペレータ入力エ
レメント(operator input elements)(図示されてい
ない)を使用して、オペレータによって提供される情報
の手段によって操作され、及び/又は制御されてもよい
ことが評価されるであろう。
【0059】前述の説明は、この発明の特定の実施形態
に限定されてきた。しかしながら、本発明の効果のいく
つか又はすべてを獲得しつつ、本発明に様々な変形及び
変更がなされてもよいことが明らかになるであろう。添
付の特許請求の範囲の目的は、これら及び本発明の本来
の精神と範疇の中に入るような変形及び変更を網羅する
ことである。
【0060】新規の発明として特許を請求し、及びアメ
リカ合衆国特許証によって保護されることを望む内容
は、前述の通りである。
【図面の簡単な説明】
【図1】図1は、本発明に従って構築された記憶サブシ
ステムを含む、デジタル・コンピュータ・システムの機
能的ブロック図である。
【図2】図2は、図1に記載された記憶サブシステムの
オペレーション(operation)を理解するのに有用であ
るキャッシュ・メモリ及びキャッシュ・インデックス・
ディレクトリの編成を示す。
【図3】図3は、図2に記載されたキャッシュ・メモリ
において有用な記述子の構造を示しており、前記記述子
は、前記記憶サブシステムによって記憶された情報につ
いてのフォーマット情報を提供する。
【符号の説明】
10 デジタル・コンピュータ・システム 11 ホスト・コンピュータ 12 デジタル・データ記憶サブシステム 13 バス 15 ホスト・アダプタ 16 キャッシュ・マネージャ 20 データ記憶装置 21 記憶コントローラ 22 記憶装置 23 キャッシュ・マネージャ 24 ホスト・アダプタ 25 キャッシュ・マネージャ 30 共通メモリ・サブシステム 31 キャッシュ・メモリ 32 キャッシュ・インデックス・ディレクトリ 33 キャッシュ・マネージャ・メモリ
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) G11B 27/00 G11B 27/00 D 27/10 27/10 A (72)発明者 ハイム コピロヴィッツ アメリカ合衆国 マサチューセッツ州 02446ブルックリン コロンビア ストリ ート 9−2

Claims (20)

    【特許請求の範囲】
  1. 【請求項1】A. 一連のレコードを検索可能な状態に
    記憶するための少なくとも一つの記憶装置であって、前
    記レコードは、複数のフォーマット定義タイプの一つを
    具備するフォーマットで記憶されている前記記憶装置
    と; B. 前記記憶装置によって記憶された前記レコードの
    前記フォーマットを記述するための記述子を記憶するた
    めのメモリであって、前記記述子は、前記レコードが記
    憶される前記複数のフォーマット定義タイプの前記一つ
    を識別するフォーマット定義タイプ識別子と、及び前記
    レコードが記憶される前記複数のフォーマット定義タイ
    プの前記一つの中でフォーマット情報をさらに提供する
    特定のフォーマット情報とを含む前記メモリと;及び C. 前記記憶装置から前記レコードのいくつかを検索
    することに関連して、前記記述子における前記フォーマ
    ット定義タイプ識別子及び特定のフォーマット情報を使
    用するように構成された制御装置とを含むことを特徴と
    するデジタル・データ記憶システム。
  2. 【請求項2】前記記憶装置は、複数のトラックで編成さ
    れたレコードを記憶し、各トラックは一連の前記レコー
    ドを具備し、前記メモリは、各々が前記トラックの一つ
    と関連する複数の記述子を記憶し、各記述子は、それと
    関連するトラックにおける前記レコードのいくつかと関
    連する前記レコード・フォーマット・フラグのいくつか
    を含むことを特徴とする請求項1に記載のシステム。
  3. 【請求項3】予め決められたフォーマット特性は、前記
    トラックの間で相違してよいことを特徴とする請求項2
    に記載のシステム。
  4. 【請求項4】選択されたフォーマット属性は、前記トラ
    ックの間で相違してよいことを特徴とする請求項2に記
    載のシステム。
  5. 【請求項5】前記制御装置は、前記トラックのうちの選
    択されたものから検索されたレコードをキャッシュする
    ためのキャッシュを含み、各トラックと関連する前記記
    述子は、さらに前記トラックについての予め決められた
    キャッシュ情報を含むことを特徴とする請求項4に記載
    のシステム。
  6. 【請求項6】前記トラック記述子の少なくとも一つにつ
    いての前記予め決められたキャッシュ情報は、前記トラ
    ック記述子の前記少なくとも一つと関連する前記トラッ
    クが前記キャッシュの中にあることを示すキャッシュさ
    れた状態と、及び前記トラック記述子の前記少なくとも
    一つと関連する前記トラックが、前記キャッシュの中に
    はないことを示す他の状態とを有するキャッシュされた
    フラグを含むことを特徴とする請求項5に記載のシステ
    ム。
  7. 【請求項7】前記キャッシュは、複数のキャッシュ・ス
    ロットを含み、前記トラック記述子の前記少なくとも一
    つについての前記予め決められたキャッシュ情報はさら
    に、前記キャッシュされたフラグが、前記キャッシュさ
    れた状態を有する場合、前記トラックがキャッシュされ
    る前記複数のキャッシュ・スロットの前記一つを指すキ
    ャッシュ・スロット・ポインタを含むことを特徴とする
    請求項6に記載のシステム。
  8. 【請求項8】前記フォーマット定義タイプの一つは、同
    等レコード・フォーマット定義であり、前記レコードの
    すべてが同じサイズ及びフォーマットであり、前記フォ
    ーマット記述子は、前記同等レコード・フォーマット定
    義を識別するフォーマット定義タイプ識別子と、及び前
    記トラックに記憶されたレコードの数、並びに前記レコ
    ードのサイズを識別する特定のフォーマット情報を含む
    ことを特徴とする請求項1に記載のシステム。
  9. 【請求項9】前記フォーマット定義タイプの一つは、一
    つの例外フォーマット定義タイプを伴う同等レコードで
    あり、一つを除く前記レコードのすべてが同じサイズ及
    びフォーマットであり、前記フォーマット記述子は、一
    つの例外フォーマット定義タイプを伴う前記同等レコー
    ドを識別するフォーマット定義タイプ識別子と、及び前
    記トラックに記憶されたレコードの数を識別する特定の
    フォーマット情報と、及び前記レコードの前記一つ、一
    つを除く前記レコードのすべてのサイズ、並びに前記レ
    コードの前記一つのサイズを識別するレコード識別子を
    含むことを特徴とする請求項1に記載のシステム。
  10. 【請求項10】前記フォーマット定義タイプの一つは、
    二つの連続する例外定義タイプを伴う同等レコード・フ
    ォーマットであり、一つのレコードとその後の次のレコ
    ードを除くすべての前記レコードは、同じサイズ及びフ
    ォーマットであり、前記フォーマット記述子は、二つの
    連続する例外フォーマット定義タイプを伴う前記同等レ
    コードを識別するフォーマット定義タイプ識別子と、前
    記トラックに記憶されたレコードの数を識別する特定の
    フォーマット情報と、前記レコードの第一と、二つを除
    く前記レコードのすべてのサイズと、及び前記レコード
    の前記二つのサイズとを識別するレコード識別子とを含
    むことを特徴とする請求項1に記載のシステム。
  11. 【請求項11】前記フォーマット定義タイプの一つは、
    二つの連続する同等レコード・フォーマット定義タイプ
    であり、前記レコードの一つの一連は、同じサイズであ
    り、第二の一連のレコードは同じサイズであり、及び前
    記二つの連続における前記サイズは異なってもよく、前
    記フォーマット記述子は、前記二つの連続する同等レコ
    ード・フォーマット定義タイプを識別するフォーマット
    定義タイプ識別子と、前記トラックに記憶されたレコー
    ドの数を識別する特定のフォーマット情報と、及び前記
    第一の一連の最後のレコードを具備するレコード並びに
    個別の前記第一、第二の一連の各々における前記レコー
    ドの一つのサイズを識別するレコード識別子を含むこと
    を特徴とする請求項1に記載のシステム。
  12. 【請求項12】前記フォーマット定義タイプの一つは、
    二つの連続する同等レコード・フォーマット定義タイプ
    であり、前記レコードの一つの一連は、同じサイズであ
    り、第二の一連のレコードは同じサイズであり、及び前
    記二つの連続における前記サイズは異なってもよく、前
    記フォーマット記述子は、前記二つの連続する同等レコ
    ード・フォーマット定義タイプを識別するフォーマット
    定義タイプ識別子と、前記トラックに記憶されたレコー
    ドの数を識別する特定のフォーマット情報と、及び前記
    第二の一連の第一のレコードを具備するレコード並びに
    個別の前記第一、第二の一連の各々における前記レコー
    ドの一つのサイズを識別するレコード識別子とを含むこ
    とを特徴とする請求項1に記載のシステム。
  13. 【請求項13】前記フォーマット定義タイプの一つは、
    予め決められた数のレコード・フォーマット定義タイプ
    であり、前記記憶装置は、予め決められた数のレコード
    を記憶し、前記フォーマット記述子は、前記予め決めら
    れた数のレコード・フォーマット定義タイプを識別する
    フォーマット定義タイプ識別子を含み、及び前記特定の
    フォーマット情報は、前記レコードの各々のサイズを識
    別することを特徴とする請求項1に記載のシステム。
  14. 【請求項14】前記フォーマット定義タイプの一つは、
    別のレコード・サイズ・フォーマット定義タイプであ
    り、前記記憶装置は、別のサイズのレコードを記憶し、
    前記フォーマット記述子は、前記別のレコード・サイズ
    ・フォーマット定義タイプを識別するフォーマット定義
    タイプ識別子を含み、及び前記特定のフォーマット情報
    は、前記トラックに記憶されたレコードの数及び前記二
    つの個別のサイズを識別することを特徴とする請求項1
    に記載のシステム。
  15. 【請求項15】前記フォーマット定義タイプの一つは、
    一つのフォーマット定義タイプを除く同等標準レコード
    ・サイズであり、前記記憶装置は、一つを除くすべてが
    予め決められたサイズであるレコードを記憶し、前記フ
    ォーマット記述子は、一つのフォーマット定義タイプを
    除く前記同等標準レコード・サイズを識別するフォーマ
    ット定義タイプ識別子を含み、及び前記特定のフォーマ
    ット情報は、前記一つのレコードのサイズを識別するこ
    とを特徴とする請求項1に記載のシステム。
  16. 【請求項16】前記一つのレコードは、前記記憶装置に
    記憶された前記連続するレコードにおける前記レコード
    の予め決められた一つであることを特徴とする請求項1
    5に記載のシステム。
  17. 【請求項17】前記フォーマット定義タイプの一つは、
    予め決められた最大数のレコード・フォーマット定義タ
    イプであり、前記記憶装置は、予め決められた最大数の
    レコードを記憶し、前記フォーマット識別子は、前記予
    め決められた最大数のレコード・フォーマット定義タイ
    プを識別するフォーマット定義タイプ識別子を含み、及
    び前記特定のフォーマット情報は、レコードの数及び前
    記レコードの各々のサイズを識別することを特徴とする
    請求項1に記載のシステム。
  18. 【請求項18】前記フォーマット定義タイプの一つは、
    予め決められた最大数の、二つの異なるサイズのフォー
    マット定義タイプのレコードであり、前記記憶装置は、
    予め決められた最大数の、二つの異なるレコード・サイ
    ズのレコードを記憶し、前記フォーマット記述子は、前
    記予め決められた最大数の、二つの異なるサイズのフォ
    ーマット定義タイプのレコードを識別するフォーマット
    定義タイプ識別子を含み、及び前記特定のフォーマット
    情報は、レコードの数、前記二つのサイズ、前記記憶装
    置に記憶された前記連続するレコードの一つと各々が関
    連する一連のビットを具備するマスクを含み、各ビット
    は、二つの状態のうちの一つを有し、各状態は、前記サ
    イズの一つと関連しており、前記個別のビットの状態
    は、前記個別のレコードのための前記サイズの関連する
    一つを識別することを特徴とする請求項1に記載のシス
    テム。
  19. 【請求項19】前記フォーマット定義タイプの一つは、
    変化するサイズのフォーマット定義タイプを伴う予め決
    められた数であり、前記記憶装置は、予め決められた数
    のレコードを記憶し、各レコードはレコード・サイズを
    有しており、前記フォーマット記述子は、変化するサイ
    ズのフォーマット定義タイプを伴う前記予め決められた
    数を識別するフォーマット定義タイプ識別子を含み、及
    び前記特定の情報識別は、前記レコードの各々のサイズ
    と関連する各レコードと関連する値を含むことを特徴と
    する請求項1に記載のシステム。
  20. 【請求項20】前記フォーマット定義タイプの一つは、
    予め決められた数の、類似したサイズのフォーマット定
    義タイプのレコードであり、前記記憶装置は、予め決め
    られた数のレコードを記憶し、各レコードはレコード・
    サイズを有し、及び前記レコード・サイズは類似してお
    り、前記フォーマット記述子は、前記決められた数の、
    類似したサイズのフォーマット定義タイプのレコードを
    識別するフォーマット定義タイプ識別子を含み、及び前
    記特定のフォーマット識別は、前記レコードの一つのサ
    イズと関連するレコード・サイズ値と及び前記レコード
    ・サイズ値で処理される時に、他方のレコードの各々の
    サイズと関連するレコード・サイズ・デルタ値とを含む
    ことを特徴とする請求項1に記載のシステム。
JP2000291218A 1999-08-20 2000-08-21 記憶されたレコードについてのフォーマット情報を効率的に提供するためのディレクトリを含むデジタル・データ記憶サブシステム Pending JP2001154895A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/378,644 US6330655B1 (en) 1999-08-20 1999-08-20 Digital data storage subsystem including directory for efficiently providing formatting information for stored records
US09/378644 1999-08-20

Publications (1)

Publication Number Publication Date
JP2001154895A true JP2001154895A (ja) 2001-06-08

Family

ID=23493952

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000291218A Pending JP2001154895A (ja) 1999-08-20 2000-08-21 記憶されたレコードについてのフォーマット情報を効率的に提供するためのディレクトリを含むデジタル・データ記憶サブシステム

Country Status (3)

Country Link
US (1) US6330655B1 (ja)
EP (1) EP1079298A3 (ja)
JP (1) JP2001154895A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020528624A (ja) * 2017-07-27 2020-09-24 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation キャッシュ内にキャッシュされたストレージ内のトラックへの読み取りおよび書き込み要求を管理するためのコンピュータ・プログラム、システム、および方法

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6629199B1 (en) * 1999-08-20 2003-09-30 Emc Corporation Digital data storage system including directory for efficiently providing formatting information for stored records and utilization of a check value for verifying that a record is from a particular storage location
US6715030B1 (en) * 2000-06-09 2004-03-30 Storage Technology Corporation Apparatus and method for storing track layout information for performing quick write operations
US6487635B1 (en) 2000-11-29 2002-11-26 Emc Corporation Management of orphan tracks
US7089257B2 (en) * 2001-09-27 2006-08-08 Qualcomm, Inc. Method and system for providing a unified data exchange and storage format
US6782444B1 (en) * 2001-11-15 2004-08-24 Emc Corporation Digital data storage subsystem including directory for efficiently providing formatting information for stored records
US8850114B2 (en) 2010-09-07 2014-09-30 Daniel L Rosenband Storage array controller for flash-based storage devices
US10496989B2 (en) * 2016-02-22 2019-12-03 Bank Of America Corporation System to enable contactless access to a transaction terminal using a process data network
US10475030B2 (en) 2016-02-22 2019-11-12 Bank Of America Corporation System for implementing a distributed ledger across multiple network nodes
US10402796B2 (en) 2016-08-29 2019-09-03 Bank Of America Corporation Application life-cycle transition record recreation system
US10929545B2 (en) 2018-07-31 2021-02-23 Bank Of America Corporation System for providing access to data stored in a distributed trust computing network

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5535372A (en) * 1994-07-06 1996-07-09 International Business Machines Corporation Method and apparatus for efficient updating of CKD data stored on fixed block architecture devices
US5802557A (en) * 1996-03-18 1998-09-01 Emc Corp System and method for caching information in a digital data storage subsystem

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5421001A (en) * 1992-05-01 1995-05-30 Wang Laboratories, Inc. Computer method and apparatus for a table driven file interface
US5809435A (en) * 1996-12-23 1998-09-15 Emc Corporation Efficient index arrangement and method for identifying valid records stored on logging digital data storage subsystem
US6003114A (en) * 1997-06-17 1999-12-14 Emc Corporation Caching system and method providing aggressive prefetch
US6101588A (en) * 1997-09-25 2000-08-08 Emc Corporation Device level busy arrangement for mass storage subsystem including a plurality of devices

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5535372A (en) * 1994-07-06 1996-07-09 International Business Machines Corporation Method and apparatus for efficient updating of CKD data stored on fixed block architecture devices
US5802557A (en) * 1996-03-18 1998-09-01 Emc Corp System and method for caching information in a digital data storage subsystem

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020528624A (ja) * 2017-07-27 2020-09-24 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation キャッシュ内にキャッシュされたストレージ内のトラックへの読み取りおよび書き込み要求を管理するためのコンピュータ・プログラム、システム、および方法
US11263097B2 (en) 2017-07-27 2022-03-01 International Business Machines Corporation Using a track format code in a cache control block for a track in a cache to process read and write requests to the track in the cache
JP7055191B2 (ja) 2017-07-27 2022-04-15 インターナショナル・ビジネス・マシーンズ・コーポレーション キャッシュ内にキャッシュされたストレージ内のトラックへの読み取りおよび書き込み要求を管理するためのコンピュータ・プログラム、システム、および方法

Also Published As

Publication number Publication date
EP1079298A3 (en) 2003-06-18
US6330655B1 (en) 2001-12-11
EP1079298A2 (en) 2001-02-28

Similar Documents

Publication Publication Date Title
US7117314B2 (en) Storage device and method for data sharing
US8230194B2 (en) Storage device
US5806085A (en) Method for non-volatile caching of network and CD-ROM file accesses using a cache directory, pointers, file name conversion, a local hard disk, and separate small database
JP5198294B2 (ja) 時間的に近接して記憶システムに書き込まれたデータユニットを示すコンテンツアドレスの生成方法およびその装置
JP4799936B2 (ja) 条件別スナップショット取得方法及びシステム
US6003114A (en) Caching system and method providing aggressive prefetch
US6275897B1 (en) Remote cache utilization for mirrored mass storage subsystem
JP2002244817A (ja) ミラーリング・エージェント
US6260109B1 (en) Method and apparatus for providing logical devices spanning several physical volumes
JP2002082775A (ja) 計算機システム
US20110125950A1 (en) Systems and methods for performing deduplicated data processing on tape
US7032093B1 (en) On-demand allocation of physical storage for virtual volumes using a zero logical disk
US6782444B1 (en) Digital data storage subsystem including directory for efficiently providing formatting information for stored records
KR100443320B1 (ko) 메모리 저장 장치를 관리하기 위한 시스템 및 방법과, 컴퓨터 판독가능한 기록 매체
JP2001154895A (ja) 記憶されたレコードについてのフォーマット情報を効率的に提供するためのディレクトリを含むデジタル・データ記憶サブシステム
US6629199B1 (en) Digital data storage system including directory for efficiently providing formatting information for stored records and utilization of a check value for verifying that a record is from a particular storage location
US6029229A (en) Digital data storage subsystem including directory for efficiently providing formatting information for stored records
US5900009A (en) System and method for accessing records in a cache slot which are associated with a current owner storage element or at least one previous owner storage element
US6842843B1 (en) Digital data storage subsystem including arrangement for increasing cache memory addressability
US5802557A (en) System and method for caching information in a digital data storage subsystem
JPH06175894A (ja) データ処理システムの非特殊データ検索方法とそのシステム
JP2005215940A (ja) ストレージシステム、サーバ装置及び先行コピーデータ生成方法
US6594726B1 (en) Digital data storage subsystem including arrangement for efficiently controlling fast write storage operation
EP0665499A2 (en) Hierarchic data storage system
US7313656B1 (en) Pre-fetch prediction method for disk drives

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070622

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100223

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100720