Fonction de rappel pHalQuerySystemInformation (ntddk.h)
La fonction de rappel pHalQuerySystemInformation lit les registres status des banques MCA.
Syntaxe
pHalQuerySystemInformation Phalquerysysteminformation;
NTSTATUS Phalquerysysteminformation(
[in] HAL_QUERY_INFORMATION_CLASS InformationClass,
[in] ULONG BufferSize,
[out] PVOID Buffer,
[out] PULONG ReturnedLength
)
{...}
Paramètres
[in] InformationClass
HalMcaLogInformation pour lire le journal des erreurs MCA actuel. Si l’une des erreurs de vérification de machine non corrigées est trouvée, elle est retournée dans la mémoire tampon. Pour les systèmes Itanium, spécifiez HalCmcLogInformation pour lire le journal des erreurs du processeur corrigé actuel et HalCpeLogInformation pour lire le journal des erreurs de la plateforme corrigée actuelle.
[in] BufferSize
Taille, en octets, de la mémoire tampon que l’appelant fournit.
[out] Buffer
Pointeur vers une mémoire tampon fournie par l’appelant de type MCA_EXCEPTION qui contiendra les informations retournées par cette routine. Pour les processeurs Intel Itanium, les informations retournées doivent être conformes, au minimum, à la spécification SAL V3.0, Error Record Structures, janvier 2001, Annexe B « ». Pour les processeurs Intel Pentium Pro, les informations sont décrites dans l’exemple de code suivant.
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
Nombre d’octets retournés dans La mémoire tampon.
Valeur retournée
Retourne STATUS_SUCCESS si un journal des erreurs existe.
Remarques
La fonction HalQuerySystemInformation retourne la première erreur. Il incombe au pilote MCA d’appeler à nouveau cette routine pour voir si d’autres erreurs sont disponibles.
Windows Vista et les versions ultérieures de Windows ne prennent pas en charge les types de rapports McA (Machine Check Architecture) et McE (Machine Check Exception) décrits dans cette rubrique. À la place, les rapports MCA et MCE sont pris en charge via l’architecture d’erreur matérielle Windows (WHEA).
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | ntddk.h (inclure Ntddk.h) |
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour