HOW DATA IS STORED
When it comes to flash memory data storage, data is segmented and stored in what are known as memory cells. Depending on the flash technology, each cell may hold multiple bits of data. Data is stored, and its accuracy verified via a storage controller which is included as part of the memory card. Filenames and start/stop locations (of where the data is located) are held in a File Allocation Table (FAT) separate from the main memory array. This information tells the device’s operating system (OS) what data belongs to which file. When a file is deleted from a memory card, the reference to that data is removed from the FAT, but the actual data remains in the memory cells.
Whenever power is applied to a memory card, the storage controller immediately starts scanning memory cells, comparing to the FAT to determine if the data in the memory cell is valid, or needs to be cleaned out of the memory cell. This cleanup process by the controller is called “garbage collection.” Garbage collection ensures that memory cells are completely cleared prior to writing new data to the cell. This background process adds a bit of processor “overhead,” using up a small portion of the memory controller’s bandwidth to handle some behind-the-scenes housekeeping.