Rapidfile 테스트(시스템)
이 테스트는 지정된 볼륨 또는 파일에서 데이터 무결성 테스트를 통해 실행됩니다.
테스트 세부 정보
사양 |
|
플랫폼 |
|
지원되는 릴리스 |
|
예상 실행 시간(분) | 30 |
범주 | 시나리오 |
시간 제한(분) | 1800 |
다시 부팅 필요 | false |
특별한 구성 필요 | false |
형식 | automatic |
추가 설명서
이 기능 영역의 테스트에는 다음 항목에서 찾을 수 있는 필수 조건, 설정, 문제 해결 정보를 포함한 추가 설명서가 있을 수 있습니다.
테스트 실행
테스트를 실행하기 전에 테스트 요구 사항: WDTF 시스템 기본 테스트 필수 조건에 설명된 대로 테스트 설정을 완료합니다.
테스트를 실행하기 전에 볼륨 경로가 있어야 합니다. 파일 경로를 사용하는 경우 테스트는 쓰기 단계 중에 파일을 만들고 읽기/확인 단계에서 동일한 파일 경로를 예상합니다.
문제 해결
HLK 테스트 실패의 일반적인 문제 해결은 Windows HLK 테스트 실패 문제 해결을 참조하세요.
문제 해결 정보는 시스템 기본 테스트 문제 해결을 참조하세요.
이 테스트는 Pass 또는 Fail을 반환합니다. 테스트 세부 정보를 검토하려면 Windows HLK(Windows Hardware Lab Kit) Studio에서 테스트 로그를 검토합니다.
추가 정보
이 테스트는 파일 시스템/IO 동작과 관련된 많은 매개 변수를 허용하며 그 중 몇 가지는 아래에 설명되어 있습니다.
I/O 작업
쓰기 명령줄에 제공된 디바이스 경로에서 수행되는 기본 작업입니다.
읽기/확인 명령줄에 /V 옵션이 지정된 경우 읽기를 수행합니다. 지정된 읽기 IO가 완료되면 테스트는 읽기 데이터를 예상 데이터(명령줄에 지정된 디바이스 경로 기반)와 비교하고 읽기 데이터가 예상 데이터와 일치하지 않는 경우(데이터 손상) 사용자에게 알립니다.
I/O 모드
동기 /SYNC 명령줄 옵션을 지정하면 지정된 디바이스 경로(파일/볼륨)에서 테스트에 의해 수행된 I/O 요청이 동기적으로 수행됩니다. 테스트는 I/O가 완료될 때까지 기다린 후 다른 I/O를 실행합니다. 이 옵션은 기본 옵션이 아닙니다.
비동기 /SYNC 명령줄 옵션을 지정하지 않으면 테스트가 완료될 때까지 기다리지 않고 I/O 요청 집합을 발급하는 비동기 방식으로 I/O 요청이 수행됩니다. 각 I/O 요청의 완료는 별도로 추적됩니다. 이 모드는 테스트에서 사용되는 기본 모드입니다.
파일 크기
사용자는 /Z 명령줄 옵션을 사용하여 사용자 지정 파일 크기를 지정할 수 있습니다. 사용자는 다음 중 하나를 추가하여 다양한 크기를 지정할 수 있습니다.
K - KB의 경우
M - MB의 경우
G - GB의 경우
T - TB의 경우
보류 중인 I/O
비동기 I/O 모드를 사용하는 경우 사용자는 발급된 I/O 요청의 완료를 기다리기 전에 보류 상태로 유지할 최대 I/O 요청 수를 지정할 수 있습니다. 이 작업은 /R <번호> 명령줄 옵션을 사용하여 수행할 수 있습니다. 예를 들어 /R 1K는 테스트가 완료하지 않은 1,000개의 I/O까지 새 I/O 요청을 계속 실행한다는 것을 의미합니다.
파일 플래그
테스트는 지정된 경로에서 IO를 시작하기 전에 FS API를 사용하여 파일 핸들을 만듭니다. 또한 사용자는 다음 파일 플래그를 사용하여 다양한 IO 패턴을 만들 수 있습니다.
/FD - FILE_FLAG_DELETE_ON_CLOSE 이 옵션은 파일의 마지막 핸들이 닫히면 지정된 파일을 삭제해야 한다는 각 FS에 대한 표시입니다. 테스트는 읽기/확인 작업 중에만 이 플래그를 지원합니다.
/FS - FILE_FLAG_SEQUENTIAL_SCAN 파일 캐싱을 최적화하는 파일 시스템 플래그입니다. 액세스는 처음부터 끝까지 순차적으로 실행되도록 되어 있음을 보여줍니다. 해당 파일 시스템이 캐시된 I/O를 지원하지 않는 경우 이 플래그는 적용되지 않습니다.
/FR - FILE_FLAG_RANDOM_ACCESS 파일 캐싱을 최적화하는 파일 시스템 플래그입니다. 액세스가 임의로 의도된 것으로 표시됩니다.
/FW - FILE_FLAG_WRITE_THROUGH 사용되는 경우 쓰기 작업은 중간 캐시를 사용하지 않으며 디스크에 직접 제공됩니다.
/FU - FILE_FLAG_NO_BUFFERING 사용하는 경우 파일 또는 디바이스가 데이터 읽기 및 쓰기에 대한 시스템 캐싱 없이 열리도록 파일 시스템에 지시합니다.
블록 크기
테스트는 제공된 블록 크기로 지정된 I/O를 수행합니다. 기본 블록 크기 값은 64K입니다. 사용자는 /B 명령줄 옵션을 사용하여 다른 블록 크기를 지정할 수 있습니다.
예를 들어 /B 1M은 사용자가 1MB의 단일 I/O를 수행하려는 것을 의미합니다.
디버그 중단
사용자가 시스템에 연결된 Windows 디버거를 사용하여 테스트를 실행하는 경우 /D 명령줄 옵션을 사용하여 테스트에서 예상되는 오류가 발생할 때 디버거에 침입할 테스트를 나타내고 지정된 상태에서 시스템을 고정할 수 있습니다. 이 테스트는 이를 힌트로 사용하고 쓰기 및 읽기/확인 작업 중에 예상되는 오류가 수신될 때와 읽기/확인 작업 중에 읽기 데이터가 예상 데이터와 일치하지 않는 경우 디버거로 나뉩니다.
명령 사용법
명령 | 설명 |
---|---|
rapidfile.exe test.dat /D /Z [FILE_SIZE] /R 16k |
비동기 쓰기 |
rapidfile.exe test.dat /V /D /FD /Z [FILE_SIZE] /R 16k |
비동기 읽기 확인 |
rapidfile.exe test.dat /D /Z [FILE_SIZE] /SYNC |
동기 쓰기 |
rapidfile.exe test.dat /V /D /FD /Z [FILE_SIZE] /SYNC |
동기 읽기 확인 |
rapidfile.exe test.dat /D /Z [FILE_SIZE] /FU /R 16K |
비동기 버퍼되지 않은 쓰기 |
rapidfile.exe test.dat /FU /V /D /FD /Z [FILE_SIZE] /R 16K |
비동기 버퍼되지 않은 읽기 확인 |
rapidfile.exe test.dat /D /Z [FILE_SIZE] /FR /R 16K |
임의 액세스 비동기 쓰기 |
rapidfile.exe test.dat /FR /V /D /FD /Z [FILE_SIZE] /R 16K |
임의 액세스 비동기 읽기 확인 |
명령 구문
명령 옵션 | 설명 |
---|---|
rapidfile.exe |
테스트를 위한 명령줄 옵션은 다음과 같습니다. |
/? |
도움말을 표시합니다. |
/PERF |
결과를 파일 시스템 성능 데이터베이스에 기록/ |
/A |
기존 파일에 추가합니다. 기본값: 추가 안 함 |
/B # |
블록 크기입니다. k, m, g 또는 t를 추가할 수 있습니다. 기본값: 64k |
/C |
체크섬을 인쇄합니다. 또한 체크섬을 반환 값으로 사용하여 종료합니다. |
/CM |
기본 압축 형식으로 파일을 압축합니다. |
/D |
예기치 않은 오류가 발생하면 디버거에 침입합니다. |
/E # |
읽기/쓰기 문제 사이의 절전 모드(밀리초)입니다. |
/FD |
FILE_FLAG_DELETE_ON_CLOSE(읽기/확인 작업에서만 유효). |
/FS |
FILE_FLAG_SEQUENTIAL_SCAN |
/FW |
FILE_FLAG_WRITE_THROUGH |
/FU |
FILE_FLAG_NO_BUFFERING |
/FR |
FILE_FLAG_RANDOM_ACCESS |
/H |
파일 핸들 대신 디스크 또는 볼륨 디바이스 핸들을 만듭니다. |
/I |
유휴 우선 순위를 사용합니다. |
/L # |
통계를 초 단위로 기록합니다. 기본값: 60 |
/M # |
테스트를 실행할 시간(분)입니다. 이렇게 하면 쓰기가 실행되고 읽기/확인 작업이 실행됩니다. |
/N |
모든 I/O에 대해 새 핸들을 사용합니다. |
/NL |
디버거에 아무것도 기록하지 마세요. |
/O |
기존 파일 덮어쓰기 |
/P # |
패턴 크기입니다. k, m, g 또는 t를 추가할 수 있습니다. 기본값: 4m |
/R # |
보류 중인 요청의 최대 수입니다. |
/RT # |
오류 발생 시 다시 시도하는 동안 시간 제한 간격(밀리초)입니다. 다른 형식은 각각 초, 분, 시간에 대한 #s, #m, #h입니다. |
/S |
I/O 작업에 간단한 패턴을 사용합니다. |
/SO |
디스크 또는 볼륨 디바이스에 대한 시작 오프셋입니다. |
/SP |
파일을 쓰기 전에 스파스로 만듭니다. |
/SYNC |
파일에 동기적으로 씁니다(/TC /R을 지정할 수 없음). |
/TC # |
완료자 스레드 수입니다. 기본값: 만들기의 경우 1, 확인의 경우 4 |
/TQ # |
큐에 대기 중인 스레드 수입니다. 기본값: 1 |
/V |
파일을 다시 읽어 확인합니다. 기본값: 확인 없음 |
/X |
만든 후 파일을 플러시합니다. |
/Z # |
테스트 파일의 크기입니다. k, m, g 또는 t를 추가할 수 있습니다. 기본값: 10m |
/VDL # |
쓰기를 시작하기 전에 VDL을 푸시할 위치입니다(기본값 == 0, -1 == FileSize). |
/EOF # |
쓰기를 시작하기 전에 EOF를 푸시할 위치입니다(기본값 == 0, -1 == FileSize). |
참고
이 테스트 이진에 대한 명령줄 도움말을 보려면 /?를 입력합니다.
파일 목록
파일 | 위치 |
---|---|
rapidfile.exe |
<testbinroot>\NTTEST\Basetest\core_file_services\Shared_Tests\Wdk\ |
ntlog.dll |
<osbinroot>\NTTest\CommonTest\NtLog\ |
ntlogger.ini |
<osbinroot>\NTTest\CommonTest\NtLog\ |
dtresslog.dll |
<testbinroot>\NTTest\basetest\core_file_services\shared_libs\ |
매개 변수
매개 변수 이름 | 매개 변수 설명 |
---|---|
LLU_NetAccessOnly | |
FILE_SIZE |