External Memory Algorithms - Hierarchy of Storage - Primary Storage

main">
Direct links to this section: Primary storage, Main memory, Internal Memory.

Primary storage (or main memory or internal memory), often referred to simply as memory, is the only one directly accessible to the CPU. The CPU continuously reads instructions stored there and executes them as required. Any data actively operated on is also stored there in uniform manner.

Historically, early computers used delay lines, Williams tubes, or rotating magnetic drums as primary storage. By 1954, those unreliable methods were mostly replaced by magnetic core memory. Core memory remained dominant until the 1970s, when advances in integrated circuit technology allowed semiconductor memory to become economically competitive.

This led to modern random-access memory (RAM). It is small-sized, light, but quite expensive at the same time. (The particular types of RAM used for primary storage are also volatile, i.e. they lose the information when not powered).

As shown in the diagram, traditionally there are two more sub-layers of the primary storage, besides main large-capacity RAM:

  • Processor registers are located inside the processor. Each register typically holds a word of data (often 32 or 64 bits). CPU instructions instruct the arithmetic and logic unit to perform various calculations or other operations on this data (or with the help of it). Registers are the fastest of all forms of computer data storage.
  • Processor cache is an intermediate stage between ultra-fast registers and much slower main memory. It's introduced solely to increase performance of the computer. Most actively used information in the main memory is just duplicated in the cache memory, which is faster, but of much lesser capacity. On the other hand, main memory is much slower, but has a much greater storage capacity than processor registers. Multi-level hierarchical cache setup is also commonly used—primary cache being smallest, fastest and located inside the processor; secondary cache being somewhat larger and slower.

Main memory is directly or indirectly connected to the central processing unit via a memory bus. It is actually two buses (not on the diagram): an address bus and a data bus. The CPU firstly sends a number through an address bus, a number called memory address, that indicates the desired location of data. Then it reads or writes the data itself using the data bus. Additionally, a memory management unit (MMU) is a small device between CPU and RAM recalculating the actual memory address, for example to provide an abstraction of virtual memory or other tasks.

As the RAM types used for primary storage are volatile (cleared at start up), a computer containing only such storage would not have a source to read instructions from, in order to start the computer. Hence, non-volatile primary storage containing a small startup program (BIOS) is used to bootstrap the computer, that is, to read a larger program from non-volatile secondary storage to RAM and start to execute it. A non-volatile technology used for this purpose is called ROM, for read-only memory (the terminology may be somewhat confusing as most ROM types are also capable of random access).

Many types of "ROM" are not literally read only, as updates are possible; however it is slow and memory must be erased in large portions before it can be re-written. Some embedded systems run programs directly from ROM (or similar), because such programs are rarely changed. Standard computers do not store non-rudimentary programs in ROM, rather use large capacities of secondary storage, which is non-volatile as well, and not as costly.

Recently, primary storage and secondary storage in some uses refer to what was historically called, respectively, secondary storage and tertiary storage.

Read more about this topic:  External Memory Algorithms, Hierarchy of Storage

Other articles related to "storage, primary storage":

External Memory Algorithms - Hierarchy of Storage - Secondary Storage
... Secondary storage (also known as external memory or auxiliary storage), differs from primary storage in that it is not directly accessible by the CPU ... usually uses its input/output channels to access secondary storage and transfers the desired data using intermediate area in primary storage ... Secondary storage does not lose the data when the device is powered down—it is non-volatile ...
External Memory Algorithms - Fundamental Storage Technologies - Uncommon
... These primary storage devices were short-lived in the market, since Williams tube was unreliable and the Selectron tube was expensive ... dynamic volatile, cycle sequential read/write storage, and was used for primary storage ... Optical tape is a medium for optical storage generally consisting of a long and narrow strip of plastic onto which patterns can be written and from which the patterns can be read back ...

Famous quotes containing the words storage and/or primary:

    Many of our houses, both public and private, with their almost innumerable apartments, their huge halls and their cellars for the storage of wines and other munitions of peace, appear to me extravagantly large for their inhabitants. They are so vast and magnificent that the latter seem to be only vermin which infest them.
    Henry David Thoreau (1817–1862)

    It was the feeling of a passenger on an ocean steamer whose mind will not give him rest until he has been in the engine-room and talked with the engineer. She wanted to see with her own eyes the action of primary forces; to touch with her own eyes the action of primary forces; to touch with her own hand the massive machinery of society; to measure with her own mind the capacity of the motive power. She was bent upon getting to the heart of the great American mystery of democracy and government.
    Henry Brooks Adams (1838–1918)