標準仕様書(TS)    TS X 0038:2005


DVD-書換形ディスクのボリューム構造
及びファイル構造

Volume and file structure of DVD rewritable Disc



序文

この文書は,1997年にDVDフォーラムから発行されたDVD Specifications for Rewritalbe Disc(DVD-RAM) - Part 2: FILE SYSTEM SPECIFICATIONS version 1.0及び1998年に発行されたVersion-up Information(from 1.0 to 1.1)を基に作成した標準仕様書(TS)である。


1. 一般

1.1 適用範囲

この標準仕様書(TS)は,コンピュータシステムの利用者の間の情報交換をサポートするDVD-書換形ディスクのボリューム構造及びファイル構造のためのフォーマットを規定する。

このフォーマットは, JIS X 0607に基づき, 標準情報TS X 0039に適合しなければならない。

この標準仕様書(TS)は,JIS X 0607のサブセットを定義することによって,データ交換を最大限に行い, JIS X 0607を実装するための費用及び複雑性を最小限に抑える。この標準仕様書(TS)の制約及び用件は, 非逐次記録を用いる書換形媒体としてのボリューム構造及びファイル構造を簡素化するために, TS X 0039に追加される。


1.2 引用規格

次の規格等は,この標準仕様書(TS)に引用されることによって,この標準仕様書(TS)の規定の一部となる。これらの引用規格のうちで,発効年(又は発行年)を付記してあるものは,記載の年の版だけがこの標準仕様書(TS)の規定を構成するものであって,その後の改正版・追補は適用しない。発効年(又は発行年)を付記していない引用規格等は,その最新版(追補を含む。)を適用する。

JIS X 6243:1998 120mm DVD-書換形ディスク(DVD-RAM)
 ISO/IEC 16824:1999 120 mm DVD rewritable disk (DVD-RAM) が, この規格に一致している。

JIS X 0201:1997 7ビット及び8ビットの情報交換用符号化文字集合
 備考 ISO/IEC 646:1991 ISO 7-bit coded character set for information interchange が,この規格に対応している。

JIS X 3030-1994 移植可能なオペレーティングシステムのインタフェース(POSIX) 第1部 応用プログラム向けのインタフェース(API) [プログラム言語C]
 備考 ISO/IEC 9945-1:1990 Portable Operating System Interface (POSIX) -- Part 1: System Application Program Interface (API) [C Language] が,この規格に一致している。

JIS X 0607:1996 非逐次記録を用いる追記形及び書換形の情報交換用媒体のボリューム及びファイルの構造
 備考 ISO/IEC 13346:1995 Volume and file structure of write-once and rewritable media using non-sequential recording for information interchange が, この規格に一致している。

JIS X 0606:1998 情報交換用CD-ROMのボリューム構造及びファイル構造
 備考 ISO 9660:1988 Volume and file structure of CD-ROM for information interchange が, この規格の前の版(1990年版)に対応している。

ISO/IEC 13800:1996 Procedure for resistration of identifiers and attributes for volume and file structure

The Unicode Standard, Version 1.1, Unicode Consortium

TS X 0039:2005 ユニバーサルディスクフォーマット(UDF) 1.50
 備考 Universal Disk Format Specification Revision 1.50, OSTA, 1997-02 が, この規定に一致している。


1.3 定義

この標準仕様書(TS)で用いる主な用語の定義は,次のとおりとする。

1.3.1 開始点 (anchor point) ボリューム記述子列のエクステントを識別する記述子を記録できる,論理セクタ番号の規定された集合の中の一つの論理セクタ番号。

1.3.2 応用プログラム (application) ファイルの内容を処理し,ファイル又はそのファイルを記録したボリュームに関連するシステム指定の属性データも処理できるプログラム。

1.3.3 バイト (byte) 一つの単位として扱う8個の2進数字の列。

1.3.4 巡回冗長検査 [cyclic redundancy check(CRC)] バイト列の正しさを計算する方法。

1.3.5 データ編集者 (data preparer) ボリュームグループ上に記録するデータの編集を管理する人又は他の実体。

1.3.6 記述子 (descriptor) ボリューム又はファイルに関する記述的情報をもつ構造。

1.3.7 エクステント (extent) 次の二つの定義を与える。

1.3.8 ファイル集合 (file set) ファイル又はディレクトリの集合。

1.3.9 ファイル集合番号 (file set number) 論理ボリュームのファイル集合を識別する番号。ファイル集合番号の一つは0とする。

1.3.10 ファイル集合記述子番号 (file set descriptor number) ファイル集合記述子列のファイル集合記述子を識別する番号。

1.3.11 グループID (group ID) 利用者のグループの識別子。

1.3.12 処理システム (implementation) 情報処理システムが, 作成システム,受領システム又はその両方のシステムとして動作することを可能とする処理の集合。

1.3.13 論理ブロック (logical block) 論理ボリューム中の割付けの単位。

1.3.14 論理セクタ (logical sector) ボリューム中の割付けの単位。

1.3.15 論理ボリューム (logical volume) 一つ以上の区画の集合。

1.3.16 作成システム (originating system) 他のシステムとのデータ交換を目的としてボリューム集合の中にファイルの集合を作成することができる情報処理システム。

1.3.17 区画 (partition) ボリュームの中で論理セクタからなる一つのエクステント。

1.3.18 区画番号 (partition number) ボリュームの区画を識別する番号。区画番号は,0から始まる昇順に割り当てた連続した整数とする。

1.3.19 物理セクタ (physical sector) JIS X 6243が規定する割当て単位。

1.3.20 基本ボリューム記述子番号 (primary volume descriptor number) ボリューム記述子列の基本ボリューム記述子を識別する番号。ボリューム記述子列の一つの最新基本ボリューム記述子だけが,基本ボリューム記述子番号0をもつ。

1.3.21 受領システム (receiving system) データ交換を目的として他のシステムによって形成されたボリューム集合からファイル集合を読み取ることのできる情報処理システム。

1.3.22 セクタ (sector) 媒体の他の番地付け可能部分とは独立にアクセスできる番地付け可能最小部分のデータ欄。

1.3.23 記録のための規格 (standard for recording) 媒体に記録される情報用の記録方法及び番地指定方法を規定する規格。記録のための規格は,JIS X 06071/5.10が規定している。

1.3.24 2の補数 (twos complement) その数の各ビットを反転させ(1を0に置き換え,0を1に置き換える),1を加えて計算される数値。ただし,オーバフローは無視する。

1.3.25 利用者 (user) 処理システムが提供するサービスの実行を呼び出す人又は他の実体。例えば,アプリケーション。

1.3.26 利用者ID (user ID) 利用者の識別子。

1.3.27 ボリューム (volume) 関係する記録のための規格が規定するセクタ番地空間。

1.3.28 ボリューム記述子順序番号 (volume descriptor sequence number) ボリューム記述子列のボリューム記述子を識別する番号。ボリューム記述子順序番号と同一のすべてのボリューム記述子は,同一の内容をもつ。最新記述子は, JIS X 06073/8.4.3が規定している。

1.3.29 ボリューム順序番号 (volume sequence number) ボリューム集合中のボリュームに対して,1から始まる昇順に連続した整数を割り当てた番号。

1.3.30 ボリューム集合 (volume set) 同一のボリューム集合識別子をもつ一つ以上のボリュームの集合。


1.4 記法

1.4.1 数値記法

10進記法の数値は,10進数字, つまり0〜9によって表す。Digit(s)は, 0〜9の10進数字を用いて表す。

16進記法の数値は,一つ以上の16進数字, つまり末尾に"h"を付した0〜9及びA〜F, の列として表す。

2進記法の数値は,一つ以上の2進数字, つまり末尾に"b"を付した0〜1, の列として表す。ZEROは, 値0をもつ1ビットを示す。ONEは, 値1をもつ1ビットを示す。

1.4.2 算術記法

記法ip(x)は,xの整数部分を意味する。

記法rem(a,b)は,a-b×ip(a/b)を意味する。ここで,a及びbは整数とする。

1.4.3 ビット欄

特定の欄又は欄の一部を,ビットの配列とする。このビットの配列をビット欄と呼ぶ。nビット欄でのビット位置は,最下位のビットを0とし,最上位のビットをn-1として番号付けをする。

1.4.4 文字列

バイト列の値は,JIS X 0201に従って符号化した文字の引用列によって規定する。例えば,"Sheep"は,53h,68h,65h,65h, 70hのバイト列を表す。

1.4.5 記述子フォーマット

記述子フォーマットの記法は,JIS X 06071/6.3に従う。

1.4.6 記述子列スキーマ

記述子列スキーマの記法は,JIS X 06071/6.3に従う。

1.4.7 短縮形

この標準仕様書(TS)では,次の短縮形を用いる。


1.5 記述子欄のデータ種別

1.5.1 数値

Uint8で指定する8ビットの数値は,1バイト欄内に8ビットの符号なしの数字として記録する。

TS X 0039が規定する複数バイトの数値は,リトルエンディアン表現で記録する。

複数バイトの数値は,次のどれか一つの種別によって規定する。

1.5.2 文字集合及び文字符号化

charspecによって指定する記述子欄は,TS X 00392.1.2が定義する文 字集合の種別及び文字集合情報から構成される。

文字集合CS0は,FEFFh及びFFFEhを除いたUnicode 1.1が規定するd文字で構成され,TS X 00392.1.1が規定するOSTA圧縮Unicodeフォーマットで記録する。TS X 00392.1.3が規定するdstring又はd文字によって指定される記述子欄は,この文字集合を用いて記録する。

1.5.3 日時表示

TS X 00392.1.4が規定する日時表示を表1.5.3.1に示す。

表1.5.3.1 日時表示
RBP長さ名前内容
0 2 種別及び時間帯 LB16
2 2 LB16
4 1 Uint8
5 1 Uint8
6 1 Uint8
7 1 Uint8
8 1 Uint8
9 1 1/100秒 Uint8
10 1 100マイクロ秒 Uint8
11 1 マイクロ秒 Uint8

1.5.3.1 種別及び時間帯(RBP0)

最上位の4ビットは,4ビット数として解釈し,日時表示の解釈を規定する。日時表示が現地時を指定していることを示すために,この数値は,1を設定する。

最下位の12ビットは,2の補数表現で符号付き2ビット数として解釈し,次のとおりに解釈する。

1.5.3.2 年(RBP2)

この欄は,1〜9999の数値で年を指定する。

1.5.3.3 月(RBP4)

この欄は,1〜12の数値でその年の月を指定する。

1.5.3.4 日(RBP5)

この欄は,1〜31の数値でその月の日を指定する。

1.5.3.5 時(RBP6)

この欄は,0〜23の数値でその日の時間を指定する。

1.5.3.6 分(RBP7)

この欄は,0〜59の数値でその時間の分を指定する。

1.5.3.7 秒(RBP8)

この欄は,0〜59の数値でその分の秒を指定する。

1.5.3.8 1/100秒(RBP9),100マイクロ秒(RBP10),マイクロ秒(RBP11)

特定のオペレーティングシステム用に,TS X 00393.1.1.1, 3.1.1.2及び3.1.1.3が規定する。

1.5.4 実体識別子

実体ID(EntityID)で表す実体識別子は,JIS X 06071/7.4及びTS X 00392.1.5が規定する。

1.5.5 記述子タグ

tagで表す記述子タグは,次の2種別に分類される。

1.5.6 エクステント記述子

extent_adが表すエクステント記述子は,JIS X 06073/7.1が規定する。

1.5.7 短割付け記述子

short_adで表す短割付け記述子は,JIS X 06074/14.14.1が規定する。

1.5.8 長割付け記述子

long_adで表す長割付け記述子は,JIS X 06074/14.14.2が規定する。

1.5.9 論理ブロック番地

lb_addrで表す論理ブロック番地は,JIS X 06074/7.1が規定する。


1.6 記述子の記録

ボリューム構造(又はファイル構造)において,フォーマットをバイト位置(BP)で規定するすべての記述子は,記述子の先頭バイトを論理セクタ(又は論理ブロック)の先頭バイトと一致させて記録する。

ボリューム構造(又はファイル構造)の中でフォーマットを相対バイト位置(RBP)で規定する記述子は,論理セクタ中の位置に関する制約はない。ただし記述子中の論理セクタの位置は,適用できる記述子の中で規定する。

記述子を論理セクタ(又は論理ブロック)に記録する際,記述子の終端から論理セクタ(又は論理ブロック)の終端までの空間は,将来の標準化のための予備とし,すべてのバイトを00hに設定する。


2.ボリューム構造

2.1 DVD-書換形ディスクの要件

DVD-書換形ディスクのボリューム構造に関する要件を, 次にまとめる。


2.2 ボリューム空間

DVD-書換形ディスクは,JIS X 6243の物理規定に示す物理ボリュームフォーマットの1種別をもつ。この物理ボリュームフォーマットに関しては,図2.2.1にとおりにボリューム空間を定義する。ボリューム空間は, 各ゾーンから集めた24個の利用者領域で構成され,その空間は, 欠陥管理を用いることによって, 欠陥なしにされていなければならない。

ボリューム空間に関しては,論理セクタの長さは2048バイトであり,物理セクタの長さと等しい。ボリュームの各論理セクタは,一意の論理セクタ番号で識別する。論理セクタ番号は昇順に割り付ける連続の整数であるが,論理セクタ番号に対応する物理ボリュームフォーマットのすべての物理セクタ番号は,連続でなくてよい。物理セクタ番号と欠陥管理後の論理セクタ番号との間の関係は,JIS X 6243の物理規定に示される。

論理セクタ番号0は物理セクタ番号031000h(この物理セクタが欠陥セクタでない場合)のセクタに割り付ける。


a) 物理ボリュームフォーマット


b) ボリューム空間

図2.2.1 論理セクタの割付け
 End PSN: データ領域末尾に位置する物理セクタの物理セクタ番号
 Last LSN: 最後の論理セクタ番号


2.3 ボリューム構造

ボリューム構造は, ボリューム認識列, 開始点,主ボリューム記述子列,予備ボリューム記述子列及び論理ボリューム保全列をもつ。

ボリューム認識列は,ボリューム空間上において論理セクタ番号16で始まる連続した論理セクタに配置する。ボリューム認識列は,拡張領域先頭記述子,NSR記述子,拡張領域終端記述子を含み,場合によっては起動記述子を含む。

開始点は,次の三つのセクタの少なくとも二つに割り当てる。

各開始点は,主ボリューム記述子列及び予備ボリューム記述子列の両方のエクステントを指定する開始ボリューム記述子ポインタで構成する。

主ボリューム記述子列及び予備ボリューム記述子列は,基本ボリューム記述子,処理システム用ボリューム記述子,区画記述子,論理ボリューム記述子,及び未割付け空間記述子を含み,場合によっては終端記述子及び後続の論理セクタを含む。主ボリューム記述子列及び予備ボリューム記述子列の両方のエクステントは,それぞれ最小長16論理セクタの長さをもつ。論理ボリューム記述子は,論理ボリューム保全列のエクステントを指定する。

論理ボリュームに対する論理ボリューム保全列記述子は,論理ボリューム保全列に記録する。

区画は,ボリュームのエクステントであり,区画番号によって識別しなけれぱならない。区画に関する情報は,区画記述子に記録する。論理ボリューム記述子は,論理ボリューム識別情報,論理ボリュームの諭理ブロックのサイズ及び論理ボリュームを構成する区画の順序リストを指定する。論理ボリューム空間は単一区画で構成する。

区画の中の論理セクタは,同じ長さの論理ブロックとして編成する。区画の各論理ブロックは,一意な論理ブロック番号(LBN)で識別する。論理ブロック番号は,昇順に割り振った連続した整数でなければならない。論理ブロック番号0は,論理ボリューム空間での最も小さい論理セクタ番号をもつ論理セクタに割り当てる。

ボリューム構造の例を,図2.3.1に示す。


図2.3.1 ボリューム構造の例
太線枠: ボリューム構造
LBN=LSN-272 (272は, 論理ボリューム空間の先頭LSN)

備考 記述子などの記録位置は,参考として示しただけであり,これに限定するものではない。


2.4 ボリューム認識列

フォーマットのボリューム認識は,JIS X 0607の第2部に従わなければならない。ボリューム認識空間は,論理セクタの連続列であり,ボリューム空間の先頭の論理セクタで始まる。最初の16個の論理セクタは,TS X 0039が規定するシステム用に確保している。フォーマットのボリューム認識列は,論理セクタ番号16をもつセクタで始まる連続したセクタに記録する。

ボリューム認識列は,CD-ROMボリューム記述子集合及び拡張領域から構成され,図2.4.1のスキーマに従って記録する。

[ボリューム認識列]{
  <CD-ROMボリューム記述子集合>0+1
  [拡張領域]{
      <拡張領域先頭記述子>1
      {<ボリューム構造記述子>|<起動記述子>}n+
      <拡張領域終端記述子>1
  }1
}
図2.4.1 ボリューム認識列のスキーマ

ボリューム認識列のボリューム構造記述子の一つとして,2.4.2で規定するNSR記述子がある。JIS X 06072/9.4及びTS X 00395.3が指定する起動記述子は,拡張領域に記録できる。

2.4.1 拡張領域先頭記述子

JIS X 06072/9.2が規定する拡張領域先頭記述子を表2.4.1.1に示す。

表2.4.1.1 拡張領域先頭記述子
BP長さ名前内容
0 1 構造種別 Uint8=0
1 5 規格識別子 バイト="BEA01"
6 1 構造版数 Uint8=1
7 2041 構造データ 00h バイト

2.4.1.1 構造種別(BP0)

ボリューム構造記述子の種別を識別するために, 0を指定する。

2.4.1.2 規格識別子(BP1)

拡張領域先頭記述子を識別するために, "BEA01"を指定する。

2.4.1.3 構造版数(BP6)

JIS X 0607で指定するこの記述子の版数を表すために, 1を指定する。

2.4.1.4 構造データ(BP7)

将来の標準化のためにの予備とし,すべてのバイトを00hに設定する。

2.4.2 NSR記述子

JIS X 06073/9.1が規定するNSR記述子を表2.4.2.1に示す。

表2.4.2.1 NSR記述子
BP長さ名前内容
0 1 構造種別 Uint8=0
1 5 規格識別子 バイト="NSR02"
6 1 構造版数 Uint8=1
7 1 予備 00h バイト
8 2040 構造データ 00h バイト

2.4.2.1 構造種別(BP0)

ボリューム構造記述子の種別を識別するために,0を指定する。

2.4.2.2 規格識別子(BP1)

NSR記述子を識別するために,"NSR02"を指定する。

2.4.2.3 構造版数(BP6)

JIS X 0607で規定するこの記述子の版数を表すために,1を指定する。

2.4.2.4 予備(BP7)

将来の標準化のための予備とし,00hを設定する。

2.4.2.5 構造データ(BP8)

将来の標準化のための予備とし,すべてのバイトを00hに設定する。

2.4.3 拡張領域終端記述子

JIS X 0607が規定する拡張領域終端記述子を表2.4.3.1に示す。

表2.4.3.1 拡張領域終端記述子
BP長さ名前内容
0 1 構造種別 Uint8=0
1 5 規格識別子 バイト="TEA01"
6 1 構造版数 Uint8=1
7 2041 構造データ 00h バイト

2.4.3.1 構造種別(BP0)

ボリューム構造記述子の種別を識別するために, 0を指定する。

2.4.3.2 規格識別子(BP1)

拡張領域終端記述子を識別するために,"TEA01"を指定する。

2.4.3.3 構造版数(BP6)

JIS X 0607が規定するこの記述子の版数を表すために,1を指定する。

2.4.3.4 構造データ(BP7)

将来の標準化のための予備とし,すべてのバイトを00hに設定する。


2.5 開始点

開始点は, 開始ボリューム記述子ポインタで構成し,JIS X 06073/8.4.2が規定する主ボリューム記述子列及び予備ボリューム記述子列を識別する。少なくとも2個の開始ボリューム記述子ポインタは,論理セクタ番号256及び,最後の論理セクタ番号-256又は最後の論理セクタ番号をもつセクタに記録する。

2.5.1 開始ボリューム記述子ポインタ

JIS X 06073/10.2が規定する開始ボリューム記述子ポインタを表2.5.1.1に示す。

表2.5.1.1 開始ボリューム記述子ポインタ
BP長さ名前内容
0 16 記述子タグ tag(タグ識別子=2)
16 8 主ボリューム記述子列エクステント extent_ad
24 8 予備ボリューム記述子列エクステント extent_ad
32 480 予備 00h バイト

2.5.1.1 記述子タグ(BP0)

この記述子に対するtagのタグ識別子欄の内容を2とする。

2.5.1.2 主ボリューム記述子列エクステント(BP16)

主ボリューム記述子列のエクステントを指定する。

2.5.1.3 予備ボリューム記述子列エクステント(BP24)

予備ボリューム記述子列のエクステントを指定する。

2.5.1.4 予備(BP32)

将来の標準化のための予備とし,すべてのバイトを00hに設定する。


2.6 ボリューム記述子列

主ボリューム記述子列及び予備ボリューム記述子列は,ボリュームの特徴を指定するために同一のボリューム記述子をもつ。ボリューム記述子は,次の記述のいずれかの種別とする。

ボリューム記述子列のエクステントは,図2.6.1のスキーマに従い,最小長16論理セクタとする。DVD-書換形ディスクの場合,後続の論理セクタはすべて00hバイトに設定する。

[ボリューム記述子列エクステント]{
     <ボリューム記述子>5+16
  [ターミネータ]{
     <ボリューム記述子ポインタ>
    |<終端記述子>
    |<未記録論理セクタ>
  }<後続の論理セクタ>0+
}
図2.6.1 ボリューム記述子列のスキーマ

DVD-書換形ディスクの場合,ボリューム記述子列は,次を含む。

主ボリューム記述子列及び予備ボリューム記述子列の例を図2.3.1に示す。

2.6.1 基本ボリューム記述子

基本ボリューム記述子は,ボリューム及びそのボリュームの属性を識別し,表2.6.1.1に示すフォーマットで記録する。

表2.6.1.1 基本ボリューム記述子
BP長さ名前内容
0 16 記述子タグ tag(タグ識別子=1)
16 4 ボリューム記述子順序番号 LB32
20 4 基本ボリューム記述子番号 LB32
24 32 ボリューム識別子 dstring
56 2 ボリューム順序番号 LB16=1(DVD-書換形ディスク)
58 2 最大ボリューム順序番号 LB16=1(DVD-書換形ディスク)
60 2 交換水準 LB16=2(DVD-書換形ディスク)
62 2 交換最大水準 LB16=2(DVD-書換形ディスク)
64 4 文字集合リスト LB32=00000001h(TS X 00392.2.2.3を参照)
68 4 文字最大集合リスト LB32=00000001h(TS X 00392.2.2.3を参照)
72 128 ボリューム集合識別子 dstring
200 64 記述子用文字集合 charspec(TS X 00392.1.2を参照)
264 64 説明用文字集合 charspec(TS X 00392.1.2を参照)
328 8 ボリューム抄録 extent_ad
336 8 ボリューム著作権通告 extent_ad
344 32 応用プログラム識別子 EntityID
376 12 記録日時 timestamp
388 32 処理システム識別子 EntityID(TS X 00392.1.5を参照)
420 64 処理システム用 バイト
484 4 先行ボリューム記述子列位置 LB32
488 2 フラグ LB16=0(DVD-書換形ディスク)
490 22 予備 00h バイト

2.6.1.1 記述子タグ(BP0)

この記述子に対するtagのタグ識別子欄の内容は,1とする。

2.6.1.2 ボリューム記述子順序番号(BP16)

この記述子に対するボリューム記述子の順序番号を指定する。

2.6.1.3 基本ボリューム記述子番号(BP20)

この基本ボリューム記述子に割り当てた基本ボリューム記述子番号を指定する。

2.6.1.4 ボリューム試別子(BP24)

ボリュームの識別情報を指定する。

2.6.1.5 ボリューム順序番号(BP56)

DVD-書換形ディスクのボリューム集合は,単一のボリュームで構成しているので, 1を設定する。

2.6.1.6 最大ボリューム順序番号(BP58)

DVD-書換形ディスクのボリューム集合は,単一のボリュームで構成しているので, 1を設定する。

2.6.1.7 交換水準(BP60)

DVD-書換形ディスクのボリューム集合は,単一のボリュームで構成しているので, 2を設定する。交換水準は,JIS X 06073/11に規定する。

2.6.1.8 交換最大水準(BP62)

DVD-書換形ディスクのボリューム集合は,単一のボリュームで構成しているので, 2を設定する。

2.6.1.9 文字集合リスト(BP64)

TS X 00392.2.2.3が規定するCS0だけを提供することを示すために,00000001hを設定する。

2.6.1.10 文字最大集合リスト(BP68)

TS X 00392.2.2.4が規定するCS0だけを提供することを示すために,00000001hを設定する。

2.6.1.11 ボリューム集合識別子(BP72)

ボリューム集合の識別情報を指定する。最初の16文字はTS X 00392.2.2.5が規定するとおり,単一の値に設定する。一意の識別子をもつボリューム集合を保証するために,一意部分の最初の8文字は32ビット時間値のCS0の16進表現とし,残りの8文字は処理システム用に使用しないでおく。この欄の残りの文字は, どんな値に設定してもよい。

2.6.1.12 記述子用文字集合(BP200)

ボリューム識別子及びボリューム集合識別子欄で使用可能なd文字を指定する。charspecの内容は, TS X 00392.1.2が規定する。

2.6.1.13 説明用文字集合(BP264)

ボリューム抄録及びボリューム著作権通告エクステントの内容を解釈する方法を指定する。charspecの内容は, TS X 00392.1.2が規定する。

2.6.1.14 ボリューム抄録(BP328)

このボリュームの抄録情報を含む論理セクタのエクステントを指定する。エクステント長が0である場合,抄録を指定しない。

2.6.1.15 ボリューム著作権通告(BP336)

このボリュームの著作権通告情報を含む論理セクタのエクステントを指定する。エクステント長が0である場合,著作権通告を指定しない。

2.6.1.16 応用プログラム識別子(BP344)

応用プログラムの識別情報を指定する。すベてのバイトが00hである場合,応用プログラムを指定しない。

2.6.1.17 記録日時(BP376)

この記述子を記録した日付及び時刻を示す。

2.6.1.18 処理システム識別子(BP388)

処理システムの識別情報を指定する。EntityIDの内容は, TS X 00392.1.5が指定する。

2.6.1.19 処理システム用(BP420)

処理システム用に確保する。

2.6.1.20 先行ボリューム記述子列位置(BP484)

記述子列の一つ前のボリューム記述子列を記録する論理セクタのエクステントの番地を指定する。0を含む場合,エクステントを識別しない。

2.6.1.21 フラグ(BP488)

DVD-書換形ディスクの場合,ボリューム集合が単一ボリュームから成るので, 0に設定する。

2.6.1.22 予備(BP490)

将来の標準化のために確保し,すべてのバイトを00hに設定する。

2.6.2 処理システム用ボリューム記述子

処理システム用ボリューム記述子は, 処理システムを識別し,処理システム用の情報をもち,表2.6.2.1に示すフォーマットで記録する。この記述子は, 特定の論理ボリュームであるボリューム集合中のボリュームの識別を補助する目的をもつ。

表2.6.2.1 処理システム用ボリューム記述子
BP長さ名前内容
0 16 記述子タグ tag(タグ識別子=4)
16 4 ボリューム記述子順序番号 LB32
20 32 処理システム識別子 EntityID(TS X 00392.1.5及び2.2.7.1を参照)
52 460 処理システム用(2.6.3参照) バイト

2.6.2.1 記述子タグ(BP0)

この記述子に対するtagのタグ識別子欄の内容は,4とする。

2.6.2.2 ボリューム記述子順序番号(BP16)

この記述子のボリューム記述子順序番号を指定する。

2.6.2.3 処理システム識別子(BP20)

処理システム用欄の内容を認識し,処理可能な処理システムの識別情報を指定する。EntityIDの内容は,TS X 00392.1.5が規定し,EntityIDの識別子欄は,TS X 00392.2.7.1が規定するとおり,"*UDF LV Info"を設定する。

2.6.2.4 処理システム用(BP52)

TS X 00392.2.7.2が規定し,表2.6.3.1に示すフォーマットで記録する。

2.6.3 処理システム用欄

処理システム用欄は,表2.6.3.1に示すフォーマットで記録する。

表2.6.3.1 処理システム用欄
RBP長さ名前内容
0 64 論理ボリューム識別子文字集合 charspec(TS X 00392.1.2を参照)
64 128 論理ボリューム識別子 dstring
192 36 論理ボリューム情報1 dstring
228 36 論理ボリューム情報2 dstring
264 36 論理ボリューム情報3 dstring
300 32 処理システムID EntityID(TS X 00392.1.5を参照)
332 128 処理システム用 バイト

2.6.3.1 論理ボリューム識別子文字集合(RBP0)

論理ボリューム識別子及び論理ボリューム情報欄(LV Info)に許可された文字集合を指定する。charspecの内容は, TS X 00392.1.2が規定する。

2.6.3.2 論理ボリューム識別子(RBP64)

この記述子によって参照される論理ボリュームを識別する。

2.6.3.3 論理ボリューム情報1(RBP192),論理ボリューム情報2(RBP228),論理ボリューム情報3(RBP264)

TS X 00392.2.7.2.3が規定するとおり, 媒体の識別を補助するための付加情報を記録する。

2.6.3.4 処理システムID(RBP300)

TS X 00392.1.5が規定する。

2.6.3.5 処理システム用(RBP332)

付加的に処理システムに特化した情報を保存するためのもので,その処理システムが使用できる。

2.6.4 区画記述子

区画記述子は, 区画の大きさ及び位置を指定し, 表2.6.4.1に示すフォーマットで記録する。DVD-書換形ディスクは, ボリュームごとに単一区画で構成されているので, 区画記述子だけを記述する。

表2.6.4.1 区画記述子
BP長さ名前内容
0 16 記述子タグ tag(タグ識別子=5)
16 4 ボリューム記述子順序番号 LB32
20 2 区画フラグ(JIS X 0607の図3/12を参照) LB16
22 2 区画番号 LB16=0(DVD-書換形ディスク)
24 32 区画内容(2.6.5参照) EntityID
56 128 区画内容用(3.7.1参照) バイト
184 4 アクセス種別 LB32=4(DVD-書換形ディスク)
188 4 区画開始位置 LB32
192 4 区画長 LB32
196 32 処理システム識別子 EntityID(TS X 00392.1.5を参照)
228 128 処理システム用 バイト
356 156 予備 00h バイト

2.6.4.1 記述子タグ(BP0)

記述子に対するtagのタグ識別子欄は, 5とする。

2.6.4.2 ボリューム記述子順序番号(BP16)

この記述子のボリューム記述子順序番号を指定する。

2.6.4.3 区画フラグ(BP20)

JIS X 0607の図3/12が規定するとおり, 区画の特性を指定する。

2.6.4.4 区画番号(BP22)

DVD-書換形ディスクは, 単一区画で構成されるので, 0を設定する。

2.6.4.5 区画内容(BP24)

区画の内容を解釈する方法の識別情報を指定する。この識別情報は, JIS X 0607の図3/13が規定する。表2.6.5.1に示すフォーマットで記録する。

2.6.4.6 区画内容用(BP56)

この区画記述子で識別される区画上に記述する情報の解釈に必要な情報を指定する。表2.6.6.1に示す区画ヘッダ記述子で構成する。

2.6.4.7 アクセス種別(BP184)

この記述子で記述する区画の論理セクタに許可されるアクセス方法を指定する。DVD-書換形ディスクの場合,書換可能と解釈する4を設定する。

2.6.4.8 区画開始位置(BP188)

区画が始まる論理セクタ番号を指定する。

2.6.4.9 区画長(BP192)

区画を構成する論理セクタ数を指定する。

2.6.4.10 処理システム識別子(BP196)

処理システムの識別情報を指定する。この記述子のEntityIDの内容は, TS X 00392.1.5が規定する。

2.6.4.11 処理システム用(BP228)

処理システム用に確保する。

2.6.4.12 予備(BP356)

将来の標準化用に確保し,すべて00hバイトを設定する。

2.6.5 区画内容欄

区画内容欄は,表2.6.5.1に示すフォーマットで記録する。

表2.6.5.1 区画内容欄
RBP長さ名前内容
0 1 フラグ Unit8=00000000b(DVD-書換形ディスク)
1 23 識別子 バイト="+NSR02"(DVD-書換形ディスク)
24 8 識別子添字 バイト

2.6.5.1 区画内容フラグ(RBP0)

JIS X 0607の図1/10が規定する実体識別子の特性を指定する。DVD-書換形ディスクの場合,00000000bを設定する。

2.6.5.2 区画内容識別子(RBP1)

識別方法は,JIS X 0607の図3/13が規定する。DVD-書換形ディスクの場合,区画の内容がJIS X 0607に従っていることを表す"+NSR02"を設定する。

2.6.5.3 区画内容識別子添字(RBP24)

JIS X 0607の及びTS X 0039が規定していない将来の識別方法を指定する。

2.6.6 論理ボリューム記述子

論理ボリューム記述子は,論理ボリュームの識別情報,論理ボリュームの論理ブロックの大きさ,論理ボリュームを構成する区画の識別情報及び論理ボリュームの属性を指定する。 DVD-書換形デイスクは,ボリュームごとに単一区画をもつので,論理ボリューム記述子の区画マップ欄は単一マップとする。論理ボリューム記述子は,表2.6.6.1フォーマットで記録する。

表2.6.6.1 論理ボリューム記述子
BP長さ名前内容
0 16 記述子タグ tag(タグ識別子=6)
16 4 ボリューム記述子順序番号 LB32
20 64 記述子用文字集合 charspec(TS X 00392.1.2を参照)
84 128 論理ボリューム識別子 dstring
212 4 論理ブロック長 LB32=2048(DVD-書換形ディスク)
216 32 範囲識別子 EntityID(TS X 00392.1.5を参照)
248 16 論理ボリューム内容用 long_ad
264 4 マップ表長 LB32=6(DVD-書換形ディスク)
268 4 区画マップの個数 LB32=1(DVD-書換形ディスク)
272 32 処理システム識別子 EntityID(TS X 00392.1.5を参照)
304 128 処理システム用 バイト
432 8 保全列エクステント extent_ad
440 6 区画マップ(2.6.7参照) バイト

2.6.6.1 記述子タグ(BP0)

この記述子に対するtagのタグ識別子欄は,6とする。

2.6.6.2 ボリューム記述子順序番号(BP16)

この記述子のボリューム記述子順序番号を指定する。

2.6.6.3 記述子用文字集合(BP20)

論理ボリューム記述子欄に許可されるd文字を指定する。charspecの内容は,TS X 00392.1.2が規定する。

2.6.6.4 論理ボリューム識別子(BP84)

論理ボリュームの識別情報を指定する。

2.6.6.5 論理ブロック長(BP212)

論理ブロックの大きさをバイト数で指定するために,DVD-書換形ディスクの場合,2048を設定する。

2.6.6.6 範囲試別子(BP216)

記述子の特定の欄の使用及び制限についての規則を指定する範囲を識別する。この記述子のBntityIDの内容はTS X 00392.1.5及び2.2.4.3が規定する。この標準仕様書(TS)では範囲識別子欄は,"*OSTA UDF Compliant"に設定し,この標準仕様書(TS)が,UDF Revision 1.50に整合するTS X 0039に従っていることを示すために,UDF版数欄を0150hに設定する。

2.6.6.7 論理ボリューム内容用(BP248)

論理ボリュームの最初のファイル集合記述子列に記録しているエクステントの位置及び長さを指定する。

2.6.6.8 マップ表長(BP264)

長さをバイト数で指定するために,DVD-書換形ディスクの場合,6を設定する。

2.6.6.9 区画マップの個数(BP268)

区画マップ欄の長さを指定するために,DVD-書換形ディスクの場合,1を設定する。

2.6.6.10 処理システム識別子(BP272)

処理システムの識別情報を指定する。EntityIDの内容は, TS X 00392.1.5が規定する。

2.6.6.11 処理システム用(BP304)

処理システム用に確保する。

2.6.6.12 保全列エクステント(BP432)

論理ボリューム保全列の最初のエクステントを指定する。

2.6.6.13 区画マップ(BP440)

区画マツプは, TS X 00392.2.4.6が規定するとおり,第1種区画マップに限定する。第1種区画マップは, ボリューム集合のボリューム上の区画を定義する。表2.6.7.1に示すフォーマットで記録する。

2.6.7 第1種区画マップ

第1種区画マップは, 表2.6.7.1に示すフォーマットで記録する。

表2.6.7.1 第1種区画マップ
RBP長さ名前内容
0 1 区画マップ種別 Unit8=1(TS X 00392.2.4.6を参照)
1 1 区画マップ長 Uint8=6
2 2 ボリューム順序番号 LB16=1(DVD-書換形ディスク)
4 2 区画番号 LB16=0(DVD-書換形ディスク)

2.6.7.1 区画マップ種別(RBP0)

区画マップの種別を示すために,TS X 00392.2.4.6が規定す るとおり, 1を設定する。

2.6.7.2 区画マップ長(RBP1)

区画マップの長さをバイト数で指定するために, 6を設定する。

2.6.7.3 ボリューム順序番号(RBP2)

DVD-書換形ディスクのボリューム集合は,単一ボリュームで構成しているので,1を設定する。

2.6.7.4 区画番号(RBP4)

DVD-書換形ディスクの論理ボリュームは,単一区画で構成しているので,0を設定する。

2.6.8 未割付け空間記述子

未割付け空間記述子は,区画を割り当てるため又はボリュームのボリューム記述子列を記録するために使用できるボリューム空間を識別し,表2.6.8.1に示すフォーマットで記録する。TS X 00392.2.5が規定するとおり,空きボリューム空間がない場合でもこの記述子を記録する。

表2.6.8.1 未割付け空間記述子
BP長さ名前内容
0 16 記述子タグ tag(タグ識別子=7)
16 4 ボリューム記述子順序番号 LB32
20 4 割付け記述子の個数 LB32=0(DVD-書換形ディスク)
24 0 割付け記述子 extent_ad

2.6.8.1 記述子タグ(BP0)

この記述子に対するtagのタグ識別子欄は,7をもつ。

2.6.8.2 ボリューム記述子順序番号(BP16)

この記述子のボリューム記述子頗序番号を指定する。

2.6.8.3 割付け記述子の個数(BP20)

この記述子に記述されている割付け記述子の個数を指定する。DVD-書換形ディスクは,使用可能な空ボリューム空間をもたないため, 0を設定する。

2.6.8.4 割付け記述子(BP24)

未割付け空間のエクステントを指定する。

2.6.9 終端記述子

DVD-書換形ディスクの場合,終端記述子がある場合,終端記述子は,ボリューム記述子列及び論理ボリューム保全列のエクステントの終端を指定し,表2.6.9.1に示すフォーマットで記録する。

表2.6.9.1 終端記述子
BP長さ名前内容
0 16 記述子タグ tag(タグ識別子=8)
16 496 予備 00h バイト

2.6.9.1 記述子タグ(BP0)

この記述子に対するtagのタグ識別子欄は,8をもつ。

2.6.9.2 予備(BP16)

将来の標準化用に確保し,すべて00hバイトを設定する。

2.6.10 ボリューム記述子ポインタ

ボリューム記述子ポインタは,ボリューム記述子列のエクステントを指定し,表2.6.10.1に示すフォーマットで記録する。

表2.6.10.1 ボリューム記述子ポインタ
BP長さ名前内容
0 16 記述子タグ tag(タグ識別子=3)
16 4 ボリューム記述子順序番号 LB32
20 8 ボリューム記述子列続きエクステント extent_ad=0(DVD-書換形ディスク)
28 484 予備 00h バイト

2.6.10.1 記述子タグ(BP0)

この記述子に対するtagのタグ識別子欄は,3をもつ。

2.6.10.2 ボリューム記述子順序番号(BP16)

この記述子のボリューム記述子順序番号を指定する。

2.6.10.3 ボリューム記述子列続きエクステント(BP20)

ボリューム記述子列における続きのエクステントを指定する。DVD-書換形ディスクの場合, 続きのエクステントをもたないことを示すために, この欄にはすべて0を設定する。

2.6.10.4 予備(BP28)

将来の標準化用に確保し,すべて00hバイトを設定する。


2.7 論理ボリューム保全列

論理ボリューム保全列は,JIS X 06073/8.8.2が規定するとおり, 論理ボリューム上に記録した情報の状態を記述する。この情報の状態は,論理ボリューム保全記述子で規定する。

論理ボリュームの論理ボリューム保全記述子は,エクステント列として記録する論理ボリューム保全列中に記録する。最初のエクステントは,先行論理ボリューム記述子で記録する。続くエクステントは,いかなる場合においても,論理ボリューム保全記述子で規定する。論理ボリューム保全記述子のエクステント処理は,それらの番地の昇順に処理した記述子とする。処理を未記録論理セクタで終わらせるか,終端記述子又は後続のエクステントを指定する記述子の後に処理する。すべてのエクステントの処理後,処理した最後の論理ボリューム保全記述子を使用し,先行論理ボリューム保全記述子として参照する。

論理ボリュームの状態は,次に示す先行論理保全記述子で指定する。

論理ボリューム保全列は,図2.7.1のスキーマに従って,エクステントの列として記録する。

[論理ボリューム保全記述子列エクステント]{
     <論理ボリューム保全記述子>1+
[ターミネータ]{
     <論理ボリューム保全記述子>
    |<終端記述子>
    |<未記録論理セクタ>
  }  <末尾の論理セクタ>0+
}0+
図2.7.1 論理ボリューム保全記述子列のスキーマ

論理ボリューム保全列の例を図2.3.1に示す。

2.7.1 論理ボリューム保全記述子

論理ボリューム保全記述子は, 論理ボリュームの保全状態を指定し,表2.7.1.1に示すフォーマットで記録する。DVD-書換形ディスクの各ボリュームは,単一の区画で構成しているので,利用可能空間テーブル及びサイズテーブルは一つだけのテーブルとする。

表2.7.1.1 論理ボリューム保全記述子
BP長さ名前内容
0 16 記述子タグ tag(タグ識別子=9)
16 12 記録日時 timestamp
28 4 保全種別 LB32
32 8 保全列続きエクステント Extent_ad
40 32 論理ボリューム内容用(2.7.2参照) バイト
72 4 区画個数 LB32=1(DVD-書換形ディスク)
76 4 処理システム用の長さ(=L_IU) LB32
80 4 利用可能空間テーブル LB32
84 4 テーブルサイズ LB32
88 L_IU 処理システム用(2.7.3参照) バイト

2.7.1.1 記述子タグ(BP0)

この記述子に対するtagのタグ識別子欄は,9をもつ。

2.7.1.2 記録日時(BP16)

この記述子を記述した日付及び時刻を指定する。

2.7.1.3 保全種別(BP28)

JIS X 0607の図3/23が規定する保全記述子の種別を指定する。

種別0は,オープン保全記述子であることを意味する。種別1は,クローズ保全記述子であることを意味する。

2.7.1.4 保全列続きエクステント(BP32)

論理ボリューム保全列の続きエクステントを指定する。この記述子を記録するボリューム中には,このエクステントがある。続きエクステントの長さが0である場合,エクステントは存在しない。

2.7.1.5 論理ボリューム内容用(BP40)

関連する論理ボリュームの上に記録した情報の解釈に必要な情報を指定する。表2.7.2.1に示す論理ボリュームヘッダ記述子は, この欄に記録する。

2.7.1.6 区画個数(BP72)

DVD-書換形ディスクの論理ボリュームは, 単一の区画で構成しているので, 1に設定する。

2.7.1.7 処理システム用の長さ(BP76)

処理システム欄の長さをバイトで指定する。

2.7.1.8 利用可能空間テーブル(BP80)

区画中に利用可能な空間の総量を論理ブロックで指定する。FFFFFFFFhは利用可能な空間がないことを示す。

2.7.1.9 サイズテーブル(BP84)

区画の大きさを論理ブロック数で指定する。

2.7.1.10 処理システム用(BP88)

TS X 00392.2.6.4が指定するとおり, 処理システムの識別 情報を指定し,表2.7.3.1に示すフォーマットで記録する。

2.7.2 論理ボリューム内容用欄の論理ボリュームヘッダ記述子

論理ボリュームヘッダ記述子は,ファイル及びディレクトリの数値識別子を指定し,表2.7.2.1に示すフォーマットで記録する。

表2.7.2.1 論理ボリューム内容用欄の論理ボリュームヘッダ記述子
RBP長さ名前内容
0 8 一意ID LB64
8 24 予備 00h バイト

2.7.2.1 一意ID(RBP0)

関連する論理ボリュームに記述するすべてのファイルエントリ中の一意ID欄の値よりも大きな値を指定する。

2.7.2.2 予備(RBP8)

将来の標準化用に確保し,すべて00hバイトを設定する。

2.7.3 処理システム用欄

TS X 00392.2.6.4で規定する処理システム用欄は,表2.7.3.1に示すフォーマットで記録する。

表2.7.3.1 処理システム用欄
RBP長さ名前内容
0 32 処理システムID EntityID(TS X 00392.1.5を参照)
32 4 ファイル数 LB32
36 4 ディレクトリ数 LB32
40 2 UDF読出し最小版数 LB16
42 2 UDF書込み最小版数 LB16
44 2 UDF書込み最大版数 LB16
46 a 処理システム用 バイト
 a=L_IU-46

2.7.3.1 処理システムID(RBP0)

TS X 00392.1.5が規定する。

2.7.3.2 ファイル数(RBP32)

関連する論理ボリュームのファイルの現在の個数を指定する。

2.7.3.3 ディレクトリ数(RBP36)

関連する論理ボリュームのディレクトリの現在の個数を指定する。

2.7.3.4 UDF読出し最小版数(RBP40)

媒体上の記録可能なすべての構造を読み出すために処理システムがサポートするUDFの最小版数を指定する。この数字は2進化10進数で記録する。例えば,0102hは,UDFのRevision 1.02を示す。

2.7.3.5 UDF書込み最小版数(RBP42)

媒体上のすべての構造に対して変更するために処理システムがサポートするUDFの最小版数を指定する。この数字は2進化10進数で記録する。例えば,0102hは,UDFのRevision 1.02を示す。

2.7.3.6 UDF書込み最大版数(RBP44)

処理システムが提供しなければならないUDFの最大版数を指定する。処理システムによって媒体が変更し,その処理システムの水準が,この欄の現在の値よりも大きいときに,処理システムはこの欄を更新しなければならない。この数字は2進化10進数で記録する。例えば,0105hは,UDFのRevision 1.50を示す。

2.7.3.7 処理システム用(RBP46)

処理システムIDで識別する処理システムに固有の特定の情報を指定する。この欄の長さは,L_UI-46とする。


3.ファイル構造

3.1 DVD-書換形ディスクの要件

DVD-書換形ディスクのファイル構造に関する要件を次に示す。

ディレクトリ構造の例を図3.1.1に示す。


図3.1.1 ディレクトリ構造の例


3.2 ファイル構造

DVD-書換形ディスクのファイル構造は,JIS X 0607の第4部に従う。例として,ファイル集合記述子列,ディレクトリ, 及び方策4のICBをもつファイル構造及び空間ビットマップ記述子は, 表3.2.1に示すフォーマットで記録する。

ファイル集合記述子は,ICBの番地を指定することによって, ファイルの集合を記述しているルートディレクトリを識別する。ディレクトリは,構成ファイルの名前又は構成サブディレクトリの名前を指定するファイル識別記述子及びディレクトリの親ディレクトリを識別するファイル識別記述子の集合から成る。

ファイル識別記述子は,ICBの番地を指定することによって, 親ディレクトリ,構成ファイル又はサブディレクトリを識別する。TS X 0039で規定するとおり,ICB方策種別は, 4及び4096を使う。ICB方策4を使う場合,ICB階層は, ファイルエントリを一つもつ単一のICBで構成する。ファイルエントリは,ファイルの属性及びファイルの位置を指定する。

割り当てるために準備する空間を構成する空間集合は,空間表又は空間ビットマップのいずれかに記録する。空間表は,ICB階層及び未割付け空間エントリを記録する。空間ビットマップは,空間ビットマップ記述子として記録する。

表3.2.1 ファイル構造の例
LBN記述子構造
0〜79 空間ビットマップ記述子 空間ビットマップ
80 ファイル集合記述子 ファイル集合記述子列
81 終端記述子
82 ファイルエントリ(ルートディレクトリ) ルートICB
83 ファイル識別記述子(親ディレクトリ) ルートディレクトリ
ファイル識別記述子(DIR_1)
ファイル識別記述子(DIR_2)
84 ファイルエントリ(DIR_1) DIR_1 ICB
85 ファイル識別記述子(親ディレクトリ) DIR_1ディレクトリ
ファイル識別記述子(FILE_1_1)
ファイル識別記述子(FILE_1_2)
ファイル識別記述子(FILE_1_3)
ファイル識別記述子(FILE_1_4)
ファイル識別記述子(FILE_1_5)
ファイル識別記述子(FILE_1_6)
ファイル識別記述子(FILE_1_7)
ファイル識別記述子(FILE_1_8)
86 ファイルエントリ(FILE_1_1) DIR_1の各ファイルのICB
87 ファイルエントリ(FILE_1_2)
88 ファイルエントリ(FILE_1_3)
89 ファイルエントリ(FILE_1_4)
90 ファイルエントリ(FILE_1_5)
91 ファイルエントリ(FILE_1_6)
92 ファイルエントリ(FILE_1_7)
93 ファイルエントリ(FILE_1_8)
94 ファイルエントリ(DIR_2) DIR_2 ICB
95 ファイル識別記述子(親ディレクトリ) DIR_2ディレクトリ
ファイル識別記述子(FILE_2_1)
ファイル識別記述子(FILE_2_2)
ファイル識別記述子(FILE_2_3)
ファイル識別記述子(FILE_2_4)
ファイル識別記述子(FILE_2_5)
96 ファイルエントリ(FILE_2_1) DIR_2の各ファイルのICB
97 ファイルエントリ(FILE_2_2)
98 ファイルエントリ(FILE_2_3)
99 ファイルエントリ(FILE_2_4)
100 ファイルエントリ(FILE_2_5)


3.3 ファイル集合記述子列

区画に記録したファイル集合は,ファイル集合及びその属性を記述したディレクトリ階層のルートを識別するファイル集合記述子によって識別する。ファイル集合記述子は,JIS X 06074/8.3.1が規定するとおり, ファイル集合記述子列に記録する。ファイル集合記述子列のエクステントは,論理ボリューム記述子の論理ボリューム内容用欄によって識別する。DVD-書換形ディスクは,ボリュームごとに単一のファイル集合で構成しているので,ファイル集合記述子列は, 一つのファイル集合記述子を含み,ファイル集合記述子列は,表3.2.1に示す終端記述子によって終結する。

DVD-書換形ディスクの場合,ファイル集合記述子列は,図3.3.1のスキーマに従って記録する。

[ファイル集合記述子列エクステント]{
         <ファイル集合記述子>
  [ターミネータ]{
         <終端記述子>
        |<未割付け論理ブロック>
  }<末尾の論理ブロック>>0+
}
図3.3.1 ファイル集合記述子列のスキーマ

3.3.1 ファイル集合記述子

ファイル集合記述子は,ファイル及びディレクトリを識別し,表3.3.1.1に示すフォーマットで記録する。

表3.3.1.1 ファイル集合記述子
BP長さ名前内容
0 16 記述子タグ tag(タグ識別子=256)
16 12 記録日時 timestamp
28 2 交換水準 LB16=3(TS X 00392.3.2.1を参照)
30 2 交換最大水準 LB16=3(TS X 00392.3.2.2を参照)
32 4 文字集合リスト LB32=00000001h(TS X 00392.3.2.3を参照)
36 4 文字最大集合リスト LB32=00000001h(TS X 00392.3.2.4を参照)
40 4 ファイル集合番号 LB32=0(TS X 00392.3.2を参照)
44 4 ファイル集合記述子番号 LB32=0(DVD-書換形ディスク)
48 64 論理ボリューム識別子用文字集合 charaspec(TS X 00392.1.2を参照)
112 128 論理ボリューム記述子 dstring
240 64 ファイル集合用文字集合 charaspec(TS X 00392.1.2を参照)
304 32 ファイル集合識別子 dstring
336 32 著作権ファイル識別子 dstring
368 32 抄録ファイル識別子 dstring
400 16 ルートディレクトリICB long_ad
416 32 範囲記述子 EntityID(TS X 00392.1.5を参照)
448 16 後続エクステント long_ad=all 0's(DVD-書換形ディスク)
464 48 予備 00h バイト

3.3.1.1 記述子タグ(BP0)

この記述子に対するtagのタグ記述子欄は,256とする。

3.3.1.2 記録日時(BP16)

記述子を記録した日時及び時刻を示す。

3.3.1.3 交換水準(BP28)

TS X 00392.3.2.1が規定するとおり, 3を設定する。交換水準は,JIS X 06074/15が規定する。

3.3.1.4 交換最大水準(BP30)

TS X 00392.3.2.2が規定するとおり, 3を設定する。

3.3.1.5 文字集合リスト(BP32)

TS X 00392.3.2.3が規定するとおり, CS0だけを利用可能とする ことを示すために,00000001hを設定する。

3.3.1.6 文字最大集合リスト(BP36)

TS X 00392.3.2.4が規定するとおり, CS0だけを利用可能とすることを示すために,00000001hを設定する。

3.3.1.7 ファイル集合番号(BP40)

TS X 00392.3.2が規定するとおり, DVD-書換形ディスクが一つのファイル集合で構成されていることを示すために, 0を設定する。

3.3.1.8 ファイル集合記述子番号(BP44)

DVD-書換形ディスクでは,一つのファイル集合記述子を記録することを示すために, 0を設定する。

3.3.1.9 論理ボリューム識別子用文字集合(BP48)

論理ボリューム識別子欄に許可されているd文字を指定する。charspecの内容は,TS X 00392.1.2が規定する。

3.3.1.10 論理ボリューム識別子(BP112)

ファイル集合を記録する論埋ボリュームの識別子を指定する。

3.3.1.11 ファイル集合用文字集合(BP240)

ファイル集合記述子の範囲内で,JIS X 0607の第4部が規定する記述子の欄で使用可能なd文字を指定する。charspecの内容は,TS X 00392.1.2が規定する。

3.3.1.12 ファイル集合識別子(BP304)

このファイル集合記述子で識別するファイル集合の識別子を指定する。

3.3.1.13 著作権ファイル識別子(BP336)

このファイル集合記述子で識別したファイル集合中に記録した情報に対する著作権通告を含むルートディレクトリの中の一つのファイルを識別する。この欄がすべて00hバイトの場合,著作権ファイルを識別しないことを示す。

3.3.1.14 抄録ファイル識別子(BP368)

このファイル集合記述子で識別したファイル集合中に記録した情報に関する抄録ファイルを含むルートディレクトリの中の一つのファイルを識別する。この欄がすべて00hバイトの場合,抄録ファイルを識別しないことを示す。

3.3.1.15 ルートディレクトリICB(BP400)

long_adによってルートディレクトリを記述するICBの位置を指定する。例えば,表3.2.1では, ルートディレクトリICBは,論理ブロック番号82に位置する。

3.3.1.16 範囲記述子(BP416)

記述子の特定の欄の使用及び制限についての規則を指定する範囲の識別情報を指定する。この記述子のEntityIDの内容は,TS X 00392.1.5及び2.3.2.7が規定している。この標準仕様書(TS)では,範囲記述子欄は"*OSTA UDF Compliant"を設定する。UDF版数欄は,この規定がUDF Revision 1.50に整合することを示すため,0150hに設定する。

3.3.1.17 後続エクステント(BP448)

ファイル集合記述子を記録できる次のエクステントを指定する。DVD-書換形ディスクの場合,次のエクステントは指定していないことを示すために, すべて0を設定する。

3.3.1.18 予備(BP464)

将来の標準化のために確保し,すべて00hバイトを指定する。

3.3.2 終端記述子

終端記述子があるDVD-書換形ディスクの場合,終端記述子はファイル集合記述子列のエクステントを終結させるために指定し,表3.3.2.1に示すフォーマットで記録する。

表3.3.2.1 終端記述子
BP長さ名前内容
0 16 記述子タグ tag(タグ識別子=8)
16 496 予備 00h バイト

3.3.2.1 記述子タグ(BP0)

この記述子に対するtagのタグ記述子欄は, 8とする。

3.3.2.2 予備(BP16)

将来の標準化のために確保し,すべて00hバイトを指定する。


3.4 ディレクトリ

一つのディレクトリは,0個以上のファイル又はディレクトリの識別情報を含む。ディレクトリ階層は,単一のルートディレクトリから分岐するディレクトリの集合とする。

ディレクトリは,JIS X 06074/8.6が規定するとおり, ファイル識別記述子の集合であり,図3.4.1のスキーマに従って記録する。

{
     <ファイル識別記述子>
} 0+
図3.4.1 ディレクトリのスキーマ

ファイル識別記述子は,相対バイト位置で指定し,JIS X 06074/13が規定するとおり, 論理ブロック中に記録できる場所には,どのような制約もない。最後の記述子の終了から論理ブロックの終了までのすべての空間は,すべて00hバイトを記録する。

3.4.1 ファイル識別記述子

ファイル識別記述子は,構成ファイルの名前若しくは構成サブディレクトリの名前を指定するか,又はディレクトリの親ディレクトリを識別する。ファイル識別記述子は,ICBの番地を指定することによって, 親ディレクトリ,構成ファイル又は構成サブディレクトリを識別し,表3.4.1.1に示すフォーマットで記録する。

表3.4.1.1 ファイル識別記述子
RBP長さ名前内容
0 16 記述子タグ tag(タグ識別子=257)
16 2 ファイル版数 LB16=1(TS X 00392.3.4.1を参照)
18 1 ファイル特性 Unit8
19 1 ファイル識別子の長さ(=L_FI) Unit8
20 16 ICB long_ad
36 2 処理システム用の長さ(=L_IU) LB16
38 L_IU 処理システム用 EntityID(TS X 00392.1.5を参照)
a L_FI ファイル識別子 d文字
b c 埋込み バイト
 a=L_IU+38
 b=L_FI+L_IU+38
 c=4×ip(L_FI+L_IU+38+3)/4)-(L_FI+L_IU+38)

3.4.1.1 記述子タグ(RBP0)

記述子に対するtagのタグ記述子欄は,257とする。

3.4.1.2 ファイル版数(RBP16)

一つのファイルには一つの版数しかないので,TS X 00392.3.4.1が 規定するとおり, 1を設定する。

3.4.1.3 ファイル特性(RBP18)

ファイルの特性を指定し,JIS X 06074/14.4.3が規定するとおり, 存在ビット,ディレクトリビット,削除ビット及び親ビットをもつ。種々のオペレーティングシステムでのファイル特性ビットの使用に関しては, TS X 00393.3.1.1が規定する。

3.4.1.4 ファイル識別子の長さ(RBP19)

ファイル識別子欄の長さをバイト数で指定する。ファイル識別子欄の親ビットをONEに設定した場合,ファイル識別子欄の長さは,JIS X 06074/14.4.4が規定するとおり, 0を設定する。

3.4.1.5 ICB(RBP20)

long_adでファイルを記述するICBの番地を指定する。

3.4.1.6 処理システム用の長さ(RBP36)

処理システム用欄の長さをバイト数で指定する。L_IUは,4の整数倍とする。TS X 00392.3.4.2が規定するとおり, 処理システム用欄を使用していないことを示すために,0を設定してもよい。

3.4.1.7 処理システム用(RBP38)

TS X 00392.3.4.3が規定するとおり, 処理システム用欄の長さが0でない場合,最初の32バイトは処理システム実体識別子を指定すると解釈する。EntityIDの内容は,TS X 00392.1.5が規定する。

3.4.1.8 ファイル識別子(RBPa)

ICB欄で識別するICBによって記述したファイルの識別情報を指定する。特定のオペレーティングシステム用のファイル記述子翻訳アルゴリズムの概要は,TS X 00394.2.2.1が規定する。

3.4.1.9 埋込み(RBPb)

ip(L_FI+L_IU+38+3)/4)-(L_FI+L_IU+38)バイトの長さであり,すべて00hバイトを設定する。


3.5 ICB

ICBは,JIS X 06074/8.10が定義する。ファイルの各インスタンスは,情報制御ブロック(ICB)中のエントリで記述する。ファイルのインスタンスを記述するエントリの集合は,一つ以上のICB中のエントリで記述する。これらのICBは,ICB階層をもつ。TS X 00392.3.5.1が規定するとおり, ICB方策4及び4096を使う。ICB方策4を使う場合,ICB階層は,1個のファイルエントリをもつ単一ICBで構成する。ICB方策4096は,TS X 00396.6で定義され,JIS X 06074/8.10が設定するとおり, ファイルのすべての版数の履歴を利用可能とするのに有効となる。

3.5.1 ファイルエントリ

ファイルは,そのファイル属性及びファイルの記録されたデータの位置を指定するファイルエントリによって記述する。ファイルエントリは,ICBに記録した直接エントリであり,表3.5.1.1に示すフォーマットで記録する。

表3.5.1.1 ファイルエントリ
BP長さ名前内容
0 16 記述子タグ tag(タグ識別子=261)
16 20 ICBタグ(3.5.2参照) icbtag
36 4 利用者ID LB32
40 4 グループID LB32
44 4 許可条件(3.5.4参照) LB32
48 2 ファイルリンク数 LB16
50 1 レコードフォーマット Uint8=0(TS X 00392.3.6.1を参照)
51 1 レコード表示属性 Uint8=0(TS X 00392.3.6.2を参照)
52 4 レコード長 LB32=0(TS X 00392.3.6.3を参照)
56 8 情報長 LB64
64 8 記録済み論理ブロック数 LB64
72 12 アクセス日時 timestamp
84 12 変更日時 timestamp
96 12 属性日時 timestamp
108 4 チェックポイント LB32
112 16 拡張属性ICB long_ad
128 32 処理システム識別子 EntityID(TS X 00392.1.5を参照)
160 8 一意ID LB64(TS X 00392.3.6.5を参照)
168 4 拡張属性の長さ(=L_EA) LB32
172 4 割付け記述子の長さ(=L_AD) LB32
176 L_EA 拡張属性(3.6参照) バイト
a L_AD 割付け記述子(3.8参照) バイト
 a=L_EA+176

3.5.1.1 記述子タグ(BP0)

この記述子に対するtagのタグ記述子欄は, 261とする。

3.5.1.2 ICBタグ(BP16)

ICBタグは,ICB方策種別,ファイル種別及びファイル特性を指定する。表3.5.2.1に示すフォーマットで記録する。

3.5.1.3 利用者ID(BP36)

ファイル所有者の利用者IDを指定する。TS X 00393.3.3.1が規定するとおり, 利用者識別子の概念を利用可能としないオペレーティングシステムでは,処理システムは,無効な利用者IDであることを示すために, 232-1に設定する。

3.5.1.4 グループID(BP40)

ファイル所有者のグループIDを指定する。TS X 00393.3.3.2が規定するとおり, グループ記述子の概念を利用可能としないオペレーティングシステムでは,処理システムは,無効なグループIDであることを示すために, 232-1に設定する。

3.5.1.5 許可条件(BP44)

利用者のクラス別に許可されているファイルアクセスを指定し,表3.5.4.1に示すフォーマットで記録する。

3.5.1.6 ファイルリンク数(BP48)

このICBを識別するファイル識別記述子の個数を指定する。

3.5.1.7 レコードフォーマット(BP50)

ファイルに記録された情報の構造を指定していないことを示すために,TS X 00392.3.6.1が規定するとおり, 0を設定する。

3.5.1.8 レコード表示属性(BP51)

ファイルに記録した情報の構造を指定していないことを示すために,TS X 00392.3.6.2が規定するとおり, 0を設定する。

3.5.1.9 レコード長(BP52)

ファイルに記録された情報の構造を指定していないことを示すために,TS X 00392.3.6.3が規定するとおり, 0を設定する。

3.5.1.10 情報長(BP56)

ファイルサイズをバイト数で指定する。ファイル本体の割付け記述子の情報長の和に等しくなけれぱならない。

3.5.1.11 記録済み論理ブロック数(BP64)

ファイル本体の割付け記述子によって指定する記録した論理ブロックの個数を指定する。

3.5.1.12 アクセス日時(BP72)

ファイルを作成した最新時間又はこのファイルエントリを記録するのに前のファイルを読み出した最新の時間を指定する。JIS X 06074/14.9.12の規定するとおり,ファイルエントリを記録してからのファイルの読み出しは,無視する。

3.5.1.13 変更日時(BP84)

ファイルを作成した,又はファイルの書き込みした最新時間を指定する。この日時は,ファイル日時拡張属性で指定したファイル作成日時よりも前になることはない。

3.5.1.14 属性日時(BP96)

ファイルの作成,又はファイル属性の修正の最新時間を指定する。この日時は,ファイル日時拡張属性で指定したファイル作成日時よりも前になることはない。

3.5.1.15 チエックポイント(BP108)

ファイルの最初のインスタンスは, 1に設定し,利用者が指示するときに1を加える。

3.5.1.16 拡張属性ICB(BP112)

JIS X 06074/9が規定する拡張属性ファイルを記述するICBを指定する。拡張属性ICBを指定していない場合,エクステントの長さは, 0に設定する。特定のオペレーティングシステム用の拡張属性は,TS X 00393.3.4が規定する。

3.5.1.17 処理システム識別子(BP128)

処理システムの識別情報を指定する。この記述子のEntityIDの内容は,TS X 00392.1.5が規定する。

3.5.1.18 一意ID(BP160)

ファイルの数値記述子を指定する。同じ内容をもつすべてのファイルエントリは,同じファイル又はディレクトリを記述する。TS X 00392.3.6.5が規定するとおり, ルートディレクトリ用に,この値は0に設定し,1から15までの値は, 特定の処理システム用に確保する。

3.5.1.19 拡張属性の長さ(BP168)

拡張属性欄の長さをバイト数で指定する。L_EAは,4倍の整数とする。

3.5.1.20 割付け記述子の長さ(BP172)

割付け記述子欄の長さをバイト数で指定する。

3.5.1.21 拡張属性(BP176)

JIS X 06074/9が定義する拡張属性空間を含む。記録した拡張属性は,最大L_EAバイトを占め,未使用バイトは00hに設定する。特定のオペレーティングシステム用の拡張属性は,TS X 00393.3.4が規定する。

3.5.1.22 割付け記述子(BPa)

JIS X 06074/12.1が定義する割付け記述子列を記述する。DVD-書換形ディスクの場合,短割付け記述子だけを使用する。

3.5.2 ICBタグ

TS X 00392.3.5が規定するとおり, ICBタグは, 方策種別,ファイル種別及びファイル特性を指定し,表3.5.2.1に示すフォーマットで記述する。方策4096用のICBタグのパラメタは,TS X 00396.6が規定する。

表3.5.2.1 ICBタグ
RBP長さ名前内容
0 4 記録済み直接エントリの個数 LB32
4 2 方策種別 LB16
6 2 方策パラメタ LB16
8 2 最大エントリの個数 LB16
10 1 予備 00h バイト
11 1 ファイル種別 Uint8
12 6 親ICB位置 lb_addr
18 2 フラグ(3.5.3参照) LB16

3.5.2.1 記録済み直接エントリの個数(RBP0)

このエントリより前に,このICB階層中に記録した直接エントリの個数を指定する。

3.5.2.2 方策種別(RBP4)

4又はTS X 00392.3.5.1が規定する4096に設定する。方策種別は,JIS X 06074/14.6.2が規定する。

3.5.2.3 方策パラメタ(RBP6)

方策種別欄で規定した方策によって解釈する。

3.5.2.4 最大エントリの個数(RBP8)

このICBに記述できる直接エントリ又は間接エントリの最大個数を設定する。

3.5.2.5 予備(RBP10)

将来の標準化のために確保し,00hバイトを記録する。

3.5.2.6 ファイル種別(RBP11)

JIS X 06074/14.6.6が規定するファイルの種別を指定する。値4は,このファイルがディレクトリであることを示す。TS X 00392.3.5.2が規定するとおり,値5は,バイト単位でアクセス可能な標準的なファイルに対して使用し,値0ではない。値1は,記述子が未割付け空間エントリであることを示す。この欄の利用者インタフェースの必要条件は,TS X 00394.2.1.1が規定する。

3.5.2.7 親ICB位置(RBP12)

そのICBは,記述子を記録しているICBを規定する間接エントリを含むICBの位置を指定する。この欄が0の場合,そのICBを指定しない。

3.5.2.8 フラグ(RBP18)

JIS X 06074/14.6.8が規定するファイルの記録情報を指定し,表3.5.3.1に示すフォーマットで記録する。

3.5.3 ICBタグのフラグ欄

JIS X 06074/14.6.8が定義し,特定ビットの指定方法及びその解釈については, TS X 00392.3.5.4が規定する。表3.5.3.1に示すフォーマットで記録する。

表3.5.3.1 ICB タグ中のフラグ欄
Bit記述内容
0〜2 割付け記述子の種類 0又は3(DVD-書換形ディスク)
3 ディレクトリソート ZERO 未ソート(TS X 00392.3.5.4を参照)
4 再配置不可能 ZERO又はONE
5 Archive ZERO又はONE
6 Setuid ZERO又はONE
7 Setgid ZERO又はONE
8 Sticky ZERO又はONE
9 Contiguous ZERO又はONE
10 System ZERO又はONE
11 transformed ZERO 変換されない(TS X 00392.3.5.4を参照)
12 複数版数 ZERO 複数版数でない(TS X 00392.3.5.4を参照)
13〜15 予備 ZEROs

3.5.3.1 割付け記述子の種別(Bit0〜2)

短割付け記述子を使うことを示すために,0の値を又は3の値を設定する。0の値は,割付け記述子欄の先頭バイトから始まるエクステントを示す。3の値は,割付け記述子の長さ欄にバイト単位で記録しているファイルとして扱うことを示す。

3.5.3.2 ディレクトリソート(Bit3)

ファイルがディレクトリでない場合,このビットは,将来の標準化のために確保し,ZEROに設定する。ファイルがディレクトリであり,このビットをZEROに設定する場合,そのディレクトリは,JIS X 06074/8.6.1に従ってソートする必要はないことを意味する。TS X 00392.3.5.4が規定するとおり, このビットはZEROに設定する。

3.5.3.3 再配置不可能(Bit4)

ZEROに設定した場合,ファイルのデータを指定する割付け記述子の変更方法には制約がないことを示す。ONEに設定した場合,割付け記述子は,ファイルのエクステントの番地を変更するか,記録したエクステントの長さを短くする変更はできない。

3.5.3.4 Archive(Bit5)

ファイルが作成されるか書き込まれるとき,このビットはONEとし,処理システムの方式に応じてZEROとする。

3.5.3.5 Setuid(Bit6)

このビットは, JIS X 3030が規定するとおり, S_ISUIDビットと解釈する。特定のオペレーティングシステム用に,このビットは, TS X 00393.3.2.1.1が規定する。

3.5.3.6 Setgid(Bit7)

このビットは,JIS X 3030が規定するとおり, S_ISGIDビットと解釈する。特定のオペレーティングシステム用に,このビットは, TS X 00393.3.2.1.1が規定する。

3.5.3.7 Sticky(Bit8)

このビットは, JIS X 3030が規定するとおり, C_ISVTXビットと解釈する。特定のオペレーティングシステム用に,このビットは, TS X 00393.3.2.1.1が規定する。

3.5.3.8 Contiguous(Bit9)

ZEROに設定した場合,ファイルのエクステントは,そのファイルの前のエクステントの最後の論理ブロックの次の最初の論理ブロックから始まる必要はない。ONEに設定した場合,ファイルのエクステントは,そのファイルの前のエクステントの最後の論理ブロックの次の最初の論理ブロックから始まる。

3.5.3.9 System(Bit10)

このビットは,処理システム用に確保する。特定のオペレーティングシステム用に,このビットは, TS X 00393.3.2.1.1が規定する。

3.5.3.10 Transformed(Bit11)

記録しているファイルのデータ空間の記録したバイトが,利用者が供給したものであることを示すために,このビットは, TS X 00392.3.5.4が規定するとおり, ZEROとする。

3.5.3.11 複数版数(Bit12)

ファイルがディレクトリでない場合,このビットは将来の標準化のために確保し,ZEROとする。ファイルがディレクトリで,ビットをZEROに設定する場合,そのディレクトリの中に記録した二つのファイル識別記述子は,ファイル識別子欄で同じ内容をもたないことを意味する。TS X 00392.3.5.4が規定するとおり, このビットは,ZEROに設定する。

3.5.3.12 予備(Bit13〜15)

すべてのビットは,ZEROに設定する。

3.5.4 ファイルエントリの許可条件欄

JIS X 06074/14.9.5が定義するとおり,次に示す特定クラスの利用者に許されたファイルアクセスを指定する。

アクセス許可の定義を表3.5.4.1に示す。特定のオペレーティングシステム用に,この欄は,TS X 00393.3.3.3が規定する。

表3.5.4.1 ファイルエントリの許可条件欄
Bit記述内容
0 Other Execute ZERO又はONE
1 Other Write ZERO又はONE
2 Other Read ZERO又はONE
3 Other Change Attribute ZERO又はONE
4 Other Delete ZERO又はONE
5 Group Execute ZERO又はONE
6 Group Write ZERO又はONE
7 Group Read ZERO又はONE
8 Group Change Attribute ZERO又はONE
9 Group Delete ZERO又はONE
10 Owner Execute ZERO又はONE
11 Owner Write ZERO又はONE
12 Owner Read ZERO又はONE
13 Owner Change Attribute ZERO又はONE
14 Owner Delete ZERO又はONE
15〜31 予備 ZEROs

3.5.4.1 Other Execute(Bit0)

ZEROに設定した場合,利用者はファイルを実行してはならない。ONEに設定した場合は,実行してもよい。

3.5.4.2 Other Write(Bit1)

ZEROに設定した場合,利用者がファイルに書き込んではならない。ONEに設定した場合,書き込んでもよい。

3.5.4.3 Other Read(Bit2)

ZEROに設定した場合,利用者はファイルを読み出してはならない。ONEに設定した場合は,読み出してもよい。

3.5.4.4 Other Change Attribute(Bit3)

ZEROに設定した場合,利用者がファイルのどのような属性をも変更してはならない。ONEに設定した場合,変更してもよい。

3.5.4.5 Other Delete(Bit4)

ZEROに設定した場合,利用者がファイルを削除してはならない。ONEに設定した場合,削除してもよい。

3.5.4.6 Group Execute(Bit5)

ZEROに設定した場合,利用者はファイルを実行してはならない。ONEに設定した場合は,実行してもよい。

3.5.4.7 Group Write(Bit6)

ZEROに設定した場合,利用者がファイルに書き込んではならない。ONEに設定した場合は,書き込んでもよい。

3.5.4.8 Group Read(Bit7)

ZEROに設定した場合,利用者はファイルを読み出してはならない。ONEに設定した場合は,読み出してもよい。

3.5.4.9 Group Change Attribute(Bit8)

ZEROに設定した場合,利用者がファイルのどのような属性をも変更してはならない。ONEに設定した場合は,変更してもよい。

3.5.4.10 Group Delete(Bit9)

ZEROに設定した場合,利用者がファイルを削除してはならない。ONEに設定した場合は,削除してもよい。

3.5.4.11 Owner Execute(Bit10)

ZEROに設定した場合,利用者はファイルを実行してはならない。ONEに設定した場合は,実行してもよい。

3.5.4.12 Owner Write(Bit11)

ZEROに設定した場合,利用者がファイルに書き込んではならない。ONEに設定した場合は,書き込んでもよい。

3.5.4.13 Owner Read(Bit12)

ZEROに設定した場合,利用者はファイルを読み出してはならない。ONEに設定した場合は,読み出せる。

3.5.4.14 Owner Change Attribute(Bit13)

ZEROに設定した場合,利用者がファイルのどのような属性も変更してはならない。ONEに設定した場合は,変更してもよい。

3.5.4.15 Owner Delete(Bit14)

ZEROに設定した場合,利用者がファイルを削除してはならない。ONEに設定した場合は,削除してもよい。

3.5.4.16 予備(Bit15-31)

すべてのビットはZEROに設定する。


3.6 拡張属性

拡張属性は,属性種別及び属性副種別を指定し,JIS X 06074/9が規定するとおり, ファイルに関連する属性に固有な情報を指定してもよい。すべての拡張属性は,そのファイルに関連する一つ以上の拡張属性空間に記録する。

ファイルの拡張属性空間は,次の一つとする。

どちらの場合も拡張属性空間は,図3.6.1に示すスキーマによって記録する。

  <拡張属性ヘッダ記述子>
  <拡張属性>0+
図3.6.1 拡張属性空間のスキーマ

拡張属性は,次のとおり拡張属性空間内の隣接し,重複しない三つの領域中に記録する。

DVD-書換形ディスクの場合,3.6.3で規定する空き拡張属性空間及び3.6.4で規定する著作権管理情報用の処理システム用拡張属性は,ファイルエントリの拡張属性欄に記録する。

3.6.1 拡張属性ヘッダ記述子

拡張属性へッダ記述子は,表3.6.1.1に示すフォーマットで記録する。

表3.6.1.1 拡張属性ヘッダ記述子
RBP長さ名前内容
0 16 記述子タグ tag(タグ識別子=262)
16 4 処理システム属性位置 LB32
20 4 応用プログラム属性位置 LB32

3.6.1.1 記述子タグ(RBP0)

この記述子に対するtagのタグ記述子欄は,262とする。

3.6.1.2 処理システム属性位置(RBP16)

処理システム用拡張属性の先頭を,ファイルの拡張属性を記録する拡張属性空問の先頭からのバイトの相対位置で指定する。拡張属性の種別2048〜65535が存在しなければ,TS X 00393.3.4.1が規定するとおり,拡張属性空間の終端を指定する。

3.6.1.3 応用プログラム属性位置(RBP20)

応用プログラム用拡張属性の先頭を,ファイルの拡張属性を記録する拡張属性空問の先頭からのバイトの相対位置で指定する。拡張属性の種別65536以上が存在しなければ,TS X 00393.3.4.1が規定するとおり,拡張属性空間の終端を指定する。

3.6.2 処理システム用拡張属性

属性種別及び属性副種別は,拡張属性の種別を指定する。空き拡張属性空間及び著作権管理情報の場合,属性種別2048及び属性副種別1である処理システム用拡張属性を使う。処理システム用拡張属性は,表3.6.2.1に示すフォーマット記録する。

表3.6.2.1 処理システム用拡張属性
RBP長さ名前内容
0 4 属性種別 LB32=2048
4 1 属性副種別 Uint8=1
5 3 予備 00h バイト
8 4 属性長 LB32
12 4 処理システム用の長さ(IU_L) LB32
16 32 処理システム識別子 EntityID(TS X 00392.1.5を参照)
48 IU_L 処理システム用(3.6.3及び3.6.4参照) バイト

3.6.2.1 属性種別(BP0)

2048を設定する。

3.6.2.2 属性副種別(RBP4)

1を設定する。

3.6.2.3 予備(RBP5)

将来の標準化ために確保し,すべて00hバイトを記録する。

3.6.2.4 属性長(RBP8)

拡張属性全体の長さを指定する。TS X 00393.3.4.5が規定するとおり, 処理システム用拡張属性を使って定義する可変長の拡張属性用に,属性長欄は処理システム用欄の終端と処理システム用拡張属性の終端との間に埋込み空間を残し,十分大きくとらなければならない。

3.6.2.5 処理システム用の長さ(RBP12)

処理システム用欄の長さを指定する。

3.6.2.6 処理システム識別子(RBP16)

処理システム用欄の内容を認識し,実行できる処理システムの識別情報を記述する。

3.6.2.7 処理システム用(RBP48)

DVD-書換形ディスクの場合,空き拡張属性空問及び著作権管理情報用に3.6.3及び3.6.4で規定する。

3.6.3 処理システム用欄の空き拡張属性空間

空き拡張属性空間は,TS X 00393.3.4.5.1が規定するとおり,拡張属性空間内の未使用空間を示すために処理システム用拡張属性中に記述される。この処理システム用拡張属性の処理システム識別子欄は,"UDF FreeEASpace"に設定する。この処理システム用拡張属性の処理システム用欄は,表3.6.3.1に示すフォーマットで記録する。

表3.6.3.1 処理システム用欄の空き拡張属性空間
RBP長さ名前内容
0 2 ヘッダチェックサム LB16
2 IU_L-1 空き拡張属性空間 バイト

3.6.3.1 ヘッダチェックサム(RRP0)

TS X 00393.3.4.5が規定するとおり,処理システム用拡張属性ヘッダの16ビットチェックサムを表す。属性種別欄から処理システム記述子欄までの欄は,チェックサムによって保証されたデータを表す。ヘッダチェックサム欄は,データの破壊から拡張属性空間の回復を補助するために使う。

3.6.3.2 空き拡張属性空間(RBP2)

拡張属性空間の中の未使用空間の長さを指定する。この拡張属性は,全体の拡張属性空間を書き換えることなく,処理システムに他の拡張属性の総合の大きさを拡大/縮小するために許可している。空き拡張属性空間は,上書きの必要な処理システムが再利用する空間である。

3.6.4 処理システム用欄の著作権管理情報

著作権管理情報は,各ファイルのファイルエントリの拡張属性欄中に記録する処理システム用拡張属性の中に記述する。処理システム用拡張属性の処理システム記述子欄は,"*UDF DVD CGMS Info"に設定する。この処理システム用拡張属性の処理システム用欄は,表3.6.4.1に示すフォーマットで記録する。

表3.6.4.1 処理システム用欄の著作権管理情報
RBP長さ名前内容
0 2 ヘッダチェックサム LB16
2 1 CGMS情報 バイト
3 1 データ構造種別 Uint8
4 4 保護システム情報 バイト

3.6.4.1 ヘッダチェックサム(RBP0)

TS X 00393.3.4.5が規定するとおり,処理システム用拡張属性ヘッダのl6ビットチェックサムを表す。

3.6.4.2 CGMS情報(RBP2)

表3.6.4.2に示すフォーマットで記録する。

表3.6.4.2 CGMS情報欄
Bit記述内容
0〜3 予備 ZEROs
4〜5 CGMS 0, 1, 2又は3
6 予備 ZERO
7 著作物 ZERO又はONE

3.6.4.2.1 予備(Bit0〜3)

すべてのビットは, ZEROに設定する。

3.6.4.2.2 CGMS(Bit4〜5)

著作物ビットをONEに設定した場合,CGMS欄は,次に示す2ビット符号なし2進数と解釈する。

著作物ビットをZEROに設定した場合,この欄は予備として確保する。

3.6.4.2.3 予備(Bit6)

このビットは, ZEROを設定する。

3.6.4.2.4 著作物(Bit7)

3.6.4.3 データ構造種別(RBP3)

保護システム情報欄のデータ構造の識別情報を指定する。この欄中で指定する種別は,表3.6.4.3に示すとおりに解釈する。

表3.6.4.3 データ構造の解釈
種別解釈
0 保護システム情報欄は,表3.6.4.4に規定する。
1〜255 予備

3.6.4.4 保護システム情報(RBP4)

著作権管理用の保護システムの識別情報を指定する。データ構造種別0の場合,表3.6.4.4に示すとおりに定義する。

表3.6.4.4 データ構造種別0の保護システム情報欄
RBP長さ名前内容
0 1 保護システム種別 Uint8=0(DVD-書換形ディスク)
1 3 予備 00h バイト

3.6.4.4.1 保護システム種別(RBP0)

0を設定する。

3.6.4.4.2 予備(RBP1)

すべて00hバイトを記録する。


3.7 区画空間管理

割付け(未割付け)に準備した空間をもつ区画空間は,区画中の論理ブロックの集合を指定する空間集合によって指定される。空間集合は,空間表又は区運間ビットマップのどちらかとして記録されなければならない。

区画の未割付け空間集合は,空間集合であり,論理ブロックが未割付け空間集合に存在する場合,記録用に割り付けてよい。

未割付け空間集合は, 区画ヘッダ記述子によって識別する。

空間集合は,空間表又は空間ビットマップのどちらかとして記録される。空間表及び空間ビットマップは,同時には使用できない。

空間表は,間接エントリ及び未割付け空間エントリを構成するICB階層として記録する。空間集合中の論理ブロックは,空間表の最後の空間エントリによって指定されるエクステントに属すすべての論理ブロックとする。

空間ビットマップは,単一エクステントに記録したnビット列を含む空間ビットマップ記述子として記録する。ここで, nは,区画中の論理ブロック数とする。ビットsの値は,バイトip(s/8)のビットrem(s,8)に記録する。バイト0は,エクステントの先頭バイトとする。空間集合は,ビットsがONEであるすべての論理ブロックsで構成される。

3.7.1 区画内容用欄の区画ヘッダ記述子

区画ヘッダ記述子は,JIS X 06074/14.3が規定する未割付け空間集合,未初期化空間集合及び区画保全表を指定し,表3.7.1.1に示すフォーマットで記録する。

表3.7.1.1 区画内容用欄の区画ヘッダ記述子
RBP長さ名前内容
0 8 未割付け空間表 short_ad
8 8 未割付け空間ビットマップ short_ad
16 8 区画保全表 short_ad=all 0's(TS X 00392.3.3.1を参照)
24 8 未初期化空間表 short_ad=all 0's(DVD-書換形ディスク)
32 8 未初期化空間ビットマップ short_ad=all 0's(DVD-書換形ディスク)
40 88 予備 00h バイト

3.7.1.1 未割付け空間表(RBP0)

この区画の未割付け空間表を指定する(JIS X 06074/10参照)。エクステント長が0の場合,未割付け空間表を指定しないことを示す。

3.7.1.2 未割付け空間ビットマップ(RBP8)

この区画の未割付け空間ビットマップを記録しているエクステントを識別する(JIS X 06074/10参照)。エクステント長が0の場合,未割付け空間ビットマップは指定しないことを示す。

3.7.1.3 区画保全表(RBP16)

この区画の区画保全表を指定する(JIS X 06074/11参照)。TS X 00392.3.3.1が規定するとおり,区画保全実体は使用しないので, すべて0を設定する。

3.7.1.4 未初期化空間表(RBP24)

この区画の未初期化空間表を指定する(JIS X 06074/10参照)。DVD-書換形ディスクの場合,未初期化空間表は指定しないことを示すために, すべて0を設定する。

3.7.1.5 未初期化空間ビットマップ(RBP32)

この区画の未初期化空間ビットマップのエクステントを指定する(JIS X 06074/10参照)。DVD-書換形ディスクの場合,未初期化空間ビットマップは指定しないことを示すために, すべて0を設定する。

3.7.1.6 予備(RBP40)

将来の標準化用に確保し,すべて00hを設定する。

3.7.2 未割付け空間エントリ

ICB中に記録した直接エントリであり,表3.7.2.1に示すフォーマットで記録する。

表3.7.2.1 未割付け空間エントリ
BP長さ名前内容
0 16 記述子タグ tag(タグ識別子=263)
16 20 ICBタグ icbtag(ファイル種別=1)
36 4 割付け記述子の長さ(=L_AD) LB32
40 L_AD 割付け記述子 バイト

3.7.2.1 記述子タグ(BP0)

この記述子に対するtagのタグ識別欄は,263をもつ。

3.7.2.2 ICBタグ(BP16)

このicbtagのファイル種別欄は,1をもつ。

3.7.2.3 割付け記述子の長さ(BP36)

割付け記述子欄の長さをバイト数で指定する。L_AD+40は論理ブロックの大きさより大きくならない。

3.7.2.4 割付け記述子(BP40)

この欄は,割付け記述子をもつ。割付け記述子の種別は,ICBタグ欄のフラグ欄で指定する。これらの割付け記述子のエクステント長は,論理ブロックサイズの整数倍にする。

3.7.3 空間ビットマップ記述子

区画中の論理ブロックをビットで指定し,表3.7.3.1に示すフォーマットで記録する。

表3.7.3.1 空間ビットマップ記述子
BP長さ名前内容
0 16 記述子タグ tag(タグ識別子=264)
16 4 ビット数(=N_BT) LB32
20 4 バイト数(=N_B) LB32
24 N_B ビットマップ バイト

3.7.3.1 記述子タグ(BP0)

この記述子に対するtagのタグ識別欄は,264をもつ。

3.7.3.2 ビット数(BP16)

ビットマップ欄の有効ビットの個数を指定する。

3.7.3.3 バイト数(BP20)

ビットマップ欄のバイトの個数を指定する。この欄で指定する長さは,ip((N_BT+7)/8)バイトより小さくならない。

3.7.3.4 ビットマップ(BP24)

この欄には,区画に各論理ブロックのビットを指定する。論理ブロックsのビットは,バイトip(s/8)中のビットrem(s,8)であり,バイト0はこの欄中の先頭バイトとする。


3.8 割付け記述子

エクステントの位置,長さ及び種別を指定する。エクステントの種別は次のとおりとする。

未割付け又は未記録エクステントの内容は,すべて00hバイトと解釈する。割付けは,現在又は将来の使用のために一つ以上のエクステントを予約し,記録ができることを保証するとともに,他で使用されないことを保証する。

割付け記述子の列は,エクステント又は欄に連続的に記録する。

割付け記述子の列のエクステント又は欄は,次のいずれかで終了する。

[割付け記述子のエクステント]{
    <割付けエクステント記述子>
    <割付け記述子>1+
}
図3.8.1 続きエクステントスキーマ

割付け記述子は,関連する情報長を示す。これは,エクステント中の情報の量をバイト数で示す。拡張割付け記述子又はext_adは,情報長を欄としてもつ。他の割付け記述子の種別は,情報長はエクステント長と等しい。

3.8.1 ファイルの記述

ファイルのエクステントを記述する割付け記述子の列を,ファイル本体として記録し,その後にファイル後部を付けて,図3.8.1.1のスキーマに従って記録する。

 
[ファイル本体]{
    <割付け記述子>(エクステント長はLBSの整数倍)0+
    <割付け記述子>0+1
}
[ファイル後部]{
    <割付け記述子>(未記録かつ割付け済み)0+
}
図3.8.1.1 ファイルエクステントスキーマ

割付け記述子の種別は,ICBタグ欄中のフラグ欄に指定する。

3.8.2 割付けエクステント記述子

割付けエクステント記述子は, 表3.8.2.1に示すフォーマットで指定する。

表 3.8.2.1 割付けエクステント記述子
BP長さ名前内容
0 16 記述子タグ tag(タグ識別子=258)
16 4 先行割付けエクステント位置 LB32
20 4 割付け記述子の長さ(=L_AD) LB32

3.8.2.1 記述子タグ(BP0)

この記述子に対するタグ識別欄は,258をもつ。

3.8.2.2 先行割付けエクステント位置(BP16)

この記述子を記録する区画中で,この先行割付けエクステントの番地を指定する。エクステントの長さが0の場合,先行割付けエクステントを指定しない。

3.8.2.3 割付け記述子の長さ(BP20)

この欄は,この記述子の後に記録する割付け記述子欄の長さをバイト数で指定する。

3.8.3 短割付け記述子

short_adで表し,表3.8.3.1に示すフォーマットで指定する。

表 3.8.3.1 short_adフォーマット
RBP長さ名前内容
0 4 エクステント長 LB32
4 4 エクステント位置 LB32

3.8.3.1 エクステント長(RBP0)

下位の30ビットは,エクステントの長さをバイトで指定する。上位の2ビットは,エクステントの種別を表し,その内容は表3.8.3.2に示す。

表3.8.3.2 エクステントの解釈
解釈
0 記録済みかつ割付け済みのエクステント
1 未記録であるが割付け済みのエクステント
2 未記録かつ未割付けのエクステント
3 割付け記述子(3.8参照)の続きエクステント

3.8.3.2 エクステント位置(RBP4)

この記述子を記録する区画中で,エクステントの論理ブロック数を指定する。エクステントの長さが0の場合,エクステントを規定していない。この欄には0を設定する。