PEP_PROCESSOR_IDLE_STATE_V2 結構 (pep_x.h)
PEP_PROCESSOR_IDLE_STATE_V2 結構描述平臺擴充功能外掛程式支援 (PEP) 支援的處理器閑置狀態。
語法
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;
成員
Ulong
將存取的位和狀態字段標示為單一 32 位無符號整數值。
Interruptible
處理器是否可在處於此閑置狀態時回應中斷。 如果處理器可以回應中斷,請將此旗標位設定為 1,如果無法回應,請將它設定為 0。
CacheCoherent
處理器的本機快取或快取是否在此處理器閑置狀態的持續時間維持一致。 如果快取共置保持處於此閑置狀態,請將此旗標位設定為 1,如果不是,則設定為 0。
ThreadContextRetained
線程內容是否保留在此處理器閑置狀態。 如果處理器硬體在閑置轉換中保留線程內容,請將此旗標位設定為 1。 如果處理器使用多處理器停駐通訊協定結束閑置狀態,並將控制權傳回至操作系統,請將 設定為0。 如需此通訊協定的詳細資訊,請參閱 ACPI 元件架構網站標題為 ARM 平臺的多處理器啟動檔。
CStateType
處理器閑置狀態的 C 狀態類型。 如果此閑置狀態未對應至 ACPI 定義的 C 狀態,請將此位字段設定為零。 否則,請將這個位欄位元設定為 C 狀態號碼。 也就是說,針對 C1 設定 CStateType = 1、針對 C2 設定 CStateType = 2 等等。 如需 C 狀態的詳細資訊,請參閱 ACPI 5.0 規格的 8.1、處理器電源狀態一節。
WakesSpuriously
處理器是否可以以這種閑置狀態喚醒。 如果處理器保證處於此閑置狀態,請將此旗標位設定為0,直到它收到裝置中斷、處理器間中斷 () 或喚醒要求為止。 如果處理器可能會因為其他原因而自發喚醒,則設定為 1。
PlatformOnly
轉換至此處理器閑置狀態是否只能當做協調轉換至全平臺閑置狀態的一部分來執行。 如果處理器閑置狀態轉換只能當做轉換至平臺閑置狀態的一部分執行,請將此旗標位設定為 1。 否則,請將 設定為 0。
Autonomous
處理器硬體是否自發執行協調轉換至此處理器閑置狀態。 如果這些轉換是自發的,請將此旗標位設定為 1,如果不是,則設定為 0。 旗標值為 1 表示可以輸入閑置狀態,而不傳送 PEP_NOTIFY_PPM_TEST_IDLE_STATE、 PEP_NOTIFY_PPM_IDLE_PRE_EXECUTE或 PEP_NOTIFY_PPM_IDLE_COMPLETE 通知。 只有當 CStateType 不是零時,才可以將此旗標設定為 1。
Reserved
保留供未來使用。 設定為零。
Latency
以 100 奈秒為單位的最差延遲,處理器需要從這個閑置狀態喚醒,以響應喚醒事件。
BreakEvenDuration
以 100 奈秒單位指定的最小時間量,處理器必須花費在這個閑置狀態,才能值得轉換到此狀態。 Windows 電源管理架構 (PoFx) 會使用此成員值作為提示,以避免將處理器切換為閑置狀態,除非處理器可能維持在此狀態中,至少 保留 BreakEvenDuration 所指定的時間量。
備註
未命名的等位包含旗標位和狀態欄位的集合,這些欄位可以個別存取為位欄位,或以 32 位不帶正負號的整數值一起存取。
未命名的結構包含以個別位欄位欄位存取的旗標位和狀態欄位。
此結構會與 PEP_NOTIFY_PPM_QUERY_IDLE_STATES_V2 通知搭配使用。 PEP_PPM_QUERY_IDLE_STATES_V2 結構的IdleStates成員是PEP_PROCESSOR_IDLE_STATE_V2結構陣列中的第一個專案。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 從Windows 10 開始支援。 |
標頭 | pep_x.h (包含 Pep_x.h) |