SSDs - BenWare-FED/Notes-for-df-analysis GitHub Wiki

Array on a circuit board nvme-a small chip attached directly to the motherboard, no separate power, mainly used for OSs

Advantages:

Constant seek time

no file fragmentation

no moving parts-less noise, no spin up time, no risk of mechanical failure

lighter in weight

low power

Downs:

Overwriting is complicated and expensive: read, erase, modify, write

cells have limited life/cycles(5,000-50,000): Wear leveling is required.

data recovery issues

data carving issues

power faults can cause data loss or possibly a bricked device.

Internal:

Flash based storage NAND flash

controller

Data is written in blocks and pages

-Blocks are typically 1MB or larger

-logical block address is still maintained in sectors, sectors are usually 512 bytes

Writing

write is fast

-only thing that can be erased is blocks

-there is no overwrite, everything must be moved to temporary storage, the block erased and then everything copied back in with the new data. Process is known as amplification

How to optimize:

1.Mark the old page as invalid and store the edited data on a new page.

2.Garbage collection: If new content needs to be saved but no pages available, the original block will be marked as invalid and all the desired data will be moved to a new block before the original block is erased.

3.TRIM command: Called file deletion on a normal HDD. SSD needs to know which sectors are free.

SSDs have extra capacity inaccessible by normal users just like HDDs. However SSDs have 10-25% more storage than stated. These overprovisioned areas are continually used.