Wear Leveling
Wear Leveling ist eine Methode, um die Lebensdauer von Solid-State Drives zu verlängern. Solid-State-Storage besteht aus Microchips, welche die Daten in Blöcken speichern. Jeder dieser Speicherblöcke kann eine bestimmte (und endliche) Anzahl an Program-Erase Cycles tolerieren, bevor er unzuverlässig wird.
So kann beispielsweise SLC-NAND-Flash etwa 100.000 dieser P/E Cycles verarbeiten. Wear Leveling arrangiert die Daten so, dass Schreib-/Lösch-Zyklen gleichmäßig auf alle Blöcke des Mediums verteilt werden.
Wear Leveling wird typischerweise vom Flash-Controller verwaltet, der wiederum einen Wear-Leveling-Algorithmus nutzt, um festzulegen, welcher physische Block zu verwenden ist, wenn Daten programmiert werden. Es gibt zwei Arten des SSD-Wear-Leveling: Dynamisch und statisch.
Dynamisches Wear Leveling fasst gelöschte Blöcke zusammen und selektiert den Block mit der niedrigsten Löschungsrate für den nächsten Schreibprozess.
Statisches Wear Leveling wählt den Zielblock mit der allgemeinen niedrigsten Löschungsrate aus und löscht den Block bei Bedarf. Danach wird der Block mit neuen Daten beschrieben und es wird sichergestellt, dass Blöcke mit statischen Daten nur bewegt werden, wenn sie unter einem gewissen Schwellenwert bei der Löschungsrate liegen.
Dieser zusätzliche Schritt der Datenbewegung kann die Schreib-Performance beeinträchtigen, da es zu Overhead im Flash-Controller kommt. Dafür ist das statische Wear leveling effizienter als die dynamische Methode, wenn es darum geht die Haltbarkeit der SSD zu steigern.
Folgen Sie SearchStorage.de auch auf Twitter, Google+ und Facebook!