Partilhar via


MSFT_Disk aula

Representa um disco do Windows.

Um objeto MSFT_Disk modela o conceito de um dispositivo de disco do sistema operacional Windows. O disco pode ser conectado diretamente ao sistema do computador ou pode ser um disco virtual exposto ao sistema por meio do uso de um provedor de gerenciamento de armazenamento.

A sintaxe a seguir é simplificada do código MOF (Managed Object Format).

Sintaxe

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;
};

Membros

A classe MSFT_Disk tem estes tipos de membros:

Métodos

A classe MSFT_Disk tem esses métodos.

Método Descrição
Limpar Remove informações de partição e cancela a inicialização de um disco, retornando-o a um estado RAW.
ConvertStyle Converte o estilo de partição de um disco já inicializado.
CreatePartition Cria uma partição em um disco.
Initialize Inicializa um disco RAW com um estilo de partição específico.
Offline Coloca o disco offline.
Online Coloca o disco online.
Atualizar Atualiza as informações de layout de disco em cache.
SetAttributes Define os atributos e propriedades do disco.

Propriedades

A classe MSFT_Disk tem essas propriedades.

AllocatedSize

Tipo de dados: UInt64

Tipo de acesso: Somente leitura

Qualificadores: Obrigatório, Unidades (Bytes)

A quantidade de espaço, em bytes, que é usada atualmente no disco.

BootFromDisk

Tipo de dados: booleano

Tipo de acesso: Somente leitura

TRUE se o computador estiver configurado para iniciar a partir deste disco. Em computadores com firmware do BIOS, esse é o primeiro disco que o firmware detecta durante a inicialização. Em computadores que usam firmware EFI, esse é o disco que contém a partição do sistema EFI (ESP). Se não houver discos ou se houver vários discos com uma partição ESP, essa propriedade não será definida para nenhum disco.

Tipo de barramento

Tipo de dados: UInt16

Tipo de acesso: Somente leitura

O tipo de barramento de E/S usado pelo disco.

Valor Significado
Desconhecido 0 O tipo de ônibus é desconhecido.
SCSI 1 SCSI
ATAPI 2 ATAPI
ATA 3 ATA
1394 4 IEEE 1394
SSA 5 SSA
Fibre Channel 6 Fibre Channel
USB 7 USB
RAID 8 RAID
iSCSI 9 iSCSI
SAS 10 SAS (Serial Attached SCSI)
SATA 11 ATA serial (SATA)
SD 12 Digital Seguro (SD)
MMC 13 Placa multimídia (MMC)
14 Virtuais Esse valor é reservado para uso do sistema.
Arquivo Suportado Virtual 15 Virtual com suporte de arquivo
Espaços de Armazenamento 16 Espaços de armazenamento
NVMe 17 NVMe

Versão do firmware

Tipo de dados: String

Tipo de acesso: Somente leitura

Uma representação de cadeia de caracteres da versão do firmware do disco.

FriendlyName

Tipo de dados: String

Tipo de acesso: Somente leitura

Qualificadores: Obrigatório

Uma string fácil de usar e orientada para exibição para identificar o disco.

GUID

Tipo de dados: String

Tipo de acesso: Somente leitura

Se o PartitionStyle for GPT, essa propriedade conterá o GUID do disco. Essa propriedade será NULL para todos os outros tipos de disco.

HealthStatus

Tipo de dados: UInt16

Tipo de acesso: Somente leitura

O status de integridade do dispositivo de disco.

Valor Significado
Íntegro 0 O disco está funcionando normalmente.
Aviso 1 O disco ainda está funcionando, mas detectou erros ou problemas que exigem intervenção do administrador.
Não Íntegro 2 O volume não está funcionando, devido a erros ou falhas. O volume precisa de atenção imediata de um administrador.

IsBoot

Tipo de dados: booleano

Tipo de acesso: Somente leitura

TRUE se o disco contiver a partição de inicialização.

IsClustered

Tipo de dados: Booliano

Tipo de acesso: Somente leitura

TRUE se o disco for usado em um ambiente clusterizado ou FALSE caso contrário.

Está offline

Tipo de dados: booleano

Tipo de acesso: Somente leitura

TRUE se o disco estiver offline ou FALSE caso contrário.

IsReadOnly

Tipo de dados: Booliano

Tipo de acesso: Somente leitura

TRUE se o disco for somente leitura ou FALSE se for leitura/gravação.

IsSystem

Tipo de dados: booleano

Tipo de acesso: Somente leitura

TRUE se este disco contiver a partição do sistema ou FALSE caso contrário.

MaiorExtensão Livre

Tipo de dados: UInt64

Tipo de acesso: Somente leitura

Qualificadores: Unidades (Bytes)

O maior bloco contíguo de espaço livre no disco. Esse também é o maior tamanho de uma partição que pode ser criada no disco.

Localidade

Tipo de dados: String

Tipo de acesso: Somente leitura

Uma cadeia de caracteres que contém o caminho de localização PnP do disco. O formato dessa cadeia de caracteres depende do tipo de barramento. Se o tipo de barramento for SCSI, SAS ou PCI RAID, o formato será AdapterPnpLocationPath#BusType(PPathIdTTargetIdLLunId). Se o tipo de barramento for IDE, ATA, PATA ou SATA, o formato será AdapterPnpLocationPath#BusType(CPathIdTTargetIdLLunId). Consulte a seção Comentários a seguir para obter uma tabela que lista as partes dessa cadeia de caracteres.

Observação

Para imagens Hyper-V e VHD, essa propriedade é NULL, pois o controlador virtual não retorna o caminho de localização.

Para obter mais informações sobre essa propriedade, consulte a seção Comentários a seguir.

LogicalSectorSize

Tipo de dados: UInt32

Tipo de acesso: Somente leitura

Qualificadores: Unidades (Bytes)

O tamanho do setor lógico do disco, em bytes. Por exemplo, um disco nativo de 4K relatará 4096, enquanto um disco emulado 512 relatará 512.

Fabricante

Tipo de dados: String

Tipo de acesso: Somente leitura

Uma representação de cadeia de caracteres do fabricante do hardware do disco.

Modelo

Tipo de dados: String

Tipo de acesso: Somente leitura

Uma representação de cadeia de caracteres do número do modelo do disco.

Número

Tipo de dados: UInt32

Tipo de acesso: Somente leitura

O número do sistema operacional para o disco. O disco 0 normalmente é o dispositivo de inicialização. Os números de disco podem não permanecer necessariamente os mesmos nas reinicializações.

NumberOfPartitions

Tipo de dados: UInt32

Tipo de acesso: Somente leitura

O número de partições que foram criadas no disco.

Razão Offline

Tipo de dados: UInt16

Tipo de acesso: Somente leitura

Se IsOffline for TRUE, essa propriedade conterá o motivo pelo qual o disco está offline.

Um dos seguintes valores:

Valor Significado
Política 1 O usuário solicitou que o disco ficasse offline.
Caminho redundante 2 O disco é usado para E/S de vários caminhos.
Instantâneo 3 O disco é um disco de instantâneo.
Colisão 4 Houve uma colisão de assinatura ou identificador com outro disco.
Esgotamento de Recursos 5 Não havia recursos suficientes para colocar o disco online.
Falhas críticas de gravação 6 Houve falhas críticas de gravação no disco.
Verificação de integridade de dados necessária 7 É necessária uma verificação de integridade de dados.

OperationalStatus

Tipo de dados: UInt16

Tipo de acesso: Somente leitura

O status operacional do dispositivo de disco.

Valor Significado
Desconhecido 0 O status operacional é desconhecido.
Outro 1 Um OperationalStatus específico do fornecedor foi especificado definindo a propriedade OtherOperationalStatusDescription.
OK 2 O disco está respondendo a comandos e está em um estado operacional normal.
Degradado 3 O disco está respondendo a comandos, mas não está sendo executado em um estado operacional ideal.
Estressado 4 O disco está funcionando, mas precisa de atenção. Por exemplo, o disco pode estar sobrecarregado ou superaquecido.
Falha Preditiva 5 O disco está funcionando, mas é provável que ocorra uma falha em um futuro próximo.
Erro 6 Ocorreu um erro.
Erro Irrecuperável 7 Ocorreu um erro não recuperável.
Iniciando 8 O disco está em processo de inicialização.
Parando 9 O disco está em processo de parada.
Interrompido 10 O disco foi interrompido ou desligado de forma limpa e ordenada.
Em Serviço 11 O disco está sendo configurado, mantido, limpo ou administrado de outra forma.
Sem contato 12 O provedor de armazenamento tem conhecimento do disco, mas nunca foi capaz de estabelecer comunicação com ele.
Comunicação Perdida 13 O provedor de armazenamento tem conhecimento do disco e o contatou com êxito no passado, mas o disco está inacessível no momento.
Anulado 14 Semelhante a Parado, exceto que o disco parou abruptamente e pode exigir configuração ou manutenção.
Inativo 15 O disco está acessível, mas está inativo.
Erro na Entidade de Suporte 16 Esse valor de status não indica necessariamente problemas com o disco, mas indica que outro dispositivo ou conexão do qual o disco depende pode precisar de atenção.
Concluído 17 O disco concluiu uma operação. Esse valor de status deve ser combinado com OK, Erro ou Degradado, dependendo do resultado da operação.
0xD010 online Em subsistemas de armazenamento baseados no Windows, isso indica que o objeto está online.
Não está pronto 0xD011 Em subsistemas de armazenamento baseados no Windows, isso indica que o objeto não está pronto.
Sem 0xD012 de mídia Em subsistemas de armazenamento baseados no Windows, isso indica que o objeto não tem mídia presente.
0xD013 offline Em subsistemas de armazenamento baseados no Windows, isso indica que o objeto está offline.
Falha 0xD014 Em subsistemas de armazenamento baseados no Windows, isso indica que o objeto está em um estado de falha.

Estilo de partição

Tipo de dados: UInt16

Tipo de acesso: Somente leitura

Qualificadores: Obrigatório

O estilo de partição usado pelo disco.

Valor Significado
Desconhecido 0 O estilo de partição é desconhecido.
MBR 1 MBR (Corresponder Registro de Inicialização)
GPT 2 Tabela de partição GUID (GPT)

Caminho

Tipo de dados: String

Tipo de acesso: Somente leitura

Qualificadores: Obrigatório

Um caminho que pode ser usado para abrir um identificador do sistema operacional para o dispositivo de disco.

PhysicalSectorSize

Tipo de dados: UInt32

Tipo de acesso: Somente leitura

Qualificadores: Unidades (Bytes)

O tamanho do setor físico do disco, em bytes. Por exemplo, os discos nativos de 4K e os discos emulados 512 relatarão 4096.

Tipo de provisionamento

Tipo de dados: UInt16

Tipo de acesso: Somente leitura

O tipo de provisionamento do dispositivo de disco.

Valor Significado
Desconhecido 0 O esquema de provisionamento não é especificado.
Fino 1 O armazenamento do disco é alocado sob demanda.
Fixo 2 O armazenamento é alocado quando o disco é criado.

SerialNumber

Tipo de dados: String

Tipo de acesso: Somente leitura

Uma representação de cadeia de caracteres do número de série do disco.

Signature

Tipo de dados: UInt32

Tipo de acesso: Somente leitura

Se o PartitionStyle for MBR, essa propriedade conterá a assinatura de partição MBR. Essa propriedade será NULL para todos os outros tipos de disco.

Tamanho

Tipo de dados: UInt64

Tipo de acesso: Somente leitura

Qualificadores: Obrigatório, Unidades (Bytes)

Tamanho total do disco, em bytes.

UniqueId

Tipo de dados: String

Tipo de acesso: Somente leitura

O identificador de disco. Isso contém a página VPD 0x83 informações que identificam exclusivamente esse disco. Os seguintes tipos são aceitos (em ordem de precedência):

  • 8 (Cadeia de caracteres de nome SCSI)
  • 3 (Nome FCPH)
  • 2 (EUI64)
  • 1 (ID do fornecedor)
  • 0 (específico do fornecedor)

Se o disco for um disco virtual exposto, o UniqueId será usado para mapear a associação entre os dois objetos.

Formato Único

Tipo de dados: UInt16

Tipo de acesso: Somente leitura

Qualificadores: Valores ("Específico do Fornecedor", "ID do Fornecedor", "EUI64", "Nome FCPH", "Cadeia de Caracteres de Nome SCSI") ), ValueMap ("0", "1", "2", "3", "8")

O formato do identificador de disco. Essa propriedade contém o tipo de descritor VPD Page 0x83 que foi usado para definir a propriedade UniqueId .

Comentários

A tabela a seguir lista as partes da cadeia de caracteres do caminho de localização usadas na propriedade Location .

Parte do caminho de localização Descrição
AdapterPnpLocationPath O caminho de localização PnP do adaptador. Isso é recuperado chamando a função SetupDiGetDeviceProperty , passando &DEVPKEY_Device_LocationPaths para o parâmetro PropertyKey .
Tipo de barramento O tipo de barramento: ATA, RAID, SAS ou SCSI. Observação: se o tipo de barramento for IDE, PATA ou SATA, ele aparecerá como ATA na sequência do caminho de localização. Se for PCI RAID, ele aparecerá como RAID.
PathId O número do ônibus. Esse é o valor do membro PathId da estrutura SCSI_ADDRESS que é retornado pelo código de controle IOCTL_SCSI_GET_ADDRESS .
Identificação do alvo O número do dispositivo de destino. Esse é o valor do membro TargetId da estrutura SCSI_ADDRESS que é retornado pelo código de controle IOCTL_SCSI_GET_ADDRESS .
LunId O número do LUN. Esse é o valor do membro Lun da estrutura SCSI_ADDRESS que é retornado pelo código de controle IOCTL_SCSI_GET_ADDRESS.

A tabela a seguir contém exemplos de caminhos de localização.

Tipo de barramento Exemplo de caminho de localização
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)

A partir do Windows 10: MSFT_Disk deriva de MSFT_StorageObject. Ele agora herda a propriedade ObjectId, que anteriormente era uma propriedade de MSFT_Disk.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 8 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2012 [somente aplicativos da área de trabalho]
Namespace Root\Microsoft\Windows\Storage
MOF Storagewmi.mof