The Big Picture: Keeping a Wearing Medium Healthy

From Section 2 you know two facts about flash: a page can only be written when it is blank, and only a whole block can be erased. You also know that cells wear out after many erase cycles. A good SSD must hide all of this so that you simply see a fast, reliable drive.

This section covers the clever tricks the SSD controller uses, in the order that a block lives its life.

   THE LIFE OF DATA ON AN SSD

   PC writes ──► written to a blank page ──► PC changes it ──► old page
                                                               becomes STALE
        ┌──────────────────────────────────────────────────────────┘
        ▼
   Garbage collection: copy the still-valid pages out, erase the block
        │
        ▼
   Block is blank again ──► used again (wear leveling picks WHICH block)
        │
   (TRIM tells the SSD sooner which pages are stale,
    over-provisioning gives it spare room to work in)

3.1 Wear Leveling: Spreading Writes Evenly

What it is: Each block can only be erased a limited number of times (roughly a few hundred to several thousand cycles for TLC and QLC, more for SLC; it varies by chip). Wear leveling is the controller's job of spreading erases evenly over all blocks, so that no single block dies early.

Why it is needed: Imagine a hotel where every guest asks for room 1. That room's carpet wears out in a month, while the other rooms look new. Smart staff would rotate guests among all rooms. That is wear leveling.

Without it, a file that is rewritten often (like a log file) would burn through the same few blocks, and the whole drive might fail while 99% of the blocks are barely used.

There are two kinds:

TypeWhat it does
Dynamic wear levelingWhen new data arrives, choose the least-worn blank block to write it into
Static wear levelingAlso move old data that never changes (such as your Windows files) out of low-wear blocks, so those young blocks can join the pool of blocks available for frequent writes
   WITHOUT WEAR LEVELING            WITH WEAR LEVELING

   block 1  ████████████ worn out   block 1  ████░░░░░░░░
   block 2  █░░░░░░░░░░░            block 2  ████░░░░░░░░
   block 3  █░░░░░░░░░░░            block 3  ████░░░░░░░░
   block 4  ░░░░░░░░░░░░            block 4  ████░░░░░░░░
   (one block dies early)           (all blocks age slowly together)

The FTL (Section 2.2) makes this possible. Because the SSD can put data anywhere, and the map keeps track of where, it can freely choose the less-worn spot.

Bad block management: Even with good leveling, some blocks fail early. The controller watches for errors, retires any bad block and replaces it with a spare from a reserve (see 3.4). Every SSD ships with a few bad blocks and extras to cover them. This is normal.

3.2 TRIM: Telling the SSD Which Blocks Are Free

What it is: When you delete a file, Windows (the file system) only updates its own records to say "this space is free". The drive itself is not told. For an HDD that does not matter, because it can overwrite the old data directly. For an SSD, it matters a great deal.

The problem: The SSD still thinks those pages hold valid data because nobody told it otherwise. Later, during garbage collection, it would waste time copying this useless "deleted" data to a new block, again and again.

The solution: TRIM is a command that Windows sends to the SSD saying "these addresses are no longer used, you may forget them". (The name is not an official abbreviation; the command is just called TRIM.) The SSD marks those pages as stale, and garbage collection can skip them.

   WITHOUT TRIM                        WITH TRIM

   You delete a file                   You delete a file
        │                                   │
   Windows: "space free"               Windows: "space free"
        │                                   │
   SSD: knows nothing                  Windows ──TRIM──► SSD
        │                                   │
   Later GC copies the                 SSD marks pages stale
   dead data around (waste)            GC erases them (no copying)

Benefits: TRIM keeps writes fast over time, reduces wear and lowers write amplification (see 3.5).

TRIM in Windows:

  • Windows 7 and later send TRIM automatically to SSDs, if the drive supports it.
  • Windows also runs a scheduled retrim operation from the Optimize Drives tool. For an SSD, "optimizing" means sending TRIM for all free space, not defragmenting.
  • You can check it with one command (the lab does this):
fsutil behavior query DisableDeleteNotify

If the answer is DisableDeleteNotify = 0, TRIM is enabled. A value of 1 means it is disabled.

Windows tip: Do not run an old-style defragmentation on an SSD. It is pointless (an SSD has no seek time to save) and just adds wear. Windows knows the difference and uses retrim for SSDs.

3.3 Garbage Collection: Reclaiming Stale Blocks

What it is: Garbage collection (GC) is the SSD's background tidy-up. Over time, blocks fill with a mix of valid pages and stale pages. Because you can only erase a whole block, the controller must rescue the valid pages first. GC does this:

  1. Pick a block with many stale pages.
  2. Copy its few valid pages into a blank block.
  3. Update the FTL map to the new places.
  4. Erase the old block, making it fully blank again.
   GARBAGE COLLECTION

   BLOCK A (before)               BLOCK B (blank)
   ┌─────────────────┐            ┌─────────────────┐
   │ A1  valid       │ ─ copy ──► │ A1              │
   │ A2  STALE       │            │ A3              │
   │ A3  valid       │ ─ copy ──► │ (blank)         │
   │ A4  STALE       │            │ (blank)         │
   └─────────────────┘            └─────────────────┘
          │
          ▼  erase the whole of block A
   ┌─────────────────┐
   │ (blank) x 4     │   ◄── now free for new writes
   └─────────────────┘

When does it run?

  • Background GC: Runs when the drive is idle, so you don't notice.
  • Foreground GC: If the drive has no blank pages left and must make room right now, it does GC while you are writing, which makes writes slower. This is why a nearly full SSD gets slow.

Write amplification: Notice that GC makes the SSD write more data than you asked for (it copies valid pages). The ratio is the write amplification factor (WAF):

   WAF = data written to flash  ÷  data written by the PC

If the PC writes 1 GB and the SSD writes 3 GB to flash in total, WAF is 3. A WAF of 1 is perfect (no extra writing). Higher WAF means more wear and lower speed. TRIM, over-provisioning and a not-too-full drive all reduce WAF.

The SLC write cache and the "speed cliff": As mentioned in Section 2.2, many TLC and QLC drives write new data first into a fast SLC-style cache. The size depends on the drive, and on some models it shrinks as the drive fills up. A large copy (for example, 100 GB of video) may start at several GB/s, then drop after the cache fills to the speed of the real TLC or QLC storage, which can be only a few hundred MB/s on some drives. Then, once idle, the drive moves the data from the cache to its permanent home and frees the cache again.

   WRITE SPEED OVER A LONG COPY (shape only, numbers vary by drive)

   speed
     ▲
     │███████████████
     │               ██
     │                 ██████████████████   ◄── cache full:
     │                                           slower
     └─────────────────────────────────────► data written
         SLC cache        direct to TLC/QLC

Everyday use rarely hits this cliff, because normal writes are small. It shows up in big sustained copies.

3.4 Over-Provisioning: Reserved Spare Capacity

What it is: Over-provisioning (OP) is extra flash that the SSD keeps hidden from you. It is spare room the controller can use for garbage collection, wear leveling and replacing bad blocks.

Why it helps: Remember that the SSD can only write into blank pages. If every page were visible to the user and the drive were 100% full, the controller would have nowhere to put moved data. The hidden spare space is its working area, like the empty seat you need in a sliding-tile puzzle to move anything at all.

Where it comes from:

SourceDetails
Built inFlash is sold in binary sizes (for example 1024 GB of chips) but the drive is labelled in decimal (1 TB = 1000 GB). That alone gives a few percent of free spare. Many drives add more.
Added by the makerServer and heavy-use drives often reserve much more (10-30% or even beyond) for better speed and life
Added by the userYou can leave part of the drive unpartitioned (empty). The controller can treat it as extra spare space, as long as it has really never been written, or has been TRIMmed
Free spaceEven normal free space helps GC, so do not run an SSD 100% full

Practical advice: Try to keep 10-20% of an SSD free. It stays faster and lasts longer. Some drive makers' tools (not part of Windows) offer an over-provisioning setting.

3.5 Endurance, SMART and Power Loss

Endurance ratings: Makers state how much you can write before the drive may wear out. Two common numbers:

RatingMeaningExample
TBW (Terabytes Written)Total data the maker guarantees you can write over the drive's lifeA 1 TB consumer SSD might be rated about 600 TBW
DWPD (Drive Writes Per Day)How many times you can write the entire drive each day during the warranty0.3 DWPD for 5 years

The two are linked: TBW ≈ DWPD × capacity × days of warranty. A TBW of 600 means writing about 330 GB every day for 5 years. Typical home users write maybe 10-50 GB a day or far less, so a modern SSD usually outlives its usefulness. These ratings are guarantees, not hard stops. Many drives last well beyond them, but plan for the number as a guide, not a promise.

SMART: SMART (Self-Monitoring, Analysis and Reporting Technology) is a built-in health reporter in nearly every drive. It keeps counters that you can read:

ItemWhat it tells you
Power-on hoursHow long the drive has been running
TemperatureCurrent and maximum temperature
Percentage used / wear levelHow much of the rated life is used up
Data writtenTotal amount written to the drive
Media errors / reallocated sectors or blocksBad places that were replaced; a rising number is a warning
Available spareHow much of the reserved spare space is left
Unsafe shutdownsTimes the power was cut without a proper shutdown

Windows can show a basic health status for each drive. In PowerShell, Get-PhysicalDisk shows HealthStatus, and on many drives Get-PhysicalDisk | Get-StorageReliabilityCounter shows details such as temperature, wear and power-on hours. (What is shown depends on the drive and its driver. Some drives leave fields empty.) Free third-party tools can show the full SMART table too.

Power-loss behaviour: Suppose the power fails while the SSD is writing. Data in the DRAM cache that is not yet saved to flash could be lost, and the FTL table could be damaged.

  • Enterprise (server) SSDs often have capacitors (small energy stores) that give the drive enough power to finish saving data. This is called power-loss protection.
  • Consumer SSDs usually have less protection. They rely on careful design (writing the map in a safe order) and on Windows flushing (forcing data to be saved) at key points.

That is why you should shut down Windows properly and use a UPS (battery backup) for important desktop machines when you can. SMART's "unsafe shutdowns" counter tells you how often it happened.

Important: An SSD that fails often fails suddenly (the controller stops responding), while an HDD often gives warning signs first (clicking, slowing, bad sectors). So SSDs do not make backups less important. They make them more important.

HDD versus SSD: when to use which

If you needPick
The fastest boot and app launchSSD
Very cheap, huge storage for archives and backupsHDD
A laptop that can take bumps and runs coolSSD
A NAS with heavy sustained writingCMR HDD (or a suitable NAS SSD)
BothSSD for Windows and apps, HDD for bulk files

Summary

TermPlain meaning
Wear levelingSpreading erases evenly over all blocks so none dies early
Dynamic / static wear levelingChoose the least-worn blank block / also move never-changing data
Bad block managementRetire failed blocks and replace them from a spare pool
TRIMWindows telling the SSD which addresses are no longer used
DisableDeleteNotify = 0TRIM is enabled
Garbage collectionCopy valid pages away, then erase a block to free it
Write amplification (WAF)Data written to flash divided by data written by the PC; lower is better
SLC write cache and speed dropFast write area that fills up, after which speed falls
Over-provisioningHidden spare flash used for GC, wear leveling and bad-block swaps
TBW / DWPDRated total writes / full-drive writes per day
SMARTBuilt-in health counters (wear, temperature, errors)
Power-loss protectionCapacitors that let a drive finish saving after power fails