Función de devolución de llamada pHalQuerySystemInformation (ntddk.h)
La función de devolución de llamada pHalQuerySystemInformation lee los registros de estado de los bancos MCA.
Sintaxis
pHalQuerySystemInformation Phalquerysysteminformation;
NTSTATUS Phalquerysysteminformation(
[in] HAL_QUERY_INFORMATION_CLASS InformationClass,
[in] ULONG BufferSize,
[out] PVOID Buffer,
[out] PULONG ReturnedLength
)
{...}
Parámetros
[in] InformationClass
HalMcaLogInformation para leer el registro de errores de MCA actual. Si se encuentra alguno de los errores de Comprobación de máquina no corregidos, se devuelve en el búfer. Para los sistemas Itanium, especifique HalCmcLogInformation para leer el registro de errores de CPU corregido actual y HalCpeLogInformation para leer el registro de errores de plataforma corregido actual.
[in] BufferSize
Tamaño, en bytes, del búfer que proporciona el autor de la llamada.
[out] Buffer
Puntero a un búfer proporcionado por el autor de la llamada de tipo MCA_EXCEPTION que contendrá la información devuelta por esta rutina. Para los procesadores Intel Itanium, la información devuelta debe ser compatible, como mínimo, con la especificación SAL V3.0, Estructuras de registro de errores, enero de 2001, Apéndice B"". Para los procesadores Intel Pentium Pro, la información es como se describe en el ejemplo de código siguiente.
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
Número de bytes que se devuelven en búfer.
Valor devuelto
Devuelve STATUS_SUCCESS si existe un registro de errores.
Comentarios
La función HalQuerySystemInformation devuelve el primer error. Es responsabilidad del controlador MCA volver a llamar a esta rutina para ver si hay más errores disponibles.
Windows Vista y versiones posteriores de Windows no admiten el tipo de informes de arquitectura de comprobación de máquinas (MCA) y excepción de comprobación de máquina (MCE) que se describen en este tema. Los informes de MCA y MCE se admiten a través de la arquitectura de errores de hardware de Windows (WHEA) en su lugar.
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Escritorio |
Encabezado | ntddk.h (incluya Ntddk.h) |