디스크 관리 제어 코드

다음 표에서는 디스크 관리에 사용되는 제어 코드를 식별합니다.

섹션 내용

제어 코드 설명
IOCTL_DISK_ARE_VOLUMES_READY
지정된 디스크의 모든 볼륨이 사용할 준비가 될 때까지 기다립니다.
IOCTL_DISK_CREATE_DISK
CREATE_DISK 구조체의 정보를 사용하여 지정된 디스크 및 디스크 파티션 테이블을 초기화합니다.
IOCTL_DISK_DELETE_DRIVE_LAYOUT
디스크가 섹터 0에서 디스크 끝까지 포맷되도록 마스터 부팅 레코드에서 부팅 서명을 제거합니다.
IOCTL_DISK_FORMAT_TRACKS
플로피 디스크에서 지정된 연속 트랙 세트를 포맷합니다. 추가 매개 변수를 제공하려면 IOCTL_DISK_FORMAT_TRACKS_EX를 대신 사용합니다.
IOCTL_DISK_FORMAT_TRACKS_EX
플로피 디스크에서 지정된 연속 트랙 세트를 포맷합니다.
IOCTL_DISK_GET_CACHE_INFORMATION
디스크 캐시 구성 데이터를 검색합니다.
IOCTL_DISK_GET_CLUSTER_INFO
지정된 디스크 디바이스의 특성을 검색합니다.
IOCTL_DISK_GET_DISK_ATTRIBUTES
지정된 디스크 디바이스의 특성을 검색합니다.
IOCTL_DISK_GET_DRIVE_GEOMETRY
실제 디스크의 기하 도형에 대한 정보(형식, 원통형 수, 원통형당 트랙 수, 트랙당 섹터 수 및 섹터당 바이트 수)를 검색합니다.
IOCTL_DISK_GET_DRIVE_GEOMETRY_EX
실제 디스크의 기하 도형에 대한 확장 정보(형식, 원통형 수, 원통형당 트랙 수, 트랙당 섹터 수 및 섹터당 바이트 수)를 검색합니다.
IOCTL_DISK_GET_DRIVE_LAYOUT
디스크의 파티션 테이블에 있는 각 항목에 대한 정보를 검색합니다.
IOCTL_DISK_GET_DRIVE_LAYOUT_EX
디스크의 파티션 테이블에 있는 각 항목에 대한 확장 정보를 검색합니다.
IOCTL_DISK_GET_LENGTH_INFO
지정된 디스크, 볼륨 또는 파티션의 길이를 검색합니다.
IOCTL_DISK_GET_PARTITION_INFO
디스크 파티션의 형식, 크기 및 특성에 대한 정보를 검색합니다.
IOCTL_DISK_GET_PARTITION_INFO_EX
디스크 파티션의 형식, 크기 및 특성에 대한 확장 정보를 검색합니다.
IOCTL_DISK_GROW_PARTITION
지정된 파티션을 확대합니다.
IOCTL_DISK_IS_WRITABLE
지정한 디스크가 쓰기 가능한지 여부를 확인합니다.
IOCTL_DISK_PERFORMANCE
디스크 성능 정보를 제공하는 성능 카운터를 사용하도록 설정합니다.
IOCTL_DISK_PERFORMANCE_OFF
디스크 성능 정보를 제공하는 성능 카운터를 사용하지 않도록 설정합니다.
IOCTL_DISK_REASSIGN_BLOCKS
디스크 디바이스가 하나 이상의 블록을 예비 블록 풀에 매핑하도록 지시합니다.
IOCTL_DISK_REASSIGN_BLOCKS_EX
디스크 디바이스가 하나 이상의 블록을 예비 블록 풀에 매핑하도록 지시합니다.
IOCTL_DISK_RESET_SNAPSHOT_INFO
디스크에서 VSS(볼륨 섀도 복사본 서비스) 하드웨어 기반 섀도 복사본("스냅샷"이라고도 함) 정보를 모두 지웁니다.
이 작업을 수행하려면 다음 매개 변수를 사용하여 DeviceIoControl 함수를 호출합니다.
IOCTL_DISK_SET_CACHE_INFORMATION
디스크 구성 데이터를 설정합니다.
IOCTL_DISK_SET_CLUSTER_INFO
디스크의 클러스터 정보를 설정합니다.
IOCTL_DISK_SET_DISK_ATTRIBUTES
지정된 디스크 디바이스의 특성을 설정합니다.
IOCTL_DISK_SET_DRIVE_LAYOUT
드라이브 레이아웃 및 파티션 정보 데이터에 지정된 대로 디스크를 분할합니다.
IOCTL_DISK_SET_DRIVE_LAYOUT_EX
지정된 드라이브 레이아웃 및 파티션 정보 데이터에 따라 디스크를 분할합니다.
IOCTL_DISK_SET_PARTITION_INFO
지정된 디스크 파티션에 대한 파티션 정보를 설정합니다.
IOCTL_DISK_SET_PARTITION_INFO_EX
AT 및 EFI(Extensible Firmware Interface) 파티션에 대한 레이아웃 정보를 포함하여 지정된 디스크 파티션에 대한 파티션 정보를 설정합니다.
IOCTL_DISK_UPDATE_PROPERTIES
캐시된 파티션 테이블을 무효화하고 디바이스를 다시 열거합니다.
IOCTL_DISK_VERIFY
고정 디스크에서 지정된 익스텐트를 확인합니다.
IOCTL_STORAGE_DEVICE_POWER_CAP
Windows 애플리케이션은 이 제어 코드를 사용하여 스토리지 디바이스의 최대 작동 전력 소비 수준을 지정할 수 있습니다. OS는 디바이스를 지정된 최댓값을 초과하지 않는 전원 상태로 전환하는 것이 가장 좋습니다. 그러나 이것은 디바이스가 지원하는 사항에 따라 달라집니다. 실제 최댓값이 원하는 최댓값보다 작거나 클 수 있습니다.
이 작업을 수행하려면 다음 매개 변수를 사용하여 DeviceIoControl 함수를 호출합니다.
IOCTL_STORAGE_FIRMWARE_ACTIVATE
Windows 애플리케이션은 이 제어 코드를 사용하여 지정된 디바이스에서 펌웨어 이미지를 활성화할 수 있습니다.
이 작업을 수행하려면 다음 매개 변수를 사용하여 DeviceIoControl 함수를 호출합니다.
IOCTL_STORAGE_FIRMWARE_DOWNLOAD
Windows 애플리케이션은 이 제어 코드를 사용하여 대상 디바이스에 펌웨어 이미지를 다운로드할 수 있지만 활성화할 수는 없습니다. 다운로드할 이미지가 컨트롤러의 최대 데이터 전송 크기보다 큰 경우 전체 이미지를 다운로드할 때까지 이 IOCTL을 여러 번 호출해야 합니다.
이 작업을 수행하려면 다음 매개 변수를 사용하여 DeviceIoControl 함수를 호출합니다.
IOCTL_STORAGE_FIRMWARE_GET_INFO
Windows 애플리케이션은 이 제어 코드를 사용하여 스토리지 디바이스에서 자세한 펌웨어 정보를 쿼리할 수 있습니다. 호출이 성공하면 각 슬롯에 대한 읽기/쓰기 특성뿐만 아니라 펌웨어 수정 버전, 활동 상태에 대한 정보가 반환됩니다. 반환되는 데이터의 양은 스토리지 프로토콜에 따라 달라집니다.
이 작업을 수행하려면 다음 매개 변수를 사용하여 DeviceIoControl 함수를 호출합니다.
IOCTL_STORAGE_PROTOCOL_COMMAND
Windows 애플리케이션은 이 제어 코드를 사용하여 스토리지 디바이스 또는 어댑터의 속성을 반환할 수 있습니다. 요청은 디바이스에 대한 조회 데이터 또는 어댑터의 기능 및 제한 사항과 같이 검색할 정보의 종류를 나타냅니다.
IOCTL_STORAGE_QUERY_PROPERTY
Windows 애플리케이션은 이 제어 코드를 사용하여 스토리지 디바이스 또는 어댑터의 속성을 반환할 수 있습니다. 요청은 디바이스에 대한 조회 데이터 또는 어댑터의 기능 및 제한 사항과 같이 검색할 정보의 종류를 나타냅니다. IOCTL_STORAGE_QUERY_PROPERTY는 포트 드라이버가 특정 속성을 지원하는지 또는 후속 변경 속성 요청으로 수정할 수 있는 속성 설명자의 필드를 확인하는 데도 사용할 수 있습니다.
IOCTL_STORAGE_SET_TEMPERATURE_THRESHOLD
Windows 애플리케이션은 이 제어 코드를 사용하여 디바이스의 온도 임계값을 설정할 수 있습니다(디바이스에서 지원하는 경우).

다음 제어 코드는 더 이상 사용되지 않습니다.

IOCTL_DISK_CONTROLLER_NUMBER
IOCTL_DISK_GET_DRIVE_GEOMETRY
IOCTL_DISK_GET_DRIVE_LAYOUT
IOCTL_DISK_GET_PARTITION_INFO
IOCTL_DISK_HISTOGRAM_DATA
IOCTL_DISK_HISTOGRAM_RESET
IOCTL_DISK_HISTOGRAM_STRUCTURE
IOCTL_DISK_LOGGING
IOCTL_DISK_REQUEST_DATA
IOCTL_DISK_REQUEST_STRUCTURE
IOCTL_DISK_SET_DRIVE_LAYOUT
IOCTL_DISK_SET_PARTITION_INFO