Single-level store

Single-level storage (SLS) or single-level memory is a computer storage term which has had two meanings. The two meanings are related in that in both, pages of memory may be in primary storage (RAM) or in secondary storage (disk), and that the physical location of a page is unimportant to a process.

The term originally referred to what is now usually called virtual memory, which was introduced in 1962 by the Atlas system at the University of Manchester. In this system, data in the core memory was automatically moved to and from a magnetic drum to make it appear as if the core had the same storage capacity of the much larger drum.

In modern usage, the term usually refers to the organization of a computing system in which there are no files, only persistent objects (sometimes called segments). Software, very similar to virtual memory and developed as an offshoot from it, allows data on external storage to be mapped into processes' address spaces, manipulated in memory, and invisibly written back to storage. The entire storage of the computer is thought of as a single two-dimensional plane of addresses (segment, and address within segment).

The persistent object concept was first introduced by Multics in the mid-1960s, in a project shared by MIT, General Electric and Bell Labs. It also was implemented as virtual memory, with the actual physical implementation including a number of levels of storage types. Multics, for instance, had three levels originally: main memory, a high-speed drum, and disks. Multics was highly influential, and the single-level store became a very popular concept in the early 1970s.

Among the major efforts to bring the concept into the mainstream was the IBM Future Systems project of 1971, but this project grew out of control and was cancelled in 1975. The concept was then picked by IBM's midrange labs and became part of the System/38 that was released in 1978. In this system, memory is allocated not only by size but also given a name. Data written to that allocation is invisibly stored to secondary storage, and when the program allocates that memory again at some future time, the stored data is invisibly loaded back in. IBM holds patents to single-level storage as implemented in the IBM i operating system on IBM Power Systems.