Syscache-Test
Dies ist ein automatisierter Test, der in eine Datei schreibt und überprüft, ob die geschriebenen Daten korrekt herausgelesen werden. Er kann Beschädigungen erkennen, die durch Firmware, Treiber, Dateisystem, Speicher usw. im Pfad verursacht werden. Außerdem verwendet er die Standard-APIs für das Win32-Dateisystem und die Speicherverwaltungs, um Daten aus der Datei zu lesen und zu schreiben. Die Test-Binärdatei ist readwrit.exe.
Syscache öffnet eine Datei mit einem bestimmten Flag/Attribut und schreibt in die Datei. Jedes ausgewählte Flag kann mehrere Ausführungen auf der Datei umfassen.
Eine Ausführung wird mit der folgenden Sequenz definiert:
Erstellen/Öffnen Sie eine Datei.
Abschneiden der Dateien auf 0.
Schreiben Sie in die Datei.
Schließen Sie die Datei.
Öffnen Sie die Datei erneut.
Lesen der Datei.
Überprüfen Sie den Dateiinhalt.
Schließen Sie die Datei.
In der Datei befindet sich eine Gruppe von Null- und Nicht-Nullregionen. Nullregionen sind Bereiche in der Datei, in die keine Daten geschrieben wurden. Nicht-Nullregionen sind Bereiche in der Datei, in die Daten geschrieben wurden. Das Muster ist ein DWORD im Format „RRPPPPPP“. Bei den oberen zwei Bytes handelt es sich um die Ausführungsnummer, und bei den nächsten drei Bytes um die Ergänzung des Offsets dieses DWORD in der Datei.
Die folgenden Attribute werden zum Schreiben in einer Datei verwendet:
Schreibattribut | Erklärung |
---|---|
FILE_ATTRIBUTE_NORMAL |
Siehe die CreateFile()-Dokumentation |
FILE_FLAG_SEQUENTIAL_SCAN |
Siehe die CreateFile()-Dokumentation |
FILE_FLAG_NO_BUFFERING |
Siehe die CreateFile()-Dokumentation |
FILE_FLAG_NO_BUFFERING |
Siehe die CreateFile()-Dokumentation |
FILE_FLAG_WRITE_THROUGH |
Siehe die CreateFile()-Dokumentation |
FILE_ATTRIBUTE_TEMPORARY |
Siehe die CreateFile()-Dokumentation |
NO_BUFFERING | WRITE_THROUGH |
Siehe die CreateFile()-Dokumentation |
FILE_ATTRIBUTE_SPARSE_FILE |
Die Datei ist auf „sparse“ festgelegt. |
NORMAL APPEND_WRITE |
Identisch mit „FILE_ATTRIBUTE_NORMAL“. Schließt und öffnet die Datei pro Schreibvorgang und fügt die nächste Region an. |
FILE_FLAG_SECTOR_CHUNKS |
Identisch mit „FILE_FLAG_NO_BUFFERING“. Die Daten werden jeweils mit einem Sektor gleichzeitig geschrieben. |
FILE_MAP |
Identisch mit „FILE_ATTRIBUTE_NORMAL“. Die Daten werden über die Speicherzuordnung geschrieben. |
FILE_FLAG_OVEREXTEND |
Identisch mit „FILE_ATTRIBUTE_NORMAL“. Die Daten werden über die Speicherzuordnung geschrieben. |
Die folgenden Attribute werden zum Lesen aus der Datei verwendet:
Leseattribut | Erklärung |
---|---|
FILE_MAP |
„FILE_ATTRIBUTE_NORMAL“. Die Daten werden über die Speicherzuordnung gelesen |
NO_BUFFERING |
FILE_FLAG_NO_BUFFERING |
NORMAL |
FILE_ATTRIBUTE_NORMAL |
RANDOM_ACCESS |
FILE_FLAG_RANDOM_ACCESS |
SEQUENTIAL_SCAN |
FILE_FLAG_SEQUENTIAL_SCAN |
TEMPORARY |
FILE_FLAG_TEMPORARY |
WRITE_THROUGH |
FILE_FLAG_WRITE_THROUGH |
Testdetails
Spezifikationen |
|
Plattformen |
|
Unterstützte Versionen |
|
Voraussichtliche Laufzeit (in Minuten) | 180 |
Kategorie | Entwicklung |
Timeout (in Minuten) | 10800 |
Neustart erforderlich | false |
Erfordert eine spezielle Konfiguration | false |
Typ | automatic |
Zusätzliche Dokumentation
Tests in diesem Funktionsbereich enthalten möglicherweise zusätzliche Dokumentation, einschließlich Informationen zu Voraussetzungen, Einrichtung und Fehlerbehebung, die in den folgenden Themen zu finden sind:
Ausführen des Tests
Weitere Informationen zu den Anforderungen finden Sie unter Voraussetzungen für Dateisystemtests.
Darüber hinaus erfordert dieser Test zusätzliche Festplattenspeicher für vier einfache 2.048-Megabyte- (MB) Partitionen und zwei einfache 1.024-MB-Partitionen.
Bevor Sie den Test ausführen, müssen Sie dem Testcomputer die folgenden Partitionen hinzufügen.
Bezeichnung | Dateisystem | Size | Erwarteter Laufwerkbuchstabe |
---|---|---|---|
NTFS |
NTFS |
2.048 MB |
G: |
CNTFS |
NTFS (komprimiert) |
2.048 MB |
i: |
FAT |
FAT16 |
1.024 MB |
k: |
FAT32 |
FAT32 |
1.024 MB |
l: |
ExFAT |
ExFAT |
2.048 MB |
m: |
UDF |
UDF |
2.048 MB |
n: |
REFS |
REFS |
10240mb |
o: |
Problembehandlung
Informationen zur allgemeinen Problembehandlung bei HLK-Testfehlern finden Sie unter Problembehandlung bei Windows HLK-Testfehlern.
Informationen zur Problembehandlung finden Sie unter Problembehandlung bei Dateisystemtests.
Wenn beim Test ein Fehler auftritt, enthält das Protokoll alle Informationen, die Sie zum Analysieren des Fehlers benötigen. Suchen Sie nach den folgenden Informationen, um den Fehler zu reproduzieren:
Das „Write“-Attribut. Suchen Sie nach der Tabelle mit Schreibattributen, um herauszufinden, wie die Daten in die Datei geschrieben wurden.
Das „Read“-Attribut. Suchen Sie nach der Tabelle mit Leseattributen, um herauszufinden, wie die Daten aus der Datei gelesen wurden.
Der Offset, an dem der Fehler aufgetreten ist.
Die Region der Datei, in der der Fehler aufgetreten ist. Der Test schreibt in der Regel die gesamte Region mithilfe eines einzigen Schreibvorgangs, mit Ausnahme der Option „FILE_FLAG_SECTOR_CHUNKS“.
Um diesen Test auszuführen, stellen Sie sicher, dass auf dem Computer NTFS-, CNTFS-, FAT16-, FAT32-, ExFAT- und UDF-Volumes eingerichtet wurden. Stellen Sie außerdem sicher, dass der Laufwerkbuchstaben für dieses Volume im <Dateisystemparameter >_DRIVE_LETTER angegeben wurde.
Dieser Test gibt „Pass“ oder „Fail“ zurück. Überprüfen Sie die Testdetails im Testprotokoll von Windows Hardware Lab Kit (Windows HLK) Studio.
Weitere Informationen
Befehlssyntax
Befehlsoption | Beschreibung |
---|---|
WrapSyscache.cmd [NTFS_DRIVE_LETTER] [CNTFS_DRIVE_LETTER] [FAT_DRIVE_LETTER] [FAT32_DRIVE_LETTER] [EXFAT_DRIVE_LETTER] [UDF_DRIVE_LETTER] [WTTRunWorkingDir] |
Schreibt in eine Datei und überprüft, ob die geschriebenen Daten korrekt herausgelesen werden |
Hinweis
Geben Sie /h ein, um die Befehlszeilenhilfe für diese Testbinärdatei anzuzeigen.
Dateiliste
Datei | Standort |
---|---|
Ntlog.dll |
<[osbinroot]>\nttest\CommonTest\NtLog\ |
Ntlogger.ini |
<[osbinroot]>\nttest\CommonTest\NtLog\ |
Readwrit.exe |
<[testbinroot]>\nttest\BASETEST\core_file_services\cachemgr\ |
RunSyscache.cmd |
<[testbinroot]>\nttest\BASETEST\Core_File_Services\FilterManager\TestSuite\Scripts\FileSystems\ |
Stresslog.dll |
<[testbinroot]>\nttest\basetest\core_file_services\shared_libs\ |
WrapSyscache.cmd |
<[testbinroot]>\nttest\BASETEST\Core_File_Services\FilterManager\TestSuite\Scripts\FileSystems\ |
Parameter
Parametername | Parameterbeschreibung |
---|---|
NTFS_DRIVE_LETTER | Der Laufwerkbuchstaben für das NTFS-Volume, auf dem der Syscache-Test ausgeführt wird. |
CNTFS_DRIVE_LETTER | Der Laufwerkbuchstaben für das komprimierten NTFS-Volume, auf dem die Syscache-Tests ausgeführt werden. |
FAT_DRIVE_LETTER | Der Laufwerkbuchstaben für das FAT-Volume, auf dem der Syscache-Test ausgeführt wird. |
FAT32_DRIVE_LETTER | Der Laufwerkbuchstaben für das FAT-Volume, auf dem der Syscache-Test ausgeführt wird. |
EXFAT_DRIVE_LETTER | Der Laufwerkbuchstaben für das ExFat-Volume, auf dem der Syscache-Test ausgeführt wird. |
UDF_DRIVE_LETTER | Der Laufwerkbuchstaben für das UDF-Volume, auf dem der Syscache-Test ausgeführt wird. |
LLU_LclAdminUser | LLU zum Ausführen |
LLU_NetAccessOnly | LLU zum Kopieren |
REFS_DRIVE_LETTER | Der Laufwerksbuchstabe für das ReFS-Volume, auf dem der Test ausgeführt wird. Geben Sie NONE ein, wenn > nicht Win8 Server entspricht. |