2007年11月29日

UDF1.02 3-4 Primary Volume Descriptor

Primary Volume Descriptor (基本ボリューム記述子)(PVD) は、そのボリュームの基本的な内容が記されています。

Primary Volume Descriptor format
BP大きさ名称内容
0〜1516struct tagDescriptor TagTagID=1
16〜194unsigned longVolume Descriptor Sequence Numberボリューム記述子番号
20〜234unsigned longPrimary Volume Descriptor NumberPVDの番号
24〜5532char[32]Volume Identifierボリュームラベル (dstring)
56〜572unsigned shortVolume Sequence Number(=1) ボリューム番号
58〜592unsigned shortMaximum Volume Sequence Number(=1) ボリュームセットのボリューム数
60〜612unsigned shortInterchange Level(=2) 交換水準
62〜632unsigned shortMaximum Interchange Level(=2) 最大交換水準
64〜674unsigned longCharacter Set List=1 文字集合リスト
68〜714unsigned longMaximum Character Set List=1 最大文字集合リスト
72〜199128char[128]Volume Set Identifierボリュームセット名 (dstring)
200〜26364charspecDescriptor Character Set={0,"OSTA Compressed Unicode"}
264〜32764charspecExplanatory Character Set={0,"OSTA Compressed Unicode"}
328〜3358struct extent_adVolume Abstract抄録
336〜3438struct extent_adVolume Copyright Notice著作権表示
344〜37532struct regidApplication Identifier応用プログラム識別子
376〜38712struct timestampRecording Date and Time記録日時
388〜41932struct regidImplementation Identifier*開発者名
420〜48364unsigned char[64]Implementation Use(=0) 処理方法用
484〜4874unsigned longPredecessor Volume Descriptor Sequence Location(=0) 障害復旧用
488〜4892unsigned shortFlags=0 フラグ
490〜51122-Reserved=0


Volume Descriptor Sequence Number は、 ボリューム記述子の通し番号で、大抵、列の先頭より 0、1、2、と記録します。

Primary Volume Descriptor Number は、PVD 毎に異なる番号が割り振られており、 一つだけ =0 の PVD があります。読み取りには、これが 0 の PVD を使用します。 これは書き換えのための仕様なので、Primary Volume Descriptor Number = 0 の PVD を 一つ用意しておけば十分です。

Interchange Level と Maximum Interchange Level は、このボリュームが複数のボリュームをもつボリュームセットの内の一つならば 3、 単一ボリュームならば 2 です。 DVD-ROM では 2 です。

UDF1.02 では、文字セットは 1 種のみです。

Volume Set Identifier は、読み取りの際はそのままボリュームセット名と解釈します。
UDF1.02 で書き込む際には、他のボリュームセットと区別できるようにします。 そこで、最初の 16 文字がユニークな値になるようにします。 そのために、最初の 8 文字を、32ビット時間 (time_t?) を 16進数に直した文字を入れることが推奨のようです。

Volume Abstract、Volume Copyright Notice、Application Identifier、Implementation Use、 Predecessor Volume Descriptor Sequence Location は、使われていなければ 0 です。

Flags は、次のとおりです。
Bit内容
00=PVD はボリュームセット内のボリューム毎に異なる
1=PVD はボリュームセット内の全てのボリュームで同じ
1〜15予約

UDF1.02 では、ボリュームは 1 つなので、フラグは 0 です。

posted by 七癖 at 09:08| Comment(0) | TrackBack(0) | ファイルシステム | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック