Soweit ich weiß, gab es in Windows vor 7 keine TRIM/UNMAP-Unterstützung (für SSD-Laufwerke wurden spezielle Tools verwendet), aber Flash-Laufwerke wurden seit etwa 2005 verwendet und von Windows XP vollständig unterstützt.
Als USB-Massenspeichergeräte verwendeten sie das SCSI-Protokoll über USB (habe ich an dieser Stelle recht?). SCSI enthält UNMAP, wurde aber auch in Windows XP nicht unterstützt.
Die einzige Möglichkeit für einen USB-Speicherstick, zu erfahren, dass ein Block möglicherweise gelöscht wurde, ist eine Schreibanforderung vom Betriebssystem.
Das bedeutet, dass nach einiger Nutzung das ganze Laufwerk verschmutzt ist und immer langsamer wird. Es gibt keine Möglichkeit, es anzuweisen, einen Block zu löschen. Sie können es nur wegwerfen und einen neuen USB-Stick kaufen.
Aber ich bin sicher, dass es nicht so war. Was habe ich verpasst?
Antwort1
Die kurze und allgemeine Antwort lautet: dank einer versteckten Anzahl von NAND-Zellen.
Die Controller von Flash-Laufwerken halten die Schreibleistung aufrecht, indem sie einen Garbage-Collector-Mechanismus anwenden: Die fragmentierten freien logischen Sektoren werden gesammelt und freien physischen NAND-Blöcken zugeordnet. Der Garbage Collector wird überhaupt nicht vom Betriebssystem gesteuert, sondern ist ein Hintergrundprozess, der vollständig intern auf dem Laufwerk abläuft (das Laufwerk muss lediglich eingeschaltet sein).
Wenn auf dem Laufwerk kein freier Speicherplatz mehr vorhanden ist, kann die Speicherbereinigung offensichtlich nicht mehr funktionieren (beachten Sie, dass dies nur geschieht, wenn das Laufwerk zu einem bestimmten Zeitpunkt vollständig gefüllt war).
Um dieses Problem zu lösen, gibt es auf den meisten Laufwerken eine versteckte Anzahl von NAND-Zellen: Selbst wenn das Laufwerk „logisch voll“ ist (aus Sicht des Betriebssystems), ist es nicht „physisch voll“ und der Controller hat noch etwas Spielraum, um die Garbage Collection anzuwenden. https://www.seagate.com/fr/fr/tech-insights/ssd-over-provisioning-benefits-master-ti/
Das versteckte Volumen der Zellen hängt von der Laufwerkskategorie ab: Ein High-End-Laufwerk hat ein großes Volumen, während ein Laufwerk der Einstiegsklasse nur ein minimales Volumen hat. Ich denke auch, dass man davon ausgehen kann, dass billige USB-Sticks keine versteckten Zellen haben.
Ebenso verfügen nicht alle Laufwerke über einen ausgeklügelten Speicherbereinigungsmechanismus. Einige Laufwerke verfügen möglicherweise über einen groben Mechanismus, und einige Laufwerke (wiederum billige USB-Sticks) verfügen möglicherweise über keinen Speicherbereinigungsmechanismus.
Alles, was ich oben geschrieben habe, gilt auch ohne TRIM.
Antwort2
Es gibt zu viele Flash-Laufwerk-Technologien, um mehr als eine sehr allgemeine Antwort geben zu können. Im Folgenden finden Sie einige Ratschläge, wobei Sie bedenken sollten, dass die meisten Flash-Laufwerke billig hergestellt werden und deren Hardware mit der Zeit nachlässt.
Sicheres Löschen von ATA ist für einige Laufwerke eine Alternative zu TRIM. im Artikel Machen Sie das Schreiben auf USB-Flashspeicher wieder schneller Der Autor hat damit die Schreibleistung eines 64 GB SanDisk Extreme USB-Flash-Laufwerks von 81,7 MB/S auf 149,7 MB/S gesteigert.
Schwache Sektoren auf der Festplatte können durch eine Formatierung verbessert werden („langsam“ - nicht schnell)
Das NTFS-Format ist möglicherweise effizienter als FAT32 und exFAT. Siehe zum Beispiel den Artikel FAT32 vs. exFAT vs. NTFS USB3 Leistungsvergleich.
Wenn Sie im Geräte-Manager das USB-Gerät auf „Bessere Leistung“ statt auf „Schnelles Entfernen“ einstellen, kann Windows die Daten besser zwischenspeichern. Allerdings müssen Sie in diesem Fall immer daran denken, das Laufwerk nach dem Schreiben auszuwerfen.
Aktualisieren Sie die Treiber für das Gerät und/oder den USB-Controller.
Die Leistung eines häufig verwendeten USB-Anschlusses kann mit der Zeit nachlassen. Versuchen Sie es daher mit einem anderen Anschluss und wechseln Sie zwischen den Anschlüssen vorn und hinten am Gehäuse.
Antwort3
Einige USB3.x-LaufwerkeStützverkleidung. Ich bin nicht ganz sicher, ob Windows es nutzen kann – Linux kann es.ScheinbarWenn sie das UASP-Protokoll (USB Attached SCSI) verwenden, funktioniert Trim möglicherweise unter Windows 8+.
Was den Kern der Frage angeht (wie könnte das ohne Trim gemacht werden): Ich kenne einige USB2-Controller, die spezielle Tricks auf Lager hatten, da sie FAT32 verstanden. Sie wussten also, wie man Trim auf diesem Dateisystem emuliert (indem sie die FAT beobachteten), aber nicht z. B. auf NTFS oder einem Linux-Dateisystem. Es gab erhebliche Leistungseinbußen auf solchen Laufwerken, wenn man etwas anderes als FAT32 verwendete, nachdem die Schreibvorgänge die Kapazität überschritten hatten. Eine typische LösungWarzumindest ab und zu eine Neuformatierung in FAT32 vorzunehmen; dies entsprach im Wesentlichen einem vollständigen Trimmen.
Leider habe ich keinen Beleg für meine Behauptung zur Hand, dass einige Controller FAT32 verstehen, aber wenn ich mich recht entsinne, habe ich ihn in einer Präsentation eines chinesischen Chipherstellers (wahrscheinlich Yeestor) gesehen.