Garbage Collection & TRIM: SSDs Dirty Little Secret
Das Grollen im Internet und in bestimmten IT-Kreisen hat sich als wahr erwiesen: SSD-Geschwindigkeiten können sich mit der Zeit verlangsamen. Glücklicherweise gibt es Dinge, die Sie tun können, um dies zu verhindern und die Geschwindigkeit Ihrer SSDs aufrechtzuerhalten.
Was ist SSD Garbage Collection
Genau wie das Herausnehmen des Papierkorbs eine notwendige Aufgabe bei der Wartung Ihres Hauses ist, ist die Garbage Collection auch eine Art SSD-Wartung. Es ist eine falsche Bezeichnung, da die Garbage Collection nichts mit dem Entfernen von Dateien zu tun hat, die nicht mehr benötigt werden. Es ist eher so, als würde man leere Kisten mit Dingen loswerden, die man bereits weggeworfen hat. Im Kern ist die SSD-Speicherbereinigung ein automatisierter Prozess, der die Leistung verbessern soll.
Wir alle wissen, dass SSDs anfangs sehr schnell sind, aber wir stellen fest, dass sie mit der Zeit langsamer werden, insbesondere wenn sich das Laufwerk zu füllen beginnt. Dies ist genau das, was SSD Garbage Collection verhindern soll. Bei richtiger Wartung kann die Geschwindigkeit einer SSD erhalten bleiben.
Die große SSD-Verlangsamung
Um zu verstehen, warum SSDs mit der Zeit langsamer werden, ist es wichtig zu wissen, wie Dateisysteme funktionieren. Jedes Dateisystem hat seine eigene Art, Dinge zu tun, aber im Allgemeinen, wenn Sie eine Datei löschen, ist diese Datei nicht wirklich verschwunden. Das Betriebssystem löscht normalerweise nicht die Speicherblöcke, die zuvor von der Datei bewohnt wurden. Stattdessen markiert das Betriebssystem die Blöcke einfach als verfügbar und speichert diese Informationen in einer Verzeichnisdatei. Aus diesem Grund Recovery-Software wie Hard Disk Warrior ist in der Lage, Dateien wiederherzustellen, die ‚gelöscht‘ wurden. Die Datei befindet sich noch in diesen Blöcken auf der Festplatte, aber die Verzeichnisdatei listet sie als leer auf, sodass sie für Ihren Computer unsichtbar sind.
Bei HDDs war diese Methode zum Löschen einer Datei kein Problem. Das Betriebssystem würde die Blöcke einfach als verfügbar markieren, und die Festplatte könnte neue Daten über die alten Daten schreiben. SSDs können das nicht. Bei SSDs müssen Speicherblöcke gelöscht werden, bevor sie überschrieben werden können. Diese Anforderung zum Löschen zuvor verwendeter Blöcke führt dazu, dass SSDs mit der Zeit langsamer werden.
Entfernen des SSD-Mülls
Um diese unerwünschte Situation zu verhindern, führen moderne SSDs komplexe Routinen namens Garbage Collection aus, um immer eine möglichst große Reserve an unberührten leeren Blöcken zum Schreiben bereit zu halten. Bei der Garbage Collection durchsucht der Controller sein Inventar geschriebener Seiten nach Seiten, die als „veraltet“ markiert wurden — das heißt, sie wurden geschrieben, und dann mussten die darin enthaltenen Daten vom Betriebssystem geändert werden. Die Garbage Collection sucht nach Blöcken, die eine Mischung aus guten und veralteten Seiten enthalten, dupliziert dann alle guten Seiten in neue Blöcke und hinterlässt nur veraltete Seiten im alten Block. Dann löscht es den alten Block und markiert ihn gebrauchsfertig.
Es gibt jedoch noch ein weiteres Detail zur SSD-Garbage Collection. SSDs können auf Seitenebene lesen und schreiben — was bei modernen Laufwerken normalerweise 8 KB beträgt —, haben jedoch einen besonderen Nachteil, da sie auf Seitenebene nicht löschen können. SSDs können nur ganze Blöcke löschen, die normalerweise aus Hunderten von Seiten bestehen. Der Grund dafür ist, dass das Löschen des Inhalts einer Seite das Zappen dieser Seite mit einer nicht unerheblichen Menge an Spannung erfordert, und das Layout im NAND-Stil aller modernen SSDs macht es unerschwinglich schwierig, diese Spannung nur auf die Seiten zu isolieren, die gelöscht werden müssen.Und hier kommt die falsche Bezeichnung „Garbage Collection“ ins Spiel, denn es sind eigentlich gute Seiten, die „gesammelt“ werden, wobei der Müll zurückgelassen wird. Das Ziel hinter diesem Prozess ist es, die Leistung zu optimieren, indem Blöcke entweder vollständig leer (und dann den Block löschen) oder vollständig voll sind.
Was ist mit TRIM?
Auf einer Festplatte gibt es normalerweise eine feste Korrelation zwischen den Clustern des Dateisystems und den Sektoren der Festplatte. Aber auf einer SSD, wo es keine feste Korrelation gibt und wo In-Use-Seiten von Garbage Collection verfolgt und abgeholt werden müssen, kann es eine große Sache sein. Seiten, die gelöschte Dateien enthalten, sehen aus wie gültige Seiten, und sie werden immer wieder zusammen mit tatsächlich guten Seiten gesammelt.
Dies ist die Situation TRIM eingeführt wurde, um Abhilfe zu schaffen. TRIM (richtig groß geschrieben, aber kein Akronym) ist ein ATA-Befehl, den das Betriebssystem beim Löschen einer Datei senden kann. Der TRIM-Befehl stellt diese Brücke von der Dateiebene zur Blockebene bereit und gibt dem Betriebssystem die Möglichkeit, der SSD mitzuteilen, dass Dateien gelöscht werden, und die Seiten dieser Dateien als veraltet zu markieren.
Mit TRIM ist eine SSD nicht mehr gezwungen, Seiten gelöschter Dateien zu speichern. TRIM ist keine Alternative zur Garbage Collection – es funktioniert mit der Garbage Collection, um Seiten besser als veraltet zu markieren. Und Sie brauchen TRIM nicht, damit die Garbage Collection funktioniert – aber TRIM macht die Garbage Collection einer SSD effizienter.
Wenn Sie jedoch einen Mac verwenden, unterstützt Apple TRIM auf SSDs von Drittanbietern nicht. Es war möglich, diese Einschränkung in früheren Versionen von OS X zu umgehen, aber Sie können es in Yosemite nicht tun, ohne eine Sicherheitslücke zu öffnen — tun Sie dies nicht, denn obwohl TRIM einen Unterschied bei der Verringerung der Schreibverstärkung und der Verlängerung der Lebensdauer und Leistung einer SSD macht, lohnt es sich nicht, die scheunengroßen Sicherheitslücken zu öffnen, um sie zu erhalten.
Verwenden Sie also immer TRIM, wenn Sie können. Dadurch funktioniert die Garbage Collection Ihrer SSD viel besser. Aber wenn Sie sich in einer Situation befinden, in der TRIM nicht verfügbar ist, geraten Sie nicht in Panik — es ist schön zu haben, aber es ist keine Voraussetzung.