A system for moving checksums within memory utilizes a plurality of memory
systems and a system manager. A first memory system has a first memory
location that is correlated with a checksum indicator. The checksum
indicator identifies the memory system that is storing the checksum of
the value presently stored at the first location. The system manager
dynamically moves the checksum to a destination memory location and
updates the checksum indicator such that the checksum indicator
identifies the memory system of the destination memory location. While
the checksum is being moved, checksum updates may occur to the memory
location from which the checksum was moved. Thus, after moving the
checksum, the system manager updates the checksum with the value stored
at the location from which the checksum was moved. As a result, the
checksum stored in the checksum destination location should be
sufficiently updated to enable data recovery.