ext_ad (Extended Allocation Descriptor) は位置の他、 3 種類の大きさを記述します。
ext_ad format
RBP | 大きさ | 型 | 名称 | 内容 |
0〜3 | 4 | unsigned long | Extent Length | 下記参照 |
4〜7 | 4 | unsigned long | Recorded Length | 記録長 |
8〜11 | 4 | unsigned long | Information Length | 情報長 |
12〜17 | 6 | struct lb_addr | Extent Location | パーティション番号とその先頭からの位置 |
18〜19 | 2 | unsigned char[2] | Implementation Use | 予約 |
Extent interpretation
bit | 内容 |
0〜29 | length of the extent (unsigned、[bytes]、特に規定が無ければ論理ブロック長の整数倍) |
30〜31 |
0: 場所が用意され、記録された 1: 場所が用意されたが、記録されていない 2: 場所は用意されず、記録もされてい 3: 配置記述子列の次の場所を意味する |
Recorded Length は 30 ビットの正数で、最上位 2 ビットは 00 です。
Extent Length と Recorded Length と Information Length はそれぞれ違っていてもかまいません。