Storage systems are inevitable for modern day computing. All known computing platforms ranging from handheld devices to large super computers use storage systems for storing data temporarily or permanently. Beginning from punch card which stores a few bytes of data, storage systems have reached to multi Terabytes of capacities in comparatively less space and power consumption. This tutorial is intended to give an introduction to storage systems and components to the reader.
Here are a few definitions of storage when refers to computers.
- A device capable of storing data. The term usually refers to mass storage devices, such as disk and tape drives. (webopedia.com)
- In a computer, storage is the place where data is held in an electromagnetic or optical form for access by a computer processor. (whatis.com)
- Computer data storage; often called storage or memory refer to computer components, devices and recording media that retain digital data used for computing for some interval of time. (wikipedia.com)
Of these, I like the definition coined out by wikipedia.com. Likes and dislikes apart, in basic terms, computer storage can be defined as " device or media stores data for later retrieval". From the definition, we can see that the storage device possess two features namely "storage" and "retrieval". A storage facility without retrieval options seems to be of no use (at least to me, what about you ..?). A storage device may store application programs, Databases, Media files etc....
As we see in modern day computers, storage devices can be found in many forms. Storage devices can be classified based on many criterions. Of them, the very basic is as we learned in schools ie; Primary storage and Secondary storage. Storage devices can be further classified based on the memory technology that they use, based on its data volatility etc...
The following list gives a few classifications of memory devices.
- Primary and Secondary and Tertiary Storage
- Volatile and non-volatile storage
- Read only and Writable storage
- Random Access and Sequential Access storage
- Magnetic storage
- Optical storage
- Semiconductor storage
Let us see in detail about each type of storage devices.
Primary and Secondary and Tertiary Storage
In simple words, primary storage is the storage device that is directly connected to the CPU and store data temporarily during execution. i.e. CPU can directly access primary storage and stores instruction and data for execution/processing. The most popular example of this kind of memory is the RAM (Random Access Memory) that we use in modern day computers. CPU registers, Caches and other memories connected to the CPU local bus falls in this category. Primary storage devices are comparatively faster than all other kinds of memory types. Usually primary storage devices are considered to be directly connected to the processor. But in reality, modern computers employ components like Virtual Memory Manager, DRAM controllers etc.. in between processor and the memory but the notion of 'Direct connection' is still valid since these components are transparent to the processor . Volatile memories are usually used as primary storage. The picture below shows a RAM module.
On the contrary, Secondary storage may not be directly accessible by the processor. And is usually used for more permenent storage of data. This requires secondary storage devices to be non-volatile. Secondary storage devices are connected to storage controllers and the CPU is required to talk to the controllers in order to access information from secondary devices. The most popular example of secondary device is the Hard disk. CD ROM, DVD ROM, USB mass storage devices, Floppy etc.. are also falls in this category. Secondary storage devices are also called Mass Storage Devices since the capacity of these devices are comparatively large.
In contrast to Primary and Secondar storage, Tertiary storage may not be directly connected to the CPU or the computer itself. Tertiary storage mechanisms usually used for storage of large volume of data such as backups etc.. A commonly used mechanism for Tertiary storage involves a large number of removable mass storage devices stacked as a library and a robotic arm picks up the required media and loads in to a media reader. Once the required information is read, the media is placed back in the library. The mechanical delays associated with Tertiary Storage makes it the slowest of all storage types but largest in capacity.
The picture below illustrates the classification of different types of Storage Devices as described above.
Volatile and non-volatile storage
As the name implies, volatile memory looses its contents when power supply is withdrawn. So usually Volatile memories are used for temporary storage of data. In some exceptional cases, volatile memory devices are used along with long life batteries to make semi-permenent storage devices. Compared with non-volatile storage, Volatile storage devices are faster while both reading and writing data. This makes these kinds of memories very suitable to be used as main memories of computers. In fact, the memories we use in computers (RAM) are volatile devices.
Non-volatile storage devices retain the contents even in absence of active power source. This makes non-volatile devices suitable for long term permenent data storage. Non-volatile devices usually available in large capacities. Hard Disks, CD ROM, Floppy disks, Flash, ROM etc.. are examples of non-volatile memory devices. Non-volatile storage devices are slower when compared to volatile storage devices. But some non-volatile can faster during read operation and slower during write operation. Semiconductor non-volatile memory devices fall in this category.
Read only and Writable storage
Read only storage devices only allows contents to be read from and doesn't allow the contents to be modified. Meanwhile, Writable storage devices allow both content retrieval as well as content modification. Read only devices are usually used for long term permenent storage where modification of data is not necessary. CD ROM, DVD etc are examples of Read Only Storage devices. Some Read Only Storage devices comes with factory programmed data which you can only read but not modify. There is another class of devices called Write Once Read Multiple (WORM) devices which allows us to write data to it one and only one time and allows any number of subsequent reads. CD-R and DVD-R are technically comes under this category.
Random Access and Sequential Access storage
Random Access storage devices allow retrieval of content from any location in the same amount of time. i.e. Latency (The time taken to access a particular location in storage) is independent of content's location. RAM used in computers is an example of Random Access Memory. In sequential access storage devices, data can be accessed in sequential manner only. And the time taken to read from a particular location will be dependant on the location last accessed. Example of a sequential access device is the Tape storage device. Sequential access devices are usually used for backup purpose only, where frequent access of information is not required.
Magnetic storage devices store information in the form of magnetic field on magnetically coated surface. Magnetic storage devices fall in the category of non-volatile devices. This makes magnetic storage devices to be useful for long term data storage. Hard disks, Floppy disks and tape devices are examples of magnetic storage devices. Data is written to magnetic media with the help of electromagnetic heads. The same head is usually used also for retrieval of data. Though magnetic storage medias can hold large amount of data, these are considered to be bulky and not usable for mobile applications. But technological advancements made it possible to create large capacity magnetic storage devices with small size. An example for this is Apple's ipod classic which is available with a built in hard disk with a capacity as large as 160 GB for music/video storage.
Optical storage devices store data on reflective polycarbonate discs in the form of pits and bumps. Data is recorded on the disc by pointing modulated laser beam on to the rotating disc. This makes a series of tiny pits which doesn't reflect light and bumps that reflect light. For reading the data, a low power laser beam is focused to the track and the reflected beam is directed to a photo diode. The photo diode detects the presence of pits and bumps from the reflected laser beam and convert it in to bits and bytes of information.
Semiconductor storage devices store data in tiny memory cells made of very small transistors and capacitors made of semiconductor materials such as silicon. Each cell can hold one bit of information and an array of cells stores large chunk of information. Semiconductor storage devices can be volatile and non-volatile. RAM is an example of volatile semiconductor storage device. EEPROM and FASH are examples of non-volatile semiconductor storage devices. FLASH devices are gaining popularity over conventional secondary storage devices like hard disks. There are a large number of products in the market now which uses FLASH devices exclusively as secondary storage (Eg. MP3 players, Mobile Phones etc...).
Part1 of this series of articles end here. This article is expected to give you very basic information of storage device classifications and technologies. For more advanced information please read the other articles in this series.