Western Digital Green-Laufwerk von 512-Byte-Sektoren (überbrückt) bis 4-Byte-Sektoren (Entfernen des Jumpers)

4753
tgxiii

Ich habe ein WD20EARS-Laufwerk mit den Pins 7 und 8 überbrückt, um es auf einem Betriebssystem zu verwenden, das keine 4k-Sektoren unterstützt. Jetzt möchte ich diese Festplatte auf ein Betriebssystem mit 4k-Sektorunterstützung übertragen.

Ich habe den Jumper entfernt, ihn an Windows Server 2008 R2 angeschlossen und ein schnelles Format durchgeführt. Allerdings DiskCheckup berichtet die „Bytes pro Sektor“ -Attribut als 512 immer noch.

Was muss ich noch tun, um dieses Laufwerk als Laufwerk mit 4k-Sektor zu verwenden?

10
Sicher wird ein schnelles Format es nicht tun? Versuchen Sie ein vollständiges Format. Sirex vor 13 Jahren 0

1 Antwort auf die Frage

14
SkyBeam

Ich denke, das ist korrektes Verhalten. 4k-Festplatten melden auf der Schnittstellenseite noch 512-Byte-Sektoren. Obwohl sie die Sektoren intern in 4k-Blöcken adressieren.

Der Jumper ermöglicht bei den meisten Laufwerken nur eine Sektorumschaltung. Bei den meisten Laufwerken wird die Sektoradressierung um 1 verschoben. Der Grund dafür sind nicht-4k-fähige Betriebssysteme wie Winodws XP. Um dies zu verstehen, müssen Sie wissen, dass Windows XP die erste Partition erstellt, die bei Sektor 63 gestartet wird (ja, dies ist kein Tippfehler).

In den meisten Fällen verwendet Windows ein Dateisystem mit 4-KB-Zuordnungseinheiten (NTFS-Cluster). Sie würden also davon ausgehen, dass beim Lesen eines NTFS-Clusters von einem herkömmlichen Laufwerk 8 physikalische Blöcke gelesen werden müssen. Ziemlich einfach.

Jetzt wird das Laufwerk auch 4k-Sektorgröße verwenden. Dies ist völlig in Ordnung, da das Betriebssystem niemals kleinere Cluster als 4 KB lesen wird, da dies die kleinste Zuordnungseinheit ist (vorausgesetzt, Sie haben beim Formatieren keine kleineren FS-Cluster erzwungen). Wie ich schrieb, stellen die Laufwerke aus Kompatibilitätsgründen immer noch 512-Byte-Sektoren auf Schnittstellenebene bereit. Wenn Sie jedoch nur einen einzelnen 512-Byte-Block lesen, liest das Laufwerk ohnehin einen 4-KByte-Sektor und teilt es dann auf, um nur 512 Byte über die Kabelschnittstelle zu senden.

Wo ist jetzt das Problem? ###

Das Problem bei Windows XP ist, dass die Partition standardmäßig an Block 63 ausgerichtet ist. Dies führt zu einer falschen Ausrichtung von NTSF-Clustern an physische Blöcke. Ich habe ein kleines Bild erstellt, um dies zu veranschaulichen:

Cluster alignment

Wie Sie auf dem Bild unter Windows XP sehen können, sind die logischen Cluster nicht an physischen 4k-Blöcken ausgerichtet. Wenn Windows also einen logischen NTFS-Cluster liest, muss das Laufwerk zwei Blöcke lesen, nicht nur einen. Noch schlimmer, wenn Sie nur einen einzigen NTFS-Cluster benötigen, werden zwei Sektoren gelesen und müssen zusammengefügt werden, um nur die angeforderten Daten an das Betriebssystem zurückzugeben.

Für Schreiboperationen ist es noch schlimmer. In diesem Fall muss das Laufwerk zwei physische 4-k-Sektoren lesen und dann den Inhalt mit dem Inhalt des neuen NTFS-Clusters zusammenführen, bevor beide Sektoren auf der Festplatte gespeichert werden können. Das bedeutet, statt den Sektor auf der Festplatte durch Überschreiben zu ersetzen, muss das Laufwerk 8k lesen, in einem Puffer zusammenführen und 8k schreiben. Dies verlangsamt das Schreiben erheblich.

Um ein unnötiges Zusammenführen der HDD-Hersteller zu verhindern, wurde ein "Kompatibilitäts" -Hack hinzugefügt, der über Jumper aktiviert werden kann. Es erhöht einfach jede 512-Byte-Sektoradresse um 1. Als Ergebnis beginnt die erste von Windows erstellte Partition bei Sektor 64 und das Mapping sieht folgendermaßen aus:

enter image description here

Jetzt führt jedes Lesen / Schreiben eines logischen 4k-NTFS-Blocks zum exakten Lesen / Schreiben eines physischen Sektors.

Natürlich ist diese Problemumgehung überhaupt nicht erforderlich, wenn Sie Ihre Partitionen bereits an 4k-Sektorengrenzen erstellen. Unter Linux können Sie beispielsweise einfach fdiskfestlegen, bei welchem ​​Block Ihre Partition beginnt. Daher ist es eine gute Idee, hier eine Multiplikation von 8 zu verwenden.

Windows startet die erste Partition auf Sektor 2048 AFAIR seit Vista. Dieses Problem tritt hier also nicht mehr auf.

WARNUNG : Wenn Sie die Jumper-Problemlösung immer noch unter 4k-fähigen Betriebssystemen wie Vista, Win7 oder Win2k8 R2 verwenden, kann dies die Sektorausrichtung tatsächlich brechen. Der Grund ist, dass das Laufwerk dann die Sektoradressen erneut um 1 inkrementiert, was dazu führt, dass die erste Partition auf den Sektor 2049 ausgerichtet ist, was wiederum einen erheblichen Leistungsabfall verursacht.

Stellen Sie daher sicher, dass Sie, wenn Sie ein 4k-fähiges Betriebssystem verwenden, den Jumper entfernen, bevor Sie das Laufwerk partitionieren. In Ihrem speziellen Fall sollte alles in Ordnung sein, solange Sie das Laufwerk bei entferntem Jumper neu partitionieren. Das Formatieren des Laufwerks hat nichts mit der Sektorausrichtung und der 4k-Adressierung zu tun. Das einzige, was Sie beim Formatieren beachten sollten, ist, dass Sie keine Clustergrößen verwenden, die kleiner als 4k sind, da NTFS-Cluster mit 2k lediglich dazu führen müssen, dass für jeden Festplattenzugriff immer noch ein vollständiger 4k-Sektor vom Betriebssystem gelesen wird. Übrigens: Die Verwendung von 8k-NTFS-Clustern ist immer noch völlig in Ordnung, da die Festplatte einfach 2 Sektoren für jede NTFS-Lese- / Schreiboperation lesen würde.

Nett! Vielen Dank für die ausführliche Antwort und insbesondere für die Warnung am Ende, dass der Jumper auf 4k-fähigen Betriebssystemen verwendet wird. tgxiii vor 13 Jahren 0
Mark: Sie sind es, aber jeder, den ich gesehen habe, war in der Produktklasse "Enterprise". Sie haben mindestens den doppelten Preis / TB von 512e-Laufwerken und werden daher wahrscheinlich nicht außerhalb großer Serverräume gesehen. Jamie Hanrahan vor 9 Jahren 0