2.5.1.2 Sector Bitmap BAT Entry States
The sector bitmap BAT entry indicates the presence of sector bitmap blocks for the associated chunk of payload blocks.
The following table summarizes the validity of the various states for the three VHDX types.
Sector Bitmap BAT Entry State |
Fixed |
Dynamic |
Differencing |
---|---|---|---|
SB_BLOCK_NOT_PRESENT 0 |
Valid |
Valid |
Valid |
SB_BLOCK_PRESENT 6 |
Not Valid |
Not Valid |
Valid |
The various states and values are defined as follows (values 1-5 and 7 are reserved).
SB_BLOCK_NOT_PRESENT
The SB_BLOCK_NOT_PRESENT state indicates that this sector bitmap block's contents are undefined and that the block is not allocated in the file.
For a fixed or dynamic VHDX file, all sector bitmap block entries MUST be in this state.
For a differencing VHDX file, a sector bitmap block entry MUST NOT be in this state if any of the associated payload block entries are in the PAYLOAD_BLOCK_PARTIALLY_PRESENT state.
The FileOffsetMB field for entries in this state is reserved.
SB_BLOCK_PRESENT
The SB_BLOCK_PRESENT indicates that the sector bitmap block contents are defined in the file at a location pointed to by the FileOffsetMB field.
For a fixed or dynamic VHDX file, a sector bitmap block entry MUST NOT be in this state.
For differencing VHDX file, a sector bitmap block entry MUST be set to the SB_BLOCK_PRESENT state if any associated payload blocks are the PAYLOAD_BLOCK_ PARTIALLY_PRESENT state. The sector bitmap block contents are defined in the file at the location specified by the FileOffsetMB field.