Provided are a method, device, and system for booting from a memory device
having an array of blocks of cells. An initial memory map has a mapping
of memory addresses to accessible blocks of cells in the memory device
that are accessible following a boot sequence. There are secure blocks of
cells in addition to the accessible blocks of cells that are not
accessible through the memory addresses in the initial memory map. In
response to detecting an initialization event, the secure blocks of cells
are mapped to a range of memory addresses in the memory map to generate
an altered memory map. Code is executed in the secure blocks using the
range of memory addresses in the altered memory map. The range of memory
addresses mapping to the secure blocks are remapped to map to the
accessible blocks to which the range of memory addresses mapped in the
initial memory map to restore the initial memory map from the altered
memory map.