Bit rot, also bit decay, data rot, or data decay, is a colloquial computing phrase for the gradual decay of storage media or a (sometimes jocular) explanation for the degradation of a software program over time, even if ‘nothing has changed’.
Decay of storage media
Bit rot is often defined as the event in which the small electric charge of a bit in memory disperses, possibly altering program code or stored data.
Bit rot can also be used to describe the phenomenon of data stored in EPROMs and flash memory gradually decaying over the duration of many years, or in the decay of data stored on optical discs, such as CD or DVD discs, or other types of consumer storage media.
The cause of bit rot varies depending on the medium. EPROMs and flash memory store data using electrical charges, which can slowly leak away due to imperfect insulation. The chip itself is not affected by this, so re-programming it once per decade or so will prevent bit rot. The biggest problem can be finding a clean copy of the chip from which to make the copy; frequently, by the time the user discovers the bit rot, there are no un-damaged chips to use as a master.
Floppy disk and magnetic tape storage may experience bit rot as bits lose their magnetic orientation, and in warm, humid conditions these media are prone to literal rotting. In optical disc media, the breakdown of the material onto which the data is stored may cause bit rot. This can be mitigated by storing discs in a dark, cool location with low humidity. "Archival quality" discs are also available, but do not necessarily provide a permanent solution to the onset of bit rot or other types of data corruption beyond a certain amount of time. Old punched cards and punched tape may also experience literal rotting. Mylar punched tape is available for use in this situation.
Component and system failures
Most disk, disk controller and higher level systems are subject to a small degree of unrecoverable failure. With ever-growing disk capacities, file sizes, and increases in the amount of data stored on a disk, the likelihood of the occurrence of bit rot and other forms of uncorrected and undetected data corruption increases.
Higher level software systems may be employed to mitigate the risk of such underlying failures by increasing redundancy and implementing integrity checking and self-repairing algorithms. The ZFS file system is able to address many of these issues.
Problems with software
The term "bit rot" is often used to refer to dormant code rot, i.e. the fact that dormant (unused or little-used) code gradually decays in correctness as a result of interface changes in active code that is called from the dormant code.
A program may run correctly for years with no problem, then malfunction for no apparent reason. Programmers often jokingly attribute the failure to bit rot. Such an effect may be due to a memory leak or other non-obvious software bugs. Often, although there is no obvious change in the program's operating environment, a subtle difference has occurred that is triggering a latent software error. The error in the software may also originate by human operation which allows the construction or derivation of false-positive behaviour to occur within the code. Many operating systems, such as Microsoft Windows, tend to lose stability when left running for long periods of time, which is why they must be restarted occasionally to remove resident errors and memory leaks that have built up due to software errors.
- Raymond, Eric. "Bit rot". The Jargon File. Retrieved 3 March 2013.
- O'Gorman, T. J.; Ross, J. M.; Taber, A. H.; Ziegler, J. F.; Muhlfeld, H. P.; Montrose, C. J.; Curtis, H. W.; Walsh, J. L. (January 1996). "Field testing for cosmic ray soft errors in semiconductor memories". IBM Journal of Research and Development 40 (1): 41–50. doi:10.1147/rd.401.0041. Retrieved 4 March 2013.
- Gray, Jim; van Ingen, Catharine (December 2005). "Empirical Measurements of Disk Failure Rates and Error Rates". Microsoft Research Technical Report MSR-TR-2005-166. Retrieved 4 March 2013.
- Bonwick, Jeff. "ZFS: The Last Word in File Systems". Storage Networking Industry Association (SNIA). Retrieved 4 March 2013.
- "Optimize Windows 7 for better performance". Microsoft. Retrieved 4 March 2013.