SSD Schreibt Datei in Cache und meldet an das Betriebssystem Schreiben erledigt

Einfach mal etwas über die Arbeitsweise einer SSD informieren. Die sollte man niemals einfach abrupt stromlos machen. Die arbeiten auch, wenn Windows nichts auf ihr macht. Durch abrubtes stromlos machen kann noch weit mehr an Schaden entstehen, als das eine Datei nicht richtig geschrieben wurde.
 
wer einfach den stecker zieht, um den PC auszumachen, dem sollte man den PC wegnehmen! Am besten garnicht erst an einen PC setzen und arbeiten lassen.
 
Man, man, man...

Man kann das System ja auch so einrichten (bzw. im Normalfall sollte das sogar der Standard sein), dass beim Betätigen des Ausschalters der Rechner sauber heruntergefahren wird...

Wer so gar keine Ahnung hat und sich scheinbar mit der Thematik auch nicht beschäftigen will, dem sollte das Recht auf Rechnerbenutzung entzogen werden...
 
Ich danke euch allen. Ich sehe schon das es nur eine sinnvolle Lösung für das Problem gibt und muss euch somit recht geben. Der Anwender muss gezwungen sein den Rechner runter zu fahren um dem Dateiverlust zu verhindern.

Ich danke allen für ihren Beitrag.
 
In Linux gibt es das Kommando 'sync' um alle noch ausstehenden, also bisher nur vom Betriebssystem gecachten Schreibvorgänge (die auf der SSD nicht gespeichert sein könn weil die SSD selber nicht von weiss), sicher auf die Platten zu befördern. Durch Stromabschaltung *nach* dem 'sync' könntest du der SSD einen Vorwurf machen, vorher nicht...

Gibt es für Windows vergleichbares?

Denn erst wenn das Betriebssystem sicher seinen eigenen Cache geflusht hat kann das mit dem hart trennen der Stromversorgung auf der SSD überhaupt klappen. Ansonsten hast du nur getestet daß dein Betriebssystem eben nochmal einen eigenen Schreibcache hat.

Ob ein Schreibvorgang physikalisch abgeschlossen ist, wird dem Otto Normalnutzer weder bei Windows, Linux noch Mac angezeigt und auch nicht auf dem Smartphone falls du da jetzt anfangen willst, die Batterie rauszunehmen direkt nachdem die Kamera-App ihren "Ka-chack" Soundeffekt abgespielt hat.

Auf Speichermedien (auch: SSDs) zu warten ist einfach zu langsam. Da läuft sehr viel Sekunden später im Hintergrund ab und ist erstmal noch nur im RAM.
 
Am Endes des Runterfahrens von Windows wird der SSD mitgeteilt, dass gleich eine Unterbrechung der Spannungsversorgung erfolgen wird, was für diese bedeutet, dass sie ihren Schreibcache leert und die Idle-GC im Hintergrund einstellt. Außerdem gibt es SSDs die die Auntwort auf Sync faken, also das Schreiben auf das Medium bestätigen ohne es ausgeführt zu haben, genau wie es auch die Profi-RAID Controller machen die mit einer BBU vor dem Verlust der Daten im Cache geschützt sind. Bei SSDs mit Power-Loss-Protection die auch die Userdaten im Schreibcache schützt, ist das erlaubt, aber es gibt auch welche die keine Full-Power-Loss-Protection haben und es trotzdem machen, die mit dem Sandforce Controller sind z.B. Kandidaten bei denen man dies befürchten muss. Leider steht hier nicht welche Controller verbaut ist, aber prüfe es indem Du mit dem AS-SSD Benchmark bencht, einmal mit und einmal ohne den Schreibcache aktiviert zu haben und achte vor allem auf die 4k Werte.

Das muss als einmal so aussehen:

schreibcache-png.536222


Und dann einmal ohne den Haken, wobei es Reboot nötig ist damit die Einstellung bei Systemlaufwerken wirklich übernommen wird. Fallen ohne den Haken die 4k Werte nicht drastisch Richtung ganz wenige MB/s fakt die SSD da Sync und hat in Wahrheit immer noch ihren Schreibcache aktiviert, dann steht die Daten auch noch im Cache, wenn man mit sync (von sysinternals) das Leeren der Schreibcaches erzwingt. Andernfalls sollten nach dem Beenden von Sync die Daten wirklich im NAND stehen, was schon mal die Sicherheit erhöht. Wenn also nicht verhindert werden kann, dass die Anwender den Rechner nach der Bestätigung des Schreibens ausschalten, würde ich versuchen entweder den Knopf so zu konfigurieren, dass er statt des Ausschaltens ein Shutdown bewirkt, bei normalen PCs geht das in aller Regel oder wenigsten das nach dem Schreibvorgang ein sync ausgeführt wird und die Meldung erst kommt, wenn das sync beendet wurde.
 
Zurück
Oben