位字段图说明

本文档介绍了如何读取日志检查格式中使用的位字段图。

以下示例位字段图分为各个组成部分:

.---------------------------------------------------------------.
|         |1|1|1|1|1|2|2|2|2|2|3|3|3|3|3|4|4|4|4|4|5|5|5|5|5|6|6|
|0|2|4|6|8|0|2|4|6|8|0|2|4|6|8|0|2|4|6|8|0|2|4|6|8|0|2|4|6|8|0|2|
|---+---+-------+-----------------------+-----------------------|
| O | R | Type  | Parent index          | Name index            |
|---------------------------------------------------------------|
| Reference count (optional)                                    |
'---------------------------------------------------------------'

O = Order
R = Reserved, must be 0
Type = {3,10}

顶行

在第一行中,每一列表示起始位索引,每个空格对应于两个连续位。

例如,最左列中的第一个“0”表示该空间是为索引 0 和 1 中的位预留的。下一个“2”位于索引 2 和 3 处,以此类推。第一个包含两个数字的列应读为“10”,接下来的“12”应读作“12”,依此类推。

.---------------------------------------------------------------.
|         |1|1|1|1|1|2|2|2|2|2|3|3|3|3|3|4|4|4|4|4|5|5|5|5|5|6|6|
|0|2|4|6|8|0|2|4|6|8|0|2|4|6|8|0|2|4|6|8|0|2|4|6|8|0|2|4|6|8|0|2|
|---+-----------+-----------------------------------------------|

底行

图的底部几行展示了字段的物理布局。每行由 64 位组成。

|---+---+-------+-----------------------+-----------------------|
| O | R | Type  | Parent index          | Name index            |
|---------------------------------------------------------------|
| Reference count (optional)                                    |
'---------------------------------------------------------------'

在本例中,我们表示 128 位。前 64 位包含:

  • O:索引 [0, 4) 处的 4 位(左边界,右独占,因此在本例中索引为 {0, 1, 2, 3})。
  • R:4 位位于索引 [4, 8)
  • Type:8 位位于索引 [8, 16)
  • Parent index:24 位,位于索引 [16, 40)
  • Name index:24 位,位于索引 [40, 64)

第二个 64 位包含一个值,即 Reference count

备注

图表末尾有一个图例,使某些字段的含义或它们可能的限制更加明确。在上面的示例中,R 表示 ReservedO 表示 Order,但图表中的空间不足,无法容纳这些字词。Type 将仅包含设置 {3, 10} 中的值。