PEP_PROCESSOR_IDLE_STATE_V2 structure (pepfx.h)

La structure PEP_PROCESSOR_IDLE_STATE_V2 décrit un état d’inactivité du processeur que le plug-in d’extension de plateforme (PEP) prend en charge.

Syntaxe

typedef struct _PEP_PROCESSOR_IDLE_STATE_V2 {
  union {
    ULONG Ulong;
    struct {
      ULONG Interruptible : 1;
      ULONG CacheCoherent : 1;
      ULONG ThreadContextRetained : 1;
      ULONG CStateType : 4;
      ULONG WakesSpuriously : 1;
      ULONG PlatformOnly : 1;
      ULONG Autonomous : 1;
      ULONG Reserved : 22;
    };
  };
  ULONG Latency;
  ULONG BreakEvenDuration;
} PEP_PROCESSOR_IDLE_STATE_V2, *PPEP_PROCESSOR_IDLE_STATE_V2;

Membres

Ulong

Indicateur bits et champs status accessibles sous la forme d’une seule valeur entière non signée 32 bits.

Interruptible

Indique si le processeur peut répondre aux interruptions dans cet état inactif. Définissez ce bit d’indicateur sur 1 si le processeur peut répondre aux interruptions, et sur 0 si ce n’est pas le cas.

CacheCoherent

Indique si le ou les caches locaux du processeur restent cohérents pendant toute la durée de cet état d’inactivité du processeur. Définissez ce bit d’indicateur sur 1 si la cohérence du cache est maintenue dans cet état inactif, et sur 0 si ce n’est pas le cas.

ThreadContextRetained

Indique si le contexte de thread est conservé dans cet état d’inactivité du processeur. Définissez ce bit d’indicateur sur 1 si le matériel du processeur conserve le contexte du thread pendant la transition inactive. Défini sur 0 si le processeur utilise le protocole de stationnement multiprocesseur pour quitter l’état d’inactivité et retourner le contrôle au système d’exploitation. Pour plus d’informations sur ce protocole, consultez le document intitulé Démarrage de multiprocesseur pour les plateformes ARM sur le site Architecture des composants ACPI.

CStateType

Type d’état C de l’état d’inactivité du processeur. Définissez ce champ de bits sur zéro si cet état inactif ne correspond pas à un état C défini par ACPI. Sinon, définissez ce champ de bits sur le nombre d’état C. Autrement dit, défini CStateType = 1 pour C1, défini CStateType = 2 pour C2, et ainsi de suite. Pour plus d’informations sur les états C, consultez la section 8.1, « Processor Power States », de la spécification ACPI 5.0.

WakesSpuriously

Indique si le processeur peut se réveiller de façon incorrecte dans cet état inactif. Définissez ce bit d’indicateur sur 0 si le processeur est assuré de rester dans cet état inactif jusqu’à ce qu’il reçoive une interruption d’appareil, une interruption interprocesseur (IPI) ou une demande de veille. Définissez sur 1 si le processeur peut sortir de manière autonome pour une autre raison.

PlatformOnly

Indique si la transition vers cet état d’inactivité du processeur peut être effectuée uniquement dans le cadre d’une transition coordonnée vers un état d’inactivité à l’échelle de la plateforme. Définissez ce bit d’indicateur sur 1 si la transition de l’état d’inactivité du processeur peut être effectuée uniquement dans le cadre d’une transition vers un état d’inactivité de la plateforme. Sinon, définissez sur 0.

Autonomous

Indique si une transition coordonnée vers cet état d’inactivité du processeur est effectuée de manière autonome par le matériel du processeur. Définissez ce bit d’indicateur sur 1 si ces transitions sont autonomes, et sur 0 si ce n’est pas le cas. La valeur d’indicateur 1 indique que l’état d’inactivité peut être entré sans envoyer de notification PEP_NOTIFY_PPM_TEST_IDLE_STATE, PEP_NOTIFY_PPM_IDLE_PRE_EXECUTE ou PEP_NOTIFY_PPM_IDLE_COMPLETE . Cet indicateur peut être défini sur 1 uniquement si CStateType est différent de zéro.

Reserved

Réservé pour un usage futur. Définit la valeur zéro.

Latency

La pire latence, en unités de 100 nanosecondes, dont le processeur a besoin pour sortir de cet état inactif en réponse à un événement de sortie de veille.

BreakEvenDuration

Durée minimale, spécifiée en unités de 100 nanosecondes, que le processeur doit passer dans cet état inactif pour effectuer une transition vers cet état qui en vaut la peine. L’infrastructure de gestion de l’alimentation Windows (PoFx) utilise cette valeur de membre comme indicateur pour éviter de basculer un processeur vers un état inactif, sauf si le processeur est susceptible de rester dans cet état pendant au moins la durée spécifiée par BreakEvenDuration.

Remarques

Cette structure est utilisée conjointement avec la notification PEP_NOTIFY_PPM_QUERY_IDLE_STATES_V2 . Le membre IdleStates de la structure PEP_PPM_QUERY_IDLE_STATES_V2 est le premier élément d’un tableau de structures PEP_PROCESSOR_IDLE_STATE_V2 .

L’union sans nom contient une collection de bits d’indicateur et de champs status accessibles individuellement sous forme de champs de bits ou ensemble sous forme de valeur entière non signée 32 bits.

Le struct sans nom contient des bits d’indicateur et des champs status accessibles en tant que champs de bits individuels.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Pris en charge à partir de Windows 10.
En-tête pepfx.h (include Pep_x.h)

Voir aussi