Functionality and Types of Storage
– Computers without memory can only perform fixed operations and immediately output results
– Von Neumann machines have memory to store operating instructions and data
– Von Neumann machines can be reprogrammed with new in-memory instructions
– Von Neumann machines are more versatile and simpler to design
– Most modern computers are Von Neumann machines
– Computers represent data using the binary numeral system
– Information can be converted into a string of bits
– The byte is the most common unit of storage, equal to 8 bits
– Data are encoded using various standards (e.g. ASCII, JPEG, MPEG-4)
– Redundancy allows computers to detect and correct errors in coded data
– Storage is divided into primary, secondary, tertiary, and off-line storage
– Primary storage is semiconductor storage directly accessible by the CPU
– Secondary storage consists of storage devices not directly accessible by the CPU (e.g. hard disk drives, optical disc drives)
– Tertiary storage refers to storage used in robotic tape libraries
– Off-line storage is the furthest from the CPU and has the lowest bandwidth
– Primary storage includes memory such as DRAM
– Secondary storage includes non-volatile devices like hard disk drives
– Primary storage is directly accessible to the CPU for executing instructions
– Early computers used delay lines, Williams tubes, and magnetic drums as primary storage
– Semiconductor memory became dominant in the 1970s, leading to modern RAM
Memory Hierarchy
– Processor registers are located inside the CPU and hold a word of data
– CPU instructions manipulate data stored in registers
– Processor cache is an intermediate stage between registers and main memory
– Main memory, such as RAM, is used for storing opened programs and as a disk cache
– Spare memory can be used as a RAM drive for temporary high-speed data storage
Introduction to Computer Data Storage
– Computer data storage is introduced to improve the performance of computers.
– Cache memory is faster but has lesser capacity compared to main memory.
– Main memory is slower but has greater storage capacity than processor registers.
– Multi-level hierarchical cache setup is commonly used, with primary cache being the smallest and fastest.
– Main memory is connected to the central processing unit via a memory bus, consisting of an address bus and a data bus.
Characteristics of Storage
– Volatility: Determines whether the stored information is retained without constant power supply.
– Mutability: Describes the ability to overwrite information at any time.
– Accessibility: Refers to the ease of accessing any location in storage.
– Addressability: Determines how information is selected and accessed within storage.
– Capacity: Represents the total amount of information that a storage device can hold.
– Mutability: Read/write storage, slow write/fast read storage, write once storage, read only storage
– Accessibility: Random access, sequential access, addressability (location-addressable, file addressable, content-addressable)
– Capacity: Raw capacity, memory storage density, performance, throughput, granularity
Storage Media
– Semiconductor: Uses integrated circuit chips to store information, with both volatile and non-volatile forms.
– Magnetic: Includes hard disk drives, magnetic tape, and carousel memory, used for primary, secondary, and tertiary storage.
– Optical: Utilizes technologies like Ultra Density Optical (UDO), magneto-optical disc storage, and 3D optical data storage.
– Flash Memory: Gains popularity as off-line storage for home computers, often used in solid-state drives (SSDs).
– Paper: Traditional form of data storage, including paper tape, punched cards, and barcodes.
Computer data storage is a technology consisting of computer components and recording media that are used to retain digital data. It is a core function and fundamental component of computers.




The central processing unit (CPU) of a computer is what manipulates data by performing computations. In practice, almost all computers use a storage hierarchy, which puts fast but expensive and small storage options close to the CPU and slower but less expensive and larger options further away. Generally, the fast technologies are referred to as "memory", while slower persistent technologies are referred to as "storage".
Even the first computer designs, Charles Babbage's Analytical Engine and Percy Ludgate's Analytical Machine, clearly distinguished between processing and memory (Babbage stored numbers as rotations of gears, while Ludgate stored numbers as displacements of rods in shuttles). This distinction was extended in the Von Neumann architecture, where the CPU consists of two main parts: The control unit and the arithmetic logic unit (ALU). The former controls the flow of data between the CPU and memory, while the latter performs arithmetic and logical operations on data.