Тест Syscache
Это автоматизированный тест, который выполняет запись в файл и проверяет правильность считывания записанных данных. Он может обнаруживать повреждения, вызванные чем-либо в пути из встроенного ПО, драйверов, файловой системы, памяти и т. д. Он использует стандартные API-интерфейсы управления файловой системой Win32 и памятью для чтения и записи данных из файла. Тестовый двоичный файл readwrit.exe.
Syscache открывает файл с определенным флагом или атрибутом и выполняет запись в файл. Каждый выбранный флаг может охватывать несколько запусков в файле.
Выполнение определяется как набор из следующей последовательности:
Создайте или откройте файл.
Усечь размер файла до 0.
Запись в файл.
Закройте файл.
Повторно откройте файл.
Прочитать файл.
Проверьте содержимое файла.
Закройте файл.
В файле есть набор из нулевых и ненулевых областей. Ноль областей — это области в файле, в которых не были записаны данные. Ненулевыми регионами являются области в файле, в которые были записаны данные. Шаблон представляет собой DWORD формата RRPPPPPP. Два верхних байта являются номером выполнения, а следующие 3 байта являются дополнением к смещению этого DWORD в файле.
Для записи файла используются следующие атрибуты:
Атрибут записи | Описание |
---|---|
FILE_ATTRIBUTE_NORMAL |
См. документацию по CreateFile() |
FILE_FLAG_SEQUENTIAL_SCAN |
См. документацию по CreateFile() |
FILE_FLAG_NO_BUFFERING |
См. документацию по CreateFile() |
FILE_FLAG_NO_BUFFERING |
См. документацию по CreateFile() |
FILE_FLAG_WRITE_THROUGH |
См. документацию по CreateFile() |
FILE_ATTRIBUTE_TEMPORARY |
См. документацию по CreateFile() |
NO_BUFFERING | WRITE_THROUGH |
См. документацию по CreateFile() |
FILE_ATTRIBUTE_SPARSE_FILE |
Для файла задано значение разреженный. |
ОБЫЧНЫЙ APPEND_WRITE |
То же, что и FILE_ATTRIBUTE_NORMAL; закрывает и повторно открывает файл для каждой записи и добавляет следующий регион. |
FILE_FLAG_SECTOR_CHUNKS |
Как и FILE_FLAG_NO_BUFFERING, данные записываются по одному сектору за раз. |
FILE_MAP |
Как и FILE_ATTRIBUTE_NORMAL, данные записываются с помощью сопоставления памяти. |
FILE_FLAG_OVEREXTEND |
Как и FILE_ATTRIBUTE_NORMAL, данные записываются с помощью сопоставления памяти. |
Для чтения из файла используются следующие атрибуты:
Чтение атрибута | Описание |
---|---|
FILE_MAP |
FILE_ATTRIBUTE_NORMAL данные считываются с помощью сопоставления памяти |
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 |
Сведения о тесте
Характеристики |
|
Платформы |
|
Поддерживаемые выпуски |
|
Ожидаемое время выполнения (в минутах) | 180 |
Категория | Разработка |
Время ожидания (в минутах) | 10800 |
Требуется перезагрузка | false |
Требуется специальная конфигурация | false |
Тип | automatic |
Дополнительная документация
Тесты в этой области функций могут содержать дополнительную документацию, включая предварительные требования, сведения о настройке и устранении неполадок, которые можно найти в следующих разделах:
Запуск теста
Дополнительные сведения о требованиях см. в разделе Предварительные требования для тестирования файловой системы.
Кроме того, для этого теста требуется дополнительное место на жестком диске для четырех простых секций размером 2048 МБ и двух простых секций размером 1024 МБ.
Перед запуском теста необходимо добавить следующие разделы на тестовый компьютер.
Метка | Файловая система | Размер | Ожидаемая буква диска |
---|---|---|---|
NTFS |
NTFS |
2048 МБ |
Г: |
CNTFS |
NTFS (сжатый) |
2048 МБ |
i: |
FAT |
FAT16 |
1 024 МБ |
K: |
FAT32 |
FAT32 |
1 024 МБ |
l: |
ExFAT |
ExFAT |
2048 МБ |
М: |
Определяемая пользователем функция |
Определяемая пользователем функция |
2048 МБ |
N: |
REFS |
REFS |
10240 МБ |
O: |
Устранение неполадок
Общие сведения об устранении неполадок при тестировании HLK см. в статье Устранение неполадок тестов HLK в Windows.
Сведения об устранении неполадок см. в разделе Устранение неполадок при тестировании файловой системы.
Если тест завершается сбоем, журнал содержит все сведения, необходимые для анализа сбоя. Чтобы воспроизвести ошибку, найдите следующие сведения:
Атрибут записи. Найдите таблицу атрибутов записи, чтобы узнать, как данные были записаны в файл.
Атрибут чтения. Найдите таблицу атрибутов чтения, чтобы узнать, как данные были считаны из файла.
Смещение, с которым произошла ошибка.
Область файла, в которой произошла ошибка. Тест обычно записывает весь регион с помощью одной операции записи (за исключением FILE_FLAG_SECTOR_CHUNKS параметра).
Чтобы выполнить этот тест, убедитесь, что на компьютере настроены тома NTFS, CNTFS, FAT16, FAT32, ExFAT и UDF. Кроме того, убедитесь, что буква диска для этого тома указана в параметрах файловой< системы>_DRIVE_LETTER.
Этот тест возвращает значение Пройдено или Сбой. Чтобы просмотреть сведения о тесте, просмотрите журнал тестирования из Windows Hardware Lab Kit (Windows HLK) Studio.
Дополнительные сведения
Синтаксис команды
Параметр команды | Описание |
---|---|
WrapSyscache.cmd [NTFS_DRIVE_LETTER] [CNTFS_DRIVE_LETTER] [FAT_DRIVE_LETTER] [FAT32_DRIVE_LETTER] [EXFAT_DRIVE_LETTER] [UDF_DRIVE_LETTER] [WTTRunWorkingDir] |
Выполняет запись в файл и проверяет правильность считывания записанных данных. |
Примечание
Для справки командной строки для этого тестового двоичного файла введите /h.
Список файлов
Файл | Расположение |
---|---|
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\ |
Параметры
Имя параметра | Описание параметра |
---|---|
NTFS_DRIVE_LETTER | Буква диска для тома NTFS, на котором будет выполняться тест Syscache. |
CNTFS_DRIVE_LETTER | Буква диска для сжатого тома NTFS, на котором будет выполняться тест Syscache. |
FAT_DRIVE_LETTER | Буква диска для тома FAT, на котором будет выполняться тест Syscache. |
FAT32_DRIVE_LETTER | Буква диска для тома FAT, на котором будет выполняться тест Syscache. |
EXFAT_DRIVE_LETTER | Буква диска для тома ExFat, на котором будет выполняться тест Syscache. |
UDF_DRIVE_LETTER | Буква диска для тома UDF, на котором будет выполняться тест Syscache. |
LLU_LclAdminUser | LLU для выполнения |
LLU_NetAccessOnly | LLU для копирования |
REFS_DRIVE_LETTER | Буква диска для тома ReFS, на котором будет выполняться тест. Введите NONE, если нет >= Win8 Server. |