JPS63244145A - ファイル管理装置 - Google Patents

ファイル管理装置

Info

Publication number
JPS63244145A
JPS63244145A JP63032012A JP3201288A JPS63244145A JP S63244145 A JPS63244145 A JP S63244145A JP 63032012 A JP63032012 A JP 63032012A JP 3201288 A JP3201288 A JP 3201288A JP S63244145 A JPS63244145 A JP S63244145A
Authority
JP
Japan
Prior art keywords
directory
data
sector
file
disk
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
JP63032012A
Other languages
English (en)
Other versions
JPH0664548B2 (ja
Inventor
ウイリアム・ジヨーゼフ・フラナガン
ロナルド・メイナード・カーン
ジヨン・エドワード・クラスコウスキー
ロバート・イー・ワグナー
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 JPS63244145A publication Critical patent/JPS63244145A/ja
Publication of JPH0664548B2 publication Critical patent/JPH0664548B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B7/00Recording or reproducing by optical means, e.g. recording using a thermal beam of optical radiation by modifying optical properties or the physical structure, reproducing using an optical beam at lower power by sensing optical properties; Record carriers therefor
    • G11B7/007Arrangement of the information on the record carrier, e.g. form of tracks, actual track shape, e.g. wobbled, or cross-section, e.g. v-shaped; Sequential information structures, e.g. sectoring or header formats within a track
    • G11B7/00745Sectoring or header formats within a track
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9017Indexing; Data structures therefor; Storage structures using directory or table look-up
    • G06F16/902Indexing; Data structures therefor; Storage structures using directory or table look-up using more than one table in sequence, i.e. systems with three or more layers
    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B20/1217Formatting, e.g. arrangement of data block or words on the record carriers on discs
    • G11B20/1252Formatting, e.g. arrangement of data block or words on the record carriers on discs for discontinuous data, e.g. digital information signals, computer programme data
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1883Methods for assignment of alternate areas for defective areas
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • G11B27/32Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier
    • G11B27/327Table of contents
    • G11B27/329Table of contents on a disc [VTOC]
    • 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
    • G06F2003/0697Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers device management, e.g. handlers, drivers, I/O schedulers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B2020/10898Overwriting or replacing recorded data
    • G11B2020/10907Overwriting or replacing recorded data using pseudo-overwriting, i.e. virtually or logically overwriting data on WORM media by remapping recorded blocks to alternate areas
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B20/1217Formatting, e.g. arrangement of data block or words on the record carriers on discs
    • G11B2020/1218Formatting, e.g. arrangement of data block or words on the record carriers on discs wherein the formatting concerns a specific area of the disc
    • G11B2020/1224Formatting, e.g. arrangement of data block or words on the record carriers on discs wherein the formatting concerns a specific area of the disc extent, i.e. a set of sectors which numbers form a continuous ascending sequence
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1883Methods for assignment of alternate areas for defective areas
    • G11B2020/1893Methods for assignment of alternate areas for defective areas using linear replacement to relocate data from a defective block to a non-contiguous spare area, e.g. with a secondary defect list [SDL]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1883Methods for assignment of alternate areas for defective areas
    • G11B2020/1896Methods for assignment of alternate areas for defective areas using skip or slip replacement to relocate data from a defective block to the next usable block, e.g. with a primary defect list [PDL]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/21Disc-shaped record carriers characterised in that the disc is of read-only, rewritable, or recordable type
    • G11B2220/215Recordable discs
    • G11B2220/218Write-once discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Management Or Editing Of Information On Record Carriers (AREA)

Abstract

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

Description

【発明の詳細な説明】 以下の順序で本発明を説明する。
A 産業上の利用分野 B 従来技術 C発明が解決しようとする問題点 D 問題点を解決するための手段 E 実施例 El データ・メモリ・システム及び記録メモリ・ディ
スク(第2.3図) E2 ディレクトリ (第1図) E3 ディレクトリのヘッダ及びセグメント構造(第4
.5図) E4  FEMCB及び0DDCB128 (第6図) E5 コントローラによる探索、更新、記録の末端識別
(第7.8,9図) E6 媒体欠損の処理(第10図) El キャッシング(第11図) E8 データ・エクステント(第12図)F発明の効果 A産業上の利用分野 本発明はデータ・メモリ装置、具体的にはこのようなメ
モリ装置に使用可能なディレクトリに関する0本発明は
いわゆる一回書込み光学ディスク・データ記録媒体など
の消去不能の即ち一回書込みの記録装置に最も有利に使
用できる。
B従来技術 ディレクトリは計算機のデータ・ベース中のデータをア
クセスするのに使用されている。ディレクトリの普通の
タイプいわゆる木(tree)ディレクトリであり、こ
れでは上のディレクトリ・レベルが下のディレクトリ・
レベルを指定し、このレベルが可能な時はより下のディ
レクトリ・レベルを指定し、このレベルが次にアクセス
できるデータの位置を識別している。ディレクトリの最
上位のレベルはしばしばルート・ディレクトリと呼ばれ
る。このようなディレクトリ構造の例はIBM社の19
83年著作権マニュアル・パーツ番号1502343に
よって示されるIBMパーソナル・コンピュータ・コン
ピュータ言語シリーズのディスク・オペレーティング・
システム(DOS)に使用されている。ディレクトリ構
造はDOS中でTREE (木)コマンドもしくはディ
レクトリ・コマンドDIRのいずれかによって眺めるこ
とができる。SET  5EARCHデイレクトリ・コ
マンドとして使用できるDOSコマンドPATHが種々
のディレクトリ・レベルへの経路を識別して単一のファ
イルもしくはファイルの群をアクセスしている。DOS
中では、各ファイルはファイル名及び3つのアルファベ
ット文字によるオプショナルな拡張によって参照される
。ファイル名及び拡張はピリオドによって分離されてい
る。木ディレクトリの他の例は米国特許第446872
8号に示されている。
IBMパーソナル・コンピュータXTマシン上で使用さ
れているDOSバージゴン2.3では、ルート・ディレ
クトリはいわゆるハード・ディスク(磁気メモリ)の外
側のトラック中に記憶されているが、サブディレクトリ
と呼ばれる種々の下位レベルはデータ・メモリ・ディス
ク全体を通して分散されている。システムは再書込み可
能であり、ディスクの容量が中程度、即ち50メガバイ
ト以下の磁気データ・メモリ・ディスクについては良好
に動作している。従って、大容量ディスク、即ち200
メガバイト以上のディスクに記憶されているデータを効
率的に管理するためには、DOS及び他のオペレーティ
ング・システムとともに使用できる木型の改良ディレク
トリが望まれる。
このような管理は大きな計算力を必要としないで行われ
なければならない、成る光学ディスクはいわゆる一回書
込みディスクであり、ディスク表面上の記録は溶発、ア
モルファスと結晶材料状態間の変化、容発以外のディス
クのトポグラフィの変化、ディスクのカラーの変化等と
いった非可逆的記憶を生じている。−再書込みは又消去
不能記憶と呼ばれる。データ処理環境ではビデオもしく
はイメージ獲得環境と異なって、ファイルの更新として
ディスク上に記憶されるデータは一般に線形状(アドレ
ス順)には生じない。このことは記憶すべきデータを記
述するのに必要とされるデイレクトリの寸法が予定でき
ないことを意味する。即ちデータ記憶空間を最適に利用
し、ディスク上の割当てられたデータ・メモリ位置(デ
ータ・メモリ空間とも呼ばれる)を探知するためのディ
レクトリ探索時間を最小にするディレクトリ管理技術が
必要になる。換言すれば、各ディレクトリ・ブロックで
利用可能な情報を最大化し、データ記憶空間の消費及び
割当てられた空間をアクセスするためのディレクトリ探
索時間を最小にする必要がある。また、各ディレクトリ
は、探索時間を減少するとともに割当てられたデータ・
メモリ空間を、データ・メモリ空間を保持する限界まで
充填可能とするべきである。
上述の原理及び思想は消去不能メモリ・データに特に関
連するが、含まれる原理は又再書込み可能即ち可逆デー
タ・メモリにも適用可能である。
いずれの型のメモリでも、記憶されるデータが非線形(
非順次的)に追加されるということはディレクトリの寸
法が増大することを意味する。従って、ディレクトリ構
成は構成される限りにおいて完全にモジュール形式で自
足的であり、一方では広範囲の変更及び拡張を可能とす
るものでなければならない、消去不能な記録に関連して
特に注目すべき別の態様においては、たとえば光学的な
データ・メモリ・ディスクに読取り専用セグメントが用
意されている。このような読取り専用セグメントは今後
受入れられてゆくであろう消去不能記録に使用されるの
と同じ型の記録に使用できる。
光学的ディスクが工場から出荷される時は、勿論読取り
専用部はディスクに記録されるが、これ等は読取りデー
タのための対応するモジュール型ディレクトリを有する
。ユーザはディスクを読取ると、追加のデータを加える
ことができディレクトリをモジュール単位で拡張し、デ
ィスクがデータで充満される時は、ディスク上に記憶さ
れたすべてのデータについて単一ディレクトリが存在す
る。
ディレクトリは変更可能であり、消去不能記録上のディ
レクトリのデータの断片化の解消が可能である。この動
作は追加のモジュールを記録されたデータ及びディレク
トリに加えることによって達成される。
任意のディレクトリ中の探索時間はデータ・メモリ装置
の成功及びデータ・ベースへの迅速なアクセスにとって
重大である。このような探索はデータ・ベースもしくは
ディレクトリ構造をインデックスすることによって行わ
れる。インデキシングの例は米国特許第4611272
号に開示されている。データを識別もしくは探し出すた
めには、インデックスのみを探索すればよい。この事実
はデータを発見するには、少ないデータ項目を調べれば
よいこと、従って探索時間が減少することを意味する。
成るデータ・ベースについては各項目中のフィールドの
1つはインデックス・フィールドとして指定される。通
常このようなインデックス・フィールドは最初に導入さ
れるフィールドとなるように選択され、すなわち最初の
フィールドは各々導入領域の開始時に生じ、これが常に
アクセスされる最初のフィールドなる。このフィールド
の情報内容はデータ・ベースから抽出され、別個のデー
タ・ベース・インデックス中に設定され、データ・ベー
ス・インデックスはデータ項目と独立に探索される。こ
のシステムの限界はどのフィールドをインデックスとし
て使用するかを適切に選択することを保証することにあ
る。勿論、両方の場合に、別個のインデックス・ファイ
ルを記憶するのに追加のデータ・メモリ空間が必要とさ
れる。木型のデータ・ディレクトリも同じようにしてイ
ンデックスされる。改良されたインデックス機能は、ソ
フトウェアのコスト上のオーバーヘッドを最小にして比
較的簡単にデータの多重バージョンを処理するために拡
張可能なディレクトリを収容するのに必要である。
C発明が解決しようとする問題点 本発明の目的は、−回書込み、即ち消去可能な記録技術
においてディスク・セクタもしくはデータ・メモリ領域
をできるだけ完全に充填することにある。
本発明の他の目的は、データ・メモリ空間の利用率を最
大化し、迅速なインデックス探索のためにディレクトリ
を比較的圧縮された状態に保持する拡張可能なモジュー
ル型ディレクトリを与えることにある。
D問題点を解決するための手段 本発明に従うディレクトリは、データ・メモリ装置中に
記憶されたデータのファイルを識別するファイル名を有
し、このようなファイル名によって識別されるファイル
の位置を指定し、夫々ファイル名に関連する第1のアド
レス・ポインタを含む。ディレクトリはデータ・メモリ
装置中に記憶されることが好ましい。ファイル名及び関
連する夫々の第1のアドレス・ポインタはディレクトリ
内の第1の複数のセグメント・モジュール中に記憶され
る。上記第1の複数の数よりも少ない第2の複数のディ
レクトリ・ヘッダ・モジュールがディレクトリ中にあっ
て、各々が所定の数のセグメント・モジュールを指摘す
る第2めアドレス・ポインタを記憶して、各ヘッダが夫
々のセグメント・モジュールの組に関連するようになっ
ている。さらに各ヘッダ・モジュールはヘッダ・モジュ
ールの他の1つによって指摘されるセグメントの粗生の
ファイルを識別するためのファイル名インデックスを含
む。1回書込み環境では第N番目のセグメント・モジュ
ールの組はそのセグメント・モジュールを識別する第N
番目のヘッダ・モジュールを含む、ヘッダ・モジュール
はさらに第N−1番目の記録ディレクトリ・モジュール
中のセグメントへのインデックスを含む。後者の配列で
は、セグメント・モジュールはデータ・メモリ装置中の
記録と略同時に記憶される。
本発明の他の態様では、データ記録媒体上のデータ記憶
空間の割当てはデータ信号を記憶するための微細部分に
なされる。レコード・メモリ・ディスクにおいては、た
とえば、ディスクは等角のデータ・メモリ・セクタに分
割されている。データを記憶するための最小の割当て単
位は所定のトラック内の少数のセクタであり、たとえば
トラック中の23のセクタ中の2つのセクタである。他
方、ディレクトリのヘッダ・モジュール及びセグメント
・モジュールはトラックもしくは多くのトラック単位に
だけ割当てられ、ディレクトリの割当ての寸法は略ユー
ザ・データのための割当て寸法よりも大きくされる。デ
ィレクトリの記録は順次的であり、すべてのディレクト
リに割当てられたセクタは充填され、他方かなりの種々
の寸法のファイルがデータ領域に記憶されるようになっ
ている。ディレクトリは内部の半径上のトラックから始
まって連続的に半径方向外側に向って記録されることが
好ましい、同様に、データはデータ記録媒体上に一番外
側の半径上のトラックから始まってディレクトリ記録の
方に向かって内方に連続的に記録される。一番外側のト
ラックの1つもしくは2つは、自己ブーティング(bo
oting)レコード、媒体の型を含む媒体の定義及び
ディレクトリの成る部分へのポインタのようなシステム
の用途に留保される。他の配列ではディレクトリはデー
タ記憶領域の中心にあってもよく、ディスクのディレク
トリ及びデータ・メモリ領域の独立した成長を支援する
ことができる。
本発明に関連ある文献としては、米国特許第45758
27号及び特開昭61−264461号公報があげられ
る。
E実施例 El データ・メモリ・システム及び記録メモリ・ディ
スク 種々の図面で同一の部品及び機能は同一の番号で示され
る。先ず、第2図を参照すると、ホスト・プロセッサ1
0(パーソナル・コンピュータのような)はデスク・オ
ペレーテング・システムD。
Sll及び入力/出力システムl08L2を含んでいる
。ホスト・プロセッサ中で実行されるプログラムはDO
811によって実行され、ディスク・メモリ装置、磁気
タイプ、通信システム等のような周辺装置と通信する。
DO811は工○S12によって周辺装置と通信する。
成るプログラム構造では、l0812はDO811と一
体になっている。このような場合はIBMパーソナル・
コンピュータDO8の場合であり、l0812はROM
(読取り専用メモリ)半導体チップ上の基本的入力/出
力システムでBrO3として表われている。ケーブル1
4はホスト・プロセッサ1oをデ−タ・メモリ・システ
ム13に接続する。メモリ・システム13は特開昭61
−264461号公報に説明されている。データ・メモ
リ・システム13のコントローラ15はホスト・プロセ
ッサ10をディジー・チェイン(環状連鎖)接続16を
介して複数のディスク・ドライブ17に接続するための
一般に知られている電子回路を含む。コントローラは通
常のようにコントローラ15を動作させるための命令の
プログラムより成るいわゆるマイクロコードを実行する
ためのマイクロプロセッサ(図示されず)を含む5通常
のように、コントローラ15はホスト・プロセッサ10
から命令及びデータを読取って、ディスク・ファイル1
7から読取ったデータを要求に従ってホスト・プロセッ
サ10に供給し、サブシステム13にステータス情報を
与える。番号19は2本の破線を指し、ディスク・ドラ
イブ17中のディスクに関してトランスジューサ(図示
されず)を位置付ける、回転する位置の感知の遂行、デ
ータのディスクからの読取り及びディスクへの書込みの
制御、ステータス及び他の機能の感知といったディスク
・ドライブ17についてのコントローラ15になじみ深
い制御を表わしている。
好ましい形のデータ・メモリ・システム13、ディスク
・ドライブ17は光学ディスク・ドライブである。即ち
レーザ(図示されず)がディスク上のいわゆる活性層を
励起してその物理的状態を変化させることにより記録情
報を示す、ディスク・ドライブはさらにラベル○D1及
びOD2によって示されている。このような光学ディス
ク・レコーダの例は米国特許第45bb088号に開示
されている。このような装置の他の例も容易に見出すこ
とができる。
光学型の記録ディスクは第13図に示されている。光学
ディスク20は回転軸21のまわりに矢印21Aの方向
に回転する。第1の好ましい形式では、単一のスパイラ
ル・トラック22が記録領域の半径の一番奥から半径の
最外部迄延びている。
スパイラル・トラックは、一般に知られているようにレ
ーザ・ビームによってアモルファスと結晶状態間で変化
可能である感光材料の活性層でされたスパイラルの溝と
して記録ディスク20上に物理的に表わされている。他
の記録形式及びレイアウトも同じ効率で本発明の実施に
使用できる。
単一のスパイラル・トラックに代って同心円のトラック
も使用できる。初期の実施例においては、各トラックも
しくはスパイラルの一周は23の扇形セクタ(番号0−
22)を含み、各セクタは1024データ・バイトを記
憶する。各セクタはディスク20の1つのアドレス可能
なデータ・メモリ位置である。小さな扇形セクタがイン
デックス18に与えられ、光学トランスジューサ24が
矢印23の方向に移動可能であり、−周の再トレースを
示す矢印23によって示されたようにスパイラル・トラ
ック22の単一の一周が繰返し走査できるようになって
いる。以下用語「トラック」は単一の同心円トラックも
しくはスパイラル・トラックの一周を示すのに使用し、
用語[スパイラル・トラック」は常にスパイラル・トラ
ック22を示すものとする。
DOSブーツ領域25はスパイラル・トラック22の半
径上一番外側のセクタO中にある。このようなりOSブ
ーツ領域はレコード・メモリ・ディスク20上に記録さ
れたプログラムによってホスト・プロセッサ10の演算
動作を開始させるためのものである。このようなブーテ
ィング動作は一般に知られているので説明しない、一番
外側の一周のセクタ1は光学ディスク装置制御ブロック
0DDCB27を記憶する。このような制御ブロックは
第6図に示したようなレコード・メモリ・ディスク20
を識別する自己記述データを含んでいる。0DDCB2
7はディスクの記録領域の最奥の部分にあるディレクト
リ領域28へのトラック及びセクタ・ポインタを含んで
いる。ディレクトリ構造については後に説明する。ディ
レクトリがモジュラ状に拡大する時は、ディレクトリは
半径上外側に向って成長する。これに対して、ユーザ・
データはデータ20のデータ記録領域の領域29中に記
憶される。この領域はスパイラル・トラック22の外側
から2もしくは3番目の一周から始まることが好ましい
、一番外側の一周はブーツ及び制御1診断データのよう
なシステム情報を記憶するのに留保される。データをレ
コード・メモリ・ディスク上に記録する時は、ユーザ・
データ領域29はディレクトリ領域28に向って内側に
成長する。ディレクトリ及びユーザ・データの記録は夫
々連続していて、以下定義するようにすべてセクタ及び
すべてのトラックを充満する。ディレクトリ及びユーザ
・データ領域28.29の端の間には、ユーザ・データ
もしくはディレクトリ・データのいずれかを受取る空き
の空間領域30が存在する。従って、記録メモリ・ディ
スク上にはユーザ・データとディレクトリ・データが混
合が生ずる。空き空間30中のすべてのデータ・メモリ
・セクタは空セクタと呼ばれる。ディレクトリもしくは
ユーザ・データのいずれかを含むセクタは1回書込み装
置では再び書込むことができない、可逆的記録メモリ・
ディスク20を使用する場合には1重ね書きもしくは書
直しが許されるが、しかしながらディレクトリ及びユー
ザ・データ領域には上述の場合と同様にエントリが並べ
られてゆく米国特許第4575827号にはディレクト
リ及びユーザ・データ領域の半径上の反対方向のエント
リ累積進行についての説明がある。
ヘッド24は第3回に両 レンズとして示されている。
ヘッド即ちトランスジューサ24は記憶メモリ・ディス
ク20の半径上を移動するいわゆるアクチュエータ・ア
ームの端部に支持されている。このような半径方向の移
動は直線もしくは弧線をなす。一般に、トランスジュー
サもしくはヘッド24はアクチュエータ・アームと相対
的に移動できるように取付けられていて矢印23で示し
たようなトラックの切換えが極めて短時間で生じ、レー
ザ・ビームを移動するためのヘッド24の対物レンズ(
図示されず)を移動させるためのアクチュエータ上に支
持されたいわゆる微調整アクチュエータ(普通傾斜可能
鏡もしくは可動対物レンズが使用される)で達成される
ようになっている。
E2 ディレクトリ 第1図は本発明に従って構成されたディレクトリを示す
、0DDCB27 (第3図)は光デイスク自己記述制
御ブロック(ODSDCB)35を含む、一番外側の一
周のセクタ1に記憶されている0DSDCB35は記録
メモリ・ディスク20を定義する記録媒体即ちディスク
記述子36及び以下説明するアンカー・ベースを含むス
パイラル・トラック22の内側の一周を指摘するアンカ
ー・ベース・ポインタ36の組を含む、0DSDC83
5は以下第5回に関して説明するようにディスクの初期
設定によってディスク20上に記録される。ディスク2
0は複数のデータ・セクタが媒体の記述子の活動記録を
含むように再初期設定できる。○DSDCS35も種々
の形式をとることができる。データの内容及び形式の変
更の組合せをバージョン(版)と呼ぶ、従って、媒体記
述子36中には0DSDCBのバージョンが示されてい
る。又ホスト・プロセッサ10のためのディスクを開始
させる制御プログラムのバージョンも示されている。こ
のプログラムはファイル・システム・ドライバと呼ばれ
、DO811の一部をなしている。この部分は本発明の
理解を助けるために第7図乃至第9図に説明されている
。DO811とその関連ファイル・システム・ドライバ
は本発明の理解に関連しない、従って本明細書では説明
しない機能を遂行することを理解されたい。媒体記述子
36は又スパイラル・トラックの各−周もしくは同心円
トラックの組の各トラック中のデータ・セクタの数の定
義を含んでいる。シリンダ当りのトラック数も定義され
ている1本発明の最初の構成実施例ではいわゆる片面デ
ィスクが使用され。
各シリンダは単一のトラックしか持たないようにされた
6両面ディスクでは各シリンダは2本のトラックを有す
る(シリンダは共通の半径を有するすべてのトラックと
して定義されている)。媒体記述子36中にはボリュー
ム当りのシリンダの数も定義されている。ボリュームと
は1乃至それ以上の記録メモリ・ディスクの記録の側面
の集りである。又各セクタ中に記憶可能なデータ・バイ
トの数及びディスク上のセクタの総数も含む。記述子3
6は又データ記憶空間の最小の割当てに含まれなければ
ならないセクタの数、たとえば2も示している。媒体の
型、即ち読取り専用、−回書込みもしくは最書込み可能
、ディレクトリのためのアンカー・ベースのトラック・
アドレスも含まれている。0DSDCB35はトラック
の番号のようなアンカー・ベースに関する記述的データ
を有する。、oDSDCB35(トラック番号を示すア
ドレスを記憶している)はディスク上の診断領域を指定
する。これ等の領域はボリューム・ラベル及び通し番号
のような一意的媒体識別コードとともに識別される。○
DSDCB35中のこのようなすべての情報は0DSD
CB35をディスク上に書込む前にディレクトリを部分
的に構成してディスク20上に記録しなければならない
ことを意味している。
第1図を参照すると、アンカー・ベース・ポインタ37
(指摘される情報を記憶するディスク20のセクタのア
ドレスを含む)はアンカー・ベース40を矢印38によ
って示したように指定する。
構成実施例ではディレクトリのためのアンカー・ベース
はスパイラル・トラック22の単一の一周に記録されて
いる。アンカー・ベース40中の項目はデータ・セクタ
当り1項目存在するが、(トラック・アドレスを記憶す
る)以下説明する根ディレクトリを指定するディレクト
リ・アンカ・ポインタの23項目を含むトラックを指定
する。従って○DSDCB35中の単一のアドレス、即
ちポインタ37はアンカーベーす40を含む単一のトラ
ックを識別する。各トラックは23のセクタを有するの
でアンカー・ベース40は、すべて矢印41によって示
したように最大23のディレクトリ・アンカー・ポイン
タ45のトラックを指定する。
各ディレクトリ・アンカ・ポインタ45のトラックは又
23のセクタを有し、そのセクタの各々に1つのアンカ
ー・ポインタを記憶している。各アンカー・ポインタ項
目中にはその項目をディレクトリ・アンカー・ポインタ
として識別するための識別子“p” (図示されず)が
含まれている。
各アンカー・ポインタは逆ポインタによって単結合され
ている。各アンカー・ポインタの項目は前のアンカー・
ポインタ・トラック45に向う逆ポインタを含む。最初
に記憶されたアンカー・ポインタ・トラックは逆ポイン
タとして0を有する。
さらに各セクタもしくはディレクトリ・アンカー・ポイ
ンタは前のアンカー・ポインタ項目への逆ポインタ、即
ち前に記録したアンカー・ポインタ項目を記憶したセク
タのアドレスを含む。アンカー・ポインタを記憶する各
トラックのセクタ0は逆ポインタとして0を有する。最
後に、各アンカー・ポインタ中のアドレスは領域28中
の対応する根ディレクトリ・ヘッダを指定する。このア
ドレスはトラック・アドレスであることが好ましい、こ
のルート・ディレクトリは広義には磁気ハード・ディス
クのためのDOSに関するルート・ディレクトリと対比
できるが、その内部構造はかなり異なっている。トラッ
ク当り23のアンカー・ポインタを有する23のアンカ
ー・ポインタ・トラック中のディレクトリ・ヘッダ・ポ
インタのすべては第3回で曲線の矢印46によって示さ
れている。
ルート・ディレクトリ及びそのサブディレクトリのすべ
て(すべて領域28中にある)はコンパクトで走査が容
易なディレクトリを与えるために、本発明のヘッダ・セ
グメント配列を使用する。ディレクトリ・セグメントは
データ・オブジェクト、データ・ファイルもしくはサブ
ディレクトリを記述する実際の項目を記憶している。他
方ディレクトリ・ヘッダ50はインデキシングによって
関連するディレクトリ・セグメント52の探索を容易に
し、ディレクトリ構造のための空間の割当てを示すデー
タを記憶している。ディレクトリ・セグメントを構成す
るトラックの個々のディスク20のセクタの各々は唯一
つのデータ・オブジェクト。
データ・ファイルもしくはサブディレクトリを含むこと
が好ましい。
この2デイレクトリ構造はディレクトリのすべてのレベ
ルで使用される。ディレクトリ・セグメント52.74
とディレクトリ・ヘッダ50.72は根ディレクトリ5
1及びすべてのサブディレクトリ71中で同じ論理構成
を有する。各デイレクトリ・セグメント内には、特定の
ディレクトリ項目に関連する最大量の制御情報が記録さ
れる。
このような制御情報は記述されつつあるデータ・ファイ
ルの現在及び過去の活動記録を含んでいる。
同じように各ディレクトリ・ヘッダ内には、以下「ディ
レクトリ・セグメントの集合」と呼ばれるディレクトリ
・セグメントの集りに関する最大量の制御情報を含む。
消去不能(1回書込み)記録は現在のディレクトリ・セ
グメントが各ディレクトリ・セグメントのための別個の
ディレクトリ・ヘッダ・レコードを記録することなくし
ては、ディレクトリ・セグメントの発生と同時に記録で
きないという制限を有する。本発明はこの条件をなくす
る。ディレクトリ中のこのような冗長な記録はパホーマ
ンスを減少し、ディレクトリを介するデータのアクセス
はディレクトリ・ヘッダ・レコード要約中にインデック
ス、即ち前に発生されたディレクトリ・セグメント(デ
ィレクトリ・セグメントの1つの前に記録された粗生に
すべである)を収集するための制御情報を組込むことに
よって避けられる。
種々のディレクトリ構成の詳細を説明する前に、ルート
・ディレクトリの一般的配列について説明する。番号5
1によって一般的に示されているルート・ディレクトリ
は複数のルート・セグメントの組52より成る。各々は
ヘッダ50中の対応するルート・ヘッダ・ブロック53
によって要約されている。さらに、ヘッダ50の洛中の
中のルート・インデックス54はルート・ヘッダ53を
記録する前に記録したルート・セグメントの組を夫々イ
ンデックスする。最初のヘッダ中のインデックス54で
は、インデックスは0に等しく、ルート・ヘッダ部分5
3はすべて単一の矢印55で示したように最初のルート
・セグメントの組(対応するセグメントの組と呼ばれる
)を指定し、第2のルート・ヘッダ部分は夫々第2のル
ート・セグメントの組を指定する(以下同じ)、最初の
ルート・ヘッダのインデックス部分56は0に等しい。
第2のルート・ヘッダのルート・インデックス部分57
は最初のルート・セグメントの組58を曲線59で示し
たようにインデックスする。同じようにして、曲線62
によって示したように、第3のヘッダ・ブロック50の
ルート・インデックス部分6oはルート・セグメント6
1の第2の組をインデックスする6番号63はルート・
ヘッダ・ブロック以外の他のルート・ヘッダ・ブロック
によるインデックスを示し、対応して指定されたルート
・セグメント組のデータを識別及び説明している。ルー
ト・ヘッダ、ルート・インデックス及びルート・セグメ
ントについては第4図に関して後に説明する。
最初のルート・ディレクトリ・セグメントの組52は矢
印65で示したようにディスク20上に記憶されている
実際のデータ・ファイルを指定する。このようなファイ
ルはディスク20上の領域29中に記録され、集中的に
番号66によって示されている。このようなファイルは
DOSバージョン2.1マニユアル中に示された通常の
DO8の命名法を使用して「ファイル名、 ext(拡
張子)」によって識別されることが好ましい。ファイル
66の組を指摘する以外に、ルート・ディレクトリ・セ
グメントの組の項目は又複数のブラケット71によって
示されたような複数の同一構成のサブディレクトリの組
の1つのサブディレクトリを指定する矢印7oによって
示したように、サブディレクトリを識別することができ
る。各サブディレクトリ71は内部的にはルート・ディ
レクトリの内部構造と同じように構成される。各サブデ
ィレクトリは曲線の矢印73によって示したように複数
のサブセグメントの組74を識別及びインデックスする
サブディレクトリ・サブヘッダ72を含む。
サブディレクトリ・セグメントの組74は根セグメント
の組と同じような構成になっている。このようなサブデ
ィレクトリ・セグメントの組は複数存在する。矢印75
は各サブディレクトリ・セグメントの組74がユーザ・
データ領域29内に存在する記憶されたデータ・ファイ
ル66を識別することができることを示している。各サ
ブディレクトリ・セグメントの組は矢印76によって示
されるようにさらに他のサブディレクトリを識別する項
目を含むことができる。このようなさらに他のサブディ
レクトリはデータ・ファイル66を指摘するか、もしく
は途中を省略した矢印77で示したようにあるサブディ
レクトリ・セグメントの組によってデータ・ファイル6
6を最終的に識別するさらに他のサブディレクトリを指
定することができる。
構成実施例では、セクタに書込まれる時は、1回しか書
込むことができず、即ち場所には更新能力はない。この
制約と、最初のセグメントの項目が記録されることによ
ってヘッダが書込まれるという条件の結果、ヘッダを記
録するディスク20上のセクタはさらに記録するために
は利用できない。従ってヘッダに関連するセグメント項
目のためのインデックスはヘッダとともに記録できない
本発明は以下の説明から明らかになるようにこのジレン
マを解決する。この技法はデータを記録する前に全セク
タを消去する必要のある磁気光学記録にも使用できる。
本発明はセクタを書直す必要及びディレクトリに重ね書
きするための2回以上の回転(1つの回転は消去、1つ
の回転は再書込み)の必要性を解消する。
ディスク20の領域28中のディレクトリの初期の配列
体はスパイラル・トラック22の半径上最も内側の一周
を診断もしくは基準トラックとして定義する。次の2つ
の半径上外側の2トラツク(最奥から第2番目及び第3
番目のトラック)はルート・ディレクトリ・セグメント
58を含む。
一度ルート・ディレクトリ・セグメントを割当てると、
次に最初のルート・ディレクトリ・ヘッダが他のトラッ
クに割当てられる。この根ヘッダ・トラックは最奥のト
ラックから4番目に割当てられて書込まれる0次に最初
のディレクトリ・アンカー・ポインタ45が次の半径上
最も内側、即ち第5のトラックに書込まれ1次に次の即
ち第6番目のトラックにアンカー・ベース40が記録さ
れる。この記録に続いて、サブディレクトリ及び追加の
ルート・セグメントの組及びルート・ヘッダがディスク
20上の増大する半径位置を有するトラックに割当てら
れ書込まれる。アンカー・ベース及びアンカー・ポイン
タ45はこれに従って更新される。
E3 ディレクトリのヘッダ及びセグメントの構造 第4図を参照するに、本発明のディレクトリのヘッダ及
びセグメント構造が示されている。各ディレクトリ及び
サブディレクトリはヘッダ及びセグメントの集りを有す
る。客ディレクトリ・ヘッダは以下で説明するように更
新された最後のセグメントである現在のディレクトリ・
セグメントを指定即ちアドレスするだけでなく、直ぐ前
に記録されたディレクトリ・セグメントの組のための要
約レコードもしくはインデックスをヘッダの1部として
記録している。各ヘッダは現在処理されつつある現在の
ディレクトリのセグメント・レコードの残りに対するポ
インタを含む、各ヘッダはディレクトリ・セグメント記
録の前のコレクションに関連する要約情報を記憶する5
本発明の初期の実施例では、各ディレクトリ・ヘッダは
22のディレクトリ・セグメント項目に対するアドレス
・ポインタを含んでいる。任意のディレクトリもしくは
サブディレクトリ中の最初に記録されたディレクトリ・
ヘッダは最初のディレクトリ・セグメントの組を指定し
、インデックスを含まない、第2及びその後のディレク
トリ・ヘッダは夫々のディレクトリ・セグメントの組を
指定し、各々は直前に記録されたディレクトリ・ヘッダ
項目中に定義された42のディレクトリ・セグメントの
項目(2つのトラック中に記憶されている。セクタの一
方が記録不能になった時にディレクトリ・データを受取
るための空間として、2つのセクタが用意されている)
のための要約情報もしくはインデックスを含む。
ディレクトリ・ヘッダ50.72の各々はヘッダ部53
及びインデックス部54を含む、各ヘッダ部53はその
データ構造をディレクトリ・ヘッダ項目として識別する
識別子フィールドH80を含む、光学メモリ・ディスク
20ではセクタ当り1つのヘッダのみが存在することを
想起されたい。
逆ポインタ81は逆方自車連結リスト中の前のへラダへ
のアドレス・ポインタである。各逆ポインタ81は、デ
ィレクトリ・ヘッダ中の最初のヘッダ項目中ではOであ
る点を除き、トラック及びセクタ・アドレスを含む、構
成された実施例では、各ヘッダに唯1つのトラックが使
用されるが、このように制限する必要はない。トラック
・アドレスは本発明の応用を拡張して多重トラック・デ
ィレクトリ・ヘッダを受入れるのに必要である。現在セ
グメント・ポインタ82は現在ディレクトリ・ヘッダに
よって識別されるディレクトリ・セグメントの組58.
54のトラック・アドレスを含む。
トラック・アドレスだけが与えられる。前のセグメント
・ポインタ83は直前に記録されたディレクトリ・ヘッ
ダに関連し、これによって識別される最高の番号のトラ
ックを識別し、このような対応するセグメントの粗生の
セグメントのトラック・アドレスを示す、この項目83
は現在のディレクトリ・ヘッダによってインデックスさ
れるセグメントの組のためのトラック・アドレス・ポイ
ンタを見出すために直前のディレクトリ・ヘッダの現在
のセグメント・ポインタ82を読取る必要をなくする。
ヘッダ部53に続く、インデックス項目部54は直前に
記録されたディレクトリ・ヘッダに関連し、前のセグメ
ント・ポインタ83によって指定されたセグメントの組
52のセグメントのすべてを識別する。42個のインデ
ックス項目部、直前のセグメントの粗生の各ディレクト
リ・セグメントの1つが各インデックス項目部54中に
記録される(各項目は一定長であることが好ましい)、
各インデックス項目はサブディレクトリもしくはファイ
ル識別子86を含む。サブディレクトリもしくは、ファ
イルの名前は項目の領域中で左に位置調整され、非使用
の部分は2進0もしくは他の空白を示すパターンによっ
て埋められる6多重バイトのファイル拡張名であるファ
イル名extを含むインデックス・フィールド87は左
に位置調整される。フィールド87の非使用の部分は空
白を示すパターンが埋込まれる。フィールド86及び8
7はインデックス・キー85を構成し、夫々直前に記録
されたディレクトリ・ヘッダに関連するディレクトリ・
セグメント58.74中に探索されたデータがあったか
どうかを識別するためにディレクトリ・ヘッダを高速で
走査することを可能にする。最後に各インデックス項目
54はファイルのための相対セクタ・ポインタであるフ
ァイル・セクタ番号88を含む、相対セクタ・ポインタ
はインデックスされているセグメントの粗生の最初のセ
クタを基準とするセクタの番号を示す、即ち相対セクタ
はキー85のフィールド86及び87によって識別され
るセグメント項目を記憶している。
各ディレクトリ・セグメント52.74は特定のファイ
ルもしくはサブディレクトリの記述より成る。ファイル
は以下説明するファイル名102゜属性、時間スタンプ
、日付スタンプ及びファイルのエクステントより成るフ
ァイル記述子レコード100 (第4図)によって説明
される。各ファイル・エクステントを相対セクタ番号と
、これに続く、ファイル・エクステントによって占有さ
れる連続セクタの数によって定義することによって、占
有空間が最小になる。各ファイルのエクステントは(後
に説明する)はそれ自身の相対セクタ番号を使用する。
ディレクトリ・セグメントのファイル記述子部分がファ
イルもしくはサブディレクトリを記述する。この記述子
は(1)ディレクトリ項目の各セクタのための一般的ヘ
ッダ記録(2)記述されつつあるファイルのすべてのバ
ージョンに共通な制御情報を記述する共通のファイル・
ヘッダ及び(3)単にファイルのバージョンを説明する
ファイル・バージョン・ヘッダの3つの部分に分割され
ている。ディレクトリ・セグメント中で、この一般、共
通ファイル及びファイル・バージョン・ヘッダはデスウ
ス20上に連続的に書込まれている。最後に形成される
(現在)ディレクトリ・セグメントが記述されたデータ
・ファイルのすべてのバージョンを識別する。この記述
は前に記録されたディレクトリ・セグメントが画定され
る(消去される)ことを意味している。各ディレクトリ
・セグメントはファイルの活動記録を含むので、所与の
ファイル・バージョンのための探素晴間が減少できる。
1つのディレクトリ・セグメントは1つのセクタ中に記
録されることが望ましいが、ファイルが活動化され、セ
グメントが大きくなる時は、セグメントは連続するディ
スク・セクタ上にあふれることがある。大きくなった(
1セクション以上を占有する)論理ディレクトリ・セグ
メントを収容するために、ディレクトリ・セグメントを
記録するセクタの各々中は一般的ヘッダが存在する。
再び第4図を参照すると、一般的ディレクトリ・ヘッダ
90はアルファベット文字it S”を含む最初識別子
フィールド91を含む。型フィールド92は一般的ヘッ
ダ90を先頭とするセクタ中に記録される情報の型を示
す。たとえば、論理ディレクトリ・セグメントが単一の
セクタ中に記憶できる時は、最初のインディケータはこ
のセクタを単一のディレクトリ・セグメント・ブロック
として識別する。他方、ディレクトリ・セグメントを記
憶するのに2セクタ以上を必要とする時は、最初のセク
タはこれがディレクトリ・セグメントを記憶する複数の
セグメントの最初のセクタであることを示すための最初
の識別子を有する。すべての中間のセクタは型フィール
ド92中にこのセクタが単一のディレクトリ・セグメン
トを記憶する複数のセクタの中間の1つであることを示
す第3の識別子を有する。セグメントのための最後のセ
クタはこれが単一のディレクトリ・セグメントについて
情報を記憶する複数のセクタの最後のセクタであること
を示す、型フィールド92中の第4のインジケータによ
って識別される。フィールド93はディレクトリ・セグ
メント情報を記憶する次のセクタのトラック及びセクタ
・アドレスを含む。
通常このアドレスは記憶メモリ・ディスク20上の所定
のトラック中で走査される次のセクタを識別する。ある
セクタは媒体の誤りのために消去されるから、フィール
ド93中のトラック及びセクタのアドレスは常にディレ
クトリ・セクタ情報を記憶する次の良好なセクタを指定
する。フィールド94はセクタ中に記憶される最後のバ
イトを記憶するセクタ内の円周もしくはバイト位置を識
別する。この最後のバイト・インディケータは所定のセ
クタ中に記憶できるバイト数を法とする相対数である。
これは保全性と長さ表示の目的のために含められる。フ
ィールド95はディスク20の所与のセクタ内に記憶さ
れるファイル・バージョンの数ヘッダを記憶する。バー
ジョン・ヘッダ110は後に説明する。
共通ファイル・ヘッダ1oOは各ディレクトリ・セグメ
ントの記憶を開始する最初のセクタ中のみに現われる。
共通ファイル・ヘッダ100は一般的ヘッダ90に直ぐ
隣接するディレクトリ・セグメントを記憶する第1のセ
クタ中に記憶されている。一般的ヘッダ90は固定長を
有し、従って第1のセクタ内に記録情報の円周位置はフ
ァイルの記述を始めるのに共通のファイル・ヘッダ10
0を識別する。フィールド102はディレクトリ・セグ
メント中で記述されているファイルのファイル名を含む
、ファイル名はファイル拡張名(多重バイト)を有する
ことができ、これはフィールド103を含むことができ
る。フィールド104はアクチブなファイル・バージョ
ンのバージョン数を記憶している。ファイル104が0
である時は、このファイルのアクチブ・バージョンはな
い、アクチブ・バージョンが存在するかどうかは、ホス
ト・プロセッサ10をプログラムしたユーザによって決
定される。フィールド105はこのファイルのバージ厘
ン数を示すカウントを含んでいる。
ホスト・プロセッサのプログラミングは新しいバージョ
ンが形成される時に任意に定義もしくは決定される。多
くの場合、バージョンは給与支払ファイルの種々のバー
ジョンの場合の一周毎のように経時的に生ずる。共通フ
ァイル・ヘッダは固定長を有し、ディレクトリ・セグメ
ント58もしくは74を記憶する最初のセクタ中にのみ
生ずる。
共通ヘッダ100の終りから一連のファイル・バージョ
ン記述110が始まる。ディスク20上に記録される各
ファイル・バージョンには1つのファイル・バージョン
記述が存在する。各ファイル・バージョン記述110も
固定長であり、セクタ中回転位置もしくはバイト位置が
各ファイル・バージョン記述110の開始を識別する。
ファイル・バージョン記述110は記述されるバージョ
ンの数を含むフィールド111を含んでいる。フィール
ド111はファイルの65535 (64K)迄を識別
する2バイトを含んでいる。より大きなバージョンを識
別するためには、フィールド111は拡張できる。しか
しながら、ディレクトリの各バージョンについて、フィ
ールド長は一定であり、円周もしくはバイト位置によっ
てフィールドの位置をイネーブルできなくてはならない
。このような拡張が望まれる時は、すべてのバージョン
記述110は又拡張されなければならない。フィールド
112は所与のファイル・バージョンの属性を定義する
属性クラブの組を含んでいる。この属性はたとえば読取
り専用であることを示すバージョンを含み、もしこれが
上記のDO32,1に使用されるかくれファイルである
時には、属性はシステム・ファイル、ボリューム・ラベ
ル、サブディレクト1ハ保存フアイル等である。フィー
ルド113はそのバージョンを形成した時の日付は及び
時刻(タイム・スタンプ)を含む、このような日付は及
び時刻の標識はDO32,1の日付は及び時刻フォーマ
ットに従っている。サイズ・フィールド114は記述さ
れつつあるファイル・バージョン中に含まれるバイトの
数を識別する。サイズ標識は最初に最下位桁が読取られ
ることが好ましい。フィールド115はファイル・バー
ジョンから記憶したバイトを有する最後のセクタ中に記
憶されているファイル・バージョン中のバイトの数を示
す、換言すれば5個のセクタにファイルを記憶すると第
5番目のセクタは完全に充填されないこともある。最後
のセクタ中のバイト数がフィールド115中に示されて
いる。エクステント・カウント・フィールド116はこ
の所与のファイル・バージョン中のエクステントの数を
示す。1つのファイル拡張はディスク20の連続セクタ
中に記憶されるファイルの部分である。エクステントの
定義(後述)はフィールド117中に含まれる。
ファイル・バージョン記述110の全長は固定長のフィ
ールド111乃至116及び固定長の拡張の定義117
の数に決定される。このようにしてディスク20の回転
もしくはバイト位置がディレクトリ・セグメント52中
に含まれる各ファイル・バージコン記述110の開始を
識別する。エクステントの定義は連続するファイル中の
相対的セクタ数を識別する固定長フィールドであり、即
ちエクステントが始まり、エクステントを構成する連続
セクタの数である。
用語「エクステント」についてはファイル・エクステン
ト・マツプ制御ブロックを示す第6図に関して後に詳細
に説明する。簡単に説明すると、ファイルは異なる時に
ディスク20上に記録される異なるレコードを持つこと
ができる。記録される連続レコードの各組が1つのファ
イル・エクステントを構成する。たとえば、レコード5
乃至26が最初に記録されたとすると、これ等のレコー
ドが単一のエクステントを構成する。レコード5乃至2
6の後に記録されるレコード1乃至4は第2のエクステ
ントを構成する。ディスク2oは消去不能に記録され、
ユーザ・データは、データの論理関係にかかわらず、減
少する半径位置に連続的に記録されるので、エクステン
トの定義及び管理はこのディレクトリ構造の重要な部分
を形成する。
任意の記録動作が生ずる前に、ディスクは第1図に示し
たようにルート・ディレクトリ及び種々のアンカー・ベ
ース及びアンカー・ポインタを設定するために初期設定
されなくてはならない。この初期設定は第1図及び第5
図を参照して説明する。ディスク20はディスク・プレ
イヤ/レコーダ上に適切に取付けられ、ホスト・プロセ
ッサ10はディスク2oがディスク・ドライブ17上の
1つの上に取付けられたことを識別したものと仮定する
。DO811によってホスト・プロセッサ10はホスト
・プロセッサlo内に記憶されているプログラムをサブ
ファンクション・コール(アクチベート)して、第5図
に示したマシン動作を遂行する。このプログラム・コー
ルは頭字語INITODによって120に示されている
0番号121はディスクの初期設定に必要なパラメータ
・データを示す、これ等はDO82,1のプロトコルに
従う○D1もしくは○D2のようなドライブ17のID
もしくはアドレス、本発明とは直接関係のないシステム
のオプション(SYSOFT)、ディスク・ラベルであ
る。ディスク20上には第1図に示したディレクトリ以
外に診断領域も確立される。この時点では半径上一番外
側のトラック中のデータ・セクタ0のDOSブーツ25
は書込まれない。ホスト・プロセッサ10はINIT○
Dプログラムを呼出した後、戻りコードRを段階122
でOにリセットする。次に段階123でホスト・プロセ
ッサはトラック1、セクタ1(TISl)を読取り、0
DSDCB35が記録されているかどうか、即ちディス
ク20がすでに初期設定されているかどうかを判断する
0段階124で、ホスト・プロセッサ1oは段HxQs
中で行われた読取りの結果を調べる。もしこのセクタが
Oに等しくない時は、戻りコードが段階125で1にセ
ットされ、ホスト・プロセッサ1oの制御は戻り点12
6で呼び出しプログラムに戻される。T151が段階1
24で空白もしくはOであることがわかると、ホスト・
プロセッサ10は後に第6図に関して詳細に説明する0
DDCB (光学ディスク装置制御ブロック)128と
呼ばれる制御ブロックを形成する。0DDC8128の
情報内容は以下明らかになるように大部分0DSDCB
35に記録される。0DDCB128はホスト・プロセ
ッサ10の主メモリ(図示されず)に存在する。光ディ
スク2oの診断テストの設定は130で開始し、ここで
種々の動作パラメータのための光ディスクをテストする
のに敵したテスト・パターン(図示されず)がホスト・
プロセッサ10の主メモリの所謂フォーマット領域(図
示されず)にもたらされる0段階131でホスト・プロ
セッサ10はディスク20上にテスト領域を割当て、フ
ォーマット化する1診断テスト・パターンは光学ディス
クの半径上−香臭の、即ちディレクトリ領域28(第2
図)の半径上内側に記録される。
段階131中には、この半径上最奥のトラック上にテス
ト・パターンを記録することが含まれる。
段階132で、ホスト・プロセッサ10はこの動作記録
からの戻りコードを調べる。もし戻りコードが非Oなら
ば、即ち誤り条件が発生すると、初期設定は続けられな
い、従って、段階133においてホスト・プロセッサ1
0はその戻りコードRを1にセットし、呼び出しDO8
11機能に戻る。
段階132中の戻りコードRは記録過程からのものであ
り1段階133中の戻りコードと同じではないことに注
意されたい。診断テスト・パターンがディスク20の半
径上最奥のトラック中に成功裡に記録されたと仮定する
と1段階134でホスト・プロセッサ10は(その主メ
モリ中の)ODDC5128内の診断テスト・パターン
をどのトラックに記録したかを識別する。段階135に
おいて、フォーマット化領域はテスト・パターンを消去
するために0にクリアされる。
段階135から、ホスト・プロセッサ10はルート・デ
ィレクトリを形成するように進む。段階140で、ルー
ト・ディレクトリ・セグメントが先ず形成される。ルー
ト・ディレクトリ・セグメントは段階134で記録され
た診断トラックに直ちに隣接する2トラツクに割当てら
れる。ディレクトリの割当てはボトム・アップであり、
即ちディレクトリ・セグメントはルート・アンカーを通
して行われる。のこ手順の理由は高位のディレクトリ要
素が下位ディレクトリ要素を指摘するポインタを含むか
らである。ディスク20には媒体の不完全部があるので
下位のディレクトリ要素がどこに記録されるかは、わか
っていない、従って、上位ディレクトリ要素は最後に記
録される。この時点で、ディレクトリ・データはデータ
20上に記録されていない、ここでホスト・プロセッサ
10は前に記録された診断トラックに半径上隣接する2
つのトラックをアクセスしてこのトラックが割当て可能
であるかどうかを知る0両トラックが割当て可能な時は
、この事実は以下明らかにされるようにディスク20上
に後に記録されるトラック・ポインタとともに主メモリ
中に記される0次に段階141で、根ディレクトリ・ヘ
ッダ50が丁度割当てられた根ディレクトリ・セグメン
ト58へのアドレス・ポインタを含む主メモリのフォー
マット領域に形成される。この割当ては主メモリにルー
ト・ヘッダ部53(第4図)の現在のセグメント・ポイ
ンタ82を書込むことによって達成される。逆ポインタ
81及び前のセグメント・ポインタは0である。それは
これが最初のディレクトリ・ヘッダであるからである。
根ディレクトリ中に使用される最初のディレクトリ・セ
グメントのための丁度割当てられた2トラツクに連続す
るディスク20の単一トラックがディレクトリ・ヘッダ
53に割当てられる。
ここで3つのトラックがディレクトリに割当てられた。
即ち2つは最初のディレクトリ・セグメント及び1つは
最初のディレクトリ・ヘッダのためである。現在、ディ
スク2o上にはディレクトリとしては何も記録されてい
ない6段階142では、ホスト・プロセッサ10は0D
DCB 128(ホスト・プロセッサlo中の主メモリ
中の)をアクセスして段階141で丁度割当てられたト
ラック・アドレスにヘッダ・アドレスをセットする。
丁度割当てられたディレクトリ・ヘッダ及びセグメント
をアドレス可能にする0DDCB128の設定に続き、
ホスト・プロセッサ10は段階143で丁度割当てられ
たルート・ディレクトリ・ヘッダのためのトラック・ア
ドレスを含むディレクトリ・アンカー・ポインタを形成
する。このプログラム形成過程はヘッダ・トラック・ア
ドレスを、PにセットされたIDフィールドを有する主
メモリのアンカー・ポインタに置き逆ポインタを0にセ
ットしくこれは形成される最初のアンカー・ポインタで
ある)、根ディレクトリ・ヘッダのトラック・アドレス
を割当てるように進行する。又利用可能な次の半径上一
番外側のトラックがアンカー・ポインタに割当てられる
。依然ディスク20上には何も記録されていない。
段階144でホスト・プロセッサ10は0DDCB12
8 (主プロセツサ10の主メモリ中にある)をアクセ
スし、丁度割当てられたばかりのトラック・アドレスを
装置制御ブロック128の後に説明するフィールド中に
記憶される1次に段階145で、ホスト・プロセッサ1
oはアンカー・ベース40を主メモリ中に形成し、アン
カー・ベースのために次に利用可能な半径上より外側の
トラックを割当てる。最初のアンカー・ベースの項目は
Ara別子フィールド、これが最初のアンカー・ベース
要素であるので0にセットされている前のアンカー・ベ
ース要素への逆ポインタ及び(段階143で割当てられ
たばかりの)ディレクトリ・アンカー・ポインタのトラ
ック・アドレスを含む。
一度これ等のフィールドはアンカー・ベース40のため
に設定されると、ホスト・プロセッサ10は0DDCB
128をアクセスし、アンカー・ベース40のためのト
ラック・アドレスを主メモリ中のこの制御ブロック中に
記憶する0丁度割当てられたディレクトリ・ヘッダ・ト
ラック、2つのセグメント・トラック、アンカー・ポイ
ンタ・トラック及びアンカー・ベース・トラックをアク
セスするトラック・アドレス情報のすべては現在ホスト
・プロセッサ10に利用可能であり、最後に0DSDC
B35がトラック1、セクタ1中に記憶できるようにな
っている。従って段階147でホスト・プロセッサ10
は主メモリ中に0DSDCB35を形成し、これを第6
図に示したフォーマットでディスク20のトラック1、
セクタ1に記録する。0DSDCB35を記録する前は
、ディスク20は信号を何等含まないか、留保領域(説
明されない)に診断信号を記憶している。0DSDCB
35の記録に続き、追加のハウスキービングーマシン動
作が番号148によって示されたように遂行される1次
に、ホスト・プロセッサ1oの管理と制御はDO811
に戻り、マシン動作のI N I TODセットと呼ば
れる機能に戻る。
E4  FEMCB及び0DDCB 第6図はファイルのエクステントを示すFEMCB15
5制御ブロック及び装置制御ブロック0DDC8128
を示している。FEMCB15!5はホスト・プロセッ
サ10の主メモリ中にのみ記憶され、ファイル・バージ
ョン記述子ヘッダ110(第4図)のエクステントの定
義117はFEMCB155から誘導される。データ処
理動作のためにホスト・プロセッサ10にオープンされ
る各データ・ファイル、即ち入力もしくは出力ファイル
のための1つのFEMCB 155が存在する。
FEMCB155のいくつかのフィールドが本発明を理
解するために示されている。FEMIDフィールド15
6はメモリのこの部分をFEMCBとして識別するため
のものである。FEMCBI55のアドレス可能性は一
般に知られたDOS技法を使用して上位のDOS機能レ
ベルで達成されるが、ここでは説明しない。フィールド
157vはファイルがオープン状態にある時は更新され
たかどうかを示す。2進1はファイル更新を示す。
このような表示子はオープン・ファイルをクローズする
時にホスト・プロセッサ10中において処理されたファ
イルがディスク20上に記録されるかどうかを示すのに
使用される。フィールドDIRADDR158はディレ
クトリ・セグメント58のためのトラック及びセクタ・
アドレスを記憶し、識別されたオープン・ファイルを識
別する。
フィールド159はオープン・ファイルのための及び第
4IJ!iのディレクトリ・セグメント52のフィール
ド112に対応するファイル・バージョンのための属性
フラグを含む、DRフィールド160は光ディスク20
が取付けられるドライブ(DR)のアドレスDOIもし
くは○D2を含む。フィールド161は簡単には共通の
ファイル・ヘッダ100 (第4図)のフィールド10
2.103に対応するファイル名拡張を含むオープン・
ファイル名を記憶する。VERフィールド162はオー
プン・ファイルのファイル番号バージョン(VER)を
記憶する。この番号は現在ホスト・プロセッサ10によ
って処理されているファイル名のバージョンのフィール
ド111中のバージョン番号に対応する。オープン・フ
ィールド165はこのファイルを開いたホスト・プロセ
ッサ10中のプログラムの数を示す、ファイルを開くた
びに、オープン・フィールド165は1だけインクレメ
ントされる。同じように、プログラムの1つがファイル
をクローズすると、オープンの数は1だけ減少する。フ
ィールドVCNT166はディレクトリ28中で識別さ
れるオープン・ファイルの最高の番号のバージョンのた
めのバージョン・カウント(VCNT)を記憶する。処
理されつつあるファイル・バージョンは最高の番号のバ
ージョンである必要はない。フィールドRELS167
はオープン・ファイルのための上位の相対セクタ(RE
LS)を識別し、これは勿論ファイルを構成するエクス
テントのすべてのうちで最後に記憶されたレコードを有
するエクステントを識別する。
フィールドMAPADDR168は特定のファイル・バ
ージョンのためのエクステント・マツプの始まり(MA
PADDR)をマークするホスト・プロセッサの主メモ
リ中のアドレスを指摘する。
各エクステント・マツプはファイル・バージョン記述1
10の中のフィールド116及び117より成る。各フ
ァイルはそのファイル・バージョンの各々についてファ
イル・バージョン記述を有する。エクステント・マツプ
の相対バイト・アドレスMAPADDRはエクステント
・マツプがフィールド91から偏位するバイトの数を示
す、ディレクトリ・セグメント58はディスク20の複
数のセクタにまたがって延在でき、MAPADDRフィ
ールド168中の相対バイト位置はセクタ中に記憶され
るバイトの数より大きい、特定のファイル・バージJン
記述110中のディレクトリ・セグメント52中の、デ
ィスク20上のエクステント・カウント・フィールド1
16の開始の物理的位置はフィールド167中の相対数
をセクタ中のバイト数によって除算したオフセットであ
る。
この余りはファイル・バージョン記述110を記憶する
セクタ内のバイト・オフセットを示し、商はディレクト
リ・セグメント58の項目の相対セクタ数として示した
フィールド91からの変位から1を引いた値を示す、N
BRフィールド169はエクステントの定義の数(NB
R)を示し、これはディスク20上に記録されているエ
クステント・カウント・フィールド116中に記憶され
ている数と同じ数である。EXTフィールド170はエ
クステント(EXT)定義フィールド117中に記憶さ
れている情報を含む。番号171はFEMCB155が
、DOSに関連するが本発明の理解には関連しない他の
情報を含んでいることを示す省略記号である。このよう
な情報はファイル寸法、日付及び時刻、過去の情報、サ
ブディレクトリの情報等を含むことができる。
エクステント及びそのディレクトリ構造に対する関係を
良く理解するために1例をあげる。ファイル名のレコー
ドの寸法を256バイトと仮定する。ファイルは先ず番
号1乃至9及び16乃至20のレコードを記録すること
によって形成される。
例を理解するためには以下の第1表を参照されたい。エ
クステント・マツプのバージ3ン1即ちフィールド11
6及び117はエクステント・カウント116を3にセ
ットしている。最初のエクステント定義117はレコー
ド1乃至9のためのものであり、占有されるセクタ数は
レコード数×256バイト÷1024 (セクタ・サイ
ズ)を求め次の上位の数に丸めたものである。もしレコ
ード9がセクタの終りで終らない時は、このセクタの残
りの部分はすべて0にされる。第2のエクステントは空
のエクステントである。エクステント定義117の第2
の項目はセクタ数で256をセクタ寸法で割り(5倍し
て)、次の上位の整数に丸めたものである。この数はま
だ形成されていないもしくは少なくともまだ記録されて
いないレコード11乃至15を示す、第3のエクステン
トの定義117はセクタ数を256を5倍してセクタ寸
法で割り1次の高位の整数に丸めて求める。相対セクタ
項目は第1及び第3の占有エクステントだけのために導
入される。このような相対セクタ数は第2の即ち中間の
エクステントが記憶情報を表わすかどうかにかかわらず
計算される。たとえば第1及び第2のエクステントがフ
レーム名中に識別された情報を記憶するのに3つのセク
タを必要とするならば、第3のエクステントのための相
対セクタ数は4になる。中間のエクステントのための相
対セクタ数は0にセットされる。それは中間のエクステ
ントが情報記憶レコードを持たないからである。この場
合空白はすべて1でもよい。最初のエクステントの相対
セクタ数は0に等しい。
アドレス機構に依存して上述のように計算された数に追
加される追加の相対数が存在する。フレーム名バージョ
ンの形成及びこれ等をディスク20上に記憶した後、3
つのファイル・バージョン・ヘッダ110が生じ、一般
的ヘッダ9′0の後直ちに記憶される共通ファイル・ヘ
ッダ100の後に連続して記憶される0次にファイル名
が更新される。レコード13及び14が記憶され、レコ
ード3及び19が更新されたものとする。この更新の結
果、第A表に示されたように7つのファイル・バージョ
ン・ヘッダ110が形成される。
第1表 1回のファイル更新後のステータス (1)原ファイル・バージョン記述−選択したフィール
ドフィールド   ファイル名        内容1
11    バージョン数         2116
    エクステント・カウント     31177
1   xクステントの定義#1   セクターxxx
o。
(レコード1−10用)      #セクタ=311
7−2   エクステントの定義#2   セクターF
FFFFF(レコード11−14用)     #セク
タ=2117−3   xクステントの定義#3   
セクタ=XXXOO6(レコード15−20用)   
  #セクタ=3(2)更新ファイル記述−選択フィー
ルドフィールド   フィールド名       内容
111    バージョン数         111
6    エクステント・カウント     7117
−1   xクステントの定義#IU   セクタ=x
xxOo。
(レコードl及び2用)     #セクタ=1117
−2   xクステントの定義#lU   セクタ=X
XXOO8(更新レコード3及び4用)  #セクタ=
1117−3   xクステントの定義#30  −t
!クタ=XXXOO2(レコード5−10用)    
  #セクタ=3117−4   エクステント定義I
4υ   Iセクタ=FFFFFF(レコード11.1
2用)     #セクタ=1117−5   xクス
テント定義I5U    セクタ=XXXO99(新レ
コード13,14用)    lセクタ=1117−6
   xクステント定義#60    セクターXXX
0O6(レコード15−18用)     #セクタ=
2117−7   xクステント定義17U    セ
クタ=XXXOOA(レコード19.20用) 上記の表で、#は数を、FFFFFFはすべて1を(論
理的に、データは記憶されていないのですべて1は空白
を意味する)、XXXは任意の相対アドレス番号を表わ
し、セクタのカウントは16進で示されている。即ちA
−Fは夫々10進10−15と等価である。ディレクト
リ・ヘッダにおいて、各更新ファイル・バージョン記述
110の各々は共通ファイル・ヘッダ100に直ちに続
いてディレクトリ・セグメント中に記憶され、原ファイ
ル記述ヘッダ110は記憶され、更新ファイル・バージ
ョン記述に続いて記録され、最新のファイル・バージョ
ン記述がディレクトリ・セグメントを読取る時に遭遇す
る最初のものであるようにされる(LIFO・・・後入
れ先出(メモリ)。
第A表はレコード寸法が256バイトのファイル名につ
いてセクタ寸法が512バイトの場合に構成されたもの
であり、データ記録領域29中には、2レコードが所定
の単一セクタを占めるようになっている。レコードはあ
たかもレコードのすべてがデータで充満されているかの
ようにセクタに割当てられる。従って、第A表の原ファ
イル・バージョン記述中では、エクステントの定義#1
はレコード1乃至10のためのものであるが実際にはレ
コード1乃至9だけが実在する、しかしながら5個の完
全なセクタはレコード1乃至10が充填されているかの
ごとく割当てられる。ディスク20中でも5個のセクタ
が使用される。原ファイル・バージョン・ヘッダ中のエ
クステントの定義#2はこれから形成さるべきレコード
11乃至14のためのものであり、相対セクタがFFF
FFに等しい2つのセクタが留保されている。レコード
11−14のための割当てはディレクトリの管理のため
であり、実際にはディスク20上のセクタは使用されな
い、同じように、レコード16乃至20のためのエクス
テントの定義#3はレコード16乃至2oのためのもの
である。しかしながら、データ領域29の3つのセクタ
が割当てられてディスク20上で使用され、エクステン
トの定義#3によって識別されるデータ領域29の最初
のセクタはレコード16だけを含み、後に記録されるレ
コード15のために割当てられた空間が残され、ファイ
ル名中のすべてのレコード位置が完全に充填された時に
ファイルを収容するのに保存される。
第1表において、1つの記録動作の結果として。
更新されたファイルのバージョン記述はバージョン#2
となり、原ファイル・バージョン記述はバージョン#3
となる。原ファイル・バージョン中には、3つのエクス
テントがあり、第2の即ち更新ファイル中には7個のエ
クステントがある。エクステントの定義#IUは別個の
エクステントとなる。それはレコード3がレコード1乃
至9の原エクステント中で更新されたからである。原レ
コード4は、008の相対オフセットを有する第2の(
更新)エクステント中の更新レコード3と結合する。即
ち原レコード4は次のエクステントに再記録され、原フ
ァイル・バージョンの定義#l内に原レコード4の他の
コピーが残される。エクステントの定義#3Uは原レコ
ード5乃至10とこれから受取られるレコード10のた
めに割当てられた空間のためのものである。その相対セ
クタ番号はここで#2となる。それは元々レコード3及
び4を記録していたセクタがもはや最新のもしくは現在
の、ファイル・バージョン中に存在しないからである。
まだ受取っていないレコード11.12のための原エク
ステント定義#2から取出された定義#4U中で相対セ
クタ・アドレスはFFFFとして保存され、1つのセク
タがディレクトリ28内で2つのこれから記憶されるべ
きレコードのために論理的に割当てられる。新らしいエ
クステント定義#5Uは新らしいレコード13及び14
をオフセット9を有する別個のエクステントとして識別
し、定義#2Uによって定義されたデータの後に記録さ
れる(レコード3の更新は新らしいエクステントを生ず
る)、データ領域29の1つのセクタがその記憶に必要
になる。レコード15乃至18のためのエクステント定
義#6Uは原バージョン中のエクステント定義#3と同
じ相対セクタ数を保存する。しかしながらセクタの数は
1だけ減少する。それはレコード20が更新されるから
である。レコード2oが更新されるので、これは原レコ
ード19とともに運ばれ、OOAのオフセット(10進
10)を有する新しいエクステント定義#7Uを形成し
、1つのデータ領域29のセクタはこれによって識別さ
れる。
第1表中の上述の定義から、更新中の種々のレコードの
物理的記録は記録ディスク20上にデータの物理的断片
化を生ずるが、ファイル・バージョン・ヘッダが論理的
にすべてのレコードを、レコードが実際に記録されるか
どうかにかかわらず、連続的論理的ファイルとして論理
的に結合する。
この意味で、ファイル・バージョン記述は又割当てマツ
プとして働く。
第A表に示したディスク20上に記録されたファイルは
2つの時間的にずれた記録動作で記録される。ここで用
語「記録動作」はすべての記録がDO8によってファイ
ルの所与の「書込みオープン」中に達成されることを意
味する。従って、5つの連続するセクタに記録されたレ
コード1−9及びレコード15−20 (3つの連続す
るセクタ中に記録された5個のレコード)より成るバー
ジョン1中の、実際にディスク20上に記録されるレコ
ードはディスク20の8個の連続するセクタ中に記録さ
れる。もし単一の書込みオープン中に2つの記録セツシ
ョンは使用されると、レコード15乃至20はレコード
1乃至9を記録する5個連続するセクタとは分離した3
つの連続したセクタに記録される。レコード15乃至2
0はレコードl乃至9の前でも記録できる。単一の書込
みオープン内の、このような記録セクション・シーケン
スにかかわらず、単一の書込みオープンとして記録され
たすべてのレコードは単一の記録動作中に記録されたデ
ィレクトリ中にあるものとして処理される。このような
1回の書込みオープン中に記録されるすべてのレコード
は物理的な記録位置のいかんにかかわらずレコード番号
によってディレクトリ・セグメント中に分類される。同
様に。
第1表中に表ねされた第2の書込みオープンはいくつか
の時間的にずれた記録セツションより成ることができる
。相継ぐ書込みオープン中に発生されるものとして例示
された例に示したファイル・バージョンだけがエクステ
ントの定義を変更できる。書込みオープン・ファイルが
クローズされる迄はエクステントの定義は変更されない
第6図を参照するに、ホスト・プロセッサ10の主メモ
リ中に記憶されている0DDCB128の詳細が示され
ているが以下0DSDCB35と比較して説明する。○
DDC8128は制御ブロック128を0DDCBとし
て識別する最初のフィールド176DCBID (装置
制御ブロック識別子)を有するフィールド176のアド
レスは0DDCB12Bのための開始アドレスを有し、
前の説明によって仮定したように発生され、DO811
中に記憶される。DRフィールド177はどの光学ディ
スク・ドライブ17が光学ディスク20中に取付けられ
るかを示す、媒体フィールド178は識別されたドライ
ブ17中に取付けられたディスクの記述を含む、媒体フ
ィールド中に記憶される情報は取付けられた特定のディ
スク20のための0DSDCB35から得られる。AN
CH(アンカー)フィールド179はアンカー・ベース
40のトラック・アドレスを含む。媒体フィールド17
8から、ホスト・プロセッサ10は割当てのために利用
可能な、ディスク20上のセクタの総数を決定できる。
ラベル・フィールド180はデータ・ボリュームとして
光学ディスク20のラベルもしくは名前を含み0DSD
CB35から読取られる。「最後のデータ」フィールド
185はデータ領域29にデータを記憶するのに最後に
使用されたトラックのアドレス及びこのようなセクタの
アドレスを記憶している。このような情報は第9図に示
し、後に説明するスペース見出し、動作によって得るこ
とができる。オープン・フィールド186はホスト・プ
ロセッサ中で実行される計算機プログラムによって開か
れるファイルのオープン数を示す、この数は特定のファ
イル・バージョンにアクティブに含まれるユーザの数に
対応する。用語「ユーザ」はプログラムを意味する。
最後のDIRフィールド187は最後に記録されたディ
レクトリ・アンカー・ポインタ45のトラック・アドレ
スを含む。アンカー・ポインタはアンカー・ベース37
(第3図)によって指示されたディスク20上のアンカ
ー・ベース40を読取ることによって見出される。ルー
トHDRフィールド188は主メモリに、処理されつつ
ある現在のファイル・バージョンに関連して使用される
ルート・ディレクトリ・ヘッダ5oのトラック・アドレ
スを記憶する。パス・フィールド189は処理されつつ
あるファイル・バージョンをアクセスするためのDOS
パス名を含む。パスHDRフィールド190はパス・フ
ィールド189中に記憶されたパス名によって指定され
たサブディレクトリ・ヘッダのトラック・アドレスを含
む、N5D(サブディレクトリの数)フィールド191
は経路フィールド中に表わされたサブディクトリのカウ
ントを含む。新フィールド192は現在のディレクトリ
にとって上位レベル・ディレクトリ項目中にまだ反映さ
れていないディレクトリ・ヘッダ・トラックのトラック
・アドレスを含む。これはたとえば、サブヘッダ72が
ルート・セグメント58によってまだ指示されておらず
、従ってディスク20上に記録されている情報によって
はまだアドレス可能でないことを意味する。このフィー
ルドの内容はプログラム及びDOS 11の余りであり
、サブヘッダを識別するルート・セグメントを更新する
ためのものである。これと同じ規則はディレクトリ・ア
ンカー・ポインタ45が新らしいもしくは追加のルート
・ヘッダ53の構造を反映するように更新されていない
ルート・ヘッダ5゜にも適用される。要するに○DSD
CB35は媒体記述子情報だけを含むが、0DDC81
28はこの情報を含むだけでなく、オープン・ファイル
をクローズする時、即ちオープン・フィールド186が
Oになる時に、ディレクトリ28の適切で正確な更新を
保証することに関連する他の機能情報も含んでいる1番
号193は0DDCBが本発明の理解に関連しないファ
イル管理制御に関する他のフィールドを含むことを示す
省略記号である。
E5 コントローラによる探索、更新、記録の末端識別 第7,8及び9図で、ブロックを結ぶ線はプログラム呼
び出し、ブロックで表わされたプログラミング間のデー
タ転送等を示す。
第7図はディスク20上に記録されているディレクトリ
28中に含まれる情報をアクセスするホスト・プロセッ
サ10のマシン動作を示す。一度ディスク20をドライ
ブ17上に取付けると、ホスト・プロセッサ10はディ
スク2oをアクセスして、ディレクトリの位置を判断し
、先ずoDsDCB35を読取り、次にDOS i i
によって定義された必要性に基づいて、ディスク2oに
記録されているディレクトリ・ヘッダ及びセグメントを
読取って情報を得る0番号200は探知及び接続マシン
動作201に関する、DOSIIによるアクチベーショ
ンを示す、これ等の探知及び接続動作は所定の、ディレ
クトリ28のヘッダ/セグメントを探知して主メモリ中
の0DDC8128を更新し、DOSIIから受取った
特定のディレクトリ経路、即ちディレクトリ28のため
の現在のディクトリ径路を組立てる。マシン動作201
は主メモリ中に示された多くの名前インディケータ19
′をDOSIIから受取った特定のディレクトリ経路中
に含まれる名前(サブディレクトリの名前及びファイル
名)にセットする0次にマシン動作のループが遂行され
、DOSIIによって指定されたディレクトリ28中の
すべての名前(ディレクトリ・ヘッダ・ファイル名等)
が見出される。各指定された名前について、ディレクト
リ探索動作202がアクチベートされ、ディレクトリ2
8中の名前が見出される。
ディレクトリ探索動作202はディレクトリ28を走査
して、必要とされるサブディレクトリもしくはファイル
名を見出す、先ず、最後に形成されたルート・ディレク
トリ・セグメント58及びこれが識別するサブディレク
トリ71を探索してファイル/経路引数が求められる。
もし該当するものがなければ1wc索はヘッダ・インデ
ックス57.6oに延びる。探索の延長は先ずインデッ
クス57及び60のようなルート・ディレクトリ中のイ
ンデックスを走査することにより行なわれる。
もしサブディレクトリがインデック項目54(第3図)
中に指定された名前についてフィールド86もしくはフ
ィールド87中のフィールド名、EXT中で識別される
と、インデックス項目に対応するディレクトリ・セグメ
ント52が走査され夫々ディレクトリ28もしくはユー
ザ・データ領域29中のサブレフトリもしくはフレーム
名のディスク20上の物理的位置が走査される。ディレ
クトリ探索動作202はパス中に含まれる各名前につい
て一度活動化されることを想起されたい、ディレクトリ
の走査は良く知られているので、詳細は説明しないが、
インデックス走査はインデックス57を有するルート・
ディレクトリで始まり(インデックス56は0に等しく
セットされていることを想起されたい)、すべてのイン
デックス及び割当てられた2つのトラックがまだ充填さ
れていない最後の根セグメントに及ぶ、各識別されたサ
ブディレクトリについて、同じ探索はすべての論理バス
名に対応するすべての実際の物理的アドレス追打おれる
。これ等の探索動作が完了すると、ディレクトリは第6
図に関して説明されたフィールド中において0DDC8
128中に記憶されている経路の識別を使用してDO8
11に論理的に接続される。ディレクトリ探索動作は又
ルート及びサブディレクトリ・ヘッダ中のディレクトリ
・インデックスを読取るための読取るための読取り動作
203及び段階204のヘッダ・インデックスのための
探索を含む。最後の探索部分210は最後のディレクト
リ・セグメント(おそらくまだ充填されていない)の探
索である。この探索は又番号209によって示されたD
O8IIのサブ機能もしくは動作204中のヘッダ・イ
ンデックスの探索の完了に基づく、探索ディレクトリ2
02からのサブ機能と呼ばれる。セグメント探索マシン
動作210はディレクトリ領域28内の特定のトラック
・アドレスに存在するディレクトリ・セグメントを探索
する。ディレクトリ・セグメントの場合は指定されたト
ラックはディレクトリ・セグメントのために割当てられ
た2つのトラックの半径上最奥のトラックである。マシ
ン動作210はフィールド102もしくはファイル拡張
名の適切なファイル名を見出すためにディスク2o上の
各セクタを順次読取って2つのアドレスされたセグメン
ト・トラックを読取るための読取り動作211を含む、
フィールド102は同じようにサブディレクトリを識別
する。
次のバージョン探索動作213は番号212によって示
したDO8IIからのDOSサブ機能と呼ばれる。次の
バージ目ン探索動作213はファイルのその後の即ち次
のバージョンのための情報のためのディレクトリ項目(
ヘッダ及びセグメント)を探索する。DO811からの
入力パラメータは最後のファイル・バージ1ン番号の識
別を含む、このバージョン番号はデータ領域29に記憶
されているものとして最後に発見されたファイル・バー
ジョン番号に対応するファイル・ディレクトリ記述11
0のトラック及びセクタ・アドレスとともに発見される
。バージョン番号は最初即ち最も早く記録したファイル
・バージ目ンに対する番号1から始まる。この最初のバ
ージョンは次のバージョン探索がアクティベートされた
時に発見される。マシン動作213を行うホスト・プロ
セッサ10は先ずファイル・バージョン記述110を含
むディレクトリ・セグメントを探知する(ディレクトリ
の古いバージョンはファイルが更新された時に消去もし
くはデマークされていることを想起されたい)0次にす
べてのファイル・バージョンよりも1少ないファイル・
バージョンを見出す。
この次のファイル・バージョン番号(たとえば次に古い
ファイル・バージョン)に対応するフィールド111−
117 (第4図)中のファイル・バージョン記述の情
報内容がホスト・プロセッサ10(主メモリ)に供給さ
れる。もし最後に処理した、即ち最後に発見したファイ
ル・バージョンがファイル名を記述するディレクトリ・
セグメント中の最後のものである時は、この情報がホス
ト・プロセッサ10に戻される。このような情報の走査
と供給は実施が比較的簡単なマシン動作であるので、さ
らに詳細は説明しない。ディレクトリ探索動作202は
直接DO5IIからもアクチベートできる。
次に第8図を参照するに、ホスト・プロセッサ10中の
もしくはホスト・プロセッサ10によって開始されたデ
ィレクトリ28を更新するためのマシン動作が簡単な形
で示されている。これ等のマシン動作は新らしいディレ
クトリ・セグメント58の情報、新らしいディレクトリ
・ヘッダ50の情報を発生する。サブディレクトリ配列
では、ヘッダ及びセグメントは更新の文字及びエクステ
ントに依存して、根もしくはサブディレクトリ・レベル
でもしくは複数のディレクトリ・レベルのために発生さ
れる0次に更新情報はディスク20のディレクトリ領域
28に記録される。ファイルが更新される度に、種々の
バージョンのバージョン番号はすべて更新され、現在即
ち最後に記録されたバージョンが最上位のバージョン番
号Nにされる。
たとえばディレクトリ・セグメントを充填して新らしい
サブディレクトリを形成し、根ディレクトリ・セグメン
トの更新が必要になった場合のように更新されるサブデ
ィレクトリも上位レベルのディレクトリが必要になった
時は、このことがホスト・プロセッサのDOSに知らさ
れ、DOSはその上位のディレクトリ28のレベルも更
新する。
更新動作220からの可能な応答の1つはディレクトリ
構造の使用可能部分がなくなることによる。
ディスク20の完全な充填である。
ディレクトリ更新220のDO8IIによる活動化はい
くつかの活動化時点の任意の1つで生ずる。呼び出し2
21では、マシン動作222が活動化され、いわゆるヘ
ッダ・スロット(スロットとはヘッダを記憶できるデー
タ・メモリ領域、即ちディスク20の1もしくはそれ以
上のセクタのことである)が活動化される。このマシン
動作の組はディレクトリ28を更新するための情報を受
取るためのディレクトリ領域28内の空きセクタを探知
する。適切なディレクトリもしくはサブディレクトリの
ための新らしいディレクトリ・ヘッダ項目53.72が
ホスト・プロセッサ10によって構成される。新らしい
ヘッダ53もしくは72(第1図)はファイル名に関連
する前のヘッダを消去する。
マシン動作222の最初の段階は識別されたヘッダ制御
ブロック50がなお追加のへラダ53.72を受取るた
めの空きセクタを有するかどうかを判断する。この動作
はトラック・スロット発見223マシン動作によって読
取り動作225を介し適切なディレクトリ・ヘッダをア
ドレスすることによって達成される。これ等の動作は(
上述のように)適切なトラック・アドレスを識別し、ヘ
ッダに割当てられたトラックを走査することを含む、も
しヘッダに割当てられたトラックに空きのセクタがない
時は、ディレクトリ・ヘッダのための新しいトラックが
割当てられる。この割当てによって、追加のヘッダ制御
ブロック50が同一のディレクトリ、即ちルート・ディ
レクトリもしくは識別されるサブディレクトリ内に形成
される。
走査は空きのセクタが発見される迄ディスク20の相継
ぐセクタを読取る。もし空きセクタが見出されると、マ
シン動作はセグメント・スロット発見動作224をアク
チベートして、既に走査したディレクトリ・ヘッダに関
連してアドレスされたディレクトリ・セグメント中の空
きのセクタを見出す。空きのセグメント・セクタが識別
されると、2つのトラック及びセクタ・アドレスがホス
ト・プロセッサ1oのDOS11に戻される。ディスク
20のこれ等の走査は読取り225によって表わされた
マシン動作によって具体化される一度ディレクトリ情報
がホスト・プロセッサ10のり。
Sに戻されると、SECFULL段階230で。
ホスト・プロセッサ10は走査したディレクトリ・セグ
メントが充填されているかどうか(マシン動作225か
らの空きのヘッダ・スロットを含む)を判断し、充填し
ていなければ、段階231でホスト・プロセッサ10は
ヘッダ及びセグメントの両方についてディスク20の識
別された空きのセクタ中にディレクトリ情報を記録する
。戻り点232でDOS11への戻りが生ずる。しかし
ながら(1)現在のディレクトリ・ヘッダに割当てられ
たトラックに空きセクタがないか、(2)ディレクトリ
・セグメントに割当てられたトラック中に空きのセクタ
がない場合には、マシン動作233で、ホスト・プロセ
ッサ1oはヘッダ制御ブロック50もしくは71中に新
しいヘッダを形成し、新しいヘッダによって識別される
べきディレクトリ・セグメントのために2つの追加のト
ラックを割当てる。これ等の動作は第5図の段階140
に関して説明したルート・ディレクトリ・セグメント及
び段階141に関して説明されたディレクトリ・ヘッダ
の最初の形成と略同じである。セグメントが充填されて
いて(割当てられた2つのトラック中のすべてのセクタ
が使用されている)このセグメントを定義するヘッダが
充填されていない時、新しいセグメントのための2トラ
ツクだけが割当てられる0割当て及びフォーマット化動
作234は新ヘッダ要素233によって活動化される。
これ等の動作は(現在のヘッダ制御ブロック中に利用可
能ならば)ディスク20上に新らしいヘッダ制御ブロッ
クを受取るためのトラックもしくはセクタを割当てる。
フォーマット化動作は割当ての後に生じ、第4図に示し
たデータ構造の発生より成る。このようなフォーマット
化はプログラミングの分野で知られていることである。
割当て及びフォーマット化動作234の後に、書込み動
作231が丁度フォーマット化されたヘッダをディスク
20上に記録する6次にDO8IIへの戻りが戻り点2
32で行われる。DO811は又エントリ240でアク
チベートされて空きのエントリ(エントリという用語は
ディスク20の空きのセクタのことである)を見出すと
いったマシン動作220のディレクトリ更新の組の他の
部分をアクチベートすることができる。空き項目発見マ
シン動作241はディレクトリ階層の探索を生ずる。
即ち探索はルート・ディレクトリだけでなく一連のサブ
ディレクトリについて行われる。探索されるディレクト
リの識別は0DDC8128中の経路HDRSフィール
ド190で行われる。これ等のマシン動作の結果、ヘッ
ダもしくはセグメントもしくはアンカーを受取るための
ディスク20上−に利用可能なセクタのトラック及びセ
クタ・アドレスが戻される。
動作241による空きのディレクトリ項目の発見の場合
には、先ず呼び出し242を使用して、ヘッダ・スロッ
ト発見動作222を活動化して空きのセクタ(スロット
と同義語)を見出す、ヘッダ・スロット発見モジュール
222がヘッダ制御ブロック53.72中の空きのセク
タの識別を戻す時、マシン動作空き項目発見241は識
別トラック及びセクタ・アドレスをDO3IIに戻す。
ヘッダ・スロット発見222の戻りはディレクトリ構成
の上位レベルを識別して、上位レベル・ディレクトリの
更新に加えて、ディレクトリ・アンカー・ポインタ45
もしくはアンカー・ベース40を更新することを要求す
る。この動作は新らしいヘッダ要素のマシン動作233
が生ずる時に生ずる。この場合は、空き項目モジュール
241を見出すために、ヘッダ・スロット発見モジュー
ル222によって戻される空きセクタ及びトラック・ア
ドレスは空き項目発見241を生じ、ホスト・プロセッ
サ10がアンカー更新動作243を活動化する。ホスト
・プロセッサ10はアンカー更新動作243によって、
双頭の矢印線244によって示したようにトラック・ス
ロット発見動作223を活動化し、最後に識別した、即
ち現在のディレクトリ・アンカー・セグメント45中に
利用可能な空きセクタが存在するかどうかが判断される
もし利用可能な空きセクタが存在するときは、アンカー
更新動作243がホスト・プロセッサ1゜をイネーブル
して、書込み動作245を活動化し、動作222で識別
したトラック及びセクタ番号を割当てられたばかりのデ
ィレクトリ・アンカー・ポインタ45のトラックのセク
タ中に記録する。
そうでない時は、新らしいディレクトリ・アンカー・ポ
インタを形成して、第5図の段階143に関して説明し
た動作が実行され、アンカー更新動作243及びディス
ク20上にディレクトリ情報を記録するための書込み動
作245によってアンカー・ポインタが新らしく形成さ
れたディレクトリ・アンカー・ポインタ・セグメント4
5に書込まれる。動作222が戻すトラック及びセクタ
・アドレスは次に新らしいディレクトリ・アンカー・ポ
インタ45に丁度割当られたトラックに記録される。も
し上述の次の上位レベルのディレクトリ更新が必要なら
ば、この更新を行って下位のディレクトリ項目のための
新しいセクタ及びトラック・アドレスを反映させなけれ
ばならない。この結果を達成するために、空きエントリ
発見241がホスト・プロセッサ10をイネーブルして
DIR(ディレクトリ)エントリ更新動作246を呼び
出させる。動作246への数回の呼び出しが、階層ディ
レクトリの各レベルについて1回なされる。
ディレクトリ項目更新動作246はホスト・プロセッサ
10のDO3をイネーブル1、ディレクトリ項目(セグ
メント、ヘッダもしくはアンカー)をホスト・プロセッ
サ1oの主メモリから探索して、項目を更新し、項目を
指定されたディスク20のアドレスに書込む、先ず、デ
ィレクトリ探索動作247(この動作247は第7図の
ディレクトリ探索動作202と同じである)がディレク
トリ・エントリ更新動作を呼び出す、ディレクトリ探索
の完了によって、読取り動作248が識別されたディレ
クトリ・セクタ(ヘッダ、セグメントもしくはアンカー
のための)をDIR項目更新動作246に戻す、第A表
に関して説明されたエクステント・データはこの更新を
反映するためにすべてのバージョン番号を調節して更新
される。新しいエクステント・データが読取られたばか
りの項目に加えられ、更新ディレクトリ項目(ヘッダ及
びセグメント)が形成される0次に更新された項目はヘ
ッダ・スロット発見動作222及び空き項目動作241
によって識別されたばかりの、ディスク2oのトラック
及びセクタ・アドレスに書込まれる。更新ディレクトリ
の項目を、動作247における探索の結果、その新しい
トラック及びセクタに書込んだ後、古いディレクトリ項
目はディレクトリ項目更新動作246によって消去され
る。このようにして、すべての前のファイルもしくはサ
ブディレクトリ・バージョン及び現在のバージョンはそ
のファイルのための最後の更新ディレクトリ項目中で識
別される。この型の更新によって、ディスク20上にフ
ァイルの保管についての単一のあいまいでない記述が残
され、同時に、ディスク20のディレクトリ領域28の
ディレクトリ探索時間がかなり減少する。
ディレクトリのエクステント記述の更新のために、DO
8IIはDIR(ディレクトリ)エクステント更新動作
255を呼び出して、現在オープンしている、即ちホス
ト・プロセッサ10によって現在働きかけられている特
定のファイル(FEMCB155のオープン165及び
0DDCBI28のオープン186は非Oである)のた
めのエクステント・マツプの更新を遂行する。第1表に
示された更新エクステント情報はたとえば、ホスト・プ
ロセッサ10の主メモリ内に保持される。
ホスト・プロセッサ10により新らしいエクステントが
形成される度に、データ記録領域29中の記録データ、
FEMCB155 (第6図)が更新される。FEMC
Bの更新はユーザ・データ領域29の書込みの完了によ
って生ずる。DO811はエクステントの更新の各々に
ついて、トラック及びセクタ・アドレスの入力パラメー
タ・データを使用する。FEMCB155は第1表にも
示されているように実際のトラック及びセクタ・アドレ
スに基づく絶対セクタ及びトラック・アドレスを含まず
、ディスクの始まりからの論理セクタの相対番号を含ん
でいる。更新されたFEMCBI55は書込みオープン
後、即ちDO811によってファイルが開かれ、データ
が開かれたファイルに書込まれた後、ファイルがクロー
ズされる度にディレクトリ領域に記録される。たとえば
、処理中のファイルに3つの書込みオープンがある時は
書込みオープンがクローズする度に、これ等の更新は別
個に識別されるので、ファイルの3つの新しいバージョ
ンが形成される。このバージョン制御はデータの総合の
ために使用できる。
ディレクトリ更新過程は先ずオープン・ファイルを求め
てFEMCB155を見出す、各オープン・ファイルは
ホスト・プロセッサ10内で構成され、主メモリ中に記
憶されたそれ自身の別個のFEMCBを有する。次に、
DoSl1は新らしいエクステント及び古いエクステン
トのためのアドレスを供給し、論理アドレスが計算し直
される。
オープン・ファイルの開始からの論理(相対)セクタの
番号は相対トラック番号と論理トラック中のセクタの番
号の積によって決定される。従って古いFEMCB中に
使用される論理セクタの番号は更新FEMCB中のセク
タの番号とは異なる。
これ等の計算はともに、ファイルの始まりから始まる相
対セクタ番号(論理)を生ずる。このような更新された
データをアクセスする時は、このような相対番号がディ
レクトリ28のテーブル・ルックアップによって絶対ア
ドレスに変換される。
ディレクトリ28はオープン・ファイルへの書込みが発
生した時にのみに、たとえデータ領域29中にセクタ中
のの記録するデータの数が同一であっても生ずる。他の
データに置換る斬らしいデータのアドレスは相対セクタ
番号が変らない時でも決定しなくてはならない、新らし
い項目はエクステント・マツプ116.117 (第4
図)内のFEMCBに加えられる。この新しい項目が必
要な理由はオープン・ファイルの更新バージョンを記憶
するために使用されるセクタの番号が変らない場合でも
日付は及び時刻フィールド113及びフィールド115
は情報内容が変化するからである。
勿論、更新が多いと、追加のセクタが必要になる。
それは追加のレコードがファイルの一部として記録され
るからである。
第1表に示したように、レコード3が更新された時に、
ファイル内のデータが置換されない時でも、相対的セク
タは依然変更される。たとえば第1表を参照するに1項
目117−1はレコード3を含むエクステント#1を定
義している。更新されたファイル・バージョン中におい
ては、項目117−1はエクステント#IUをM5セク
タに対して1セクタを有するものとして定義している。
レコード3及び4のためのエクステント定義#2Uのた
めの項目117−2は新らしい相対番号を有する。同じ
ようにエクステントの定義#3Uのための項目117−
3は新らしいバージョン中の新らしいエクステントであ
り、それ自身の相対セクタ番号は2に等しい、換言する
と、相対セクタ番号を変更するための計算は、新らしく
置換されたデータのために形成される新らしいエクステ
ント即ち#2Uを収容しなければならない、新らしく形
成されたエクステントに続くレコードのためのすべての
相対セクタ番号は変更される。即ち、エクステントの定
義#1を2つのエクステントに分割すると相対セクタ番
号2を有するレコード5で始まるエクステントの定義#
3Uが形成され。
他方エクステントの定義#2Uはユーザ・データ領域2
9中に定義されたような相対セクタ8.即ちファイルの
はじめからの8セクタを有する。同じように、レコード
13と14を追加すると、エクステント定義2Uに続く
、それ自身の相対セクタを有する新らしいエクステント
定義#5Uが形成されるが、元のエクステント#3の相
対セクタ番号(相対セクタは5)は同じ相対セクタを保
持するが、エクステントの定義は#6Uになる。上述の
すべてから、変化していないデータの中でインターリー
ブされるか更新されたデータのための相対セクタ番号は
より大きな相対セクタ番号を形成することが明らかであ
る。それはこのようなデータはすべての他のデータが領
域29中に記録された後に記録されるからである。この
データの論理的位置はエクステント・マツプ中では同じ
位置に留まり、エクステント・マツプ中の相対セクタが
データ領域29中の相対的物理的位置を示す。
このような更新はホスト・プロセッサ1o内でディスク
20上の領域29中でレコードが更新される各度に生ず
る。
DoSl 1は導入点261を介して形成インデックス
動作260を直接呼び出し、セグメント58.74を走
査し、ファイル名を取出し、ヘッダ50.72 (第4
図)のためのインデックス54を形成できる。ホスト・
プロセッサ10は新しいヘッダ制御ブロック50.72
が形成されるべき時、即ち前のヘッダ制御ブロックが現
在充填している時にはいつでもインデックスを形成する
。このインデックスは割当て及びフォーマット化動作2
34がホスト・プロセッサ10の主メモリのフォーマッ
ト領域中に新らしいヘッダ制御ブロックを形成した後、
ただし書込み動作231がアクチベートされる前に形成
される。DO811は割当て及びフォーマット化動作2
34以外の呼び出しを処理する。走査すべき完成したセ
グメント58のためのディスク20上の割当てられたト
ラックはDO3IIによって識別される。共通ファイル
・ヘッダ100中のフィールドであるフレーム名及びフ
ァイル拡張基103は読取り動作262によって前のヘ
ッダ制御ブロックのヘッダの各々から読取られる。充填
されたセグメント58のすべてのトラックが走査される
。セグメント58に割当てられたトラック中に項目が発
見されないと、該当なし表示が戻され、インデックスは
形成されない。そうでないと、インデックス項目は分類
動作263 (DO8IIの分類モジュール)によって
昇順に分類される。分類後、キー85が各共通ファイル
・ヘッダから抽出され、第4図に示したように、新らし
い領域54中に加えられる0次にDO811がディレク
トリ・ヘッダをディスク20上に書込む。
ディスク20上に記録されたデータをアクセスする時は
、処理されつつあるファイルのバージョン番号のための
エクステント・マツプ116.117(第4図)は相対
もしくは論理セクタ番号を実際のディスク20のトラッ
ク・アドレス及びセクタ・アドレスを示す数に変換しな
ければならない、FEMC8128中で、相対セクタ番
号(半径上一番外側の周囲及びセクタ、即ち周回O、セ
クタOに基づく)は相対セクタ番号を各トラック中のセ
クタ数で除算することによってトラック・アドレス及び
セクタ・アドレスに変換される。余りは識別されたトラ
ック中のセクタ番号を示し、商がトラック番号を示す。
セクタがトラックの位置に独立してアドレス可能な時、
即ちN=トラックの数×トラック当りのセクタ数として
セクタが0からN迄の数で表わされる時は、論理セクタ
番号から実アドレスへの変換は、一般的ディレクトリ・
ヘッダ90のセクタ記憶フィールド91のセクタ数を論
理セクタ番号に加えることより成る。
第9図に示したスペース限界発見マシン動作はディレク
トリ領域及びユーザ・データ領域28及び29の半径上
の限界(末端)を決定する。このマシン動作の組は0D
DC8128のフィールド185及び187を夫々デー
タ及びディレクトリ記録のための最後のアドレスで更新
する。ディスク20がドライブ17上に取付けられる時
は、ホスト・プロセッサ10はデータ及びディレクトリ
領域の半径上の極限の位置を知らない。0DDCB12
8には、第6図には示されていないが、空きスペース3
0中のセクタ数を示すフィールドが含まれている。この
フィールドは最初Oにセットされ、最後のデータ・フィ
ールド185の内容はディスク20が完全にデータで充
填されていることを示す周回とセクタのアドレスにセッ
トされる。
最後のディレクトリ・フィールド187はディスク20
がディレクトリ・データで充填されたことを示すOにセ
ットされる。探索パラメータJはディレクトリ・セグメ
ント58の2つのトラックがディレクトリ領域内の任意
の3トラツク内に見出されることを示す3トラツクを表
わす3に等しく任意にセットされる。その理由は、各2
つのディレクトリ・セグメントに割当てられたトラック
に対して、1つのディレクトリ・ヘッダ制御ブロックに
割当てられたトラックが存在するからである。
マシン動作は又各ディレクトリ・セクタのために割当て
られる3つのデータ・セクタが存在することを任意に仮
定している。探索中の可能な最小のトラック番号は1で
なければならず(トラック0はブーツ及び自己記述制御
データを含み、最上位の番号のトラックは0DSDCB
35に記憶されたトラック番号を含む)、アンカー・ベ
ース4゜のトラック・アドレスから1を引いた値(半径
上一番外側の、アンカー−ベース40に隣接するトラッ
ク)を示す、呼び出しもしくは導入点271でDO81
1は空間限界発見動作270をアクティベートし、上述
のパラメータ内で以下に説明する機能を遂行する。スペ
ース限界発見動作270によってホスト・プロセッサ1
0は読取り動作272をアクティベートし、ディスク2
0の記録領域の半径上一番中心のトラックを読取る。こ
れは上位の限界と呼ばれる。各ディレクトリ・セクタに
は3つのデータ・セクタがあると仮定している。
トラック・アドレスのための最初のテスト値は下位及び
上位限界の和の3/4、即ち半径上−香臭のトラックに
向う半径距離の3/4に設定される。
次にこのテスト・トラックが読取り動作272によって
読取られる。読取ったデータがディレクトリ項目である
ことがわかると、主メモリの0DDCB128のフィー
ルド185に記憶にデータ領域29のための上位限界ト
ラック値がテスト・トラック・アドレスに調節される0
次に読取られる。
次のテスト・トラックはデータ領域の上位限界と下位限
界の和を2で割ったアドレスを有する。この手順を繰返
して最後にディレクトリ・セグメントの半径上の極限及
びディレクトリ領域の極限が発見される。読取ったデー
タがディレクトリ・セグメントが存在しない時には、即
ちユーザのデータである時には1次のテスト・トラック
の半径位置は丁度読取ったトラック・アドレス(ディレ
クトリ領域の新下位限界)と上位の境界アドレスの和の
1/2になる0次にこの処理を丁度テストしたトラック
と下位限界もしくは上位限界間に不等関係が存在する限
り、等しくなって空きの空間が存在しないこと(ディス
ク20が充満)が示される迄示される。
しかしながら、半径上置も内側のトラックから3/4は
ディレクトリでなければならないと仮定しているので、
3つの半径上隣接するトラックが読取られ、ディレクト
リのセグメントを見出す試みがなされる。この調節はト
ラック・テスト・アドレスがデータ領域のアドレスにな
る迄続けられる。もしデータ領域が半径上内側に向って
3/4の点に延びていると、テストの結果は空白が戻っ
ている。即ちテスト・トラック中にはデータが存在せず
、又このようなテスト・トラック中にはディレクトリ項
目は存在しない、この場合上位限界は現在のトラック・
アドレスから1を引いた値にセットされる。即ち、この
半径上次の外側のトラックはユーザ・データを含むこと
ができる。ディレクトリのための半径上一番外側の限界
は従ってテスト・トラックの半径上のアドレス+1にセ
ットされる。即ち、次の半径上内側のトラックはディレ
クトリ・セグメントを含み、空きの空間があることが示
される。
テスト中には消去セクタが生じ得る。従ってテスト値J
がリセットされ、ディレクトリ・セグメントを求める探
索が再び開始される。しかしながら、テスト・トラック
番号はディレクトリを見出すために1だけ増加される。
この時点で、動作270はホスト・プロセッサ1oによ
って限界探索動作273をアクティベートして、データ
及びディレクトリ領域29及び28の極限を識別する。
このモジュールはホスト・プロセッサ10をイネーブル
してディスク20上の限界トラック及びセクタ番号を識
別することができる。このような限界は空間限界発見動
作270によって計算される上位及び下位の可能性のあ
るアドレス値である。
即ちあるデータ領域及びディレクトリ領域は識別される
が、半径のエクステントは正確に知られていない、トラ
ック・アドレス値は最後に固定された上位及び下位の限
界の和の1/2にセットされる。もしこのテスト・トラ
ック・アドレス値が上位もしくは下位値のいずれかに等
しい時は、半径上の極限の1つが識別される。次に読取
り動作272がアクティベートされ、テスト・トラック
が読取られる。空セクタが発見されると、上位の限界は
丁度読取られたトラック・アドレス値にセットされ、空
白と呼ばれる値は空白セクタを有するトラック・アドレ
ス値として識別される。この過程は最下位のアドレスの
空白セクタが見出されると、同じような過程によって最
上位の即ち半径上の最奥の空白セクタが見出される。こ
の場合、空白が見出されると、テスト・トラックは非空
白のセクタが見出される迄、下位のアドレス値にセット
される。従って、テストされたトラックのトラック・ア
ドレスは上位の半径の限界を示す。
本発明の理解のために説明されたDO3中のプログラミ
ングに加えて、上述のIBMの刊行物中に説明されてい
るDO8中に現在存在するプログラミングも含まれてい
ることを理解されたい。DO8の後の実施例もしくは同
じようなオペレーティング・システムの実施例では、プ
ログラミングによって実施される主々の機能及びマシン
動作が利用されることが予期される0本発明の範囲での
構成の多様性は明らかであろう。
E6 媒体欠陥の処理 上述のディレクトリ及び記録技法を使用すると、ディス
ク上にデータもしくはディレクトリ情報を記録する間に
媒体の欠陥を検出すると、媒体に失陥のあるセクタを無
視して、情報を次の使用可能なセクタに記録することが
できる。この手続きの実際の効果はディスク20上にス
パイラル・トラックに沿う1つのセクタ位置分記録され
つつあるデータもしくはディレクトリの未記録部分を移
動させることである。ディレクトリは、あたかも欠陥性
のセクタが全く存在しなかったように、ディレクトリ構
造中の欠陥セクタが無視されるように形成される。この
型の媒体欠陥解消は上述の本発明のディレクトリ及びそ
の拡散構造で十分処理される。欠陥のセクタに接して先
行する連続セクタ中に記録されたデータは第1のエクス
テント中に含まれる。欠陥セクタに続く (欠陥セクタ
はスキップされる)スパイラル・トラック中の記録の継
続は連続したセクタの第2の独立したエクステントの開
始を画定する。この型の動作はデータが実際にディスク
20上に記録される時に、データのアドレスのディレク
トリ調節変更を必要とする。
これは現在のディレクトリ構造の定義されたデータ・エ
クステントの価値の一例である。
本明細書で説明されるディスク媒体のユーザの一部はデ
ィスク上の物理セクタとこのような記憶データを使用し
て動作するように設計された計算機プログラムの論理ア
ドレシング構造との予じめ割当てられた関係を含むマス
タ・ディスクを持つことがある。このような場合は、上
述のような媒体欠陥調整は、記憶されたデータの物理的
アドレスが変化して、計算機プログラムはもはやディス
ク上に記憶されたデータを忠実にアクセスできなくなる
点で動作不可能になる。
従って本発明は単一の記録ディスク媒体上の媒体欠陥調
整の2つの代替手段を与える。説明の目的のために、上
記の計算機プログラムと物理的ディスク位置との関連を
含むマスク・ディスクは上述のディレクトリを使用する
ディスクの製造位置に与えられる。本発明に従い、ディ
スク20の別個の部分がこのマスク・ディスクのアドレ
ッシングに基づく記録に割当てられ、留保される。この
ような配列は第10図に示したディスク20A上に示さ
れている(Aは代替ディスク配列を意味する)、任意の
選択事項として、マスク・ディスクに割当てられている
記録データを記録するためにディスク20Aに割当てら
れる部分はディスク20のデータ記録領域29(第2図
)の半径上一番外側の部分に留保される。ディスク制御
セクタ(27)は0DSDCB36に、マスタ・ディス
ク・データを含む周回数を含む。このようにして。
ディスク20を読取るコントローラ15は先ず0DSD
C836を読取る。0DSDCS36のトラックもしく
は周回は他のトラックとは異なる媒体欠陥調整機構を有
する。即ちこの媒体欠陥調整は本発明によって与えられ
る透過的な欠陥調整でなく、コントローラ15及びおそ
らくホスト・プロセッサ10の介入を必要とする。さら
に説明を付は加えると、物理アドレスとマスク・ディス
ク(図示されず)のデータ内容間の関係を保持するため
には媒体欠陥調整は一般的に今日の磁気ディスク記録に
使用している慣用に従う、即ちセクタの区分(消去)が
欠陥セクタに与えられ、代替データ・メモリ領域にアド
レス・ポインタが与えられる。しかしながら、全セクタ
は記録不能であるので、欠陥セクタ中に必要なすべての
ことは、これが欠陥性であること、データがその中に記
録されていない事実を識別することである。
本発明に従えば、ディスクの半径上−香臭の部    
゛分上、たとえばディレクトリ28の半径上内部部分が
マスタ・ディスクのデータをディスク上に記録する時に
媒体の誤りを調整するための代替データ・メモリ領域2
82である。半径上最奥の周回280は磁気もしくは光
学データ記録で慣用されているようにガード帯トラック
もしくは診断トラックである。周回281はマスク・デ
ィスク・データを記憶するデータ20Aの部分中の欠陥
セクタによって必要とされる代替記録領域へのインデッ
クスを含む。少数の複数の周回282が代替セクタ・デ
ータ・メモリ領域を構成する。欠陥セクタの検出にもと
づき、マスク・ディスクのデータをこのようなデータの
ための半径上最奥に割当てられた領域に記録する時は、
セクタ・アドレスをスパイラル・トラックに沿って下方
に押やるのでなく、欠陥セクタに割当てられたデータは
マスク・ディスクのデータをディスク20に記録するの
に使用したホスト・プロセッサ内の通常の技法を使用し
てソフトウェア(図示もしくは説明されない)によって
保持される。記録が完了すると、ホスト・プロセッサは
依然子じめ割当てられたマスク・ディスク・データ・メ
モリ領域中に1乃至それ以上の欠陥セクタに記録が予定
されているデータを保持している。次に、第10図に示
されたフォーマットを使用して、データを代替周回28
2に記録し、このような代替記録データへのインデック
スが周回281中に設定される。周回281及びすべて
の他の周回中の記録にはデータ・セクタOにおいて開始
し、必要に応じて、第10図に示したようにデータ・セ
クタ23向って反時計方向に進む、データ・セクタ0及
び表領域の周回281の他のデータ・セクタ内で、第1
のセクタ・バイト285は一定のデータ内容即ちEOに
等しい表示子を含む0周回281の次の下流のバイトは
領域286中に記録されている通し番号SNである。
表項目の組を含む周回281中の第1のセクタは番号O
で識別される。同じ周回中の次のデータ・セクタは通し
番号1で示される(以下同様)。周回281に欠陥セク
タが見出された場合には、このセクタは無視され、周回
281中の次に利用可能なデータ・セクタが欠陥のある
セクタのために元々意図されていた表データを記録する
のに使用される。フィールド286中の通し番号はこの
代替データ・トラック表の部分を記憶するのにどの物理
的データ・セクタが使用されるかにかかわらず同じに保
持される。バイト286に続くバイト群287,288
及び289等は夫々マスク・データ記録領域中の欠陥セ
クタのアドレスを含む。
周回281を走査して読取るホスト・プロセッサ10は
群287,288等のうちどれが問題の欠陥セクタに関
連するかを決定する。アドレス287.288の数等は
複数のトラック282に利用されるデータ・セクタの数
に対応する。アドレス287.288.289等にある
欠陥領域アドレスの論理位置は代りに記憶されようとし
ているデータを記憶するトラック282中のセクタを指
定するのに使用される。たとえば、(欠陥ポインタ0と
して識別される)、アドレス287の数値の内容は欠陥
性のデマーク・データ記憶セクタを指定するが1周回2
81のデータ・セクタO中の物理的位置は領域282の
半径上量も内側の周回のデータ・セクタOを指定する。
同じように、アドレス288を構成する欠陥ポインタ番
号1は領域282の半径上量も内側の周回中のデータ・
セクタ1を指定するようにして領域282中の周回の全
集合に及ぶ0代替周回領域282に欠陥セクタが発見さ
れた時は、この欠陥セクタに対応するアドレス領域はす
べて2進1を含み、論理的に関連する代替セクタが欠陥
性であること、そして使用されていないことが示される
上述のすべてから1種々の代替セクタリング、従って種
々のアドレシング・アーキテクチュアを受入れる効率的
な手段が同一の記録媒体上に与えられることが明らかに
されるであろう。本発明に従い、マスタ・ディスク・デ
ータに割当てられているデータ領域29は割当て可能な
データ領域の大部分を充満できる。即ちディレクトリ2
8は比較的小さくでき、場合によっては存在しない。し
かしながら、マスク・データが読取り時のホスト・プロ
セッサ10によって実行される計算機プログラムである
時は、若干の周回が使用時のホスト・プロセッサ10に
よって、計算機プログラムの更新をディスク2o上に書
込むために留保される。
このようにして、プログラムの販売者は電子的に更新を
ホスト・プロセッサ10に転送してプログラム記録媒体
として働くディスク20上に組込むことができる。従っ
てホスト・プロセッサ10がディスク20からプログラ
ムをそれ自身のメモリにロードする時は、ホスト・プロ
セッサ1oはマスク・ディスク・データによって表わさ
れた初期プログラムに対する更新を識別するためにディ
レクトリ28をチェックするためのプログラミング(説
明しない)を含む。
E7 キャッシング 第11図を参照するに、本発明を使用するデータ・メモ
リ・システムのパホーマンスの増強手段が示されている
。ホスト・コンピュータ10はランダム・アクセス・デ
ータ・メモリ部301を含む。この部分はコンピュータ
のための作業メモリである。ホスト・コンピュータ10
のためのソフトウェア(図示もしくはさらに説明しない
)はメモリ301の1部をソフトウェア・キャッシュ3
06として使用するように割当て、ディスク20に記憶
されたもしくは記憶さるべきデータに関してキャッシュ
できるようにし、又キャッシュ302を割当てて、現在
のディレクトリの一部分を記憶する。第7図に示した探
知及び接続機能201はディスク20上のディレクトリ
・セグメントによってアクセスすべきデータ領域を識別
し、現在セグメント300の全部のディレクトリの内容
が矢印303によって示されたように現在ディレクトリ
・キャッシュ302に記憶される。ホスト・コンピュー
タ10は現在ディレクトリ・キャッシュ302中のコピ
ーを更新することがある0本発明の説明とは関係のない
、データ処理動作が完了すると、更新されたコピーは現
在セグメントs。
O中に(このようなメモリ空間がまだ利用可能として)
記憶される。現在セグメント300が充填されると、記
録可能なセクタを依然含む最後のディレクトリ・セグメ
ントは更新されたディレクトリ部分を受取る。同じよう
に、ファイル名に従って記憶されたデータはデータ・キ
ャッシュ306中に記憶される。次にホスト・コンピュ
ータ10は、データ・キャッシュ306中及び現在のデ
ィレクトリ・キャッシュ302中に記憶されているディ
レクトリ部分に操作を加える。データ処理動作が完了す
ると、データ・キャッシュ306中の更新データは上述
のようにディスク2o上に記憶される。 多くの動作に
おける事象では、現在セグメント300はディレクトリ
中でさらに充満さるべきセグメントであり即ち完全に充
填されていないことが予期される。現在セグメント30
0の内容はどのファイル名のファイルがアクセスされた
かもしくはアクセスが望まれているかにががわらず、ホ
スト・コンピュータ10にプロモートされることに注意
されたい。又ヘッダ領域は現在セグメント300の半径
上外側にあるが、現在ディレクトリ・キャッシャ302
へはプロモートされないことに注意されない。この配列
は第5図に関して説明されたディスク20の初期設定手
順に従う、第5図ではディレクトリのより下位のもしく
はより直接部分はインデキシング部分よりも開始点に近
く記録されている。
ホスト・コンピュータによるキャッシュの動作及びキャ
ッシュとディスク20のようなバッキング・メモリ間の
データ転送は一般に知られているので、その説明はさら
になされない、注目すべき重要なことは、全現在セグメ
ントの内容が現在ディレクトリ・キャッシュにプロモー
トされ、ディレクトリ識別及び現在セグメントのすべて
のファイル名のアドレスへの高速アクセスが可能になる
ことである1本発明のこの部分を実施する1つのバージ
ョンではデータ転送がホスト・コンピュータ10及びデ
ィスク20間で開始されるとすぐ、識別される現在セグ
メントが常に現在ディレクトリ・キャッシュにプロモー
トされる。現在セグメント中に含まれていないファイル
名をアクセスする時には、新ファイルを識別するセグメ
ントが現在ディレクトリ・キャッシュ302中の現在セ
グメントに置換る。
E8 データ・エクステント データ・エクステントとは所与のファイルからのデータ
を記憶する連続セクタのことである。たとえば、第1の
データ・セグメント320(第12図)は9個のデータ
記憶セクタを含み、データ記憶セクタの各々は夫々1−
18と番号の付された2つのレコード中に記憶されてい
る。丸でかこまれた番号4.8及び9はデータが記憶さ
れていないセクタ内の割当て空間を示す。データ記憶セ
クタの各々の中で若い番号のレコードは弐NX−(N−
1)によって決定される。ここでNは所与のセクタ中に
記憶さるべきレコードの数であり、Xはファイル内のセ
クタの論理番号である。セクタの論理番号と記録ディス
ク上のセクタの物理番号とは混合してはならない。番号
及びXは整数である。最初の記録時に、欠陥セクタは空
間321によって示されたようにディスク上に発見され
る。
記録は継続して論理セクタ10及び11を含む番号32
2によって示された連続セクタの第2の組が続く。第2
のエクステント322には、2つのレコード20及び2
1が夫々論理セクタ10及び11に記録され、記録領域
19及び20はその中にデータを記録していない。1つ
のセクタを使用してレコード20及び21を記録するこ
とができるが、消去不能媒体中での更新手順を容易にす
るために割当てられている。論理セクタ5はレコード9
を充満し、レコード10を変更しないで更新されるもの
と仮定する。更新後は、更新記録データを識別するのに
2つのデータ・エクステントでなく、4つのデータ・エ
クステントが必要になる。
更新論理セクタ5はここで番号323で示したようにレ
コード9及び10を含んでいる。この更新により、原デ
ータ・エクステント320は3つの部分に分割される。
第1の部分は論理セクタ1乃至4を含むデータ・エクス
テント324であり、第2のデータ・エクステント32
5は(番号323によって示された)論理セクタ5だけ
を含み、第3のエクステント326は論理セクタ6乃至
9を含む、他のデータ・エクステント323は(番号3
27によって示したように)不変である。各ファイル内
の論理セクタはデータ・エクステント内を除きディスク
20上の物理セクタとは物理的関係はない、論理セクタ
は上述のようにデータ・バージョンのためのディレクト
リ項目を識別するのに使用される。
F6発明の効果 本発明に従い、−回書込み、即ち消去可能な記録技術に
おいて、ディスク・セクタもしくはデータ・メモリ領域
をできるだけ完全に充填する方法が与えられる。
【図面の簡単な説明】
第1図は本発明に従って構成された例示的ディレクトリ
の木構造を示す論理図である。第2図は本発明が使用す
るデータ記憶サブシステムの概略図である。第3図はデ
ィレクトリの一般的位置を示すレコード記録ディスクの
マツプ図である。第4図は第1図のディレクトリに有用
なデータ構造を示す図である。第5図は第3図に示した
レコード記憶ディスクの初期設定を示す論理的流れ図で
ある。第6図は第2図に示したコントローラ中で使用さ
れるデータ構造の論理図である。第7図はディレクトリ
情報を探索する際のコントローラの動作を示す論理図で
ある。第8図は第1図に示したディレクトリを更新する
のに使用されるコントローラの動作の論理図である。第
9図はディスク上のデータ記録の極限(末端)を識別す
るためのコントローラの動作の論理図である。第10図
は代替ディスク・アンドレッシング配列を受入れるため
の代替セクタ配列を示す図である。第11図はデータ・
キャッシング及びホスト・コンピュータ中の現在ディレ
クトリ部分を示す概略図である。 第12図は欠陥セクタ及びセクタの更新によるデータ・
エクステントの分割を示した図である。 10・・・ホスト・プロセッサ、11・・・DO3,1
2・・・IO8,13・・・データ・メモリ・システム
、15・・・コントローラ、17・・・光ディスク・ド
ライブ、2o・・・レコード・メモリ・ディスク、22
・・・データ・セクタ、27・・・0DDCB、28・
・・ディレクトリ、29・・・ユーザ・データ、30・
・・空きスペース、40・・・アンカー・ベース、45
・・・ディレクトリ・アンカー・ポインタ、50・・・
ヘッダ、52・・・ルート・セグメントの組、72・・
−サブ・ヘツダ、74・・・サブ・セグメントの組。 出願人  インターナショナル・ビジネス・マシーンズ
・コーポレーション 代理人  弁理士  山  本  仁  朗(外1名) ディレクトリ木H1造

Claims (1)

    【特許請求の範囲】
  1. (1)ディレクトリが記憶されるディレクトリのための
    アドレス可能なメモリ領域と、該ディレクトリ・メモリ
    領域中に記憶された制御データによって識別されるべき
    、ファイルをなして配列され、ファイル名によって論理
    的にアドレス可能なユーザ・データを記憶するためのア
    ドレス・メモリ領域を有するデータ・メモリ媒体であっ
    て、 (a)相互連結リストによって論理的に連結され、第1
    の部分及び第2の部分を有する第1の複数のディレクト
    リ・ヘッダ制御ブロックと、 (b)夫々ファイル名によって記述され、ユーザ・デー
    タを記憶するための上記アドレス可能メモリ領域のアド
    レスによって上記ファイルの各1つを指定する制御デー
    タ及びアドレス・データを記憶する所与の複数のディレ
    クトリ・セグメントを有する第1の複数のディレクトリ
    ・セグメントの組とを具備し、 (c)上記ディレクトリ・ヘッダ制御ブロックの上記第
    1の部分は上記ディレクトリ・セグメントの組の各1つ
    の中の上記ディレクトリ・セグメントの各1つを指定す
    るアドレス・ポインタを有して、上記ディレクトリ・ヘ
    ッダ制御ブロックの各1つ中のアドレス・ポインタによ
    って上記ディレクトリ・セグメントの組中の1つの中の
    すべてのセグメントが指定され、 (d)上記ディレクトリ・ヘッダ制御ブロックの各々の
    上記第2の部分は同じディレクトリ・ヘッダ制御ブロッ
    クの上記第1の部分によって指定されるディレクトリ・
    セグメント以外の上記ディレクトリ・セグメントの組の
    1つの上記制御データのためのファイル名を有し、これ
    によって上記第2の部分が各ディレクトリ・ヘッダ制御
    ブロックの第1の部分によって記述されているセグメン
    トの組以外のセグメントの組に対するインデックスをな
    していることを特徴とするデータ・メモリ媒体。
JP63032012A 1987-03-26 1988-02-16 ファイル管理装置 Expired - Lifetime JPH0664548B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/030,393 US4827462A (en) 1987-03-26 1987-03-26 Modular data storage directories for large-capacity data storage units
US30393 1987-03-26

Publications (2)

Publication Number Publication Date
JPS63244145A true JPS63244145A (ja) 1988-10-11
JPH0664548B2 JPH0664548B2 (ja) 1994-08-22

Family

ID=21854007

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63032012A Expired - Lifetime JPH0664548B2 (ja) 1987-03-26 1988-02-16 ファイル管理装置

Country Status (6)

Country Link
US (1) US4827462A (ja)
EP (1) EP0284037B1 (ja)
JP (1) JPH0664548B2 (ja)
BR (1) BR8801415A (ja)
CA (1) CA1281424C (ja)
DE (1) DE3856090T2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0397046A (ja) * 1989-09-11 1991-04-23 Victor Co Of Japan Ltd 追記型情報記録媒体の情報管理方法
JPH06342395A (ja) * 1990-08-20 1994-12-13 Internatl Business Mach Corp <Ibm> 構造化データ記憶方法及び媒体
JP2006164283A (ja) * 2004-12-03 2006-06-22 Hewlett-Packard Development Co Lp 取外し可能な記憶媒体のアドレス指定可能なユニットにデータ及び時間値を書き込むシステム及び方法

Families Citing this family (89)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0731901B2 (ja) * 1987-03-11 1995-04-10 ソニー株式会社 デイスク記録再生装置
US5008820A (en) * 1987-03-30 1991-04-16 International Business Machines Corporation Method of rapidly opening disk files identified by path names
JP2543523B2 (ja) * 1987-05-22 1996-10-16 パイオニア株式会社 ディスク及びその再生装置
US5053948A (en) * 1988-01-29 1991-10-01 Wisconsin Alumni Research Foundation File index system for mass storage device
US5053945A (en) * 1988-10-06 1991-10-01 Alphatronix System and method for performing a multi-file transfer operation
US5093915A (en) * 1988-11-02 1992-03-03 Xerox Corporation Method for selectively loading bootable fiber to control apparatus based upon the corresponding bootable attributes
US5195066A (en) * 1989-02-13 1993-03-16 Pioneer Electronic Corporation Information reproducing system for reproducing a group of recording mediums in accordance with stored program information
JPH02236612A (ja) * 1989-03-10 1990-09-19 Sony Corp ディスク選択制御方法
EP0389399A3 (en) * 1989-03-20 1993-01-20 International Business Machines Corporation Directory structure for worm optical media
US5491807A (en) * 1989-03-20 1996-02-13 International Business Machines Corporation System and method for worm volume management of new and updated data files using variable threshold block addresses
JPH0646488B2 (ja) * 1989-04-21 1994-06-15 株式会社東芝 記憶媒体のオートチェンジャ装置
US5398142B1 (en) * 1989-05-31 1997-09-16 Raxco Inc Method for eliminating file fragmentation and reducing average seek times in a magnetic disk media environment
JPH087981B2 (ja) * 1989-08-30 1996-01-29 日本ビクター株式会社 追加方式の追記型情報記録媒体及びその情報管理方法
JPH03149614A (ja) * 1989-08-31 1991-06-26 Univ California 情報処理システム及び記憶処理方法
US5504873A (en) * 1989-11-01 1996-04-02 E-Systems, Inc. Mass data storage and retrieval system
US5280468A (en) * 1989-11-16 1994-01-18 Olympus Optical Co., Ltd. Optical recording medium
EP0429727B1 (en) * 1989-11-30 1996-01-17 Sony Corporation Data recorder
JP2822525B2 (ja) * 1990-01-12 1998-11-11 ソニー株式会社 記録媒体の再生装置及び再生方法並びに検索方法
JPH0833864B2 (ja) * 1990-01-30 1996-03-29 富士通株式会社 データ保全方式
US5095423A (en) * 1990-03-27 1992-03-10 Sun Microsystems, Inc. Locking mechanism for the prevention of race conditions
US5537652A (en) * 1990-08-20 1996-07-16 International Business Machines Corporation Data file directory system and method for writing data file directory information
JP3141242B2 (ja) * 1990-08-24 2001-03-05 ソニー株式会社 光ディスク記録装置
US5347651A (en) * 1991-04-23 1994-09-13 International Business Machines Corporation System for allocating worm optical medium file storage in groups of fixed size addressable areas while tracking unrecorded areas and end of volume
JP2625609B2 (ja) * 1991-07-10 1997-07-02 インターナショナル・ビジネス・マシーンズ・コーポレイション ディスク記憶装置
JPH05313980A (ja) * 1992-05-07 1993-11-26 Olympus Optical Co Ltd 情報記録方法
JPH0628778A (ja) * 1992-05-14 1994-02-04 Matsushita Electric Ind Co Ltd 光ディスクおよび光情報記録再生装置
JP3435703B2 (ja) * 1992-05-20 2003-08-11 ソニー株式会社 再生装置、再生方法
US7548497B2 (en) * 1992-10-05 2009-06-16 Mitsubishi Denki Kabushiki Kaisha Optical disk and optical disk drive device
JP3078686B2 (ja) 1992-10-05 2000-08-21 三菱電機株式会社 光ディスク、光ディスク駆動装置および光ディスクの書き込み読み出し方法
US6529451B2 (en) * 1992-10-05 2003-03-04 Mitsubishi Denki Kabushiki Kaisha Optical disk and optical disk drive device
US5685003A (en) * 1992-12-23 1997-11-04 Microsoft Corporation Method and system for automatically indexing data in a document using a fresh index table
EP0612071B1 (en) * 1993-02-19 2000-04-26 Canon Kabushiki Kaisha Information reproducing method and apparatus
CA2125331C (en) * 1993-06-08 2000-01-18 Isao Satoh Optical disk, and information recording/reproduction apparatus
US5933839A (en) * 1993-07-23 1999-08-03 Kabushiki Kaisha Toshiba Distributed file system for renewing data with high integrity
JP3662946B2 (ja) * 1993-09-22 2005-06-22 株式会社東芝 ファイル管理方式および携帯可能電子装置
MY112118A (en) * 1993-12-23 2001-04-30 Hitachi Global Storage Tech Netherlands B V System and method for skip-sector mapping in a data recording disk drive.
US5523903A (en) * 1993-12-23 1996-06-04 International Business Machines Corporation Sector architecture for fixed block disk drive
US5660176A (en) * 1993-12-29 1997-08-26 First Opinion Corporation Computerized medical diagnostic and treatment advice system
US5664172A (en) * 1994-07-19 1997-09-02 Oracle Corporation Range-based query optimizer
US5754351A (en) * 1994-09-06 1998-05-19 Seagate Technology, Inc. Embedded header for split data sectors in zoned bit recorded disc drives
US5590320A (en) * 1994-09-14 1996-12-31 Smart Storage, Inc. Computer file directory system
US5812882A (en) * 1994-10-18 1998-09-22 Lanier Worldwide, Inc. Digital dictation system having a central station that includes component cards for interfacing to dictation stations and transcription stations and for processing and storing digitized dictation segments
JP3666907B2 (ja) * 1994-10-20 2005-06-29 富士通株式会社 データベース用ファイル格納管理システム
WO1997008623A1 (en) * 1995-08-23 1997-03-06 Symantec Corporation Coherent file system access during defragmentation operations on a storage media
JP2963038B2 (ja) * 1995-11-30 1999-10-12 三洋電機株式会社 ディスク記録再生装置及び該装置の制御方法
US5850566A (en) * 1995-12-13 1998-12-15 International Business Machines Corporation Method for storing multiple files without header information and for each storage medium maintaining a separate stored index including header information for each file
US6366930B1 (en) 1996-04-12 2002-04-02 Computer Associates Think, Inc. Intelligent data inventory & asset management systems method and apparatus
US6560701B1 (en) 1997-02-10 2003-05-06 International Business Machines Corporation Alternate boot record
JP3546654B2 (ja) * 1997-08-07 2004-07-28 株式会社日立製作所 情報記録装置及び情報記録方法
US6215747B1 (en) * 1997-11-17 2001-04-10 Micron Electronics, Inc. Method and system for increasing the performance of constant angular velocity CD-ROM drives
KR100524297B1 (ko) * 1998-03-24 2006-01-12 엘지전자 주식회사 재기록 가능한 디스크와 이를 이용한 기록 방법
US20020067913A1 (en) * 1998-05-15 2002-06-06 Hideo Ando Information recording method and information reproducing method
DE69904285T2 (de) * 1999-02-02 2003-08-28 Matsushita Electric Industrial Co., Ltd. Optisches Aufzeichnungsmedium
US6552982B1 (en) * 1999-03-08 2003-04-22 Matsushita Electric Industrial Co., Ltd. Information recording medium, information recording and reproduction method, and information recording and reproduction apparatus
US6330210B1 (en) * 1999-04-29 2001-12-11 Hewlett-Packard Company Data structure for control information on rewriteable data storage media
US20030157292A1 (en) * 1999-06-23 2003-08-21 Dataplay, Inc. Miniature optical disk for data storage
JP2001155346A (ja) * 1999-11-26 2001-06-08 Toshiba Corp 情報記録媒体、情報記録装置、情報記録方法、情報再生装置、情報再生方法
JP3991543B2 (ja) 2000-01-11 2007-10-17 株式会社日立製作所 撮像装置
US6990058B1 (en) 2000-04-03 2006-01-24 Dphi Acquisitions, Inc. Structure and method for storing data on optical disks
US7051054B1 (en) * 2000-05-30 2006-05-23 Dphi Acquisitions, Inc. Method and apparatus for emulating read/write file system on a write-once storage disk
US6738333B1 (en) 2000-05-30 2004-05-18 Dphi Acquisitions, Inc. Format for recording data in a storage disk
AU2001275040A1 (en) * 2000-05-30 2001-12-11 Dataplay, Inc. Defect management system for write-once storage disk
JP2002082825A (ja) * 2000-06-23 2002-03-22 Sharp Corp ファイル管理方法
DE10034053A1 (de) * 2000-07-13 2002-01-24 Abb Research Ltd Anordnung von Daten auf einem optischen oder magnetooptischen Datenträger
US6798594B2 (en) * 2000-10-10 2004-09-28 Seagate Technology Llc Position sensing system for a disc drive using micro-servo sectors and side-by-side R/W recording elements
US7180849B2 (en) * 2001-05-18 2007-02-20 Sharp Kabushiki Kaisha Optical storage medium enabling uniform light transmittance, optical read/write apparatus for same, and optical read/write method for same
US20050262033A1 (en) * 2002-03-29 2005-11-24 Kazuhiko Yamashita Data recording apparatus, data recording method, program for implementing the method, and program recording medium
US7514037B2 (en) * 2002-08-08 2009-04-07 Kobe Steel, Ltd. AG base alloy thin film and sputtering target for forming AG base alloy thin film
US7613773B2 (en) * 2002-12-31 2009-11-03 Rensselaer Polytechnic Institute Asynchronous network audio/visual collaboration system
US7869315B2 (en) * 2003-02-28 2011-01-11 Samsung Electronics Co., Ltd. Write-once optical disc having update area and access area
US7447786B2 (en) * 2003-05-09 2008-11-04 Oracle International Corporation Efficient locking of shared data that is accessed for reads in a cluster database
US7441097B2 (en) * 2003-09-10 2008-10-21 Seagate Technology Llc Data storage system and method for adaptive reconstruction of a directory structure
DE102004001207A1 (de) * 2004-01-06 2005-07-28 Deutsche Thomson-Brandt Gmbh Verfahren und Vorrichtung zum Aktualisieren von Daten auf einem Plattenspeichermedium
US7663990B2 (en) * 2004-05-21 2010-02-16 Samsung Electronics Co., Ltd. Optical recording medium having access control area and method for recording or reproducing thereof
US20060026432A1 (en) * 2004-07-30 2006-02-02 Weirauch Charles R Drive tracking system for removable media
US20060218201A1 (en) * 2005-03-24 2006-09-28 International Business Machines Corporation System and method for effecting thorough disposition of records
US8108693B2 (en) * 2005-04-01 2012-01-31 Ged-I Ltd. Method for data storage protection and encryption
EP1921626A4 (en) * 2005-08-29 2008-10-01 Sony Corp RECORDING DEVICE, RECORDING METHOD, PLAYING DEVICE, PLAY PROCESS, PROGRAM AND RECORDING MEDIUM
JP5296548B2 (ja) * 2006-11-06 2013-09-25 パナソニック株式会社 記録装置
US8631235B2 (en) * 2007-08-08 2014-01-14 Oracle America, Inc. System and method for storing data using a virtual worm file system
US8095509B2 (en) * 2007-08-11 2012-01-10 Novell, Inc. Techniques for retaining security restrictions with file versioning
US20100250726A1 (en) * 2009-03-24 2010-09-30 Infolinks Inc. Apparatus and method for analyzing text in a large-scaled file
DE102010005172B4 (de) * 2010-01-20 2016-01-14 Siemens Aktiengesellschaft Verfahren zum Betreib eines Archivierungssystems für medizinische Bilddatensätze und Archivierungssystem
US9171044B2 (en) * 2010-02-16 2015-10-27 Oracle International Corporation Method and system for parallelizing database requests
US9405668B1 (en) * 2011-02-15 2016-08-02 Western Digital Technologies, Inc. Data storage device initialization information accessed by searching for pointer information
US10802740B2 (en) 2016-04-21 2020-10-13 Netapp, Inc. Systems, methods, and computer readable media providing arbitrary sizing of data extents
US10459810B2 (en) 2017-07-06 2019-10-29 Oracle International Corporation Technique for higher availability in a multi-node system using replicated lock information to determine a set of data blocks for recovery
KR102521054B1 (ko) 2017-10-18 2023-04-12 삼성전자주식회사 조기 중단에 기반한 심층 신경망의 연산 제어 방법 및 시스템
CN110321325B (zh) * 2019-06-21 2024-05-10 腾讯科技(深圳)有限公司 文件索引节点查找方法、终端、服务器、系统及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6074020A (ja) * 1983-09-30 1985-04-26 Toshiba Corp 記憶装置
JPS60250449A (ja) * 1984-05-18 1985-12-11 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション デ−タ記録方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4468728A (en) * 1981-06-25 1984-08-28 At&T Bell Laboratories Data structure and search method for a data base management system
US4420807A (en) * 1981-08-31 1983-12-13 International Business Machines Corporation Selectively holding data in a buffer for defective backing store tracks
US4408728A (en) * 1981-12-21 1983-10-11 Brunswick Corporation Anti-reverse actuator mechanism
US4611272A (en) * 1983-02-03 1986-09-09 International Business Machines Corporation Key-accessed file organization
JPS59165161A (ja) * 1983-03-11 1984-09-18 インタ−ナシヨナル ビジネス マシ−ンズ コ−ポレ−シヨン ワード・プロセッシング・システムにおけるデータ・セットのボリューム回復方法
US4633393A (en) * 1983-10-21 1986-12-30 Storage Technology Partners Ii Generic key for indexing and searching user data in a digital information storage and retrieval device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6074020A (ja) * 1983-09-30 1985-04-26 Toshiba Corp 記憶装置
JPS60250449A (ja) * 1984-05-18 1985-12-11 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション デ−タ記録方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0397046A (ja) * 1989-09-11 1991-04-23 Victor Co Of Japan Ltd 追記型情報記録媒体の情報管理方法
JPH06342395A (ja) * 1990-08-20 1994-12-13 Internatl Business Mach Corp <Ibm> 構造化データ記憶方法及び媒体
JP2006164283A (ja) * 2004-12-03 2006-06-22 Hewlett-Packard Development Co Lp 取外し可能な記憶媒体のアドレス指定可能なユニットにデータ及び時間値を書き込むシステム及び方法
JP4580330B2 (ja) * 2004-12-03 2010-11-10 ヒューレット−パッカード デベロップメント カンパニー エル.ピー. 取外し可能な記憶媒体のアドレス指定可能なユニットにデータ及び時間値を書き込むシステム及び方法

Also Published As

Publication number Publication date
CA1281424C (en) 1991-03-12
BR8801415A (pt) 1988-11-01
DE3856090D1 (de) 1998-02-05
DE3856090T2 (de) 1998-06-25
EP0284037A3 (en) 1993-03-03
EP0284037B1 (en) 1997-12-29
US4827462A (en) 1989-05-02
EP0284037A2 (en) 1988-09-28
JPH0664548B2 (ja) 1994-08-22

Similar Documents

Publication Publication Date Title
JPS63244145A (ja) ファイル管理装置
US5119291A (en) Modular data storage directories for large-capacity data storage units wherein the index to the records in a sector is located in the next adjacent sector
EP0165382B1 (en) Data processing system including a data storage unit and its method of operation
US4791623A (en) File management system for use in an optical data storage system
US5043967A (en) Structured data storage method and medium
US5210734A (en) Information management method for appendage type additional information recording medium
EP0314186B1 (en) An information management system for writable optical discs
US5113512A (en) System for managing a storage medium reducing physical space needed
JP5000316B2 (ja) オブジェクト・ベースのデータ記憶装置
JP2888958B2 (ja) 部分書き換え可能な記憶媒体におけるファイル管理方式
US20020184184A1 (en) Virtual file system for dynamically-generated web pages
JPH05216593A (ja) 間接アクセス記憶装置
US7051054B1 (en) Method and apparatus for emulating read/write file system on a write-once storage disk
KR20050070117A (ko) 메인 파일 시스템 영역과 가상 파일 시스템 영역을 갖는기록매체
JP4753868B2 (ja) 記録装置、ホスト装置、ドライブ装置、記録方法、指示方法、プログラム、集積回路、再生装置、再生方法および追記型記録媒体
JP4221959B2 (ja) ブリッジファイルシステム、コンピュータシステム、ブリッジファイルシステムを用いたデータ管理方法及び記録媒体
JP3796391B2 (ja) 多用途な間接指定又は複数ボリュームを有するエクステント・ベース・ファイルシステム
US5608905A (en) DOS and Macintosh preformatted computer storage media
WO1989001663A1 (en) System for accessing information stored as a link-list with back-pointers on an optical disk by using the back-pointers to generate a directory
CN1166227A (zh) 用于管理记录和检索信息文件的文件系统
JPH01116819A (ja) 階層型ディレクトリによる光ディスク管理システム
JPH0254327A (ja) ディスクデータの管理方式
JP2001291367A (ja) 光記録媒体並びに光記録媒体記録方法及び光記録媒体再生方法
JP2689116B2 (ja) 光ディスクの記憶管理方法
JPH09139052A (ja) フアイル管理方法