MSFT_Disk 클래스
Windows 디스크를 나타냅니다.
MSFT_Disk 개체는 Windows 운영 체제의 디스크 디바이스 개념을 모델링합니다. 디스크가 컴퓨터 시스템에 직접 연결되거나 스토리지 관리 공급자를 사용하여 시스템에 노출된 가상 디스크일 수 있습니다.
다음 구문은 MOF(Managed Object Format) 코드에서 간소화됩니다.
구문
class MSFT_Disk : MSFT_StorageObject
{
String Path;
String Location;
String FriendlyName;
String UniqueId;
UInt16 UniqueIdFormat;
UInt32 Number;
String SerialNumber;
String FirmwareVersion;
String Manufacturer;
String Model;
UInt64 Size;
UInt64 AllocatedSize;
UInt32 LogicalSectorSize;
UInt32 PhysicalSectorSize;
UInt64 LargestFreeExtent;
UInt32 NumberOfPartitions;
UInt16 ProvisioningType;
UInt16 OperationalStatus;
UInt16 HealthStatus;
UInt16 BusType;
UInt16 PartitionStyle;
UInt32 Signature;
String Guid;
Boolean IsOffline;
UInt16 OfflineReason;
Boolean IsReadOnly;
Boolean IsSystem;
Boolean IsClustered;
Boolean IsBoot;
Boolean BootFromDisk;
};
멤버
MSFT_Disk 클래스에는 다음과 같은 형식의 멤버가 있습니다.
메서드
MSFT_Disk 클래스에는 이러한 메서드가 있습니다.
메서드 | 설명 |
---|---|
지우기 | 파티션 정보를 제거하고 디스크를 초기화하지 않고 RAW 상태로 반환합니다. |
ConvertStyle | 이미 초기화된 디스크의 파티션 스타일을 변환합니다. |
CreatePartition | 디스크에 파티션을 만듭니다. |
초기화 | 특정 파티션 스타일을 사용하여 RAW 디스크를 초기화합니다. |
오프라인 | 디스크를 오프라인으로 전환합니다. |
온라인 | 디스크를 온라인 상태로 설정합니다. |
새로 고침 | 캐시된 디스크 레이아웃 정보를 새로 고칩니다. |
SetAttributes | 디스크의 특성 및 속성을 설정합니다. |
속성
MSFT_Disk 클래스에는 이러한 속성이 있습니다.
AllocatedSize
데이터 형식: UInt64
액세스 형식: 읽기 전용
현재 디스크에 사용되는 공간의 양(바이트)입니다.
BootFromDisk
데이터 형식: 부울
액세스 형식: 읽기 전용
TRUE 이면 컴퓨터가 이 디스크에서 시작하도록 구성됩니다. BIOS 펌웨어가 있는 컴퓨터에서 펌웨어가 시작하는 동안 검색하는 첫 번째 디스크입니다. EFI 펌웨어를 사용하는 컴퓨터에서 ESP(EFI 시스템 파티션)를 포함하는 디스크입니다. 디스크가 없거나 ESP 파티션이 있는 디스크가 여러 개 있는 경우 이 속성은 디스크에 대해 설정되지 않습니다.
BusType
데이터 형식: UInt16
액세스 형식: 읽기 전용
디스크에서 사용하는 I/O 버스 유형입니다.
값 | 의미 |
---|---|
알 수 없음 0 | 버스 유형을 알 수 없습니다. |
SCSI 1 | SCSI |
ATAPI 2 | ATAPI |
ATA 3 | ATA |
1394 4 | IEEE 1394 |
SSA 5 | 특수 |
파이버 채널 6 | 파이버 채널 |
USB 7 | USB |
RAID 8 | RAID |
iSCSI 9 | iSCSI |
SAS 10 | SAS(Serial Attached SCSI) |
SATA 11 | 직렬 ATA(SATA) |
SD 12 | SD(Secure Digital) |
MMC 13 | MMC(멀티미디어 카드) |
가상 14 | 이 값은 시스템용으로 예약되어 있습니다. |
파일 백업 가상 15 | 파일 백업 가상 |
저장소 공간 16 | 스토리지 공간 |
NVMe 17 | NVMe |
FirmwareVersion
데이터 형식: 문자열
액세스 형식: 읽기 전용
디스크 펌웨어 버전의 문자열 표현입니다.
FriendlyName
데이터 형식: 문자열
액세스 형식: 읽기 전용
한정자: 필수
디스크를 식별하는 사용자에게 친숙한 표시 지향 문자열입니다.
Guid
데이터 형식: 문자열
액세스 형식: 읽기 전용
PartitionStyle이 GPT인 경우 이 속성에는 디스크에 대한 GUID가 포함됩니다. 이 속성은 다른 모든 디스크 유형에 대해 NULL이 됩니다.
HealthStatus
데이터 형식: UInt16
액세스 형식: 읽기 전용
디스크 디바이스의 상태입니다.
값 | 의미 |
---|---|
정상 0 | 디스크가 정상적으로 작동합니다. |
경고 1 | 디스크는 여전히 작동하지만 관리자 개입이 필요한 오류 또는 문제를 감지했습니다. |
비정상 2 | 오류 또는 오류로 인해 볼륨이 작동하지 않습니다. 볼륨은 관리자의 즉각적인 주의가 필요합니다. |
IsBoot
데이터 형식: 부울
액세스 형식: 읽기 전용
디스크에 부팅 파티션이 포함되어 있으면 TRUE 입니다.
IsClustered
데이터 형식: 부울
액세스 형식: 읽기 전용
클러스터된 환경에서 디스크를 사용하는 경우 TRUE 이고, 그렇지 않으면 FALSE 입니다.
IsOffline
데이터 형식: 부울
액세스 형식: 읽기 전용
디스크가 오프라인 상태이면 TRUE 이고, 그렇지 않으면 FALSE 입니다.
IsReadOnly
데이터 형식: 부울
액세스 형식: 읽기 전용
디스크가 읽기 전용이면 TRUE 이고 읽기 /쓰기인 경우 FALSE 입니다.
IsSystem
데이터 형식: 부울
액세스 형식: 읽기 전용
이 디스크에 시스템 파티션이 있으면 TRUE 이거나, 그렇지 않으면 FALSE 입니다.
LargestFreeExtent
데이터 형식: UInt64
액세스 형식: 읽기 전용
한정자: 단위 (바이트)
디스크에서 사용 가능한 공간의 가장 큰 연속 블록입니다. 디스크에서 만들 수 있는 파티션의 가장 큰 크기이기도 합니다.
위치
데이터 형식: 문자열
액세스 형식: 읽기 전용
디스크의 PnP 위치 경로를 포함하는 문자열입니다. 이 문자열의 형식은 버스 유형에 따라 달라집니다. 버스 유형이 SCSI, SAS 또는 PCI RAID인 경우 형식은 AdapterPnpLocationPath BusType(PPathId TTargetIdLLunId)입니다.# 버스 유형이 IDE, ATA, PATA 또는 SATA인 경우 형식은 AdapterPnpLocationPath BusType(CPathIdTTargetIdLLunId)입니다.# 이 문자열의 일부를 나열하는 테이블에 대해서는 다음 설명 섹션을 참조하세요.
참고 항목
Hyper-V 및 VHD 이미지의 경우 가상 컨트롤러가 위치 경로를 반환하지 않으므로 이 속성은 NULL입니다.
이 속성에 대한 자세한 내용은 다음 주의 섹션을 참조하세요.
LogicalSectorSize
데이터 형식: UInt32
액세스 형식: 읽기 전용
한정자: 단위 (바이트)
디스크의 논리적 섹터 크기(바이트)입니다. 예를 들어 4K 네이티브 디스크는 4096을 보고하고 512에뮬레이트된 디스크는 512를 보고합니다.
제조업체
데이터 형식: 문자열
액세스 형식: 읽기 전용
디스크 하드웨어 제조업체의 문자열 표현입니다.
모델
데이터 형식: 문자열
액세스 형식: 읽기 전용
디스크 모델 번호의 문자열 표현입니다.
숫자
데이터 형식: UInt32
액세스 형식: 읽기 전용
디스크에 대한 운영 체제 번호입니다. 디스크 0은 일반적으로 부팅 디바이스입니다. 다시 시작할 때 디스크 번호가 반드시 동일하게 유지되는 것은 아닙니다.
NumberOfPartitions
데이터 형식: UInt32
액세스 형식: 읽기 전용
디스크에 생성된 파티션 수입니다.
OfflineReason
데이터 형식: UInt16
액세스 형식: 읽기 전용
IsOffline이 TRUE이면 이 속성에는 디스크가 오프라인 상태인 이유가 포함됩니다.
다음 값 중의 하나입니다.
값 | 의미 |
---|---|
정책 1 | 사용자가 디스크를 오프라인으로 설정하도록 요청했습니다. |
중복 경로 2 | 디스크는 다중 경로 I/O에 사용됩니다. |
스냅샷 3 | 디스크가 스냅샷 디스크입니다. |
충돌 4 | 서명 또는 식별자가 다른 디스크와 충돌했습니다. |
리소스 소모 5 | 디스크를 온라인 상태로 만들기 위한 리소스가 부족했습니다. |
중요 쓰기 실패 6 | 디스크에 심각한 쓰기 오류가 발생했습니다. |
데이터 무결성 검사 필요 7 | 데이터 무결성 검사가 필요합니다. |
OperationalStatus
데이터 형식: UInt16
액세스 형식: 읽기 전용
디스크 디바이스의 작동 상태입니다.
값 | 의미 |
---|---|
알 수 없음 0 | 작동 상태를 알 수 없습니다. |
기타 1 | OtherOperationalStatusDescription 속성을 설정하여 공급업체별 OperationalStatus를 지정했습니다. |
확인 2 | 디스크가 명령에 응답하고 정상 작동 상태입니다. |
성능이 저하된 3 | 디스크가 명령에 응답하지만 최적의 작동 상태에서 실행되지 않습니다. |
스트레스 4 | 디스크가 작동하지만 주의가 필요합니다. 예를 들어 디스크가 오버로드되거나 과열될 수 있습니다. |
예측 실패 5 | 디스크가 작동하지만 가까운 장래에 오류가 발생할 수 있습니다. |
오류 6 | 오류가 발생했습니다. |
복구할 수 없는 오류 7 | 복구할 수 없는 오류가 발생했습니다. |
시작 8 | 디스크가 시작 중입니다. |
중지 9 | 디스크가 중지 중입니다. |
중지됨 10 | 디스크가 깨끗하고 질서 정연하게 중지되거나 종료되었습니다. |
서비스 11에서 | 디스크가 구성, 유지 관리, 정리 또는 관리되고 있습니다. |
연락처 없음 12 | 스토리지 공급자는 디스크에 대한 지식을 가지고 있지만, 디스크와 통신을 설정할 수 없었습니다. |
통신 손실 13 | 스토리지 공급자는 디스크에 대한 지식을 가지고 있으며 과거에 성공적으로 연결했지만 디스크에 현재 연결할 수 없습니다. |
중단된 14 | 디스크가 갑자기 중지되고 구성 또는 유지 관리가 필요할 수 있다는 점을 제외하고 중지됨과 유사합니다. |
휴면 15 | 디스크에 연결할 수 있지만 비활성 상태입니다. |
오류 16에서 엔터티 지원 | 이 상태 값이 반드시 디스크 문제를 나타내는 것은 아니지만 디스크가 의존하는 다른 디바이스 또는 연결에 주의가 필요할 수 있음을 나타냅니다. |
완료 17 | 디스크가 작업을 완료했습니다. 이 상태 값은 작업의 결과에 따라 OK, Error 또는 Degraded와 결합되어야 합니다. |
온라인 0xD010 | Windows 기반 스토리지 하위 시스템의 경우 개체가 온라인임을 나타냅니다. |
준비 되지 않음 0xD011 | Windows 기반 스토리지 하위 시스템의 경우 개체가 준비되지 않음을 나타냅니다. |
미디어 0xD012 없음 | Windows 기반 스토리지 하위 시스템의 경우 개체에 미디어가 없음을 나타냅니다. |
오프라인 0xD013 | Windows 기반 스토리지 하위 시스템의 경우 개체가 오프라인 상태임을 나타냅니다. |
실패한 0xD014 | Windows 기반 스토리지 하위 시스템의 경우 개체가 실패 상태임을 나타냅니다. |
PartitionStyle
데이터 형식: UInt16
액세스 형식: 읽기 전용
한정자: 필수
디스크에서 사용하는 파티션 스타일입니다.
값 | 의미 |
---|---|
알 수 없음 0 | 파티션 스타일을 알 수 없습니다. |
MBR 1 | MBR(마스터 부트 레코드) |
GPT 2 | GUID 파티션 테이블(GPT) |
Path
데이터 형식: 문자열
액세스 형식: 읽기 전용
한정자: 필수
디스크 디바이스에 대한 운영 체제 핸들을 여는 데 사용할 수 있는 경로입니다.
PhysicalSectorSize
데이터 형식: UInt32
액세스 형식: 읽기 전용
한정자: 단위 (바이트)
디스크의 실제 섹터 크기(바이트)입니다. 예를 들어 4K 네이티브 디스크와 512개의 에뮬레이트된 디스크는 모두 4096을 보고합니다.
ProvisioningType
데이터 형식: UInt16
액세스 형식: 읽기 전용
디스크 디바이스의 프로비전 유형입니다.
값 | 의미 |
---|---|
알 수 없음 0 | 프로비전 체계가 지정되지 않았습니다. |
얇은 1 | 디스크에 대한 스토리지는 주문형으로 할당됩니다. |
2 수정됨 | 디스크를 만들 때 스토리지가 할당됩니다. |
SerialNumber
데이터 형식: 문자열
액세스 형식: 읽기 전용
디스크 일련 번호의 문자열 표현입니다.
서명
데이터 형식: UInt32
액세스 형식: 읽기 전용
PartitionStyle이 MBR인 경우 이 속성에는 MBR 파티션 서명이 포함됩니다. 이 속성은 다른 모든 디스크 유형에 대해 NULL이 됩니다.
크기
데이터 형식: UInt64
액세스 형식: 읽기 전용
디스크의 총 크기(바이트)입니다.
UniqueId
데이터 형식: 문자열
액세스 형식: 읽기 전용
디스크 식별자입니다. 여기에는 이 디스크를 고유하게 식별하는 VPD 페이지 0x83 정보가 포함됩니다. 다음 형식이 우선 순위에 따라 허용됩니다.
- 8(SCSI 이름 문자열)
- 3(FCPH 이름)
- 2(EUI64)
- 1(공급업체 ID)
- 0(공급업체별)
디스크가 노출된 가상 디스크 인 경우 UniqueId 는 두 개체 간의 연결을 매핑하는 데 사용됩니다.
UniqueIdFormat
데이터 형식: UInt16
액세스 형식: 읽기 전용
한정자: 값("공급업체별", "공급업체 ID", "EUI64", "FCPH 이름", "SCSI 이름 문자열"), ValueMap("0", "1", "2", "3", "8")
디스크 식별자의 형식입니다. 이 속성에는 UniqueId 속성을 설정하는 데 사용된 VPD 페이지 0x83 설명자 형식이 포함됩니다.
설명
다음 표에서는 Location 속성에 사용되는 위치 경로 문자열의 일부를 나열합니다.
위치 경로 부분 | 설명 |
---|---|
AdapterPnpLocationPath | 어댑터의 PnP 위치 경로입니다. 이는 SetupDiGetDeviceProperty 함수를 호출하고 PropertyKey 매개 변수에 대한 &DEVPKEY_Device_LocationPaths 전달하여 검색됩니다. |
BusType | 버스 유형: ATA, RAID, SAS 또는 SCSI. 참고: 버스 유형이 IDE, PATA 또는 SATA인 경우 위치 경로 문자열에 ATA로 표시됩니다. PCI RAID인 경우 RAID로 표시됩니다. |
PathId | 버스의 수입니다. IOCTL_SCSI_GET_ADDRESS 컨트롤 코드에서 반환되는 SCSI_ADDRESS 구조체의 PathId 멤버 값입니다. |
TargetId | 대상 디바이스의 수입니다. IOCTL_SCSI_GET_ADDRESS 컨트롤 코드에서 반환되는 SCSI_ADDRESS 구조체의 TargetId 멤버 값입니다. |
LunId | LUN의 수입니다. IOCTL_SCSI_GET_ADDRESS 제어 코드에서 반환되는 SCSI_ADDRESS 구조체의 Lun 멤버 값입니다. |
다음 표에는 위치 경로의 예가 포함되어 있습니다.
버스 종류 | 위치 경로 예제 |
---|---|
ATA | PCIROOT(0)#PCI(0100)#ATA(C01T03L00) |
RAID | PCIROOT(0)#PCI(0200)#PCI(0003)#PCI(0100)#RAID(P02T00L00) |
SAS | PCIROOT(1)#PCI(0300)#SAS(P00T03L00) |
SCSI | PCIROOT(0)#PCI(1C00)#PCI(0000)#SCSI(P00T01L01) |
Windows 10부터: MSFT_Disk MSFT_StorageObject 파생됩니다. 이제 이전에 MSFT_Disk 속성 이었던 ObjectId 속성을 상속합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 8 [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2012 [데스크톱 앱만 해당] |
네임스페이스 | Root\Microsoft\Windows\Storage |
MOF | Storagewmi.mof |