A method for memory management in smart card controllers by writing of
data into a data space in a persistent memory is described. In order to
save memory space the persistent memory is split into blocks with fixed
data length having logical block numbers; whereby the size of blocks is
selected such that it corresponds to the physical size of the pages of
the EEPROM memory existing on the card. Fragmented blocks are used by
comprising segments being independent from each other, whereby these
segments are part of different data fields. A Block Allocation Table
(BAT) is used in order to distinguish the physical place of the block in
memory from the logical block number and to address different segments in
the block.