Computer storage
|
The terms "storage" and "memory" refer to the parts of a digital computer that retain physical state (data) for some interval of time, possibly even after electrical power to the computer is turned off. Where both terms are in use, "memory" is generally used for the faster forms, and "storage" for the slower forms.
In a home computer, storage will often take the form of:
- A hard disk, which stores the user's files and programs. It keeps data even if the computer is turned off, and has a large capacity.
- RAM, is used to store things such as programs and data temporarily while the computer is using them. It can be accessed at very high speeds, which makes it suitable for this, however all information in it is lost when the computer is turned off.
- Cache memory, which is often built into the microprocessor, hard drives, or other devices, a small amount of very high speed dedicated memory used so that important parts of a computer can work at full speed without having to constantly request information every time from slower devices or the rest of the system.
An analogy is to think of the storage as human memory, with the hard disk as long-term memory, and the RAM as short-term memory.
Contents |
Different types and different purposes
There are many ways in which types of memory (fast access) or storage (slower access) can be categorised. These include the following technologies:
- primary access from the CPU or secondary (indirect) access by the CPU, which was based primarily on speed of access to the memory.
- volatile or non-volatile, which is based on the technology (magnetic vs. electrical, etc.).
- read-only memory, WORM, or read-write, again based on technology.
- Random-Access or Sequential-Access, which is based on the mechanism of reading the memory.
- Mutable (Read-write) vs. Immutable (Read only) storage.
- Block or File access.
- media categories, for example, semiconductor storage, optical storage, phase change, magneto-optical storage, and magnetic storage, which is mainly disk-based, rather than memory-based.
Historically, "memory" referred to "magnetic core memory" in the 1950s, and then to semiconductor-based storage in the 1970s, at a time when the fastest response times were for magnetic core, and then for semiconductor memory, respectively. The evolution of usage can be glimpsed in the history of computing hardware, as the costs of the various technologies declined.
Each type of storage is suited for different purposes, and most computers contain several types: primary, secondary, and volatile.
Primary vs. secondary storage
In traditional parlance, primary storage contains data that are actively being used (for example, the programs currently being run and the data they are operating on). It is typically high-speed, relatively small, is often (but not always) volatile. It is sometimes referred to as "Main Memory." It can be accessed immediately and randomly.
Secondary storage, also known as peripheral storage, is where the computer stores information that is not necessarily in current use. It is typically slower and higher-capacity than primary storage. It is almost always non-volatile. It is slow due to serial access (thus it is also termed Serial Access Memory).
Confusingly, these terms are sometimes used differently. Primary storage can be used to refer to local random-access disk storage, which should properly be called secondary storage. If this type of storage is called primary storage, then the term secondary storage would refer to offline, sequential-access storage like tape media. This usage usually occurs in contexts where only the slower, larger forms of storage are being discussed.
Volatile storage
Volatile storage loses its contents when it loses power; non-volatile storage does not.
Mutable vs. immutable storage
Data stored in mutable storage can be overwritten at any time. Data stored in immutable storage cannot be overwritten. Systems can be made more secure by storing programs and static data in immutable storage, where they cannot be changed by an attacker. Dynamic data is stored in mutable storage because it must be changed from time to time. Most operating systems store all programs and data on hard disk drives, which are inherently mutable storage devices. File system permissions can be used to make certain areas of the hard disk logically immutable. However, the superuser is normally not affected by these permissions thus allowing some attacks to succeed.
Some operating systems, such as Linux, extend this logical immutability so data remains immutable even if an attacker gains superuser access. Attackers may be able to destroy the data but they can't change it.
Block vs. file access
In disk storage, these are the two primary access methods. Block access means that the disk is divided into normally equal-sized blocks which are accessed at random by the operating system. File access contains an abstraction of files and directories which can be used to refer to storage content. Another access method, content-addressable storage (CAS) uses a hashing algorithm to refer to pieces of data.
A list of storage devices
- Bubble memory
- Cache memory
- Core memory also known as ferrite core memory
- Core rope memory
- Delay line memory
- Holographic memory
- Magnetic disk:
- Magnetic drum
- Magnetic tape
- Magneto-optical disk
- Memory stick
- Optical media:
- Paper tape
- Punch card
- Selectron tube
- Semiconductor memory:
- Thin film memory
A list of memory-related software
See also
- Online file storage
- Memory allocation
- Fragmentation
- Memory protection
- Memory management, memory leak, memory debugger
- Write protection
- Virtual memory
- Physical memory
- Linear memory
- Computer file
- List of file formats
- Wait state
- Disk Storage
- computer storage density
- Dynamic memoryca:Memòria d'ordinador
de:Arbeitsspeicher es:Memoria de ordenador fr:Mémoire informatique nl:Computergeheugen ja:記憶装置 ko:기억장치 lt:Atmintis (kompiuterio) pl:Pamięć komputerowa pt:Memória (computador) ru:Компьютерная память sk:Počítačová pämať th:หน่วยความจำ