tag format
RBP | 大きさ | 型 | 名称 | 内容 |
0〜1 | 2 | unsigned short | Tag Identifier (TagID) | 記述子の種類 |
2〜3 | 2 | unsigned short | Descriptor Version | =2 バージョン |
4 | 1 | unsigned char | Tag Checksum | タグのCRC |
5 | 1 | unsigned char | Reserved | =0 |
6〜7 | 2 | unsigned short | Tag Serial Number | (=0) 通し番号 |
8〜9 | 2 | unsigned short | Descriptor CRC | 記述子のCRC |
10〜11 | 2 | unsigned short | Descriptor CRC Length | タグを除く記述子の大きさ [bytes] |
12〜15 | 4 | unsigned long | Tag Location | 自身の位置 [LSN/LBN] |
Tag Identifier(TagID)は、記述子の種類を示します。
Descriptor interpretation
TagID | 略語 | 意味 | 適当訳 | Tag Location の単位 |
1 | PVD | Primary Volume Descriptor | 基本ボリューム記述子 | LSN |
2 | AVDP | Anchor Volume Descriptor Pointer | 開始点 | LSN |
3 | VDP | Volume Descriptor Pointer | ボリューム記述子ポインタ | LSN |
4 | IUVD | Implementation Use Volume Descriptor | 処理方法用ボリューム記述子 | LSN |
5 | PD | Partition Descriptor | 区画記述子 | LSN |
6 | LVD | Logical Volume Descriptor | 論理ボリューム記述子 | LSN |
7 | USD | Unallocated Space Descriptor | 未割付け空間記述子 | LSN |
8 | TD | Terminating Descriptor | 終端記述子 | LSN/LBN |
9 | LVID | Logical Volume Integrity Descriptor | 論理ボリューム保全記述子 | LSN |
256 | FSD | File Set Descriptor | ファイル集合記述子 | LBN |
257 | FID | File Identifier Descriptor | ファイル識別記述子 | LBN |
258 | AED | Allocation Extent Descriptor | 割付け範囲記述子 | LBN |
259 | IE | Indirect Entry | 間接エントリ | LBN |
260 | TE | Terminal Entry | 終端エントリ | LBN |
261 | FE | File Entry | ファイルエントリ | LBN |
262 | EAHD | Extended Attribute Header Descriptor | 拡張属性ヘッダ記述子 | LBN |
263 | USE | Unallocated Space Entry | 未割付け空間エントリ | LBN |
264 | SBD | Space Bitmap Descriptor | 空間ビットマップ記述子 | LBN |
265 | PIE | Partition Integrity Entry | パーティション保全エントリ | LBN |
266 | EFE | Extended File Entry | 拡張ファイルエントリ | LBN |
Descriptor Version は、NSR02なら 2、NSR03 なら 3 です。 DVD-ROM では 2 です。
Tag Checksum は、バイト 0〜3 および 5〜15 の単純な総和の下1バイトです。 これは、記述子の作成の最後に計算します。
Tag Serial Number は、使われないとき 0 です。
Descriptor CRC は、タグを除く記述子の CRC です。 その生成多項式は、
x16 + x12 + x5 + 1
です。
Descriptor CRC Length は、Descriptor CRC の計算に使用したデータのバイト数です。 UDF1.02では、記述子の大きさ - タグの大きさ、です。
Tag Location は、タグのある場所の位置です。 開始点やボリューム記述子列、論理ボリューム保全列内の記述子など、 ボリュームシステムに関する記述子は LSN で、 ファイル集合記述子列内の記述子やファイルエントリなど、 論理ボリュームに置かれるファイルシステムに関する記述子はパーティションの先頭からの位置 で LBN で記述します。 TD はどちらでも使うので注意してください。