Solid-State Drives are persistent storage devices that store digital information using solid-state memory rather than mechanically rotating magnetic platters. Modern SSDs predominantly use NAND flash memory, although the term describes the storage-device architecture rather than one specific semiconductor technology. An SSD typically contains NAND flash packages, a storage controller, firmware and interfaces for communicating with the host computer. Some designs also include DRAM or other memory used for mapping information and caching. Because an SSD has no spinning disks or moving read/write heads, it can provide substantially lower access latency and greater resistance to mechanical shock than conventional hard disk drives.
An SSD controller is responsible for translating host-level logical block addresses into the physical locations used by NAND flash. This translation is necessary because NAND cannot simply overwrite arbitrary existing data in place and has different read, program and erase granularities. The controller maintains a flash translation layer that maps logical addresses to physical flash pages or related structures. It also performs error correction, wear levelling, garbage collection, bad-block management and other functions required to make raw NAND usable as a reliable storage device. Consequently, an SSD is a sophisticated embedded computing system rather than merely a collection of flash chips attached to a connector.
NAND flash inside an SSD is organised into pages, blocks and larger structures depending on the specific memory technology. Data is generally read and programmed at page granularity, while erasure occurs at block granularity. When the operating system overwrites data, the controller may write the new version elsewhere and mark the previous physical copy invalid. Garbage collection later consolidates valid pages and erases blocks so that they can be reused. This architecture creates internal data movement known as write amplification. SSD firmware continuously manages these operations to balance performance, endurance, available free space and error rates.
SSDs use several host interfaces and protocols. SATA SSDs communicate through the SATA interface and are constrained by the throughput and protocol characteristics of the SATA ecosystem. NVMe SSDs communicate through PCI Express and use the NVMe protocol, which was designed specifically for non-volatile memory devices and supports many parallel command queues. Physical form factors include conventional 2.5-inch drives and compact M.2 devices, although an M.2 connector does not itself guarantee that a device uses NVMe because M.2 can accommodate different interface types. High-performance enterprise systems can also use other PCI Express-based form factors and architectures according to deployment requirements.
SSD performance depends on workload and operating conditions. Sequential reads and writes can achieve very high throughput, particularly with modern PCI Express interfaces, while random access latency is generally far lower than that of mechanical hard drives. However, sustained write performance can fall when an SSD's available cache or spare blocks become constrained. Many consumer SSDs use faster forms of flash or dedicated memory as temporary write buffers, after which data is committed to slower or denser NAND. Once those resources are exhausted, the drive may need to perform additional internal operations, producing substantially different performance from short benchmark bursts.
SSD endurance is normally described using measures such as program-erase cycles and host or drive writes over a specified period. NAND cells gradually wear as they are programmed and erased, so SSD controllers distribute writes through wear levelling. Error-correcting codes are used to correct bit errors, while spare capacity can replace unusable blocks and support garbage collection. Drive endurance depends on flash type, workload, controller design, write amplification, operating temperature and over-provisioning. A drive rated for a particular endurance figure is therefore not guaranteed to fail immediately after reaching that figure; such ratings are engineering specifications describing expected or warranted operating behaviour rather than a precise expiration point.
Operating-system support affects SSD behaviour. The TRIM command allows a compatible operating system to inform the SSD that particular logical blocks no longer contain useful data, enabling the controller to manage those physical locations more efficiently during future garbage collection. This is different from securely erasing data, because merely marking blocks as unused does not necessarily guarantee immediate physical destruction of every previous copy. Secure sanitisation depends on the drive's architecture and supported commands or procedures. SSDs can also experience data-retention issues when unpowered for long periods, particularly as flash cells age, so archival use requires consideration of the specific device and storage conditions rather than assuming all SSDs are equivalent to long-term archival media.
SSDs provide several practical advantages, including low access latency, high random I/O performance, silent operation, low mechanical shock sensitivity and compact form factors. Their disadvantages include higher cost per unit of capacity than some magnetic storage, finite write endurance, controller complexity and performance variability under certain workloads. SSDs are particularly useful for operating-system drives, application storage, gaming, professional workloads, mobile computing and systems where fast random access is valuable. Enterprise SSDs can prioritise endurance, predictable latency, power-loss protection and high sustained workloads, whereas consumer SSDs commonly prioritise capacity, cost and burst performance.