Sie sind auf Seite 1von 3

H2testw -- by Harald Bgeholz / c't Magazin fr Computertechnik

Integrittstest fr USB-Sticks und andere Datentrger


Version 1.4, Copyright (C) 2008 Heise Zeitschriften Verlag GmbH & Co. KG
========================================================================
H2testw wurde entwickelt, um USB-Sticks auf einwandfreie Funktion zu
testen. Es eignet sich aber auch fr beliebige andere Datentrger wie
Speicherkarten, interne und externe Festplatten und sogar
Netzwerklaufwerke.
Die Exe-Datei H2testw.exe ist
Programm wurde entwickelt fr
sollte es auch funktionieren,
9x/ME wird nicht untersttzt;
Kommandozeilenprogramm H2test

ohne Installation direkt lauffhig. Das


Windows XP und Vista; unter Windows 2000
wurde jedoch nicht getestet. Windows
als Alternative bietet sich das ltere
an.

Das Funktionsprinzip von H2testw ist einfach: Es fllt den gewhlten


Speicherort mit Testdateien, liest diese anschlieend wieder ein und
berprft, ob die gelesenen Daten mit den ursprnglich geschriebenen
bereinstimmen.
H2testw berschreibt oder lscht grundstzlich keine bestehenden
Dateien. Es greift nicht tief ins System ein, sondern legt als
gewhnliches Anwendungsprogramm Dateien an; Administratorrechte sind
daher nicht erforderlich. Wenn die Hardware korrekt arbeitet, wird
H2testw also keine bestehenden Daten gefhrden.
ABER: _Wenn_ ein Hardwarefehler vorliegt, dann kann H2testw diesen zum
Vorschein bringen und dadurch eventuell auch bestehende Daten
beschdigen. Daher der Rat: WENN SIE EINEN USB-STICK ODER SONSTIGEN
DATENTRGER IM VERDACHT HABEN, NICHT RICHTIG ZU ARBEITEN, LEEREN SIE
IHN ZUNCHST UND TESTEN IHN DANN VOLLSTNDIG MIT H2TESTW. Nur wenn ein
Datentrger leer ist, kann H2testw ihn vollstndig testen. Fr
reproduzierbare Ergebnisse empfehlen wir, den Datentrger frisch zu
formatieren (Schnellformatierung gengt) und dann zu testen.
H2testw schreibt an den gewhlten Speicherort jeweils bis zu 1 GByte
groe Dateien mit den fortlaufenden Namen 1.h2w, 2.h2w, 3.h2w usw.
Wenn am Zielort bereits ein gltig aussehender Satz solcher Dateien
vorliegt, bietet H2testw an, diese zu prfen; existieren irgendwelche
anderen Dateien mit Namen *.h2w, verweigert es die Arbeit. Lschen Sie
in diesem Falle alle Dateien *.h2w und drcken Sie den Knopf
"Aktualisieren".
Nach getaner Arbeit bleiben die Testdateien auf dem Datentrger
liegen. Sie knnen sie nach Belieben lschen oder -- im Falle eines
USB-Sticks zum Beispiel an einem anderen Rechner -- nochmals
berprfen.
Die Checkbox "Prfen als Dauertest" versetzt H2testw in eine
Endlosschleife, in der es die Testdateien immer wieder einliest und
berprft, bis ein Fehler auftritt. Diese Option ist dafr gedacht,
sporadisch auftretende bertragungsfehler zu entdecken.
Eine Anmerkung zur Restzeitschtzung: Bei intakten
Flash-Speichermedien sollte die Schtzung sehr genau stimmen, weil die
Datenrate konstant ist. Bei defekten Flash-Medien haben wir starke
Einbrche in der bertragungsrate beobachtet, die dazu fhren, dass
die Schtzung stndig nach oben korrigiert wird. Festplatten erzielen
grundstzlich im Innenbereich eine niedrigere Datenrate als auen,

daher ist die Schtzung prinzipbedingt ungenau.


Bei Fragen oder Anregungen zu H2testw wenden Sie sich bitte per E-Mail
an Harald Bgeholz <hwb@heise.de> (in Deutsch oder Englisch).
Was tun im Fehlerfall?
---------------------Wenn H2testw beim berprfen Datenfehler meldet, dann heit das, dass
das Speichermedium nicht alle Daten so zurckgeliefert hat, wie sie
geschrieben wurden. Wahrscheinlich handelt es sich um ein defektes
Speichermedium, es kommen aber auch andere Fehlerquellen in Betracht.
Sie sollten daher im Fehlerfalle den Test wiederholen und dabei
Folgendes beachten:
* Medium nach Mglichkeit frisch formatieren
* Keine USB-Verlngerungskabel oder USB-Hubs verwenden
* USB- oder FireWire-Gerte versuchsweise an einem anderen Anschluss
testen (manchmal sind die USB-Ports an der ATX-Blende besser als die
Front-Anschlsse).
* Bei externen Platten auch mal ein anderes Kabel probieren, falls
mglich.
Ausgabe im Fehlerfall
--------------------Wenn beim berprfen Fehler auftreten, schlsselt H2testw die Anzahl
der fehlerhaften Sektoren auf in
* solche, die durch andere berschrieben wurden (siehe oben unter
Adressierungsfehler),
* solche, die nur leicht verflscht wurden (weniger als 8 abweichende
Bits pro Sektor)
* komplett fehlerhafte bzw. strker verflschte ("Datenmll").
Im Falle berschriebener Sektoren versucht H2testw herauszufinden, wie
viel Speicher in dem betroffenen Bereich real vorhanden ist und weist
diese Datenmenge als "mehrfach genutzt" aus (ohne Gewhr!).
Fr den ersten gefundenen Fehler gibt das Programm schlielich den
Offset innerhalb des Datenbestands, den dort erwarteten (Soll) und den
tatschlich vorgefundenen Wert (Ist) aus.
Tipp: Der Text der Fehlermeldung lsst sich markieren und mit
Kopieren und Einfgen zum Beispiel in eine E-Mail bernehmen.
Typische Fehlerbilder
--------------------Die Testdaten von H2testw sind so konstruiert, dass man typische
Fehler voneinander unterscheiden kann. Sie fallen in drei Kategorien:

* Adressierungsfehler: Beim Schreiben eines Sektors landet der Inhalt


nicht an der gewnschten Adresse, sondern an einer anderen,
berschreibt also einen anderen Sektor. Dieser Fehler tritt bei
einigen manipulierten USB-Sticks auf. Weiteres prominentes Beispiel:
Eine Festplatte ber 128 GByte an einem Rechner, dessen BIOS
und/oder Betriebssystem noch nicht die dafr ntige Adressierungsart
beherrscht. Dann erfolgen alle Zugriffe modulo 128 GByte: Daten, die
man an der 128-GByte-Grenze schreibt, berschreiben also wieder den
Anfang der Festplatte.
* Daten werden gar nicht gespeichert: Diesen Fehler haben wir im
Zusammenhang mit fehlerhaften USB-Sticks beobachtet. Statt der
geschriebenen Daten liefert ein Sektor beim Lesen nur Nullen oder
Einsen zurck -- ein typisches Anzeichen dafr, dass auf nicht
bestckten Speicher zugegriffen wurde.
* Einzelne Bits werden verflscht: Das deutet auf
bertragungsstrungen auf dem Signalweg vom Prozessor zum
Speichermedium hin. Ebenfalls denkbar, aber noch nicht beobachtet:
Theoretisch knnte in einem Flash-Speicher auch mal ein Bit
"umkippen".
Aufbau der Testdaten
-------------------H2testw schreibt und liest die Testdaten megabyteweise. Auch wenn man
die Option whlt, den Datentrger ganz zu fllen, bleibt daher am Ende
bis zu 1 MByte Verschnitt brig, wobei mit 1 MByte 1048576 Byte
gemeint sind (1024 KByte). Um auch mit FAT-Dateisystemen zu
funktionieren, hlt H2testw einen respektvollen Abstand von der
4-GByte-Grenze und fngt nach jeweils einem Gigabyte (1024 MByte) eine
neue Datei an.
Innerhalb einer Datei beginnt jeder 512-Byte-Sektor mit einem
64-Bit-Wort (8 Byte), in dem der Offset innerhalb der gesamten
Testdaten (nicht nur innerhalb der Datei) abgelegt ist, und zwar
Intel-typisch im Format Little-Endian, also niederwertiges Byte
zuerst.
Die Datei 1.h2w beginnt also mit der Bytefolge
00 00 00 00 00 00 00 00,
der nchste Sektor mit
00 02 00 00 00 00 00 00,
der nchste mit
00 04 00 00 00 00 00 00
und so weiter. Die Datei 2.h2w beginnt mit der Bytefolge
00 00 00 40 00 00 00 00
(Offset 1 GByte = 0x40000000).
Der Rest eines jeden Sektors ist mit einer Pseudo-Zufallszahlenfolge
aufgefllt.

Das könnte Ihnen auch gefallen