Nachteile der Partitionierung einer SSD?


79

Ein weiser Kerl, der NickN heißt, führt einen langen Forumsbeitrag über seine Ansichten zum Aufbau eines leistungsstarken Computers ( der darauf abzielt , Microsofts Flight Simulator X zu spielen, eine sehr anspruchsvolle Software).

Er fasst Punkte über SSD-Laufwerke zusammen und schließt die Liste wie folgt:

Partitionieren Sie keine SSD

Darauf geht er leider nicht ein, aber ich frage mich, warum er das sagt. Was sind die Nachteile der Partitionierung einer SSD? (Partitionierung bedeutet in diesem Zusammenhang> = 2 Partitionen)


13
Nun, würden Sie haben es , um zu partitionieren , es zu benutzen. Vermutlich will er nicht mehr als eine Partition erstellen, aber warum würde er empfehlen, dass das für mich unverständlich ist.
ChrisInEdmonton

1
@ ChrisInEdmonton ja das ist was er meint.
MarioDS

4
Ich kann nicht verstehen, warum das wichtig ist. Selbst wenn Sie logische Partitionen anstelle von physischen Partitionen verwenden, spielen Partitionen keine Rolle, sobald das Betriebssystem dem Dateisystemtreiber mitteilt, welcher Abschnitt des Laufwerks verwendet werden soll. Das Einzige, was von Bedeutung sein könnte, ist die Partitionsausrichtung, was jedoch nichts mit der Anzahl der Partitionen zu tun hat.
Darth Android

2
Ich kann nur vermuten, dass er meint: "Partitioniere kein sehr kleines Laufwerk", egal ob es sich um eine Festplatte oder eine SDD handelt.
Hennes

6
Die einzige andere Option, mit der ich etwas anfangen kann, ist (fälschlicherweise) anzunehmen, dass ein SSD-Controller den freien Speicherplatz auf einem Volume benötigt, um damit zu arbeiten. Es benötigt freien Speicherplatz auf der Festplatte, um effizient zu sein. Nicht freien Speicherplatz in einem bereitgestellten Volume beibehalten. Bei der Optimierung müssen Sie lediglich entscheiden, ob der Host-geschützte Bereich übermäßig bereitgestellt und festgelegt werden soll .
Hennes

Antworten:


118

SSDs funktionieren, wie ich wiederhole, NICHT auf Dateisystemebene!

Es gibt keine 1: 1-Korrelation zwischen der Sichtweise des Dateisystems und der Sichtweise der SSD.

Sie können die SSD beliebig partitionieren (vorausgesetzt, jede Partition ist korrekt ausgerichtet, und ein modernes Betriebssystem übernimmt dies für Sie). Es wird NICHT schaden, es wird NICHT die Zugriffszeiten oder irgendetwas anderes nachteilig beeinflussen, und es macht sich auch keine Sorgen, eine Tonne Schreibvorgänge auf die SSD zu machen. Sie haben sie, so dass Sie 50 GB Daten pro Tag schreiben können, und es wird 10 Jahre dauern.

Als Antwort auf Robin Hoods Antwort ,

Wear Leveling hat nicht so viel freien Speicherplatz zum Spielen, da Schreibvorgänge auf einen kleineren Speicherplatz verteilt werden, sodass Sie "könnten", aber diesen Teil des Laufwerks nicht unbedingt schneller verschleißen, als wenn Sie es mit dem gesamten Laufwerk tun würden war eine einzelne Partition, es sei denn, Sie führen eine gleichwertige Abnutzung der zusätzlichen Partitionen durch (z. B. ein Dual-Boot).

Das ist völlig falsch. Es ist unmöglich, eine Partition zu verschleißen, da Sie nur auf diese Partition lesen / schreiben. Dies ist NICHT einmal remote, wie SSDs funktionieren.

Eine SSD arbeitet auf einer viel niedrigeren Zugriffsebene als das Dateisystem es sieht. Eine SSD arbeitet mit Blöcken und Seiten.

In diesem Fall wird das Dateisystem tatsächlich von der Partition eingeschränkt, die SSD jedoch nicht. Dies ist auch dann der Fall, wenn Sie eine Menge Daten in eine bestimmte Partition schreiben. Je mehr Schreibvorgänge die SSD ausführt, desto mehr Blöcke / Seiten werden von der SSD ausgetauscht, um den Verschleiß auszugleichen. Es ist mir egal, wie das Dateisystem die Dinge sieht! Dies bedeutet, dass sich die Daten zu einem bestimmten Zeitpunkt möglicherweise auf einer bestimmten Seite der SSD befinden, zu einem anderen Zeitpunkt jedoch auch anders sein können und werden. Die SSD verfolgt, wohin die Daten verschoben werden, und das Dateisystem weiß nicht, wo sich die Daten tatsächlich auf der SSD befinden.

Um dies noch einfacher zu machen: Angenommen, Sie schreiben eine Datei auf Partition 1. Das Betriebssystem teilt dem Dateisystem die Speicheranforderungen mit, und das Dateisystem weist die "Sektoren" zu und teilt der SSD dann mit, dass sie X Speicherplatz benötigt. Das Dateisystem sieht die Datei mit einer logischen Blockadresse ( Logical Block Address, LBA) von beispielsweise 123. Die SSD macht eine Notiz, dass LBA 123 (zum Beispiel) Block / Seite # 500 verwendet. Jedes Mal, wenn das Betriebssystem diese bestimmte Datei benötigt, hat die SSD einen Zeiger auf die genaue Seite, die sie verwendet. Wenn wir nun weiter auf die SSD schreiben, das Wear Leveling einschalten und Block / Seite # 500 sagen, können wir Sie besser auf Block / Seite # 2300 optimieren. Wenn das Betriebssystem dieselbe Datei anfordert und das Dateisystem DIESES MAL erneut nach LBA 123 fragt, gibt die SSD Block / Seite Nr. 2300 und NICHT Nr. 500 zurück.

Wie bei Festplatten sind N- und Flash-SSDs sequentielle Zugriffe, sodass alle Daten, die Sie von den zusätzlichen Partitionen schreiben / lesen, weiter entfernt sind, als dies "möglicherweise" der Fall gewesen wäre, wenn sie auf einer einzelnen Partition geschrieben wären, da die Benutzer in der Regel freien Speicherplatz auf ihren Partitionen belassen . Dies verlängert die Zugriffszeiten für die Daten, die auf den zusätzlichen Partitionen gespeichert sind.

Nein, das ist wieder falsch! Robin Hood denkt über das Dateisystem nach, anstatt zu überlegen, wie genau eine SSD funktioniert. Auch hier kann das Dateisystem nicht wissen, wie die SSD die Daten speichert. Es gibt hier kein "Weiter entferntes"; Das ist nur in den Augen des Dateisystems, NICHT die tatsächliche Art und Weise, wie eine SSD Informationen speichert. Es ist möglich, dass die SSD die Daten auf verschiedene NAND-Chips verteilt und der Benutzer keine Verlängerung der Zugriffszeiten bemerkt. Zum Teufel, aufgrund der Parallelität des NAND könnte es sogar schneller als zuvor werden, aber wir sprechen hier von Nanosekunden; blinzeln und du hast es verpasst.

Weniger Speicherplatz erhöht die Wahrscheinlichkeit, dass fragmentierte Dateien geschrieben werden, und obwohl die Auswirkungen auf die Leistung gering sind, sollten Sie bedenken, dass eine Nand-Flash-SSD im Allgemeinen als schlechte Idee angesehen wird, da sie das Laufwerk abnutzt. Abhängig davon, welches Dateisystem Sie verwenden, führt dies natürlich zu einer äußerst geringen Fragmentierung, da die Dateien nach Möglichkeit als Ganzes geschrieben werden sollen, anstatt überall abgelegt zu werden, um schnellere Schreibgeschwindigkeiten zu erzielen.

Nein Entschuldigung; wieder ist das falsch. Die Sicht des Dateisystems auf Dateien und die Sicht der SSD auf dieselben Dateien sind nicht einmal aus der Ferne zu schließen. Das Dateisystem könnte die Datei im schlimmsten Fall als fragmentiert ansehen, ABER die SSD-Ansicht der gleichen Daten wird fast immer optimiert.

Ein Defragmentierungsprogramm würde sich also diese LBAs ansehen und sagen, dass diese Datei wirklich fragmentiert sein muss! Da es jedoch keine Ahnung von den Interna der SSD hat, ist es zu 100% falsch. DAS ist der Grund, warum ein Defragmentierungsprogramm auf SSDs nicht funktioniert, und ja, ein Defragmentierungsprogramm verursacht, wie bereits erwähnt, auch unnötige Schreibvorgänge.

Die Artikelserie Codierung für SSDs bietet einen guten Überblick über die aktuellen Vorgänge, wenn Sie technische Details zur Funktionsweise von SSDs benötigen.

Wenn Sie mehr über die Funktionsweise von FTL (Flash Translation Layer) erfahren möchten, empfehlen wir Ihnen, die wichtige Rolle von Firmware und Flash Translation Layern im Solid State Drive Design  (PDF) von der Flash Memory Summit- Website zu lesen .

Sie haben auch viele andere Papiere zur Verfügung, wie zum Beispiel:

Ein weiteres Dokument zur Funktionsweise: Flash Memory Overview  (PDF). Siehe Abschnitt "Daten schreiben" (Seiten 26-27).

Weitere Informationen zu Videos finden Sie unter Effiziente FTL auf Seitenebene zur Optimierung der Adressübersetzung im Flash-Speicher und in verwandten Folien .


Hallo, können Sie bitte einige Links zu Quellen hinzufügen, die Ihre Informationen sichern? Es kann sehr gut sein , dass die andere Antwort sachlich falsch ist, aber ich habe keine Möglichkeit zu wissen , dass Sie sind entweder richtig.
MarioDS

4
Aus Windows Internals 6. Aufl., Teil 2, Kap. In den Abschnitten 9 (Speicherverwaltung) und 12 (Dateisysteme) erfahren Sie, wie E / A-Anforderungen an Dateien über den Dateisystemtreiber, den Volumentreiber und schließlich den Festplattentreiber (auch für SSDs verwendet) gesendet werden. Der FSD übersetzt Blöcke innerhalb einer Datei in Blöcke innerhalb einer Partition. Der Volume-Treiber übersetzt letztere in Blöcke innerhalb einer Platte, dh LBAs. Zu dem Zeitpunkt, an dem die Anforderungen den Festplattentreiber erreichen, ist der gesamte datei- und partitionbezogene Kontext GEGANGEN. Die Festplatte kann keine Dateien oder Partitionen erkennen, da diese Informationen nicht in den Anfragen enthalten sind, die an sie gesendet werden.
Jamie Hanrahan

5
RobinHood täuscht sich auch in der Behauptung "Wie Festplatten und Flash-SSDs sind sequenzielle Zugriffe" . Dies sind Geräte mit wahlfreiem Zugriff. Wenn es sich um sequentielle Zugriffe handelte, konnten Sie ihnen nicht sagen, dass sie Block n lesen oder schreiben sollen. Der einzige Block, auf den Sie zugreifen können, ist der unmittelbar folgende oder möglicherweise der unmittelbar vorhergehende Block, auf den Sie gerade zugegriffen haben. Intern können NAND-Flash-SSDs zwar nur Daten auf großen "Seiten" gleichzeitig schreiben, haben aber keinen sequenziellen Zugriff. Bänder sind sequentieller Zugriff. Schlag es nach.
Jamie Hanrahan

Ich habe zusätzlich zu dem ersten Link, den ich in meiner Antwort hatte, ein weiteres PDF hinzugefügt.
Time Twin

1
@TimeTwin Man, je mehr ich Ihre Antwort erneut lese, desto dümmer finde ich es, Robin Hoods Antwort blind zu vertrauen, die tatsächlich Aussagen enthält, die das SSD-Design sehr dumm aussehen lassen, wenn sie wahr wären. Dies ist eine Erinnerung daran, warum wir die Informationen kritisch betrachten müssen, auch wenn sie auf vertrauenswürdigen Websites und mit vielen positiven Stimmen zu finden sind. Sie haben einen ziemlich spektakulären Eintrag auf dieser Site gemacht, genießen Sie den Rep-Boost und verbreiten Sie Ihr (verifiziertes) Wissen weiter.
MarioDS

15

Sehr lange Antworten hier, wenn die Antwort einfach genug ist und sich direkt aus dem allgemeinen Wissen über SSDs ergibt. Man braucht nicht mehr als den Wikipedia-Begriff Solid-State-Drive zu lesen , um die Antwort zu verstehen:

Der Hinweis "SSD NICHT TEILEN" ist Quatsch.

In der (inzwischen fernen) Vergangenheit unterstützten Betriebssysteme SSDs nicht sehr gut, und insbesondere bei der Partitionierung wurde nicht darauf geachtet, die Partitionen entsprechend der Größe des Löschblocks auszurichten.

Dieser Mangel an Ausrichtung, wenn ein Sektor logischer Festplatten des Betriebssystems auf physische SSD-Blöcke aufgeteilt wurde, könnte erfordern, dass die SSD zwei physische Sektoren flasht, wenn das Betriebssystem nur einen aktualisieren möchte, wodurch der Festplattenzugriff verlangsamt und der Verschleißgrad erhöht wird .

Derzeit werden SSDs viel größer, und Betriebssysteme kennen sich mit Löschblöcken und Ausrichtung aus, sodass das Problem nicht mehr besteht. Vielleicht sollte dieser Ratschlag einmal Fehler bei der Partitionsausrichtung vermeiden, aber heute sind diese Fehler so gut wie unmöglich.

Tatsächlich ist das Argument für die Partitionierung von SSDs heute genau das gleiche wie für klassische Festplatten:
Um die Daten besser zu organisieren und zu trennen.

Die Installation des Betriebssystems auf einer separaten und kleineren Partition ist beispielsweise praktisch, um ein Backup-Image davon als Vorsichtsmaßnahme für umfangreiche Aktualisierungen des Betriebssystems zu erstellen.


4

Das Partitionieren einer SSD hat keine Nachteile, und Sie können ihre Lebensdauer verlängern, indem Sie nicht partitionierten Speicherplatz belassen.

Der Verschleißausgleich wird auf alle Geräteblöcke angewendet (siehe HP Whitepaper, unten verlinkt).

Beim statischen Abnutzungsausgleich nehmen alle Blöcke über alle verfügbaren Blitze im Gerät an den Abnutzungsausgleichsvorgängen teil. Dadurch wird sichergestellt, dass alle Blöcke den gleichen Verschleiß aufweisen. Statischer Verschleißausgleich wird am häufigsten bei Desktop- und Notebook-SSDs verwendet.

Daraus können wir schließen, dass Partitionen keine Rolle für den Abnutzungsgrad spielen. Dies ist sinnvoll, da aus Sicht der Festplatte und des Controllers Partitionen nicht wirklich vorhanden sind. Es gibt nur Blöcke und Daten. Sogar die Partitionstabelle wird auf dieselben Blöcke geschrieben (1. Block des Laufwerks für MBR). Es ist das Betriebssystem, das dann die Tabelle liest und entscheidet, in welche Blöcke Daten geschrieben werden sollen und in welche nicht. Das Betriebssystem erkennt Blöcke, die LBA verwenden, um jedem Block eine eindeutige Nummer zuzuweisen. Die Steuerung bildet dann jedoch den logischen Block auf einen tatsächlichen physikalischen Block ab, wobei das Verschleißausgleichsschema berücksichtigt wird.

Das gleiche Whitepaper bietet einen guten Vorschlag, um die Lebensdauer des Geräts zu verlängern:

Stellen Sie als Nächstes Ihr Laufwerk übermäßig bereit. Sie können die Lebensdauer erhöhen, indem Sie nur einen Teil der Gesamtkapazität des Geräts partitionieren. Wenn Sie beispielsweise ein 256-GB-Laufwerk haben, partitionieren Sie es nur auf 240 GB. Dies verlängert die Lebensdauer des Laufwerks erheblich. Eine 20% ige Überprovisionierung (Partitionierung von nur 200 GB) würde die Lebensdauer weiter verlängern. Als Faustregel gilt, dass jedes Mal, wenn Sie die Überversorgung des Laufwerks verdoppeln, die Lebensdauer des Laufwerks um 1x erhöht wird.

Dies deutet auch darauf hin, dass auch unpartitionierter Raum zum Ausgleich des Verschleißes verwendet wird, was den obigen Punkt weiter untermauert.

Quelle: Technisches Whitepaper - SSD Endurance ( http://h20195.www2.hp.com/v2/getpdf.aspx/4AA5-7601ENW.pdf )


1

Datenträgersektoren waren lange Zeit 512 Byte groß, und mechanische Datenträger haben die Eigenschaft, dass die einzige Auswirkung auf die Lese- / Schreibdauer eines Sektors die Suchverzögerung ist. Daher bestand der Hauptoptimierungsschritt bei mechanischen Festplatten darin, Blöcke nacheinander zu lesen / schreiben, um Suchvorgänge zu minimieren.

Flash funktioniert ganz anders als mechanische Festplatten. Auf der unformatierten Flash-Ebene haben Sie keine Blöcke, sondern Seiten und "Löschblöcke" (zum Ausleihen aus der Linux-MTD-Terminologie). Sie können schreiben, um jeweils eine Seite zu flashen, und Sie können jeweils einen Löschblock löschen.

Eine typische Seitengröße für Flash ist 2 KByte, und eine typische Größe für Löschblöcke ist 128 KByte.

SATA-SSDs bieten jedoch eine Schnittstelle, die mit Sektorgrößen von 512 Byte für das Betriebssystem funktioniert.

Wenn es eine 1: 1-Zuordnung zwischen Seiten und Sektoren gibt, können Sie sehen, wie Sie Probleme bekommen, wenn Ihre Partitionstabelle auf einer ungeraden Seite oder einer Seite in der Mitte eines Löschblocks gestartet wird. Da Betriebssysteme es vorziehen, Daten von Laufwerken in 4-KByte-Blöcken abzurufen, da dies mit der x86-Paging-Hardware in Einklang steht, können Sie sehen, wie ein solcher 4-KByte-Block einen Löschblock überspannen kann geringere Leistung.

Die SSD-Firmware verwaltet jedoch keine 1: 1-Zuordnung, sondern übersetzt eine physikalische Blockadresse (PBA) in eine logische Blockadresse (LBA). Das heißt, Sie wissen nie, wo in Echtzeit Sektor 5000 oder ein anderer Sektor beschrieben wird. Hinter den Kulissen tut man eine Menge, um zu versuchen, immer in vorgelöschte Löschblöcke zu schreiben. Sie können nicht genau wissen, was es ohne eine Demontage der Firmware tun soll, aber wenn die Firmware nicht vollständig überflüssig ist, versucht die Firmware dies wahrscheinlich zu umgehen.

Möglicherweise haben Sie von 4Kn-Festplatten gehört. Hierbei handelt es sich um mechanische Festplatten, die intern eine Sektorgröße von 4 KByte verwenden, den Betriebssystemen jedoch eine 512-Byte-Sektorschnittstelle bieten. Dies ist erforderlich, da die Lücken zwischen den Sektoren auf dem Plattenteller kleiner werden müssen, um mehr Daten aufzunehmen.

Das heißt, intern liest und schreibt es immer 4K-Sektoren, versteckt es aber vor dem Betriebssystem. Wenn Sie in diesem Fall nicht in Sektoren schreiben, die auf eine 4-KByte-Grenze fallen, wird die Geschwindigkeit beeinträchtigt, da bei jedem Lese- / Schreibvorgang zwei interne 4-KByte-Sektoren gelesen und neu geschrieben werden. Dies gilt jedoch nicht für SSDs.

Jedenfalls ist dies die einzige Situation, in der ich mir vorstellen kann, warum empfohlen wird, SSDs nicht zu partitionieren. Dies gilt jedoch nicht.


-1

Was diese Antworten ignorieren, sind Windows SSD-Optimierungen. Ich weiß nicht, ob dies bedeutet, dass die Partitionierung besser wird, aber für ein partitioniertes C-Laufwerk als Windows-Laufwerk können Sie:

  1. Schalten Sie die Indizierung
  2. Sie müssen den Zeitpunkt des letzten Zugriffs nicht verfolgen
  3. Es müssen keine alten 8-stelligen Dos-Namen gespeichert werden
  4. Windows-Papierkorb umgehen

Das Deaktivieren der Indizierung verlangsamt nicht nur die Suche, sondern bedeutet auch, dass Sie nicht in Dateien suchen können. Es ist kein guter Vorschlag.
Richard

-2

Ich entschied, dass einige Hintergrundinformationen hilfreich sein könnten, um diese Antwort zu verdeutlichen, aber wie Sie sehen, habe ich ein wenig Zwangspause eingelegt, sodass Sie möglicherweise zum Ende springen und bei Bedarf zurückgehen möchten. Obwohl ich ein bisschen Bescheid weiß, bin ich kein Experte für SSDs. Wenn also jemand einen Fehler sieht, BEARBEITEN Sie ihn. :).

Hintergrundinformation:

Was ist eine SSD ?:

Eine SSD oder ein Solid-State-Laufwerk ist ein Speichergerät ohne bewegliche Teile. Der Begriff SSD bezieht sich häufig speziell auf Solid-State-Laufwerke auf Nand-Flash-Basis, die als Festplattenalternative dienen sollen. Tatsächlich handelt es sich jedoch nur um eine SSD-Form und nicht einmal um die beliebteste. Die beliebteste Art von SSD sind Wechseldatenträger auf Nand-Flash-Basis wie USB-Sticks (Flash-Laufwerke) und Speicherkarten, obwohl sie selten als SSD bezeichnet werden. SSDs können auch RAM-basiert sein, die meisten RAM-Laufwerke werden jedoch nicht mit physischer Hardware, sondern mit Software erstellt.

Warum gibt es Nand-Flash-SSDs, die als alternative Festplatte fungieren sollen ?:

Um ein Betriebssystem und dessen Software auszuführen, ist ein schnelles Speichermedium erforderlich. Hier kommt der RAM ins Spiel, aber in der Vergangenheit war der RAM teuer und die CPU konnte keine großen Mengen bewältigen. Wenn Sie ein Betriebssystem ausführen oder ein Programm ausführen, werden die aktuell erforderlichen Teile der Daten auf Ihren RAM kopiert, da Ihr Speichergerät nicht schnell genug ist. Ein Engpass entsteht, weil Sie warten müssen, bis die Daten vom langsamen Speichergerät auf den RAM kopiert wurden. Zwar erzielen nicht alle Nand-Flash-SSDs eine bessere Leistung als die herkömmlicheren Festplatten, aber diejenigen, die den Engpass verringern, indem sie kürzere Zugriffszeiten, Lesegeschwindigkeiten und Schreibgeschwindigkeiten ermöglichen.

Was ist Nand-Flash ?:

Ein Flash-Speicher ist ein Speichermedium, das zum Speichern von Daten eher Elektrizität als Magnetismus verwendet. Nand-Flash ist ein Flash-Speicher, der ein NAND-Gateway verwendet. Anders als bei einem Nor-Flash, bei dem es sich um einen Direktzugriff handelt, wird auf Nand-Flash nacheinander zugegriffen.

Wie speichern Nand-Flash-SSDs Daten ?:

Nand-Flash-Speicher besteht aus Blöcken, diese Blöcke sind in Zellen aufgeteilt, die Zellen enthalten Seiten. Im Gegensatz zu einer Festplatte, auf der Daten durch Magnetismus gespeichert werden, verbrauchen Flash-Medien Strom, da diese Daten nicht überschrieben werden können. Daten müssen gelöscht werden, um den Speicherplatz wiederzuverwenden. Das Gerät kann keine einzelnen Seiten löschen. Das Löschen muss auf Blockebene erfolgen. Da Daten nicht in einen Block geschrieben werden können, der bereits verwendet wird (auch wenn nicht alle Seiten darin enthalten sind), muss zuerst der gesamte Block gelöscht werden, und dann können in den jetzt leeren Block Daten auf die Seiten geschrieben werden. Das Problem ist, dass Sie alle Daten verlieren, die sich bereits auf diesen Seiten befinden, einschließlich der Daten, die Sie nicht verwerfen möchten! Um zu verhindern, dass vorhandene Daten erhalten bleiben, müssen diese vor dem Blocklöschen an eine andere Stelle kopiert werden.

Auf Festplatten wird eine Magnetplatte zum Speichern von Daten verwendet. Ähnlich wie bei Schallplatten hat die Platte Spuren, und diese Spuren sind in Abschnitte unterteilt, die als Sektoren bezeichnet werden. Ein Sektor kann eine bestimmte Datenmenge enthalten (normalerweise 512 Byte, einige neuere 4 KB). Wenn Sie ein Dateisystem anwenden, werden Sektoren in Clustern gruppiert (basierend auf einer von Ihnen angegebenen Größe, die als Zuordnungsgröße oder Clustergröße bezeichnet wird), und anschließend werden Dateien über Cluster hinweg geschrieben. Es ist auch möglich, einen Sektor zu unterteilen, um Cluster kleiner als Ihre Sektorgröße zu machen. Der in einem Cluster nicht verwendete Speicherplatz, nachdem eine Datei über einen Cluster (oder mehrere) geschrieben wurde, kann nicht verwendet werden. Die nächste Datei wird in einem neuen Cluster gestartet. Um viele nicht nutzbare Speicherplätze zu vermeiden, verwenden Benutzer normalerweise kleinere Clustergrößen. Dies kann jedoch die Leistung beim Schreiben großer Dateien beeinträchtigen. Nand-Flash-SSDs haben keine Magnetplatte, Sie verbrauchen Strom, der durch Speicherblöcke fließt. Ein Block besteht aus Zellen, die Seiten enthalten. Seiten haben eine X-Kapazität (normalerweise 4 KB), und daher bestimmt die Anzahl der Seiten die Kapazität eines Blocks (normalerweise 512 KB). Auf SSDs entspricht eine Seite dem Sektor auf einer Festplatte, da beide die kleinste Speicheraufteilung darstellen.

Was ist Wear Leveling ?:

Nand-Flash-Speicherblöcke können so oft wie möglich beschrieben und gelöscht werden (als ihr Lebenszyklus bezeichnet). Um zu verhindern, dass der Antrieb unter einer Leistungsminderung leidet (tote Blöcke), ist es sinnvoll, die Blöcke so gleichmäßig wie möglich abzunutzen. Der eingeschränkte Lebenszyklus ist auch der Hauptgrund, warum viele Leute vorschlagen, keine Auslagerungsdatei oder Auslagerungspartition in Ihrem Betriebssystem zu haben, wenn Sie eine Nand-Flash-basierte SSD verwenden (obwohl die schnellen Datenübertragungsgeschwindigkeiten vom Gerät zum RAM auch sehr hoch sind) diesen Vorschlag berücksichtigen).

Was ist über die Bereitstellung ?:

Over Provisioning definiert den Unterschied zwischen dem verfügbaren Speicherplatz und dem scheinbaren Speicherplatz. Nand-Flash-basierte Speichergeräte sind nach eigenen Angaben kleiner als sie sind, sodass garantiert leere Blöcke für die Müllentsorgung zur Verfügung stehen. Es gibt eine zweite Art der Über-Bereitstellung, die als dynamische Über-Bereitstellung bezeichnet wird und sich einfach auf bekannten freien Speicherplatz innerhalb des angezeigten freien Speicherplatzes bezieht. Es gibt zwei Arten von Dynamic Over Provisioning: Betriebssystemebene und Laufwerkscontrollerebene. Auf Betriebssystemebene kann Trim verwendet werden, um Blöcke freizugeben, die dann sofort geschrieben werden können. Auf Controller-Ebene kann nicht zugewiesener Speicherplatz (nicht partitioniert, kein Dateisystem) verwendet werden. Wenn Sie mehr freie Blöcke haben, läuft das Laufwerk mit der besten Leistung, da es sofort schreiben kann.

Was ist Schreibverstärkung ?:

Da auf Nand-Flash-Medien ein Block gelöscht werden muss, bevor er geschrieben werden kann, müssen alle Daten innerhalb des Blocks, die nicht gelöscht werden, durch Müllentsorgung in einen neuen Block kopiert werden. Diese zusätzlichen Schreibvorgänge werden als Schreibverstärkung bezeichnet.

Was ist Trimmen?

Betriebssysteme werden unter Berücksichtigung traditioneller Festplatten erstellt. Denken Sie daran, dass eine herkömmliche Festplatte Daten direkt überschreiben kann. Wenn Sie eine Datei löschen, markiert das Betriebssystem sie als gelöscht (überschreibbar), aber die Daten sind noch vorhanden, bis dort ein Schreibvorgang stattfindet. Bei Nand-Flash-basierten SSDs ist dies ein Problem, da die Daten zuerst gelöscht werden müssen. Das Löschen erfolgt auf Blockebene, sodass möglicherweise zusätzliche Daten vorhanden sind, die nicht gelöscht werden. Die Müllentsorgung kopiert alle Daten, die nicht gelöscht werden können, in leere Blöcke. Anschließend können die betreffenden Blöcke gelöscht werden. Dies alles braucht Zeit und verursacht unnötige Schreibvorgänge (Schreibverstärkung)! Um dies zu umgehen, wurde ein Feature namens Trim erstellt. Trim gibt dem Betriebssystem die Möglichkeit, die SSD zu informieren Zum Löschen von Blöcken mit Seiten, die Daten enthalten, die das Betriebssystem in Zeiten als gelöscht markiert hat, in denen Sie dort keine Schreiboperation anfordern. Garbage Collection ist genau das Richtige, und als Ergebnis werden Blöcke freigegeben, sodass hoffentlich Schreibvorgänge in Blöcke erfolgen können, die nicht zuerst gelöscht werden müssen. Dies beschleunigt den Prozess und reduziert die Schreibverstärkung auf ein Minimum. Dies erfolgt nicht auf Dateibasis. Trim verwendet die logische Blockadressierung. Die LBA gibt an, welche Sektoren (Seiten) gelöscht werden sollen, und das Löschen erfolgt auf Blockebene. und hilft, die Schreibverstärkung auf ein Minimum zu reduzieren. Dies erfolgt nicht auf Dateibasis. Trim verwendet die logische Blockadressierung. Die LBA gibt an, welche Sektoren (Seiten) gelöscht werden sollen, und das Löschen erfolgt auf Blockebene. und hilft, die Schreibverstärkung auf ein Minimum zu reduzieren. Dies erfolgt nicht auf Dateibasis. Trim verwendet die logische Blockadressierung. Die LBA gibt an, welche Sektoren (Seiten) gelöscht werden sollen, und das Löschen erfolgt auf Blockebene.

Die Antwort auf Ihre Frage "Nachteile der Partitionierung einer SSD?":

RAM-basierte SSDs:

Es gibt absolut keinen Nachteil, denn sie sind wahlfrei zugänglich!

Nand-Flash-basierte SSDs:

Die einzigen Nachteile, die mir in den Sinn kommen, wären:

  1. Wear Leveling hat nicht so viel freien Speicherplatz zum Spielen, da Schreibvorgänge auf einen kleineren Speicherplatz verteilt werden, sodass Sie "könnten", aber diesen Teil des Laufwerks nicht unbedingt schneller verschleißen, als wenn Sie es mit dem gesamten Laufwerk tun würden war eine einzelne Partition, es sei denn, Sie führen eine gleichwertige Abnutzung der zusätzlichen Partitionen durch (z. B .: ein Dual-Boot).

  2. Wie bei Festplatten sind N- und Flash-SSDs sequentielle Zugriffe, sodass alle Daten, die Sie von den zusätzlichen Partitionen schreiben / lesen, weiter entfernt sind, als dies "möglicherweise" der Fall gewesen wäre, wenn sie auf einer einzelnen Partition geschrieben wären, da die Benutzer in der Regel freien Speicherplatz auf ihren Partitionen belassen . Dies erhöht die Zugriffszeiten für die Daten, die auf den zusätzlichen Partitionen gespeichert sind.

  3. Weniger Speicherplatz erhöht die Wahrscheinlichkeit, dass fragmentierte Dateien geschrieben werden, und obwohl die Auswirkungen auf die Leistung gering sind, sollten Sie bedenken, dass eine Nand-Flash-SSD im Allgemeinen als schlechte Idee angesehen wird, da sie das Laufwerk abnutzt. Abhängig davon, welches Dateisystem Sie verwenden, führt dies natürlich zu einer extrem geringen Fragmentierung, da die Dateien nach Möglichkeit als Ganzes geschrieben werden sollen, anstatt überall abgelegt zu werden, um schnellere Schreibgeschwindigkeiten zu erzielen.

Ich würde sagen, dass es in Ordnung ist, mehrere Partitionen zu haben, aber das Wear Leveling kann ein Problem sein, wenn auf einigen Partitionen viele Schreibaktivitäten stattfinden und auf anderen Partitionen nur sehr wenige. Wenn Sie keinen Speicherplatz partitionieren, den Sie nicht verwenden möchten, und ihn stattdessen für dynamisches Over-Provisioning belassen, erhalten Sie möglicherweise eine Leistungssteigerung, da es einfacher ist, Blöcke freizugeben und sequenzielle Daten zu schreiben. Es gibt jedoch keine Garantie dafür, dass übermäßig viel Speicherplatz benötigt wird, was uns zu Punkt 1 über den Verschleißausgleich zurückbringt.

Einige andere Personen in diesem Thread haben diskutiert, wie sich die Partitionierung auf die Beiträge von Trim zu Dynamic Over Provisioning auswirkt. Meines Erachtens wird TRIM verwendet, um auf Sektoren (Seiten) hinzuweisen, deren Daten zum Löschen markiert sind, und so kann die Müllentsorgung diese Blöcke frei löschen. Dieser freie Speicherplatz fungiert nur innerhalb DIESER Partition als dynamisches Provisioning, da diese Sektoren Teil von Clustern sind, die vom Dateisystem dieser Partition verwendet werden. Andere Partitionen haben ihre eigenen Dateisysteme. Ich kann jedoch völlig falsch liegen, da mir die gesamte Idee der Über-Bereitstellung etwas unklar ist, da Daten an Orte geschrieben werden, die nicht einmal über Dateisysteme verfügen oder in der Laufwerkskapazität angezeigt werden. Ich frage mich daher, ob vor einer endgültigen optomisierten Schreiboperation für Blöcke in einem Dateisystem vorübergehend übermäßig viel Speicherplatz bereitgestellt wird. Natürlich wären die Beiträge von Trim zu Dynamic Over Provisioning innerhalb des Dateisystems nicht vorübergehend, da sie direkt beschrieben werden könnten, da sie sich bereits im nutzbaren Bereich befinden. Das ist zumindest meine Theorie. Vielleicht ist mein Verständnis von Dateisystemen falsch? Ich konnte keine Ressourcen finden, die diesbezüglich ins Detail gehen.


17
"1. Wear Leveling hat nicht so viel freien Speicherplatz zum Spielen, da Schreibvorgänge auf einen kleineren Bereich verteilt werden (...)". Dies scheint nicht der Fall zu sein, da der Verschleiß durch den SSD-Controller auf einer niedrigeren Stufe ausgeglichen wird (zumindest bei SSD und Betriebssystemen, die Trim unterstützen ). superuser.com/a/901521/517270
misko321

4
NAND-basierte Speicher ermöglichen den wahlfreien Zugriff auf Blöcke. Was es nicht erlaubt, ist der zufällige Zugriff auf Bits innerhalb eines Blocks. Auf Partitionen kann also nach dem Zufallsprinzip zugegriffen werden, da sie ein Vielfaches der Blockgröße sind (zumindest sollte dies der Fall sein, wenn der Benutzer nicht in irgendeiner Weise mit dem Speicher herumgespielt hat, dh Partitionierungs-Apps verwendet, ohne zu wissen, was passiert)
Miguel Angelo,

5
Die Punkte 1 und 2 scheinen völlig falsch zu sein
underscore_d

-14

Nein, das macht Sinn.

Die Geschwindigkeit einer SSD hängt direkt von der Größe des verfügbaren Speicherplatzes auf der verwendeten Partition ab. Wenn Sie das Laufwerk in kleine Abschnitte unterteilen, wird die Effizienz der SSD beeinträchtigt, da nicht genügend Speicherplatz vorhanden ist.

Es gibt also keine Nachteile beim Partitionieren einer SSD, aber es gibt Nachteile, wenn kein freier Speicherplatz auf dem Laufwerk vorhanden ist.

Informationen hierzu finden Sie in diesem SuperUser- Beitrag .


1
Das Erstellen logischer Partitionen füllt sie nicht unbedingt aus, oder? Ich verstehe nicht, wie Sie dabei automatisch freien Speicherplatz verlieren.
MarioDS

1
Das Betriebssystem weiß, welche Blöcke verwendet werden können und welche freien Blöcke das Laufwerk nicht. Durch die Partitionierung verfügt das Betriebssystem über weniger freie Blöcke, die verwendet werden können. Dies verringert die Leistung. TRIM wird vom Betriebssystem auf Partitionsebene ausgeführt.
Mark Lopez

10
Aber es kann. Dafür ist TRIM schließlich da. TRIM wird auf Sektorebene ausgeführt und die SSD kümmert sich nicht um Partitionen. Es kümmert sich nur um Sektoren (auch Flash-Zellen genannt). Daher haben Partitionen nur einen vernachlässigbaren Einfluss (Speicherplatz, der vom Overhead des Dateisystems belegt wird) auf die Leistung.
Daniel B

1
Eigentlich sind es Festplatten, auf denen Sie keine Partitionen erstellen sollten
Suici Doga
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.