From 462fe323ebd7f815977607829843904817c25f97 Mon Sep 17 00:00:00 2001 From: Emanuele Aliberti Date: Thu, 6 Jan 2000 13:17:48 +0000 Subject: [PATCH] A few more return structures for NtQuerySystemInformation svn path=/trunk/; revision=921 --- reactos/include/ddk/zwtypes.h | 87 ++++++++++++++++++++++++++++++----- 1 file changed, 76 insertions(+), 11 deletions(-) diff --git a/reactos/include/ddk/zwtypes.h b/reactos/include/ddk/zwtypes.h index 8a6f73e0e60..c787ab1defa 100644 --- a/reactos/include/ddk/zwtypes.h +++ b/reactos/include/ddk/zwtypes.h @@ -135,9 +135,11 @@ typedef struct _LPCMESSAGE #define SystemPerformanceInformation 2 #define SystemInformation3 3 #define SystemProcessInformation 5 +#define SystemGlobalFlagInformation 9 #define SystemDriverInformation 11 #define SystemPageFileInformation 18 #define SystemCacheInformation 21 +#define SystemPoolTagStatsInformation 22 #define SystemTimeAdjustmentInformation 28 #define SystemTimeZoneInformation 44 @@ -312,27 +314,63 @@ typedef struct _OBJECT_TYPE_INFORMATION #pragma pack(2) typedef struct _SYSTEM_THREAD_INFORMATION { - PVOID StartAddress; - DWORD ParentPid; - DWORD Tid; + FILETIME ftCreationTime; + DWORD dwUnknown1; + PVOID dwStartAddress; + DWORD dwOwningPID; + DWORD dwThreadID; + DWORD dwCurrentPriority; + DWORD dwBasePriority; + DWORD dwContextSwitches; + DWORD dwThreadState; + DWORD dwWaitReason; + DWORD dwUnknown2 [ 5 ]; + } SYSTEM_THREAD_INFORMATION, * PSYSTEM_THREAD_INFORMATION; typedef struct _SYSTEM_PROCESS_INFORMATION { - WORD Unknown0; - DWORD Unknown1; - DWORD Unknown2; - ULONG ThreadCount; - DWORD Unknown3 [10]; - DWORD Pid; - DWORD Unknown4 [32]; - WCHAR ImageName [16]; /* always ImageName[15] == L'\0' */ + DWORD dwOffset; + DWORD dwThreadCount; + DWORD dwUnknown1 [6]; + FILETIME ftCreationTime; + DWORD dwUnknown2 [5]; + WCHAR * pszProcessName; + DWORD dwBasePriority; + DWORD dwProcessID; + DWORD dwParentProcessID; + DWORD dwHandleCount; + DWORD dwUnknown3; + DWORD dwUnknown4; + DWORD dwVirtualBytesPeak; + DWORD dwVirtualBytes; + DWORD dwPageFaults; + DWORD dwWorkingSetPeak; + DWORD dwWorkingSet; + DWORD dwUnknown5; + DWORD dwPagedPool; + DWORD dwUnknown6; + DWORD dwNonPagedPool; + DWORD dwPageFileBytesPeak; + DWORD dwPrivateBytes; + DWORD dwPageFileBytes; + DWORD dwUnknown7 [4]; + SYSTEM_THREAD_INFORMATION Threads [1]; } SYSTEM_PROCESS_INFORMATION, * PSYSTEM_PROCESS_INFORMATION; #endif + +typedef +struct _SYSTEM_GLOBAL_FLAGS_INFO +{ + DWORD GlobalFlags; + +} SYSTEM_GLOBAL_FLAGS_INFO, * PSYSTEM_GLOBAL_FLAGS_INFO; + + #if 0 #pragma pack(4) typedef struct _SYSTEM_DRIVER_INFO @@ -346,6 +384,7 @@ typedef struct _SYSTEM_DRIVER_INFO } SYSTEM_DRIVER_INFO, * PSYSTEM_DRIVER_INFO; + typedef struct _SYSTEM_DRIVERS_INFO { DWORD DriverCount; @@ -397,6 +436,32 @@ typedef struct _SYSTEM_CACHE_INFORMATION ULONG MaximumWorkingSet; ULONG Unused[4]; } SYSTEM_CACHE_INFORMATION; + + +/* SYSTEM_POOL_ENTRY_INFO, SYSTEM_POOL_INFORMATION + * found by Klaus P. Gerlicher */ +typedef +struct _SYSTEM_POOL_ENTRY_INFO +{ + ULONG Tag; + ULONG NP_Allocs; + ULONG NP_Frees; + ULONG NP_Used; + ULONG P_Allocs; + ULONG P_Frees; + ULONG P_Used; + +} SYSTEM_POOL_ENTRY_INFO, * PSYSTEM_POOL_ENTRY_INFO; + + +typedef +struct _SYSTEM_POOL_INFORMATION +{ + ULONG Count; + SYSTEM_POOL_ENTRY_INFO PoolEntry [1]; + +} SYSTEM_POOL_INFORMATION, *PSYSTEM_POOL_INFORMATION; + #endif // file information