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.