mirror of
https://github.com/reactos/reactos.git
synced 2025-02-24 01:15:09 +00:00
- Cleanup the mess in query.c by reformatting the code to remove tab/space confusion and 2-space identation.
- Removed the InfoClass tables and got rid of the thread semi-infoclass table. Created a real InfoClass stub table for thread information - Moved info class tables to a new header, ps_i.h - Simplified syntax of info class macros so that sizeof() is done automatically for the type/alignment. - Reformatted the tables completely to present them in a plesing, ordered, readable fashion. - Added some missing info classes. - Added ARRAYSIZE, RTL_NUMBER_OF(V1/V2) and used them in the info code. - *TEMPORARILY* disable NtQuery/SetThreadInformation until next patch when it can be made to work. svn path=/trunk/; revision=23174
This commit is contained in:
parent
d78c254a8d
commit
69995705e9
4 changed files with 1406 additions and 1247 deletions
|
@ -85,7 +85,15 @@ typedef struct _OBJECT_ATTRIBUTES {
|
||||||
#define NOTHING
|
#define NOTHING
|
||||||
#define RTL_CONSTANT_STRING(s) { sizeof(s)-sizeof((s)[0]), sizeof(s), s }
|
#define RTL_CONSTANT_STRING(s) { sizeof(s)-sizeof((s)[0]), sizeof(s), s }
|
||||||
#define TYPE_ALIGNMENT( t ) FIELD_OFFSET( struct { char x; t test; }, test )
|
#define TYPE_ALIGNMENT( t ) FIELD_OFFSET( struct { char x; t test; }, test )
|
||||||
|
#define RTL_FIELD_SIZE(type, field) (sizeof(((type *)0)->field))
|
||||||
|
#define RTL_NUMBER_OF_V1(A) (sizeof(A)/sizeof((A)[0]))
|
||||||
|
#define RTL_NUMBER_OF_V2(A) RTL_NUMBER_OF_V1(A)
|
||||||
|
#endif
|
||||||
|
#ifdef ENABLE_RTL_NUMBER_OF_V2
|
||||||
|
#define RTL_NUMBER_OF(A) RTL_NUMBER_OF_V2(A)
|
||||||
|
#else
|
||||||
|
#define RTL_NUMBER_OF(A) RTL_NUMBER_OF_V1(A)
|
||||||
|
#define ARRAYSIZE(A) RTL_NUMBER_OF_V2(A)
|
||||||
#define MINCHAR 0x80
|
#define MINCHAR 0x80
|
||||||
#define MAXCHAR 0x7f
|
#define MAXCHAR 0x7f
|
||||||
#define MINSHORT 0x8000
|
#define MINSHORT 0x8000
|
||||||
|
|
|
@ -140,11 +140,20 @@ typedef struct _INFORMATION_CLASS_INFO
|
||||||
ULONG Flags;
|
ULONG Flags;
|
||||||
} INFORMATION_CLASS_INFO, *PINFORMATION_CLASS_INFO;
|
} INFORMATION_CLASS_INFO, *PINFORMATION_CLASS_INFO;
|
||||||
|
|
||||||
#define ICI_SQ_SAME(Size, Alignment, Flags) \
|
#define ICI_SQ_SAME(Type, Alignment, Flags) \
|
||||||
{ Size, Size, Alignment, Alignment, Flags }
|
{ Type, Type, Alignment, Alignment, Flags }
|
||||||
|
|
||||||
#define ICI_SQ(SizeQuery, SizeSet, AlignmentQuery, AlignmentSet, Flags) \
|
#define ICI_SQ(TypeQuery, TypeSet, AlignmentQuery, AlignmentSet, Flags) \
|
||||||
{ SizeQuery, SizeSet, AlignmentQuery, AlignmentSet, Flags }
|
{ TypeQuery, TypeSet, AlignmentQuery, AlignmentSet, Flags }
|
||||||
|
|
||||||
|
//
|
||||||
|
// TEMPORARY
|
||||||
|
//
|
||||||
|
#define IQS_SAME(Type, Alignment, Flags) \
|
||||||
|
{ sizeof(Type), sizeof(Type), sizeof(Alignment), sizeof(Alignment), Flags }
|
||||||
|
|
||||||
|
#define IQS(TypeQuery, TypeSet, AlignmentQuery, AlignmentSet, Flags) \
|
||||||
|
{ sizeof(TypeQuery), sizeof(TypeSet), sizeof(AlignmentQuery), sizeof(AlignmentSet), Flags }
|
||||||
|
|
||||||
static __inline NTSTATUS
|
static __inline NTSTATUS
|
||||||
DefaultSetInfoBufferCheck(UINT Class,
|
DefaultSetInfoBufferCheck(UINT Class,
|
||||||
|
|
607
reactos/ntoskrnl/include/internal/ps_i.h
Normal file
607
reactos/ntoskrnl/include/internal/ps_i.h
Normal file
|
@ -0,0 +1,607 @@
|
||||||
|
/*
|
||||||
|
* PROJECT: ReactOS Kernel
|
||||||
|
* LICENSE: GPL - See COPYING in the top level directory
|
||||||
|
* FILE: ntoskrnl/include/ps_i.h
|
||||||
|
* PURPOSE: Info Classes for the Process Manager
|
||||||
|
* PROGRAMMERS: Alex Ionescu (alex.ionescu@reactos.org)
|
||||||
|
* Thomas Weidenmueller (w3seek@reactos.org)
|
||||||
|
*/
|
||||||
|
|
||||||
|
//
|
||||||
|
// Process Information Classes
|
||||||
|
//
|
||||||
|
static const INFORMATION_CLASS_INFO PsProcessInfoClass[] =
|
||||||
|
{
|
||||||
|
/* ProcessBasicInformation */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
PROCESS_BASIC_INFORMATION,
|
||||||
|
ULONG,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessQuotaLimits */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
QUOTA_LIMITS,
|
||||||
|
ULONG,
|
||||||
|
ICIF_QUERY | ICIF_SET
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessIoCounters */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
IO_COUNTERS,
|
||||||
|
ULONG,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessVmCounters */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
VM_COUNTERS,
|
||||||
|
ULONG,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessTimes */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
KERNEL_USER_TIMES,
|
||||||
|
ULONG,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessBasePriority */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
KPRIORITY,
|
||||||
|
ULONG,
|
||||||
|
ICIF_SET
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessRaisePriority */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
ULONG,
|
||||||
|
ULONG,
|
||||||
|
ICIF_SET
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessDebugPort */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
HANDLE,
|
||||||
|
ULONG,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessExceptionPort */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
HANDLE,
|
||||||
|
ULONG,
|
||||||
|
ICIF_SET
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessAccessToken */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
PROCESS_ACCESS_TOKEN,
|
||||||
|
ULONG,
|
||||||
|
ICIF_SET
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessLdtInformation */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
ULONG,
|
||||||
|
ICIF_QUERY | ICIF_SET
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessLdtSize */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
ULONG,
|
||||||
|
ICIF_SET
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessDefaultHardErrorMode */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
ULONG,
|
||||||
|
ULONG,
|
||||||
|
ICIF_QUERY | ICIF_SET
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessIoPortHandlers */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
ULONG,
|
||||||
|
ICIF_SET
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessPooledUsageAndLimits */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
POOLED_USAGE_AND_LIMITS,
|
||||||
|
ULONG,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessWorkingSetWatch */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
PROCESS_WS_WATCH_INFORMATION,
|
||||||
|
ULONG,
|
||||||
|
ICIF_QUERY | ICIF_SET
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessUserModeIOPL */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
ULONG,
|
||||||
|
ICIF_SET
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessEnableAlignmentFaultFixup */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
BOOLEAN,
|
||||||
|
ULONG,
|
||||||
|
ICIF_SET
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessPriorityClass */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
PROCESS_PRIORITY_CLASS,
|
||||||
|
USHORT,
|
||||||
|
ICIF_QUERY | ICIF_SET
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessWx86Information */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
ULONG,
|
||||||
|
ULONG,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessHandleCount */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
ULONG,
|
||||||
|
ULONG,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessAffinityMask */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
KAFFINITY,
|
||||||
|
ULONG,
|
||||||
|
ICIF_SET
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessPriorityBoost */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
ULONG,
|
||||||
|
ULONG,
|
||||||
|
ICIF_QUERY | ICIF_SET
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessDeviceMap */
|
||||||
|
IQS
|
||||||
|
(
|
||||||
|
RTL_FIELD_SIZE(PROCESS_DEVICEMAP_INFORMATION, Query),
|
||||||
|
RTL_FIELD_SIZE(PROCESS_DEVICEMAP_INFORMATION, Set),
|
||||||
|
ULONG,
|
||||||
|
ULONG,
|
||||||
|
ICIF_QUERY | ICIF_SET
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessSessionInformation */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
PROCESS_SESSION_INFORMATION,
|
||||||
|
ULONG,
|
||||||
|
ICIF_QUERY | ICIF_SET
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessForegroundInformation */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
BOOLEAN,
|
||||||
|
ULONG,
|
||||||
|
ICIF_SET
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessWow64Information */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
ULONG,
|
||||||
|
ULONG,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessImageFileName */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UNICODE_STRING,
|
||||||
|
ULONG,
|
||||||
|
ICIF_QUERY | ICIF_SIZE_VARIABLE
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessLUIDDeviceMapsEnabled */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
UCHAR,
|
||||||
|
0
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessBreakOnTermination */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
UCHAR,
|
||||||
|
0
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessDebugObjectHandle */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
UCHAR,
|
||||||
|
0
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessDebugFlags */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
UCHAR,
|
||||||
|
0
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessHandleTracing */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
UCHAR,
|
||||||
|
0
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessIoPriority */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
UCHAR,
|
||||||
|
0
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessExecuteFlags */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
UCHAR,
|
||||||
|
0
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessTlsInformation */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
UCHAR,
|
||||||
|
0
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessCookie */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
UCHAR,
|
||||||
|
0
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessImageInformation */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
UCHAR,
|
||||||
|
0
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessCycleTime */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
UCHAR,
|
||||||
|
0
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessPagePriority */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
UCHAR,
|
||||||
|
0
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ProcessInstrumentationCallback */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
UCHAR,
|
||||||
|
0
|
||||||
|
),
|
||||||
|
};
|
||||||
|
|
||||||
|
//
|
||||||
|
// Thread Information Classes
|
||||||
|
//
|
||||||
|
static const INFORMATION_CLASS_INFO PsThreadInfoClass[] =
|
||||||
|
{
|
||||||
|
/* ThreadBasicInformation */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
THREAD_BASIC_INFORMATION,
|
||||||
|
ULONG,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ThreadTimes */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
KERNEL_USER_TIMES,
|
||||||
|
ULONG,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ThreadPriority */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
KPRIORITY,
|
||||||
|
ULONG,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ThreadBasePriority */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
LONG,
|
||||||
|
ULONG,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ThreadAffinityMask */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
KAFFINITY,
|
||||||
|
ULONG,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ThreadImpersonationToken */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
HANDLE,
|
||||||
|
ULONG,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ThreadDescriptorTableEntry */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
UCHAR,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ThreadEnableAlignmentFaultFixup */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
UCHAR,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ThreadEventPair_Reusable */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
UCHAR,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ThreadQuerySetWin32StartAddress */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
PVOID,
|
||||||
|
ULONG,
|
||||||
|
ICIF_QUERY | ICIF_SET
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ThreadZeroTlsCell */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
UCHAR,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ThreadPerformanceCount */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
LARGE_INTEGER,
|
||||||
|
ULONG,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ThreadAmILastThread */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
BOOLEAN,
|
||||||
|
BOOLEAN,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ThreadIdealProcessor */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
UCHAR,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ThreadPriorityBoost */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
UCHAR,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ThreadSetTlsArrayAddress */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
UCHAR,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ThreadIsIoPending */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
ULONG,
|
||||||
|
ULONG,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ThreadHideFromDebugger */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
UCHAR,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
|
||||||
|
/* ThreadPriorityBoost */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
UCHAR,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ThreadSetTlsArrayAddress */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
UCHAR,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ThreadIsIoPending */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
ULONG,
|
||||||
|
ULONG,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ThreadHideFromDebugger */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
UCHAR,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ThreadBreakOnTermination */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
UCHAR,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ThreadSwitchLegacyState */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
UCHAR,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ThreadIsTerminated */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
ULONG,
|
||||||
|
ULONG,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ThreadLastSystemCall */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
UCHAR,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ThreadIoPriority */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
UCHAR,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ThreadCycleTime */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
UCHAR,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ThreadPagePriority */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
ULONG,
|
||||||
|
ULONG,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ThreadActualBasePriority */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
UCHAR,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ThreadTebInformation */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
ULONG,
|
||||||
|
ULONG,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
|
||||||
|
/* ThreadCSwitchMon */
|
||||||
|
IQS_SAME
|
||||||
|
(
|
||||||
|
UCHAR,
|
||||||
|
UCHAR,
|
||||||
|
ICIF_QUERY
|
||||||
|
),
|
||||||
|
};
|
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue