다음을 통해 공유


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