Fonction RtlGetEnabledExtendedFeatures (ntddk.h)

La routine RtlGetEnabledExtendedFeatures retourne un masque de fonctionnalités de processeur étendues activées par le système.

Syntaxe

NTSYSAPI ULONG64 RtlGetEnabledExtendedFeatures(
  [in] ULONG64 FeatureMask
);

Paramètres

[in] FeatureMask

Masque de fonctionnalité 64 bits. Ce paramètre indique un ensemble de fonctionnalités de processeur étendues pour lesquelles l’appelant demande des informations sur l’activation des fonctionnalités. Si un bit de masque est un, l’appelant demande des informations sur la fonctionnalité qui correspond à ce bit de masque. L’appelant définit tous les autres bits de masque sur zéro. Définissez ce paramètre sur (ULONG64)(-1) pour obtenir le masque de toutes les fonctionnalités activées. Pour déterminer si un ensemble particulier de fonctionnalités est activé, définissez ce paramètre sur la valeur OR au niveau du bit d’un ou de plusieurs bits d’indicateur XSTATE_MASK_XXX .

Valeur retournée

RtlGetEnabledExtendedFeatures retourne un masque 64 bits de fonctionnalités de processeur étendues activées. La routine calcule ce masque comme intersection (au niveau du bit AND) entre toutes les fonctionnalités activées et la valeur du paramètre FeatureMask . Pour plus d’informations sur les fonctionnalités indiquées par cette valeur de retour, consultez XSTATE_MASK_XXX.

RtlGetEnabledExtendedFeatures retourne 0 si les instructions XSAVE et XRSTOR sont désactivées par le système. Cela se produit même si le système prend en charge les fonctionnalités XSTATE_MASK_LEGACY_FLOATING_POINT et XSTATE_MASK_LEGACY_SSE. Utilisez ExIsProcessorFeaturePresent ou CPUID pour déterminer la disponibilité des fonctionnalités de processeur x87, MMX et SSE sur les systèmes x86 ou x64.

Remarques

Une autre routine, ExIsProcessorFeaturePresent, indique si une fonctionnalité de processeur étendue est disponible. Contrairement à RtlGetEnabledExtendedFeatures, toutefois, il n’indique pas si le système d’exploitation a activé la fonctionnalité pour une utilisation par les pilotes en mode noyau.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Disponible dans Windows 7 et versions ultérieures du système d’exploitation Windows.
Plateforme cible Universal
En-tête ntddk.h (inclure Wdm.h, Ntddk.h, Ntifs.h)
Bibliothèque Ntdll.lib (mode utilisateur) ; NtosKrnl.lib (mode noyau) ; OneCoreUAP.lib sur Windows 10
DLL NtDll.dll (mode utilisateur) ; NtosKrnl.exe (mode noyau)
IRQL PASSIVE_LEVEL

Voir aussi

ExIsProcessorFeaturePresent