Freigeben über


pHalSetSystemInformation-Rückruffunktion (ntddk.h)

Registrieren Sie MCA-Treiber bei der HAL.

Syntax

pHalSetSystemInformation Phalsetsysteminformation;

NTSTATUS Phalsetsysteminformation(
  [in]  HAL_SET_INFORMATION_CLASS InformationClass,
  [in]  ULONG BufferSize,
  [out] PVOID Buffer
)
{...}

Parameter

[in] InformationClass

HalMcaRegisterDriver zum Registrieren von MCA-Treiberrückrufroutinen bei der HAL. Es gibt zwei Rückrufroutinen: ExceptionCallback und DpcCallback. Die ExceptionCallback-Routine wird während des MCE-Handlers (Machine Check Exception) aufgerufen, der nicht neu gestartet werden kann, bevor eine Fehlerüberprüfung für das System ausgegeben wird. Die DpcCallback-Routine wird aufgerufen, wenn der MCA-Fehler neu gestartet werden kann. Geben Sie für Itanium-Systeme HalCmcRegisterDriver an, um die korrigierte CPU-Fehler-DpcCallback-Routine eines Treibers zu registrieren, und HalCpeRegisterDriver, um den korrigierten Plattformfehler DpcCallback eines Treibers zu registrieren.

[in] BufferSize

Die Größe des Puffers, den der Aufrufer bereitstellt, in Byte.

[out] Buffer

Ein Zeiger auf einen vom Aufrufer bereitgestellten Puffer vom Typ MCA_DRIVER_INFO, der wie folgt definiert ist.

typedef struct _MCA_DRIVER_INFO {
  PDRIVER_EXCPTN_CALLBACK  ExceptionCallback; // NULL for Itanium corrected error registration
  PKDEFERRED_ROUTINE  DpcCallback;
  PVOID  DeviceContext;
} MCA_DRIVER_INFO, *PMCA_DRIVER_INFO;

Diese Struktur enthält die folgenden Elemente:

  • ExceptionCallback

    Die vom Treiber bereitgestellte Routine, die aufgerufen werden soll, wenn die Machine Check Exception (MCE) für nicht korrigierte Fehler auftritt. Ein Treiber kann keine Kerneldienste oder Spin-Lock-Routinen verwenden. Der Handler ist auf die gleichen Einschränkungen beschränkt wie ein Treiber, der mit der höchsten IRQL arbeitet.

  • DpcCallback

    Eine vom Treiber bereitgestellte Routine, die für korrigierte Fehler aufgerufen wird, die die Ausnahme für die Computerüberprüfung (Machine Check Exception, MCE) verursacht haben. Diese Routine muss bei DISPATCH_LEVEL aufgerufen werden.

  • DeviceContext

    Der gerätespezifische Kontext für diesen MCA-Treiber.

Rückgabewert

Gibt STATUS_SUCCESS zurück, wenn die Registrierung erfolgreich ist.

Bemerkungen

HalSetSystemInformation muss aufgerufen werden, bevor ein MCA-Treiber eine der anderen Schnittstellenroutinen verwenden kann. Nur ein MCA-Treiber kann jederzeit bei der HAL registriert werden.

Windows Vista und höhere Versionen von Windows unterstützen nicht den Typ der Computerprüfungsarchitektur (Machine Check Architecture, MCA) und der McE-Berichterstellung (Machine Check Exception), die in diesem Thema beschrieben wird. MCA- und MCE-Berichterstellung werden stattdessen über Windows Hardware Error Architecture (WHEA) unterstützt.

Anforderungen

Anforderung Wert
Zielplattform- Desktop
Header- ntddk.h (include Ntddk.h)