Speichermedium Solid State Drive (SSD)
| |
Drei SSDs im weitverbreiteten 2,5"-Format. | |
Allgemeines | |
---|---|
Typ | Halbleiterbaustein |
Kapazität | bis 256 TB (Samsung PM1743, Juli 2023)[1] |
Lebensdauer | Schreibvorgänge je Zelle:[2] 1.000 (QLC) 1.000 (TLC in 21-nm-Fertigung) 3.000 (MLC in 25-nm-Fertigung) 5.000 (MLC in 34-nm-Fertigung) 10.000 (MLC in 50-nm-Fertigung) 100.000 (SLC in 50-nm-Fertigung) bis zu 5 Mio. (ausgewählte SLC-Chips) |
Größe | bis 30,72 TB (kommerzieller Bereich) bis 100 TB (industrieller Bereich) |
Ursprung | |
Markteinführung | 1978 von StorageTek |
Ein Solid-State-Drive bzw. eine Solid-State-Disk,[3] kurz SSD (aus dem Englischen entlehnt), seltener auch Halbleiterlaufwerk[4] oder Festkörperspeicher[5] genannt, ist ein nichtflüchtiger Datenspeicher der Computertechnik. Die Bezeichnung Drive (englisch für Laufwerk) bezieht sich auf die ursprüngliche und übliche Definition für dieses Medium von Computern. Weil die SSD u. a. in PCs großteils klassische Festplatten ersetzte, wird sie manchmal auch als SSD-„Festplatte“ bezeichnet. Die Bauform und die elektrischen Anschlüsse können den Normen für Laufwerke mit magnetischen oder optischen Speicherplatten entsprechen, müssen dies aber nicht. Sie können zum Beispiel auch als PCIe-Steckkarte ausgeführt sein. Wird eine magnetische Festplatte (engl. Hard Disk Drive, HDD) mit einem Solid-State-Speicher zu einem Gerät kombiniert, spricht man von einer Hybridfestplatte (engl. hybrid hard drive, HHD, bzw. engl. solid state hybrid drive, SSHD).
Solid-State-Drives wurden im Verlauf der zweiten Hälfte des 20. Jahrhunderts entwickelt, bis sie über Einzelanwendungen hinaus zum massenhaften Einsatz fähig wurden. Ihre Kosten waren anfangs im Verhältnis zur Speicherkapazität sehr hoch, verminderten sich aber ebenso wie die Baugrößen bei gleicher Leistung schnell entsprechend dem Mooreschen Gesetz, so dass sie um die Jahrtausendwende für spezielle Verwendungen auch wirtschaftlich rentabel wurden. Dennoch lagen die Preise für SSDs (in Euro pro Gigabyte) im Juli 2018 noch bei einem Mehrfachen des Preises eines herkömmlichen Magnetspeicher-Laufwerks. Anfang 2023 war der Preis noch rund das Doppelte gegenüber einer handelsüblichen Festplatte gleicher Kapazität.[6][7]
SSDs haben keine beweglichen Teile und sind daher unempfindlich gegen Stöße, Erschütterungen und Vibrationen. Sie haben außerdem kürzere Zugriffszeiten und arbeiten geräuschlos. Im Gegensatz zu Festplatten braucht eine SSD nach dem Start keine Anlaufzeit. Sie benötigt weniger Strom und produziert weniger Abwärme. SSDs können deutlich kleiner als entsprechende Speicher mit Magnetplatten gebaut werden. Ausfälle und Fehler von SSDs sind häufig verursacht durch Fehler in der Firmware, die immer wieder unausgereift auf den Markt kommt und erst später durch Aktualisierungen nachgebessert wird.[8][9][10] SSD-Speicherzellen haben außerdem eine beschränkte Anzahl von Schreibzyklen.
In der Elektronik bedeutet der englische Begriff „solid state“, dass Halbleiterbauteile verwendet werden. Dadurch unterscheiden sie sich von anderen Speichertechniken wie Kernspeichern, Lochkarten, Magnetspeicher oder optische Speicher, die zumeist mechanische Komponenten enthalten. In Analogie zu Laufwerktechniken wie HDDs, FDDs und ODDs wird das Medium als „Drive“ bezeichnet.
Solid-State-Drives haben ihren Ursprung in den 1950er Jahren mit zwei ähnlichen Techniken, dem Magnetkernspeicher und dem Charged Capacitor Read-Only Storage (CCROS), einer frühen Form des Festwertspeichers.[11][12] Diese unterstützenden Speicherformen tauchten in der Ära der Elektronenröhren-Computer auf, durch das Aufkommen von günstigeren Trommelspeichern wurden sie aber dann wieder aufgegeben.[13]
In den 1970er und 1980er Jahren wurden SSDs in Halbleiterspeichern der frühen Supercomputer von IBM, Amdahl und Cray implementiert, aufgrund ihres sehr hohen Preises aber selten verwendet.[14] In den späten 1970er Jahren brachte General Instruments den Electrically Alterable ROM (EAROM, eine weitere Form des Festwertspeichers) auf den Markt, der mit der späteren NAND-Flash-Technologie große Ähnlichkeiten aufwies. Da die Lebensdauer dieser Speicher allerdings unter zehn Jahren lag, wurde die Technologie von vielen Unternehmen wieder aufgegeben.[15] 1976 startete Dataram den Verkauf eines Produkts namens Bulk Core, welches bis zu 2 MB Solid-State-Speicher kompatibel mit Digital Equipment Corporation- (DEC) und Data-General-Computern (DG) lieferte.[16] 1978 führte Texas Memory Systems ein 16-Kilobyte-RAM-Solid-State-Drive ein, welches von Öl-Förder-Unternehmen zur Aufzeichnung seismischer Daten verwendet werden sollte.[17] Im darauffolgenden Jahr (1979) entwickelte StorageTek das erste RAM-Solid-State-Drive.[18]
Der im Jahre 1983 eingeführte Sharp PC-5000 verwendete 128-Kilobyte-Solid-State-Kassetten, die mit Magnetblasenspeicher arbeiteten.[19] 1984 wurde von der Tallgrass Technologies Corporation eine 40-MB-Backup-Einheit mit einem integrierten 20-MB-SSD vorgestellt, die alternativ auch als Laufwerk verwendet werden konnte. Im September 1986 machte Santa Clara Systems die BatRam bekannt: ein 4 MB großes Massenspeichersystem, das auf bis zu 20 MB expandiert werden konnte. Das System beinhaltete wiederaufladbare Batterien, um dem Chip auch Energie zuführen zu können, wenn der Stromfluss abbrach.[20] 1987 verbaute die EMC Corporation erstmals SSDs in Mini-Computern, brach diese Entwicklung ab 1993 aber wieder ab.[21][22]
Die Entwicklung von Festkörperspeichern nahm in den späten 90er Jahren eine entscheidende Wende. Sie waren zwar teuer und auf Nischen- oder High-End-Anwendungen ausgerichtet, aber mit der breiten Vermarktung von Digitalkameras, die mit der ersten wirklich tragbaren Digitalkamera, der Fuji DS-1P im Jahr 1988, begann[23] und 1994 die erste CompactFlash-Karte von "Sun Disk",[24] die ersten großvolumigen Verbraucheranwendungen wurden populär. In den nächsten Jahren entwickelte sich die Solid-State-Speicherung in Form von Speicherkarten rasant und senkte die Kosten pro Mega/Giga-Byte drastisch.
1983 wurde der Psion MC 400 Mobile Computer mit vier Steckplätzen für Wechselspeicher in Form von Flash-basierten Solid-State-Disks ausgeliefert. Diese Steckplätze waren vom selben Typ, der bei der Psion Series 3 für Flash-Memory-Cards verwendet wurde.[25] Diese Module hatten den großen Nachteil, dass sie jedes Mal formatiert werden mussten, um Speicher von gelöschten oder modifizierten Dateien freigeben zu können. Alte Versionen von Dateien, die gelöscht oder bearbeitet wurden, nahmen weiterhin Speicherplatz in Anspruch, bis das Modul formatiert wurde.
1991 brachte SanDisk ein 20-MB-Solid-State-Drive auf den Markt, welches für 1000 US-Dollar verkauft wurde. 1995 stellte M-Systems erstmals ein Flash-basiertes Solid-State-Drive vor, das keine Batterien benötigte, um die Daten zu erhalten. Allerdings war es nicht so schnell wie DRAM-basierte Lösungen.[26][27] Von diesem Zeitpunkt an wurden SSDs erfolgreich als HDD-Ersatz von Militär- sowie Luft- und Raumfahrtorganisationen eingesetzt.[28]
1999 wurden von BiTMICRO einige Produkte im Bereich der Flash-basierten SSDs vorgestellt, unter anderem eine 18 GB große 3,5-Zoll-SSD.[29] 2007 stellte Fusion-io eine PCIe-basierte SSD mit einer Performance von 100.000 IOPS in einer einzigen Karte mit einer Kapazität von bis zu 320 GB vor.[30] 2009 wurde auf der Cebit ein Flash-SSD von OCZ Technology präsentiert, das bei einer Kapazität von einem Terabyte (unter Verwendung eines PCIe-x8-Interfaces) eine maximale Schreibgeschwindigkeit von 654 MB/s und eine maximale Lesegeschwindigkeit von 712 MB/s aufwies.[31] Im Dezember des gleichen Jahres kündigte Micron Technology ein SSD an, das ein 6-Gigabit-SATA-Interface verwenden würde.[32]
Enterprise-Flash-Speicher (Enterprise flash drives, EFDs, enterprise = engl. für Unternehmen) wurden für Applikationen entworfen, welche eine hohe IOPS-Performance benötigen sowie zuverlässig und effizient arbeiten müssen. In den meisten Fällen ist ein EFD ein SSD mit einem umfangreicheren Satz an Spezifikationen, verglichen mit einem Standard-SSD. Der Begriff wurde von EMC erstmals im Januar 2008 verwendet, um SSD-Hersteller zu identifizieren, die Produkte mit diesen höheren Standards zur Verfügung stellten.[33] Es gibt allerdings keine Standards oder Regeln, die EFDs und SSDs voneinander unterscheiden, weshalb im Prinzip jeder Hersteller angeben kann, EFDs zu produzieren.[34]
2012 führte Intel die SSD DC S3700 ein – eine EFD, die darauf ausgerichtet ist, gleichbleibende Performance zu liefern. Diesem Feld wurde vorher nur wenig Aufmerksamkeit geschenkt.[35]
Zwei Arten von Speicherchips werden verwendet: Flash-basierte und SDRAMs.
Flash-Speicher sind besonders energieeffizient und stromunabhängig, wenn es um das Beibehalten des Inhalts geht. Herstellerseitig werden hier rund zehn Jahre versprochen.
SDRAM-Chips sind flüchtig und verbrauchen pro Gigabyte deutlich mehr Energie als eine konventionelle Festplatte. Ihr Vorteil liegt dafür in der deutlich höheren Geschwindigkeit. Mitte der 1990er Jahre auch als „RAM-Disks“ eingeführt, fanden sie von Anfang an Einsatz in Servern, wo auf ihnen Caches, temporäre Dateien und Journale von Datei-, Web-, Datenbank-Servern o. Ä. abgelegt wurden. Sie können als Steckkarte oder auch als Gerät mit emulierter Festplattenschnittstelle realisiert sein – oft mit einer Sicherungsbatterie oder eigenem Stromanschluss. Das Auffinden beliebiger Daten erfolgt 700-mal schneller als bei einer Festplatte. Gegenüber der Flash-Technik sind sie 80-mal so schnell. Ein zweiter Vorteil ist die festplattenähnliche, fast unbegrenzte Wiederbeschreibbarkeit; Flash-Chips sind hier auf 100.000 bis 5 Millionen Schreibzyklen begrenzt. Diese Beschränkung gilt für einzelne Flashzellen. Eine solche kann bei Verschleiß oft mittels S.M.A.R.T. automatisch gegen eine Reservezelle ausgetauscht werden.
Es liegt nahe, die Geschwindigkeit der SDRAMs mit dem Datenerhalt anderer Speichertypen – Festspeicher – zu verbinden. So integrieren manche Hersteller etwa auch eine konventionelle Festplatte in das Gehäuse der SDRAM-SSD, um beispielsweise bei einem Stromausfall eine Sicherheitskopie zu haben. Umgekehrt wurden in konventionelle Festplatten immer mehr SDRAM- und Flashchips als Zwischenspeicher (sog. „Cache“) eingebaut.
Der Wegfall der empfindlichen Motorlagerung und Lese-Schreib-Mechanik der Laufwerke mit rotierenden Platten ergibt eine erhöhte Stoßfestigkeit. Auch die Temperaturtoleranz ist größer. Das betrifft sowohl den Temperaturbereich, in dem SSDs betrieben werden können, als auch die Toleranz hinsichtlich von Temperaturänderungen. Beide Punkte qualifizieren SSDs für den mobilen Einsatz. Am häufigsten finden sich flashbasierte SSDs daher in MP3-Playern und USB-Sticks. Wegen des zwischenzeitlich deutlich gesunkenen Preises pro GB sind sie mittlerweile auch in Notebooks üblich. Ein weiterer Vorteil besteht in der konstanten, im Vergleich zu rotierenden Platten sehr geringen Latenz im Zugriff auf die gespeicherten Daten. Während beim Zugriff auf Daten in physisch weit voneinander entfernten Sektoren auf einer Festplatte eine relativ lange Zeit benötigt wird, um den Lesekopf auf die neue Position (ähnlich einem Schallplattenspieler) zu bewegen, können bei einer SSD über die Adresse eines Datenblocks unabhängig vom vorher relevanten Block die enthaltenen Informationen gelesen bzw. geschrieben werden. Zusätzlich nehmen im Gegensatz zu Festplatten die sequentiellen Transferraten nicht ab, wenn man den Formfaktor verkleinert (bei Festplatten haben bei größeren Platten die äußeren Spuren einen größeren Umfang, dadurch haben dort mehr Daten Platz, und daher können pro Umdrehung mehr Daten gelesen werden). Hybridfestplatten und reine SSD-Modelle sind seit 2007 im Handel.
Im stationären Einsatz finden sich eher SDRAM-basierte SSDs, und das meist weitab vom Massenmarkt. Ihr Einsatzgebiet sind Anwendungen, die sehr laufwerklastig arbeiten (Datenbanken, Sortieranwendungen), indem sie wiederholt kleine Datenmengen von verschiedensten Speicherbereichen anfordern. Oft werden diese Laufwerke auch von Entwicklern und Testern benutzt, um die Leistungsfähigkeit von Festplatten-Controllern und -bussen zu messen, da sie diese maximal auslasten. Ihre Geschichte begann 1978, als das Unternehmen StorageTek die „Solid State Disk STK 4305“ auf den Markt brachte, welche kompatibel zum Festkopfplattenspeicher IBM 2305 war und mit Großrechnern vom Typ System/370 benutzt wurde. StorageTek selber benutzt die Bezeichnung „Solid-State Disk“.[36]
Mit steigender Leistung der Flash-SSDs und besseren Controllern war 2008 erstmals ein vergleichbar schnelles Laufwerk auf NAND-Basis verfügbar. Es wurde zugunsten schneller Systemanbindung als PCIe-x4-Karte angeboten, weshalb es jedoch nicht als Laufwerk für das Betriebssystem verwendbar war, da das System zunächst starten muss, um das „fusion io“ über einen Treiber ansprechen zu können. Das und der Preis von 50 Euro pro Gigabyte machten es für den Endkundenmarkt uninteressant, stellten aber im oben genannten Einsatzgebiet ein seinerzeit günstiges Angebot für eine Leistung auf RamSan-Niveau dar.[37]
2015 wurden Speicherkapazitäten bis rund 10 TB angeboten, die Bauform ist bei diesen Modellen PCIe2.0 x16.[38]
Aber auch im Bereich der eingebetteten Systeme, in denen es ausschließlich auf den Verzicht auf mechanische Teile ankommt, werden häufig Solid-State-Drives verwendet. Eine Ein-Chip-Mikrocontrolleranwendung hat aus Platz- und Energiegründen häufig keinen Festplattenanschluss; stattdessen liegt deren Steuerungsprogramm oder Betriebssystem meist in einem Flash-Chip. Einen solchen hat auch jeder PC, er enthält die Firmware (etwa EFI oder BIOS).
Weitere Anwendungsgebiete finden sich in Umgebungen, in denen Schmutz, Erschütterungen sowie Druckschwankungen, Temperatur und Magnetfelder (Raumfahrt) den Einsatz mechanischer Platten verhindern.
SSDs sind dabei, konventionelle Festplattentechnik zu ergänzen oder zu ersetzen, zuerst besonders in mobilen, mittlerweile auch in stationären Geräten. Mit einer Ablösung durch Flashspeicher verschwinden zahlreiche Unterscheidungsmerkmale zwischen den Herstellern. Dazu gehören die Punkte Lautstärke und Kühlungsbedarf, aber auch die prinzipbedingt sehr ähnliche Stoßfestigkeit und Zugriffszeit. Den Herstellern bleibt Gestaltungsfreiraum bei Geschwindigkeit, Kapazität, Zuverlässigkeit, Preis, Energiebedarf, Gehäusegröße und Gewicht, Zubehör sowie weiteren Merkmalen (z. B. Verschlüsselung). Wie bei Festplatten ist es auch bei SSDs verbreitet, die Kapazität mit SI-Präfixen anzugeben anstatt mit Binärpräfixen.
Bei der Hybridfestplatte, auch SSHD (von solid state hybrid drive) oder HHD (von hybrid hard disk), wird eine herkömmliche Festplatte mit einem wesentlich kleineren Solid-State-Speicher kombiniert. Dessen nur geringe Größe soll den Mehrpreis auffangen, seine Vorteile aber einem breiten Markt zugänglich machen.
Die Kombination mit DDR-SDRAM bietet vorerst nur ein Hersteller innerhalb Japans und fern dem Massenmarkt ab rund 1000 Euro an. Die DTS „Platinum HDD“[39] verwendet einen Chip desselben Herstellers, der über die Zeit lernen soll, welche Inhalte sich für den schnellen Zwischenspeicher empfehlen. Dieser behält durch einen Kondensator seine Daten bis anderthalb Minuten nach dem Ende der Stromzufuhr und besteht aus einem 1-Gigabyte-DDR-SDRAM-Modul. Er ist zusammen mit einer 2,5″-Festplatte in einem 3,5″-Gehäuse untergebracht. Dadurch ist dieser Ansatz nicht für mobile Geräte geeignet, spart aber ein Drittel der Energie konventioneller 3,5″-Festplatten. Da hier ein Chip die Auswahl übernimmt, beschleunigt dieses Laufwerk jedes Betriebssystem; bei HHDs muss das Betriebssystem diese Aufgabe übernehmen. Früher leisteten das nur Windows Vista und Windows 7. Im Desktop- und kleinen Serverbereich kann das Laufwerk für Datenmengen unter einem Gigabyte jegliche Flashlaufwerke deutlich übertreffen. Die eingebaute Festplatte fasst zwischen 80 und 200 GB. Allerdings wird auch bei „normalen“ Festplatten teilweise DDR/DDR2-SDRAM als Cache verwendet, allerdings nur maximal 128 MB.[40]
Die Kombination mit Flash verbreitet sich aufgrund der Unterstützung durch große Hersteller sowie Mobileignung und Datenerhalt immer weiter. Technisch gibt es zwei Umsetzungen. Intel integriert den Flashspeicher nicht in die Festplatte selbst, sondern verwendet wie für den Arbeitsspeicher einen proprietären Anschluss auf dem Mainboard. Damit entsteht eigentlich keine Hybridfestplatte, der erzielte Effekt ist aber der gleiche. Dieses Prinzip nennt Intel „Turbo Memory“.[41] Alle anderen Anbieter dieser Technik sind Festplattenhersteller und integrieren den Flashspeicher in das Laufwerk selbst – meist 256 MB. Intel verwendet die vier- bis achtfache Kapazität.
Grundlage beider Varianten ist, dass Flashchips ihre Daten mit geringerer Verzögerung als die Festplatte selbst liefern können. Die in den Festplatten bereits vorhandenen SDRAM-Zwischenspeicher verlieren ohne permanente Stromversorgung ihren Inhalt.
Flash ist jedoch beim Schreiben nicht nur langsamer als SDRAM, sondern unterbietet hier auch die Festplatte selbst. Er ist also kein Ersatz, sondern eine Ergänzung. Eine Datei wird daher auch nicht beim ersten Zugriff, sondern erst nach häufiger Verwendung in den Flashbereich aufgenommen; mitunter auch nur einzelne Bestandteile. Diese werden beim Lesen dann deutlich schneller bereitgestellt als die Festplatte es könnte. Diese wird nur bei Bedarf – also für weniger benutzte Dateien – gestartet. Bei Internet- oder Büroarbeit sind die Hybridkonzepte somit oft lautlos und sehr energiesparend (um 0,3 W). Diese beiden Punkte, zusammen mit der im Stillstand höheren Stoßfestigkeit, sind ihre Vorteile. Da diese besonders dem Mobileinsatz zugutekommen, werden HHDs bisher nur in 2,5 Zoll gefertigt. Dank des S-ATA-Anschlusses sind sie aber auch im Desktop verwendbar. „Turbo Memory“ dagegen ist nur für Notebooks verfügbar, 2008 soll die zweite Generation dann auch den Desktop erreichen. Intels Lösung ist dabei immer an einen „Mainboard-Chipsatz“ aus demselben Hause gebunden.
Beide Konzepte benötigen Windows Vista oder neuere Windows-Versionen, die bislang als einzige Betriebssysteme den Flashbereich mit den meistbenötigten Daten belegen können. Alle anderen Betriebssysteme benutzen den Flash-Bereich mangels verfügbarer Treiber nicht.
Neuere Hybridfestplatten brauchen nicht mehr das Betriebssystem, um den Flashspeicher zu benutzen. Dieser Vorgang wird von einem Controller in der Festplatte selbst übernommen. Dadurch können solche Festplatten in jedem Betriebssystem in vollem Umfang genutzt werden.
Im Folgenden sind die theoretischen Vorteile der Praxis gegenübergestellt.
Auch wenn Hybridfestplatten erst 2007 auf den Markt kamen, gab es eine ähnliche Technik schon mehr als zehn Jahre zuvor: Der Hersteller Quantum hatte eine SCSI-Festplattenserie namens „Rushmore“ im Programm. Diese kombinierte eine herkömmliche Festplatte statt mit – damals eher bremsendem – Flash mit SD-RAM in Laufwerksgröße. Die reichte bei der Einstellung der Serie im Jahre 2000 von 130 Megabyte bis 3,2 Gigabyte. Alle gespeicherten Daten wurden im Betrieb aus dem extrem schnellen „Cache“ geliefert. Da dieser jedoch auf Strom angewiesen war, rüstete der Hersteller das Produkt mit Batterien gegen Datenverlust aus. Deren Energie ließ im Notfall die Festplatte starten und alle Daten aus dem RAM übernehmen. Wegen der hohen Preise für RAM-Chips waren die Rushmore-Platten für Privatanwender aber praktisch unerschwinglich – sie lagen beim Tausendfachen heutiger Flashchips. Daher war auch die optional verfügbare Grundversion keine Ausnahme: Ihr fehlten die sowieso relativ günstigen Bauteile Festplatte und Batterie.
Nach Samsungs Debüt der ersten HHD[43] im März 2007 begann Seagate im Juli mit der Fertigung eines Modells gleicher Flashgröße.[44] Zusammen mit Fujitsu, die noch keine HHD ankündigten, gründeten die genannten Hersteller Anfang 2007 die „Hybrid Storage Alliance“,[45] um die Vorteile der neuen Technik besser zu vermarkten.
Seit der Übernahme von Samsungs Festplattensparte durch Seagate im Jahr 2011 war Seagate zwischenzeitlich der einzige Anbieter von HHDs (von den Herstellern meist als SSHDs bezeichnet) für den Endkundenmarkt. Mittlerweile (2014) bietet Seagate Consumer-SSHDs mit Kapazitäten von 500 bis 1000 GB (2,5 Zoll, Generation Anfang 2013) und 1 bis 4 TB (3,5 Zoll, seit Mitte 2013) an, in denen dem Magnetspeicher jeweils 8 GB MLC-Flashspeicher als reiner Lesecache zur Seite stehen[46] – doppelt so viel wie bei der Vorgängergeneration. Toshiba stellte ebenfalls Mitte 2013 SSHDs im 2,5-Zoll-Format vor; wie bei den Seagate-SSHDs beträgt die Größe des Lesecaches 8 GB.[47] Im Enterprise-Segment zeigte Seagate Mitte 2013 SAS-SSHDs mit Flash-Cache und bis zu 600 GB Kapazität und bewarb diese mit einer um den Faktor 3 verbesserten Leistung gegenüber konventionellen Festplatten mit einer Drehzahl von 15000/min.[48]
Ende 2013 präsentierte Western Digital ein Laufwerk namens „WD Black² Dual Drive“ – eine konventionelle 1-TB-Magnetfestplatte und 120-GB-Flashspeicher in einem 2,5″-Gehäuse. Da der Flashspeicher allerdings separat ansprechbar ist und nicht als Cache der Festplatte verwendet wird, kann man die WD Black² nicht als Hybridfestplatte bezeichnen. Um sowohl auf den Flashspeicher als auch auf die Magnetfestplatte zugreifen zu können, wird ein spezieller Treiber benötigt, ohne den ausschließlich auf den Flashspeicher zugegriffen werden kann.[49]
Mit wachsender Kapazität und Geschwindigkeit der Flashcaches bei sinkenden Flash-Preisen und gleichzeitig stagnierender Entwicklung im Bereich der Magnetfestplatten sind Preis und Leistung der SSHDs im Vergleich zu konventionellen HDDs deutlich attraktiver geworden. Mittlerweile verbauen viele Computerhersteller – allen voran Lenovo – SSHDs vor allem in tragbaren Computern.[50] Dort konkurrieren sie im hochpreisigen Segment häufig mit reinen SSDs oder SSD-HDD-Kombinationen (teilweise mit Chipsatz-Caching à la Intel Smart Response, siehe nächsten Absatz) und in den unteren Preislagen meist mit reinen HDDs.
Intels Lösung wurde mit der Centrino-Generation „Santa Rosa“ im Mai 2007 eingeführt. Sony, HP, Dell und MSI nahmen jedoch Abstand davon, das entsprechende Intel-Flashmodul auch in ihre Notebooks einzubauen. Nach der Vorstellung von Turbo Memory 2.0 (2008)[51] ließ Intel das Turbo-Memory-Konzept ruhen. Stattdessen wurde 2011 zusammen mit dem Chipsatz Z68 die „Intel Smart Response Technology“ vorgestellt, welche die Verwendung einer SATA-SSD als Lese- und Schreibcache eines anderen SATA-Geräts ermöglicht.[52] Der Flash-Cache wird hierbei im Gegensatz zu „echten“ SSHDs von einem Treiber auf Betriebssystemebene verwaltet. Seit der Intel-7-Serie (Mitte 2012) sind die Z-, H- und Qx7-Chipsätze der jeweiligen Chipsatz-Generation Smart-Response-fähig.[53]
Andere Hersteller wie OCZ (Synapse Cache, Ende 2011) und SanDisk (ReadyCache, Ende 2012) entwickelten ähnliche Konzepte in Form einer proprietären Software, im Verkauf gebündelt mit einer kleinen SSD als Cache-Datenträger.[54][55] Angesichts des starken Preisverfalls bei SSDs[56] haben diese Konzepte mittlerweile allerdings an Bedeutung verloren.
Windows Vista führte zwei Möglichkeiten ein, um Flashspeicher zur Unterstützung konventioneller Festplatten zu nutzen. Ihre Anwendung zeigt jedoch nur in seltenen Situationen mit SSDs vergleichbare Leistungen, erzeugt im Gegenzug allerdings auch nur geringe oder gar keine Mehrkosten.
Für Linux gibt es spezielle Dateisysteme, die an die Besonderheiten von rohen Flashspeichern angepasst sind, so etwa JFFS2, UBIFS und YAFFS; für SSDs mit FTL (Flash Translation Layer) und integriertem Wear-Levelling werden aber wie etwa auch für USB-Sticks einfach konventionelle Dateisysteme wie ext3 genutzt, teilweise aber mit optimierten Schreibzugriffseinstellungen (oder aber besser geeignete Dateisysteme wie ZFS, btrfs, NILFS oder LogFS). Solche Dateisysteme zielen darauf ab, Flashspeicher so zu verwenden, dass ihre Vorteile bestmöglich genutzt werden können. Dadurch können höhere Geschwindigkeiten und bessere Datenintegritätskontrolle erreicht werden.
Windows Vista erkennt die Möglichkeiten von HHDs und kopiert meistverwendete Programm- und Betriebssystemdateien in deren Flashteil. Die erzielbaren Effekte sind weiter oben beschrieben. Vista soll zudem von USB-Sticks oder Flash-Speicherkarten profitieren. Es bietet dazu an, mit ihnen eine HHD nachzuempfinden, indem ein Teil ihres Speicherplatzes als schneller Zwischenspeicher genutzt wird. Dabei wird auf dem Flashspeicher jedoch nur das gesammelt, was während des Betriebs nicht mehr in den Arbeitsspeicher passt. Repräsentative Tests zeigen daher nur bei PCs mit weniger als einem GB Arbeitsspeicher einen spürbaren Vorteil für die „ReadyBoost“ genannte Idee.[57] Sie dient somit als leicht zu installierende RAM-Erweiterung. Unter Berücksichtigung der Preise für Arbeitsspeicher ist das jedoch nur sinnvoll, wenn ein entsprechend schneller Flashspeicher bereits vorhanden oder eine Erweiterung des Arbeitsspeichers nicht möglich ist. Anders als in HHDs bleibt hier die Festplatte auch weiterhin aktiv, wodurch weder Energieverbrauch noch Lautstärke gesenkt werden. Die Festplatte enthält zudem ein Abbild des Zwischenspeichers, das beim Entfernen des Flashspeichers verwendet wird. Die darauf ausgelagerten Daten werden sicherheitshalber mit 128 Bit verschlüsselt und das Medium vor dem Gebrauch sinnvollerweise kurz auf ausreichende Geschwindigkeit getestet. ReadyBoost erfordert eine Laufwerksgröße von 256 Mebibyte, maximal verwendet Vista 4 Gibibyte. Der verwendete Anteil ist beim Anschließen einstellbar. Unter Linux ist eine ähnliche Methode schon länger möglich, indem der Flashspeicher als Auslagerungsspeicher (englisch Swapping) eingehängt wird.
Windows XP bietet von Haus aus keine der beiden Vista-Optionen, Flashspeicher zur Temposteigerung einzusetzen. Das Moskauer Unternehmen MDO Limited bietet mit „eBoostr“[58] jedoch ein Tool an, das die „ReadyBoost“-Idee unter XP umsetzt. Zwar funktioniert es auch mit älteren externen Flashspeichern; um aber tatsächlich einen Geschwindigkeitsgewinn zu erhalten, sollte das ReadyBoost-Logo auch hier als Anhaltspunkt beachtet werden. Dieses erhalten USB-Sticks und Speicherkarten, die ein von Microsoft festgelegtes Leistungsniveau erreichen. Das Programm kann – anders als Vista – auch mehrere Flashspeicher gleichzeitig nutzen und dabei die Lastverteilung zwischen Festplatte und Flashspeicher anzeigen. Zielgruppe sind PCs, die einen USB-2.0-Port haben, für die eine RAM-Erweiterung jedoch technisch oder ökonomisch nicht möglich ist.
Diese Laufwerke bestehen aus Flash- und Controllerchips, die auf einer Leiterplatte angeordnet sind. Deren Größe hat keinen Einfluss auf die Geschwindigkeit, nur auf die Chip-Anzahl. Auf kleinem Formfaktor sind also weiter nur geringere Kapazitäten realisierbar, nun jedoch mit hoher Leistung. Viele Modelle sind mit Plastik oder Metall (teil-)verkleidet, um die Bauteile zu schützen und – im zweiten Fall – Solidität zu vermitteln. Das hebt dafür den Vorteil des geringen Gewichts und teilweise der Stoßfestigkeit durch die Unnachgiebigkeit des Metallmantels wieder auf. Bestehen bleiben hohe Temperaturtoleranz, Lautlosigkeit und Energieeffizienz.
Verwendung finden in allen Preissegmenten die sogenannten NAND-Chips in der schnelleren SLC- oder beim Schreiben langsameren MLC-Ausführung (siehe Kasten Architekturvergleich). Sie erreichen unter den Flash-Techniken den besten Kompromiss zwischen Kapazität, Preis und Geschwindigkeit, nur ihre Zugriffszeit ist zweigeteilt: Betriebssystem und Programme starten von Flash-Festplatten zwar zwei- bis dreimal so schnell wie von konventionellen Festplatten, beim Schreiben zeigte sich bis 2009 jedoch der Nachteil des Kompromisses, der bei den Hybrid-Konzepten noch kaschiert werden konnte – insbesondere die MLC-basierten Flash-SSDs lagen bei kontinuierlichen Schreibvorgängen unter dem Niveau normaler Festplatten.[59] Das hat sich seitdem umgekehrt, die schnellsten Festplatten schreiben zumindest messbar langsamer als die langsamsten verfügbaren Flash-SSDs.[60] Bei reinen Lesevorgängen[59] aber auch bei Multitasking, also bei gleichzeitigem Lesen und Schreiben, waren die SSDs bereits überlegen.[61] In einer Desktopumgebung wird meist gelesen, so dass hier Schreibschwächen weniger ins Gewicht fallen.
Die Geschwindigkeitssteigerungen in nachfolgenden Produktgenerationen werden wie in Grafikchips vor allem durch starke Parallelisierung erlangt: So verwenden manche SSDs einen Zehn-Kanal-Controller.[62]
SLC ist zu MLC | NAND ist zu NOR |
---|---|
10 × so haltbar | 10 × so haltbar |
3 × so schnell schreibend vergleichbar lesend |
4 × so schnell schreibend 5 × so langsam lesend |
halb so kompakt | bis 16 × so kompakt |
30 % teurer | 30 % günstiger |
Folgende Technologien sollen die Vorteile von NAND und NOR vereinen: OneNAND (Samsung), mDOC (Sandisk) und ORNAND (Spansion). |
Erst diese Beschleunigung gleicht ein systembedingtes Problem aus: die interne Organisation. Flash-SSDs sind in Speicherblöcke unterteilt. Wird auch nur ein Byte darin geändert, muss der gesamte Block neu geschrieben werden. Tatsächlich schreibt das Laufwerk intern also im vom Hersteller angegebenen Tempo die Blöcke neu. Anwender und Leistungstests nehmen jedoch nur die wenigen geänderten Bytes wahr. Der Schreibvorgang erscheint langsam. Dieser Effekt wird im Englischen Write Amplification genannt. Demzufolge wird also das Schreiben umso schneller, je mehr die Datenmenge dem Volumen eines Blockes entspricht. Dateien mit mehreren Megabyte werden so tatsächlich mit der angegebenen Transferrate geschrieben, denn hier werden alle Bytes in den Blöcken geändert – die Nutzrate entspricht der Schreibrate.[63][64][65]
Der Versuch, diesen Effekt auf Betriebssystemebene aufzuheben, setzte sich nicht durch. Die „Managed Flash Technology“ von EasyCo. ordnete dazu die Schreibkommandos so, dass sie möglichst zusammenhängend statt verteilt geschehen. Vom Hardwareprodukt unabhängig, war sie für den Heimgebrauch aber zu kostenintensiv. Stattdessen ergänzten die Hersteller einen SDRAM-Zwischenspeicher für den Controller und führten eine umfassende Optimierung der Firmwares durch. Diese spielt noch vor dem Controller selbst die entscheidende Rolle bei der Leistungsfähigkeit eines Laufwerks. Dazu nutzt sie, wie zuvor bei konventionellen Festplatten, möglichst effizient den SDRAM-Chip, verwaltet darin allerdings die Daten zur Suche nach dem Schreibbereich, um Geschwindigkeit und Nutzungsverteilung zu optimieren. Die eigentliche Datenzwischenspeicherung erfolgt meist im noch schnelleren SRAM des SSD-Controllerchips.[66]
Ähnlich wie konventionelle Festplatten bringen auch Flashlaufwerke bei nur geringer Restkapazität nicht mehr die volle Leistung. Bei beiden Laufwerktypen spielt dabei die Suche nach den nur wenigen freien Speicherbereichen die Hauptrolle. Der oben beschriebene Effekt der „Write Amplification“ verstärkt das noch auf Seiten der Flashfestplatten. Daher zweigen deren Hersteller einige Prozent der Speicherkapazität für eine „Spare Area“ als Leistungs- und Verschleißreserve ab.
Flashlaufwerke eignen sich besonders für den Mobileinsatz, leistungsorientierte Desktops und wenige Server. Für letztere bieten einige Hersteller Serien mit SLC-Speicher an, um der viel höheren Schreibbelastung gerecht zu werden. MLC-Chips haben mit 10.000 Zyklen je Zelle ein Zehntel der Wiederbeschreibbarkeit der SLC-Technik.
Bereits 1996 führte MSystems die ersten flashbasierten SSDs ein. Bis 2006 blieben diese militärischen und anderen wenig preissensitiven Märkten vorbehalten. Im März 2006 fertigte Samsung dann ein Modell, das mit einem Achtel des Preises einen anderen Zielmarkt anvisierte: Notebooks mit 2,5- und 1,8-Zoll-Festplatten – und per Adapter auch Desktop-PCs. Damit wurde versucht, einen neuen Markt für erschwingliche Flashfestplatten zu eröffnen. Mit 600 $ für 32 GB gelang das zwar noch nicht, allerdings eroberte Samsung die Marktführerschaft mit einem Marktanteil von 45 %. So ist Apple ein wichtiger Großabnehmer und auch Mtron im oberen SSD-Segment steuert – mit eigenem Controller – ebenfalls Samsung-Chips an. Im Jahr 2007 forschten eine Reihe von Anbietern mit gleicher Zielsetzung an Konkurrenzprodukten zu Samsungs erstem Versuch. Im zweiten Quartal 2008 erschienen die Vertreter der zweiten Generation. Im selben Jahr wechselten viele Hersteller von SLC zu MLC-Speicherchips, um die Preise zu senken. Bei den ersten Produkten dieser Gattung kam es jedoch häufiger zu unpraktikablen Leistungswerten.[67]
2009 folgten Produkte mit stark verbesserter Leistung, die in einigen Leistungspunkten sogar SLC-Laufwerke übertrafen. Seitdem erfolgen Preissenkungen[68][69] meist parallel zu einer Strukturverkleinerung in der Flashchip-Fertigung.[70]
Da die Flash-„Festplatten“ im Vergleich zu herkömmlichen aufgrund des Wegfalls der empfindlichen Mechanik erheblich stoßfester und um einiges stromsparender sind, eignen sich SSDs insbesondere für den Einsatz in mobilen Computern. Ab 2012 wurden sie zunehmend in Netbooks sowie Notebooks serienmäßig eingebaut, später auch in stationäre Rechner.
In der folgenden Tabelle werden die Verbrauchersektoren konventioneller Festplatten, kommerzieller Flash-SSDs und industrieller Flash-SSDs gegenübergestellt.
konventionelle Festplatte | kommerzielle Flash-SSD | industrielle Flash-SSD | |
---|---|---|---|
max. Kapazität | 18 TB[71] | 15,36 TB[72] | 100 TB[73] |
Betriebstemperatur | 5 bis 55 °C | 0 bis 70 °C | −40 bis 85 °C |
Schreibzyklen[74] | 10 Mrd. (3 Jahre MTBF) | ab ca. 1.000 (TLC) / ca. 3.000 (MLC) bis zu ca. 100.000 (SLC) / Flashzelle | 1–5 Mio. / Flashzelle („handverlesene“ Chips) |
Datenerhalt | keine Angaben | 10 Jahre | 10 Jahre |
Flugschreiber-geeignet | nein | nein | ja |
Sicheres Löschen | ja | teilweise | ja |
S.M.A.R.T. | ja | teilweise | ja |
Die Qualität des verbauten NAND-Flashs ist unterschiedlich. Neben dem in die „Klasse 1“ eingestuften NAND-Flash wird auch als „Klasse 2“ eingestufter NAND-Flash in SSDs verbaut. Der SSD-Hersteller OWC hat bei einer Stichprobe von SSDs seines Konkurrenten OCZ sogar „Off-spec“-NAND in der SSD gefunden – Bauteile, deren Eigenschaften nicht innerhalb der Spezifikation liegen.[75] Das sind Chips, die eigentlich die Qualitätssicherung für den Einsatz in SSDs laut NAND-Hersteller nicht bestanden haben. Andere Hersteller wiederum, wie beispielsweise Samsung in der 840-SSD-Serie, setzen auch auf TLC-NAND-Speicherzellen. TLC (engl. triple-level cell, dt. dreistufige Speicherzellen, de facto aber drei Bit) hat im Vergleich zu SLC (engl. single-level cell) weitere Spannungspegel, wodurch noch mehr Daten pro Speicherzelle gespeichert werden können. Aufgrund der kleineren Abstände zwischen diesen Stufen und der daraus resultierenden Schwierigkeit, diese Pegel stets korrekt auszulesen, nimmt die Lebensdauer der Speicherzellen allerdings mit zunehmender Bit-Anzahl ab. Dem versuchen die Hersteller durch Anpassung der Fertigungstechnik entgegenzuwirken (z. B. 3D-V-NAND-Technik).
Die folgende Tabelle vergleicht die Eigenschaften gängiger Computer-Speicherverfahren des Massenmarktes (Stand 2020). Angegeben sind in der Regel Maximalwerte. Insbesondere die Geschwindigkeiten können je nach Modell auch deutlich darunter liegen.
TLC-NAND-Flash-Laufwerk | RAM-Disk als Teil des Arbeitsspeichers | Festplatte 1,0 bis 3,5″ | |
---|---|---|---|
Größe (keine Raidlaufwerke) | Bis zu 16 TB | bis 32 GB je Modul | bis 14 TB |
Anschluss | IDE/(P)ATA, SATA, mSATA, PCIe, M.2 | hauptsächlich DIMM-Connector | SCSI, IDE/(P)ATA, SATA, SAS |
Lesen (kein RAID) | bis 3400 MB/s[76] | bis 51.200 MB/s[77] | bis ca. 227 MB/s[78] |
Schreiben (kein RAID) | bis 2500 MB/s[76] | bis 51.200 MB/s[77] | bis ca. 160 MB/s[78] |
Mittlere Zugriffszeit lesen | ab 0,027 ms[79] | 0,000.02 ms | ab 3,5 ms |
Mittlere Zugriffszeit schreiben | ab 0,021 ms[79] | 0,000.02 ms | ab 3,5 ms |
Überschreibbar (Zyklen) | >3000 (TLC) | > 1015 [80] | ca. 10 Mrd. (3 Jahre)[81] |
Lagerbar bei | −45–85 °C | −25–85 °C | −40–70 °C |
Stoßfestigkeit – Betrieb[82] | 1.500 g | ca. 1.000 g (rüttelfest verlötet) | 60 g |
Stoßfestigkeit – Lagerung | 1.500 g | ca. 1.000 g (ähnlich SSD) | 350 g |
Verbrauch – Ruhe | 0,03 W[83] | 1 W pro SDRAM-Modul | 4 W und höher |
Verbrauch – Zugriff | 5–6 W[83] | 8 W pro SDRAM-Modul | 6 W und höher |
Verhalten beim Herunterfahren | problemlos | Datenverlust, falls keine Sicherung auf SSD/Festplatte stattfindet | problemlos |
Verhalten bei Stromausfall | mit Stützkondensator problemlos,[84] sonst Datenverlust möglich | Datenverlust | Datenverlust möglich |
Lautlos | ja | ja | nein |
Bemerkungen | unterstützen meistens S.M.A.R.T. | Größe begrenzt durch Hauptplatine oder Adapter nötig, nicht bootfähig | unterstützen S.M.A.R.T. |
Die Lebensdauer einer SSD sollte in einer der beiden folgenden Formen auf ihrem Datenblatt angegeben sein:
So hat beispielsweise eine Samsung 970 EVO M.2 SSD (2018) mit 1 TB eine Lebensdauer von 600 TBW (oder 5 Jahre; welcher Fall zuerst eintritt).[87]
Konventionelle und Flashfestplatten verschleißen mit der Zeit. Während sich das bei ersteren aus der Abnutzung der Plattenoberflächen und der Mechanik ergibt, wirkt bei der Flashtechnik ein elektrischer Effekt begrenzend. Lesevorgänge von intakten Zellen sind hier zwar unbegrenzt möglich, je nach Qualität kann eine Flashzelle aber nur zwischen 3.000 (MLC 25 nm) und 100.000 (SLC) Schreibvorgänge absolvieren. Danach kann sie ihren Inhalt vergessen, vor allem aber sind die Zellen nach dem Ende ihrer Lebenszeit nicht mehr löschbar. Flashspeicher wären so mitunter schon nach wenigen Tagen defekt. Dem wirken Wear-Levelling-Algorithmen entgegen. Der Controller im Flashlaufwerk verteilt die Schreibvorgänge auf alle Speicherzellen so, dass jede möglichst gleich häufig beschrieben wird. Die dafür verwendeten Algorithmen sind herstellerspezifisch, in jedem Fall aber vom Rest des Computers aus weder sichtbar noch beeinflussbar. Dieses Verteilungsverfahren gibt es in unterschiedlichen Ausbaustufen. So verwendet eine Flash-„Festplatte“ häufig komplexere Controller als ein USB-Stick und sehr wenige Wechseldatenträger auch gar keinen.[88] Hier können dann Software-Lösungen wie in Windows Vista oder Dateisysteme wie JFFS2 oder das Flash-Friendly File System unter Linux aushelfen.
Je nach Ausbaustufe führt das Verfahren zu einer Haltbarkeit, die der konventioneller Festplatten nahekommt oder sie übertrifft.[89][90] Ein Nebeneffekt aller Verteilungsverfahren ist allerdings, dass kein sicheres Löschen mehr möglich ist. Der Hintergrund wird in den Abschnitten Sicheres Löschen und Defragmentierung beschrieben.
Eine Ausfallvorhersage wie bei konventionellen Festplatten durch S.M.A.R.T. ist auch bei nahezu allen Flash-SSDs enthalten, allerdings nicht mit allen Programmen möglich. Die Situation ist durch den Standard selbst begründet. Er umfasst alleinig die Kommunikation zum Laufwerk, um die S.M.A.R.T.-Werte auszulesen.[91] Ihre Bedeutung und Skalierung sind nicht festgeschrieben. Für konventionelle Festplatten ist über die Jahre allerdings ein De-facto-Standard entstanden, der für Flash-SSDs fehlt.
Die Prüfung konzentriert sich auf die Anzahl der vorgenommenen Löschzyklen und das Vorhandensein genügend vieler Reserveblöcke.[92] Wurden hier die vorgesehenen Grenzen übertreten, geht das Laufwerk sicherheitshalber in einen Nur-Lese-Modus über. Da bei guten „Wear-Levelling“-Verfahren alle normalen Sektoren zu ähnlicher Zeit abgenutzt sind, ist ein Ausfall nach der Verwendung erster Reservesektoren vermutlich nahe.
Weitere angewandte Verfahren, die Lebensdauer zu erhöhen, liegen im Vermeiden von unnötigem Schreiben. Hierzu zählt das Native Command Queuing (NCQ), das bewirkt, denselben mehrfach vorhandenen Datenblock im Cache erst in seiner jüngsten Version zu schreiben und die obsolet gewordenen Kopien aus dem Cache zu verwerfen. Datenkompression der zu schreibenden Daten im Controller der SSD bewirkt, dass einzelne Blöcke nicht beschrieben werden müssen. Bei bereits komprimierten Daten funktioniert das nicht, da die Datenmenge nicht weiter verkleinert werden kann. Werden weitere Datenblöcke durch länger ausfallende Inhalte belegt, so werden diese, wenn nicht anders zu verwalten, mit S.M.A.R.T. als unbenutzbar gekennzeichnet.[93][94][95]
Dateien werden immer als Bit-Folge geschrieben. MLC-Flashzellen enthalten üblicherweise zwei Bits und sind in sogenannte Seiten oder Blöcke (englisch pages) mit je 4096 Byte Größe zusammengefasst.[96] Angesprochen werden von der Steuereinheit immer ganze Speicherblöcke. Beim Lesen einzeln, beim Schreiben werden sie abermals zu einem Erasable Block zusammengefasst. Dieser enthält 64 oder 128 Blöcke und ist somit 256 oder 512 KiB groß. Bei jeder Änderung in einem seiner Blöcke wird dieser zunächst nicht gelöscht, sondern vorerst als nicht mehr aktuell markiert. Geschrieben wird in den nächsten freien Block desselben Erasable Block. Erst wenn alle Blöcke eines Erasable Block nicht mehr aktuell sind, wird dieser einmal ganz gelöscht. Somit müssen bei jedem geänderten Byte die bisherigen Blöcke mit der vorzunehmenden Änderung in die nächsten kopiert werden. Das lässt die zu schreibenden Daten von wenigen geänderten Byte auf mehrere Kilobyte ansteigen. Diese Vervielfachung wird daher auch als Write Amplification bezeichnet. Damit entstünde eine inakzeptable Haltbarkeit. Im folgenden Beispiel wird eine Textdatei viermal überarbeitet und gespeichert.
Schreibvorgang | 1 | 2 | 3 | 4 | weiter wie 2 | |||
---|---|---|---|---|---|---|---|---|
Block | ||||||||
1 | Datei.txt | unaktuell | unaktuell | löschen | Datei.txt | … | ||
2 | leer | Datei.txt | unaktuell | löschen | leer | … | ||
3 | leer | leer | Datei.txt | löschen | leer | … | ||
4 | leer | leer | leer | leer | leer | … | ||
5 | … | … | … | … | … | … | ||
Legende: | ||||||||
Ein „erasable“ Block: umfasst hier der Übersicht wegen nur drei Speicherblöcke. Jeder Block umfasst 2 oder 4 Kibibyte. |
Zur Bewertung der Eignung von Flashlaufwerken für die Aufnahme des Auslagerungsspeichers (oder Auslagerungsdatei) eines Betriebssystems eignet sich am besten eine Analyse der Zugriffe auf diesen Speicher. Microsoft hat eine solche während seiner Arbeit an Windows 7 durchgeführt.[97] Die Auswertung ergab ein Zugriffsmuster aus kurzem, verteiltem Lesen und längerem, zusammenhängendem Schreiben. Das entspricht den Stärken von Flash-Speichern. Lesezugriffe überstiegen Schreibvorgänge um das Vierzigfache, während etwa zwei Drittel der Lesezugriffe bis 4 KB Größe hatten und etwa zwei Drittel der Schreibzugriffe mindestens 128 KB Länge hatten. Da das etwa einem Erasable Block entspricht, gibt es laut Microsoft kaum geeignetere Anwendungen für Flash-Laufwerke als den Auslagerungsspeicher. Es sollten hierfür jedoch schnelle SSDs bevorzugt werden.
Gewöhnliche Betriebssysteme löschen nicht den Dateiinhalt selbst, sondern entfernen lediglich den Eintrag im Inhaltsverzeichnis des Dateisystems. Das beschleunigt den Löschvorgang, ermöglicht aber auch eine Wiederherstellung der Datei. Um das (und damit Spionage) zu verhindern, gibt es Programme, welche die Dateien, d. h. ihre Inhalte, tatsächlich löschen sollen. Dazu weisen diese Programme an, alle zur Datei gehörenden Sektoren mehrfach – ggf. mit Zufallsdaten – zu überschreiben. Mechanische Festplatten können so sicher gelöscht werden.
Die von Flash-Speichern nach außen gemeldeten Sektoren haben aber nichts mehr mit den tatsächlichen Speicherorten zu tun.[65] Das liegt an ihrer Nutzungsverteilung, die Schreibvorgänge auf die bisher am wenigsten benutzten Blöcke leitet, welche höchstens zufällig die sind, in denen die Datei steht. Deren Inhalt bliebe somit bestehen, während die Überschreibversuche an anderer Stelle gespeichert würden. Nach außen bleiben die vom Programm adressierten Sektoren stimmig: Liest man sie aus, erhält man die neuen Daten. Die Umverteilung geschieht unmerklich für das Betriebssystem und darauf laufende Programme im SSD-Controllerchip. Sie findet desto mehr statt, je mehr nach dem letzten Formatieren nicht beschriebene oder durch TRIM wieder freigegebene Sektoren auf dem Laufwerk vorhanden sind; ein gut gefülltes Laufwerk ist so betrachtet ein „sichereres“.
Um dieses Sicherheitsleck zu nutzen und auf die nicht physisch gelöschte Datei zugreifen zu können, müsste aber eine Firmware programmiert und installiert werden, die alle Blöcke auslesen kann. Mit deren Installation würde jedoch wahrscheinlich die Information zur bisherigen Nutzungsverteilung verlorengehen. Somit fehlte das Wissen, welche Blöcke zu einer durch scheinbares Überschreiben gelöschten Datei in welcher Reihenfolge gehören. Kryptographiehersteller warnen trotzdem vor dem Einsatz von SSDs, da zumindest Schlüssel auffindbar sein könnten.
Behebbar ist das Problem erst durch einen Controller, der auf Wunsch vorübergehend die Nutzungsverteilung abschalten kann und so ein sicheres Löschen („Secure Erase“) ermöglicht. Entsprechende Laufwerke sind aber nur im Hochpreissegment zu finden, etwa von M-Systems oder ATP. Diese enthalten dann auch Löschalgorithmen nach US-Air-Force- oder Navy-Standard.
Für den Heimgebrauch gibt es keine vollständige Löschmöglichkeit. Das liegt am nicht ansprechbaren Reservespeicher („Spare Area“)[98] der SSDs, der nur dem Controller zugänglich ist. Dieser Bereich dient sowohl als Ruheplatz der abgenutztesten Sektoren, als auch der Geschwindigkeitssteigerung. Moderne Laufwerke bieten ein sicheres Löschen, das die SSD in den Auslieferungszustand zurückversetzt und auch Reserveblöcke überschreibt.
Erreicht eine SSD ihr Lebenszeitende, ist sie also – wenn auch nur in Teilen – nicht mehr zu beschreiben und auch nicht mehr gänzlich löschbar. Dementsprechend bleibt einzig eine physische Zerstörung, um die Daten endgültig zu vernichten.
Eine Defragmentierung ist aufgrund des Funktionsprinzips nicht nötig: Es werden Speicherblöcke adressiert, nicht wie bei herkömmlichen Festplatten (HDD) Daten elektromechanisch platziert und abgerufen. Eine sequenzielle Anordnung der Daten, wie sie durch eine Defragmentierung erzeugt wird, ist bei einer SSD somit unnötig. Auch enthalten alle SSDs Algorithmen, die dafür sorgen, dass alle Zellen gleichmäßig abgenutzt werden; die Platzierung der Daten übernimmt ausschließlich der SSD-Controller, ein Defragmentierungsprogramm hat darauf überhaupt keinen Einfluss. Alle SSD-Hersteller raten vom Defragmentieren ab. Da durch ihre Technik SSDs nicht defragmentiert werden sollten, da ständiges Schreiben sogar die Lebensdauer der Disks verringert, empfiehlt Microsoft neben dem Abstellen der Defragmentierung auch das Ausschalten aller Software-Cache-Systeme, wie Prefetch und SuperFetch. Es wird empfohlen, automatische Defragmentierungsprogramme abzuschalten; speziell unter dem Dateisystem NTFS bei Windows gibt es daher eine Anleitung, wie das geschehen soll.
Alle gängigen Betriebssysteme (z. B. Windows ab Version 7) erkennen, wenn eine SSD eingebaut ist, und deaktivieren alle spezifischen HDD-Merkmale automatisch. Es wird allerdings empfohlen, alle Einstellungen zu kontrollieren.[99][100][101]
Das Dateisystem streicht „gelöschte“ Dateien nur aus dem Inhaltsverzeichnis, die eigentliche Datei aber bleibt weiter gespeichert. Dadurch kann sie wiederhergestellt werden, und auch das „Löschen“ großer Datenmengen ist sehr schnell möglich. Beim nächsten Schreiben auf einen so freigestellten Bereich muss der bisherige Inhalt demzufolge aber erst gelöscht werden. Nach einiger Zeit der Nutzung ist damit jeder Bereich des Laufwerks mit entweder aktuellen oder noch nicht tatsächlich gelöschten Inhalten belegt. Bei Festplatten war das kein Problem, da sie ihre Magnetisierungszustände direkt ineinander übergehen lassen können. (Für sie hätte das tatsächliche Löschen der Dateien damit sogar einer Ressourcenverschwendung entsprochen.) Flashspeicher hingegen müssen die noch gefüllten Flashzellen erst leeren, um sie im zweiten Durchgang mit der neuen Datei zu beschreiben. Diese doppelte Arbeit ist anhand einer dann bis zu doppelt so langen Schreibzeit nachvollziehbar.[102] Davon sind allerdings nur verteilte, kurze Schreibvorgänge betroffen, welche kleiner als Erasable Blocks sind – denn durch die Befüllung mit aktuellen und noch nicht gelöschten Daten sind deren Einzelblöcke gefüllt, wodurch bei jeder Änderung der gesamte „Erasable Block“ neu geschrieben werden muss – inklusive der eigentlich „gelöschten“ Dateifragmente. Selbst in diesen Fällen bleiben die Geschwindigkeiten aber oftmals noch oberhalb des – gleichbleibenden – Niveaus konventioneller Festplatten.
Um dieser Situation abzuhelfen, können SSDs ab Mitte 2009 die freigestellten Bereiche schon vor einer neuerlichen Verwendung löschen. Das findet einerseits durch eine Logik im Laufwerk statt (Garbage Collection) und kann andererseits durch das Betriebssystem via TRIM-Befehl gesteuert werden. Ersteres bedarf nur der Umsetzung in der Laufwerksfirmware, letzteres erfordert die Unterstützung eines neuen Befehls vom steuernden Betriebssystem, des empfangenden Laufwerks und – falls vorhanden – des Bridge-Chips, wie z. B. ein weiterleitender RAID-Controller.
Beide Vorgehensweisen betreffen aber weder das Überschreiben einer Datei noch den Fall nahezu gefüllter Laufwerke (denn hier gibt es kaum freie Bereiche), sondern ermöglichen nur, die freigestellten Bereiche schreibfertig vorzubereiten.[103] Die Vorbereitung entspricht jedoch nicht einem sofortigen Löschen beim Leeren des Papierkorbs. Dieses findet zu einem nicht vorhersagbaren Zeitpunkt statt, spätestens dann beim nächsten Beschreiben des Bereiches. Er wird direkt gelöscht und beschrieben, das vorherige Auslesen wird erspart: Daraus entsteht der Geschwindigkeitsvorteil.
Der bleibende Vorteil von TRIM liegt in der effektiveren Vermeidung des Neuschreibens bereits aus dem Papierkorb gelöschter Dateien. Das schont die Flashzellen. Die Unterstützung von TRIM durch das installierte Laufwerk wird etwa durch das Tool CrystalDiskInfo[104] in der Zeile „Supported Features“ sichtbar, die Zeile Firmware zeigt die installierte Firmwareversion.
Controller | Garbage Collection | TRIM-Unterstützung |
---|---|---|
Indilinx Barefoot und ECO[105] | ab Version 1916 | ab Version 1819 |
Intel X-25M G1 | immer enthalten | nicht verfügbar |
Intel X-25M G2 | immer enthalten | ab Version 02HD |
Samsung RBB[106] | ab 1901Q / 19C1Q | ab 1901Q / 19C1Q |
SandForce SF-1x00/2x00[107] | immer enthalten | immer enthalten |
Toshiba Daikoku 2[108] | immer enthalten | immer enthalten |
Die Funktionsweise der Garbage Collection wird von den Herstellern nicht veröffentlicht, funktioniert aber wahrscheinlich über die Nutzung der Reservesektoren in einem Laufwerk. (Deren Zahl gibt der Over-Provisioning Factor an, liegt er bei 1,1, verfügt das Laufwerk über 10 Prozent davon. Dieser Bereich wird auch als „Spare Area“ bezeichnet.) Das Laufwerk selbst kann nicht wissen, welche Sektoren zum Überschreiben freigestellte Daten beinhalten. Das erfährt es aber, wenn Sektoren überschrieben werden sollen: Deren bisheriger Inhalt ist offensichtlich freigestellt. Daher leitet es die neuen Daten in die leeren Reservesektoren um. Das ist schnell, und der Controller weiß nun, dass die ursprünglich angesteuerten Sektoren wirklich nicht mehr gebraucht werden. Diese löscht er nun im Leerlauf, wodurch sie frei werden. Diese Vorgehensweise behebt nicht die Ursache des Problems, großenteils aber dessen Auswirkungen.[109] Zum Löschen der Sektoren benötigt das Laufwerk jedoch Leerlaufzeit.
Laufwerke ohne automatische Garbage Collection oder TRIM-Unterstützung sind nur durch Programme wie Secure Erase[110] auf die Werksleistung rücksetzbar. Dabei wird das Dateisystem gelöscht, was somit auch alle von ihm freigestellten – aber noch alte Dateien beinhaltenden – Blöcke freigibt.
Weitere Leistungsverluste treten unter Umständen auf, wenn Windows die Defragmentierung, Prefetcher und SuperFetch nach der Installation der SSD nicht selbständig deaktiviert. Dieser Effekt könnte etwa beim Kopieren einer bestehenden Installation von Festplatte auf SSD entstehen. Für die volle Leistung einer SSD sollte man diese Funktionen daher gegebenenfalls manuell deaktivieren.
Prefetch bringt nur bei Speichermedien mit relativ hohen Zugriffszeiten, beispielsweise HDDs, einen spürbaren Vorteil. Das ursprüngliche Problem, das der Prefetcher beheben sollte, ist das Aufrufen von unterschiedlichen Segmenten derselben Datei zu unterschiedlichen Zeitpunkten. Der Prefetcher zeichnet den Bootvorgang des Betriebssystems und den Startvorgang von Programmen auf. Anhand dieser Informationen erstellt das Betriebssystem Ablaufverfolgungsdateien (trace files), so dass auf Dateien effizienter zugegriffen werden kann, zum Beispiel benötigte Segmente einer Datei am Stück eingelesen werden. Bei SSDs ist dieser Geschwindigkeitsvorteil dank den kurzen Zugriffszeiten kaum bemerkbar. Allerdings werden beim Prefetchen über die Zeit eine Menge Daten (trace files) gespeichert und ggf. aktualisiert. Daraus resultieren unnötige Schreibzugriffe und damit eine verkürzte Lebenszeit der SSD.
Ebenso entfällt der Vorteil von SuperFetch (ReadyBoost), bei dem häufig verwendete Daten anhand von Erfahrungswerten in den RAM geladen werden, bevor sie benötigt werden. Die Zugriffszeiten und Datenübertragungsraten von SSDs sind so kurz, dass es verglichen mit herkömmlichem RAM keinen spürbaren Unterschied mehr macht, messbar ist dieser nur im Bereich von Mikrosekunden. Allerdings ist das SuperFetch auch nicht schädlich für die SSD oder die Arbeitsspeicherauslastung, da der dafür reservierte Bereich im RAM sofort verworfen und freigegeben wird, sobald eine Anwendung diesen benötigt.
Windows ab Version 7 erkennt bei der Installation, um welche Art von Datenträger es sich handelt. So schaltet Windows sowohl SuperFetch als auch Prefetch auf SSD-Datenträgern aus. Bei Parallelnutzung von SSD und HDD deaktiviert Windows diese Funktionen nur für die SSD und nicht etwa auch für die magnetische Festplatte (HDD).
Die kleinste beschreibbare Einheit eines Flashspeichers ist die Speicherseite (auch englisch page genannt). Die kleinste beschreibbare Einheit in einem Dateisystem wird Zuordnungseinheit (oder englisch cluster) genannt. Diese ist bei der Formatierung idealerweise auf die Größe einer Seite einzustellen. Überstiege die Größe einer Zuordnungseinheit jene der Speicherseite, müssten sonst bei jeder Änderung gleich mehrere Seiten unnötig neu geschrieben werden.
Einen zweiten Schritt zur optimalen Datenstruktur stellt die Ausrichtung (auch englisch alignment genannt) von Partitionen dar. Beginnt eine Partition inmitten eines Erasable Blocks, verschieben sich auch die Zuordnungseinheiten des Dateisystems, manche erstrecken sich dann über eine Blockgrenze. Für jede Änderung dieser Einheiten werden demzufolge beide Blöcke beschrieben und demzufolge auch öfters gelöscht. Der Effekt dieses Mehraufwandes ist produktbezogen allerdings sehr unterschiedlich[111] und reicht von kaum messbar bis zur Drittelung der Schreibleistung bei zufälligen Zugriffen. Sämtliche sequenziellen Schreib- und alle Lesezugriffe sind vom „Alignment“ nicht betroffen.
Um eine Partition an den Grenzen der Erasable Blocks auszurichten, wäre die Blockgröße in Erfahrung zu bringen. Software kann diese jedoch nicht auslesen. Alle seit 2009 gängigen MLC-Laufwerke verwenden jedoch durchgängig Größen von 512 Kibibyte. Ein manuelles Nachmessen[112] ist daher selten nötig.
Die Angabe zum „Alignment“ im AS-SSD-Benchmark[113] wird anhand der verwendeten Zuordnungseinheit durchgeführt. Wenn das Programm das „Alignment“ als „OK“ ansieht, heißt es nicht, dass die Partition direkt an der Grenze des Erasable Blocks ausgerichtet ist, sondern dass sich keine Zuordnungseinheit des Dateisystems gleichzeitig in zwei Blöcken befindet. Da der erste Erase Block immer bei 0 Byte anfängt, genügt es, wenn die Startposition jeder Partition durch die Größe der Zuordnungseinheiten (typischerweise 4 KiB) teilbar ist.
Im Zweifel kann auch direkt ein größerer Wert verwendet werden. Dem folgend verwenden Windows Vista und 7 gleich eine Ausrichtung an 1 Mebibyte. Dieser Wert ist durch alle aktuellen Erasable-Block-Größen ohne Rest teilbar und bewirkt demnach für jede SSD eine korrekte Ausrichtung. Linux-Nutzer müssen zur Ausrichtung verschiedene Faktoren berücksichtigen.[114] Nutzer vergangener Windows-Versionen können entweder mit den Installations/Recovery-CDs von Vista und 7 eine vorbereitete Partition einrichten oder diese per Bordwerkzeug selbst erstellen.[115] Ohne manuelles Vorgehen starten die älteren Windows-Ausgaben die Partitionen bei 31,5 Kibibyte und werden damit nicht an den gängigen Erasable Blocks ausgerichtet.
Der „Offset“ bestehender Partitionen ist in Windows auf der Eingabeaufforderung mit dem Diskpart-Befehl list partition
nach Auswahl der SSD mit select disk <Nummer>
ersichtlich. Die Nummer ist anhand der Datenträgergröße mittels list disk
bestimmbar. Die Angabe hier ist allerdings ungenau, da sie auf ganze Kilobyte gerundet wird. Besser ist es daher, zunächst select partition <Nummer>
und danach detail partition
aufzurufen. Alternativ findet sich die gleiche Information auch mittels msinfo32
bei Systemübersicht\Komponenten\Speicher\Datenträger als Partitionstartoffset.