Função de retorno de chamada pHalQuerySystemInformation (ntddk.h)
A função de retorno de chamada pHalQuerySystemInformation lê os registros de status dos bancos MCA.
Sintaxe
pHalQuerySystemInformation Phalquerysysteminformation;
NTSTATUS Phalquerysysteminformation(
[in] HAL_QUERY_INFORMATION_CLASS InformationClass,
[in] ULONG BufferSize,
[out] PVOID Buffer,
[out] PULONG ReturnedLength
)
{...}
Parâmetros
[in] InformationClass
O HalMcaLogInformation para ler o log de erros do MCA atual. Se algum dos erros de Verificação de Computador não corrigidos for encontrado, ele será retornado no buffer. Para sistemas Itanium, especifique HalCmcLogInformation para ler o log de erros da CPU corrigido atualmente e HalCpeLogInformation para ler o log de erros da plataforma corrigida atualmente.
[in] BufferSize
O tamanho, em bytes, do buffer fornecido pelo chamador.
[out] Buffer
Um ponteiro para um buffer fornecido pelo chamador do tipo MCA_EXCEPTION que conterá as informações retornadas por essa rotina. Para processadores Intel Itanium, as informações retornadas devem estar em conformidade, no mínimo, com a especificação SAL V3.0, Estruturas de Registro de Erro, janeiro de 2001, Apêndice B"". Para processadores Intel Pentium Pro, as informações são conforme descrito no exemplo de código a seguir.
typedef union _MCI_STATS {
struct {
USHORT McaCod;
USHORT MsCod;
ULONG OtherInfo : 25;
ULONG Damage : 1;
ULONG AddressValid : 1;
ULONG MiscValid : 1;
ULONG Enabled : 1;
ULONG UnCorrected : 1;
ULONG OverFlow : 1;
ULONG Valid : 1;
} MciStats;
ULONGLONG QuadPart;
} MCI_STATS, *PMCI_STATS;
typedef union _MCI_ADDR{
struct {
ULONG Address;
ULONG Reserved;
} MciAddr;
ULONGLONG QuadPart;
} MCI_ADDR, *PMCI_ADDR;
typedef struct _MCA_EXCEPTION {
ULONG VersionNumber; // Version number of this record type
MCA_EXCEPTION_TYPE ExceptionType; // MCA or MCE
LARGE_INTEGER TimeStamp; // exception recording timestamp
ULONG ProcessorNumber;// processor number
union {
struct {
UCHAR BankNumber; // bank number
MCI_STATS Status;
MCI_ADDR Address;
ULONGLONG Misc;
} Mca;
struct {
ULONGLONG McAddress; // physical address for the cycle causing the error
ULONGLONG McType; // cycle specification causing the error
} Mce;
} u;
} MCA_EXCEPTION, *PMCA_EXCEPTION;
[out] ReturnedLength
O número de bytes retornados no Buffer.
Retornar valor
Retorna STATUS_SUCCESS se houver um log de erros.
Comentários
A função HalQuerySystemInformation retorna o primeiro erro. É responsabilidade do driver MCA chamar essa rotina novamente para ver se há mais erros disponíveis.
O Windows Vista e versões posteriores do Windows não dão suporte ao tipo de relatórios MCA (Machine Check Architecture) e MCE (Machine Check Exception) descritos neste tópico. Os relatórios MCA e MCE têm suporte por meio da WHEA (Arquitetura de Erros de Hardware) do Windows .
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Área de Trabalho |
Cabeçalho | ntddk.h (inclua Ntddk.h) |