PEP_QUERY_SOC_SUBSYSTEM結構(pep_x.h)
PEP_QUERY_SOC_SUBSYSTEM 結構是由 PEP_DPM_QUERY_SOC_SUBSYSTEM 通知 用來收集晶片 (SoC) 子系統上特定系統的基本資訊。
語法
typedef struct _PEP_QUERY_SOC_SUBSYSTEM {
[in] ULONG PlatformIdleStateIndex;
[in] ULONG SubsystemIndex;
[out] PVOID SubsystemHandle;
[in/out] UNICODE_STRING ParentName;
[in/out] UNICODE_STRING SubsystemName;
[out] ULONG MetadataCount;
ULONG Flags;
} PEP_QUERY_SOC_SUBSYSTEM, *PPEP_QUERY_SOC_SUBSYSTEM;
成員
[in] PlatformIdleStateIndex
核心正在查詢的平台閑置狀態索引。
[in] SubsystemIndex
子系統索引,這是作系統指派給指定 之 platformIdleStateIndex 內容中每個子系統的唯一索引,。
核心會將此值初始化為零,並遞增每個後續子系統靜態資訊通知。 值為 0 表示這是指定 PlatformIdleStateIndex的第一個這類通知。 此欄位旨在提供此通知實例之間的 PEP 內容。 這是唯一的欄位,其輸入值會因給定的 PlatformIdleStateIndex 而 PEP 會使用此值來查閱子系統,而此字段會因此通知的實例而有所不同。
PEP 可以忽略此值。
[out] SubsystemHandle
PEP 可以選擇性地指派值的內容指標。 它會在此特定子系統的後續通知上收到指標。 在後續的通知中,PEP 會使用 PlatformIdleStateIndex,以及 SubsystemName 和/或 SubsystemHandle 來查閱特定子系統的會計數據。
根據預設,如果這個成員為零,則為值。 OS 會忽略此值,而且只會在通知中使用。
不需要 PEP 才能填入此成員。
[in/out] ParentName
用來存放對應子系統父名稱的緩衝區。 每個子系統都有一個父系和子系統,ParentName 的值都視為同層級。 子系統同層級階層是選擇性的。 如果沒有任何階層,所有子系統都是最上層子系統,並針對parentName 指定通用值。 若要指出階層,最上層子系統會指定一般 ParentName,而每個非最上層子系統會針對 parentName 指定其父子系統的SubsystemName。
進入之前,核心會:
- 針對 ParentName.Buffer[] 預先配置 64 WCHAR
- 零緩衝區
- 將 ParentName.MaximumLength 設定為以位元組為單位的緩衝區大小,以及
- 設定 parentName.Length = 0
PEP 必須使用 ParentName.Buffer 中位址所指向的已配置記憶體,以提供父名稱。 由於此記憶體已預先配置,因此無法變更其大小。 PEP 負責在必要時截斷父名稱,使其不會超過 ParentName.MaximumLength 中指定的長度(包括終止 UNICODE_NULL 字元)。
[in/out] SubsystemName
用來存放此子系統名稱的緩衝區。 每個子系統都有子系統名稱和 SubsystemName 在指定平臺閑置狀態內容內的所有子系統中必須是唯一的。 子系統的 SubsystemName 不能與 ParentName相同。
進入之前,核心會:
- 預先配置 64 WCHARSubsystemName.Buffer[]
- 零緩衝區
- 將 SubsystemName.MaximumLength 設定為以位元組為單位的緩衝區大小,以及
- 設定 SubsystemName.Length = 0
PEP 必須使用 SubsystemName.Buffer 中位址所指向的配置記憶體,以提供子系統名稱。 由於此記憶體已預先配置,因此無法變更其大小。 PEP 負責在必要時截斷子系統名稱,使其不會超過 SubsystemName.MaximumLength 中指定的長度(包括終止 UNICODE_NULL 字元)。
[out] MetadataCount
這個 SoC 子系統所標記的元數據索引鍵/值字串組數目。
元數據是選擇性的。 如果 PEP 未報告此 SoC 子系統的任何元數據,則 PEP 會傳回零。
Flags
這個成員是保留的,而且應該設定為零。
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | 從 Windows 10 開始支援。 |
標頭 | pep_x.h (包括 Pep_x.h) |