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 la 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"". En el caso de 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 el búfer.
Valor devuelto
Devuelve STATUS_SUCCESS si existe un registro de errores.
Observaciones
La función HalQuerySystemInformation devuelve el primer error. Es responsabilidad del controlador mca llamar a esta rutina de nuevo para ver si hay más errores disponibles.
Windows Vista y versiones posteriores de Windows no admiten el tipo de informe de arquitectura de comprobación de máquinas (MCA) y excepción de comprobación de máquina (MCE) que se describe en este tema. Los informes de MCA y MCE se admiten a través de arquitectura de errores de hardware de Windows (WHEA) en su lugar.
Requisitos
Requisito | Valor |
---|---|
de la plataforma de destino de | Escritorio |
encabezado de | ntddk.h (incluya Ntddk.h) |