struct _EJOB { struct _KEVENT Event;/* 0x0 16 */ struct _LIST_ENTRY JobLinks;/* 0x10 8 */ struct _LIST_ENTRY ProcessListHead;/* 0x18 8 */ struct _ERESOURCE JobLock;/* 0x20 56 */ /* ── cacheline 1 boundary (64 bytes) ── */ union _LARGE_INTEGER TotalUserTime;/* 0x58 8 */ union _LARGE_INTEGER TotalKernelTime;/* 0x60 8 */ union _LARGE_INTEGER TotalCycleTime;/* 0x68 8 */ union _LARGE_INTEGER ThisPeriodTotalUserTime;/* 0x70 8 */ union _LARGE_INTEGER ThisPeriodTotalKernelTime;/* 0x78 8 */ /* ── cacheline 2 boundary (128 bytes) ── */ unsigned __int64 TotalContextSwitches;/* 0x80 8 */ unsigned long TotalPageFaultCount;/* 0x88 4 */ unsigned long TotalProcesses;/* 0x8c 4 */ unsigned long ActiveProcesses;/* 0x90 4 */ unsigned long TotalTerminatedProcesses;/* 0x94 4 */ union _LARGE_INTEGER PerProcessUserTimeLimit;/* 0x98 8 */ union _LARGE_INTEGER PerJobUserTimeLimit;/* 0xa0 8 */ unsigned long MinimumWorkingSetSize;/* 0xa8 4 */ unsigned long MaximumWorkingSetSize;/* 0xac 4 */ unsigned long LimitFlags;/* 0xb0 4 */ unsigned long ActiveProcessLimit;/* 0xb4 4 */ struct _KAFFINITY_EX Affinity;/* 0xb8 12 */ /* ── cacheline 3 boundary (192 bytes) ── */ struct _JOB_ACCESS_STATE* AccessState;/* 0xc4 4 */ void* AccessStateQuotaReference;/* 0xc8 4 */ unsigned long UIRestrictionsClass;/* 0xcc 4 */ unsigned long EndOfJobTimeAction;/* 0xd0 4 */ void* CompletionPort;/* 0xd4 4 */ void* CompletionKey;/* 0xd8 4 */ /* 4 bytes padding */ unsigned __int64 CompletionCount;/* 0xe0 8 */ unsigned long SessionId;/* 0xe8 4 */ unsigned long SchedulingClass;/* 0xec 4 */ unsigned __int64 ReadOperationCount;/* 0xf0 8 */ unsigned __int64 WriteOperationCount;/* 0xf8 8 */ /* ── cacheline 4 boundary (256 bytes) ── */ unsigned __int64 OtherOperationCount;/* 0x100 8 */ unsigned __int64 ReadTransferCount;/* 0x108 8 */ unsigned __int64 WriteTransferCount;/* 0x110 8 */ unsigned __int64 OtherTransferCount;/* 0x118 8 */ struct _PROCESS_DISK_COUNTERS DiskIoInfo;/* 0x120 40 */ /* ── cacheline 5 boundary (320 bytes) ── */ unsigned long ProcessMemoryLimit;/* 0x148 4 */ unsigned long JobMemoryLimit;/* 0x14c 4 */ unsigned long JobTotalMemoryLimit;/* 0x150 4 */ unsigned long PeakProcessMemoryUsed;/* 0x154 4 */ unsigned long PeakJobMemoryUsed;/* 0x158 4 */ struct _KAFFINITY_EX EffectiveAffinity;/* 0x15c 12 */ union _LARGE_INTEGER EffectivePerProcessUserTimeLimit;/* 0x168 8 */ unsigned long EffectiveMinimumWorkingSetSize;/* 0x170 4 */ unsigned long EffectiveMaximumWorkingSetSize;/* 0x174 4 */ unsigned long EffectiveProcessMemoryLimit;/* 0x178 4 */ struct _EJOB* EffectiveProcessMemoryLimitJob;/* 0x17c 4 */ /* ── cacheline 6 boundary (384 bytes) ── */ struct _EJOB* EffectivePerProcessUserTimeLimitJob;/* 0x180 4 */ struct _EJOB* EffectiveNetIoRateLimitJob;/* 0x184 4 */ struct _EJOB* EffectiveHeapAttributionJob;/* 0x188 4 */ unsigned long EffectiveLimitFlags;/* 0x18c 4 */ unsigned long EffectiveSchedulingClass;/* 0x190 4 */ unsigned long EffectiveFreezeCount;/* 0x194 4 */ unsigned long EffectiveBackgroundCount;/* 0x198 4 */ unsigned long EffectiveSwapCount;/* 0x19c 4 */ unsigned long EffectiveNotificationLimitCount;/* 0x1a0 4 */ unsigned char EffectivePriorityClass;/* 0x1a4 1 */ unsigned char PriorityClass;/* 0x1a5 1 */ unsigned char NestingDepth;/* 0x1a6 1 */ unsigned char Reserved1[1];/* 0x1a7 1 */ unsigned long CompletionFilter;/* 0x1a8 4 */ /* 4 bytes padding */ union { struct _WNF_STATE_NAME WakeChannel;/* 0x1b0 8 */ struct _PS_JOB_WAKE_INFORMATION WakeInfo;/* 0x1b0 72 */ };/* 0x1b0 72 */ /* ── cacheline 7 boundary (448 bytes) ── */ struct _JOBOBJECT_WAKE_FILTER WakeFilter;/* 0x1f8 8 */ /* ── cacheline 8 boundary (512 bytes) ── */ unsigned long LowEdgeLatchFilter;/* 0x200 4 */ struct _EJOB* NotificationLink;/* 0x204 4 */ unsigned __int64 CurrentJobMemoryUsed;/* 0x208 8 */ struct _JOB_NOTIFICATION_INFORMATION* NotificationInfo;/* 0x210 4 */ void* NotificationInfoQuotaReference;/* 0x214 4 */ struct _IO_MINI_COMPLETION_PACKET_USER* NotificationPacket;/* 0x218 4 */ struct _JOB_CPU_RATE_CONTROL* CpuRateControl;/* 0x21c 4 */ void* EffectiveSchedulingGroup;/* 0x220 4 */ /* 4 bytes padding */ unsigned __int64 ReadyTime;/* 0x228 8 */ struct _EX_PUSH_LOCK MemoryLimitsLock;/* 0x230 4 */ struct _LIST_ENTRY SiblingJobLinks;/* 0x234 8 */ struct _LIST_ENTRY ChildJobListHead;/* 0x23c 8 */ /* ── cacheline 9 boundary (576 bytes) ── */ struct _EJOB* ParentJob;/* 0x244 4 */ struct _EJOB* RootJob;/* 0x248 4 */ struct _LIST_ENTRY IteratorListHead;/* 0x24c 8 */ unsigned long AncestorCount;/* 0x254 4 */ union { struct _EJOB** Ancestors;/* 0x258 4 */ void* SessionObject;/* 0x258 4 */ };/* 0x258 4 */ /* 4 bytes padding */ struct _EPROCESS_VALUES Accounting;/* 0x260 104 */ /* ── cacheline 11 boundary (704 bytes) ── */ unsigned long ShadowActiveProcessCount;/* 0x2c8 4 */ unsigned long ActiveAuxiliaryProcessCount;/* 0x2cc 4 */ unsigned long SequenceNumber;/* 0x2d0 4 */ unsigned long JobId;/* 0x2d4 4 */ struct _GUID ContainerId;/* 0x2d8 16 */ struct _GUID ContainerTelemetryId;/* 0x2e8 16 */ struct _ESERVERSILO_GLOBALS* ServerSiloGlobals;/* 0x2f8 4 */ struct _PS_PROPERTY_SET PropertySet;/* 0x2fc 12 */ /* ── cacheline 12 boundary (768 bytes) ── */ struct _PSP_STORAGE* Storage;/* 0x308 4 */ struct _JOB_NET_RATE_CONTROL* NetRateControl;/* 0x30c 4 */ union { unsigned long JobFlags;/* 0x310 4 */ struct { unsigned long CloseDone : 1;/* 0x310:0 4 */ unsigned long MultiGroup : 1;/* 0x310:1 4 */ unsigned long OutstandingNotification : 1;/* 0x310:2 4 */ unsigned long NotificationInProgress : 1;/* 0x310:3 4 */ unsigned long UILimits : 1;/* 0x310:4 4 */ unsigned long CpuRateControlActive : 1;/* 0x310:5 4 */ unsigned long OwnCpuRateControl : 1;/* 0x310:6 4 */ unsigned long Terminating : 1;/* 0x310:7 4 */ unsigned long WorkingSetLock : 1;/* 0x310:8 4 */ unsigned long JobFrozen : 1;/* 0x310:9 4 */ unsigned long Background : 1;/* 0x310:10 4 */ unsigned long WakeNotificationAllocated : 1;/* 0x310:11 4 */ unsigned long WakeNotificationEnabled : 1;/* 0x310:12 4 */ unsigned long WakeNotificationPending : 1;/* 0x310:13 4 */ unsigned long LimitNotificationRequired : 1;/* 0x310:14 4 */ unsigned long ZeroCountNotificationRequired : 1;/* 0x310:15 4 */ unsigned long CycleTimeNotificationRequired : 1;/* 0x310:16 4 */ unsigned long CycleTimeNotificationPending : 1;/* 0x310:17 4 */ unsigned long TimersVirtualized : 1;/* 0x310:18 4 */ unsigned long JobSwapped : 1;/* 0x310:19 4 */ unsigned long ViolationDetected : 1;/* 0x310:20 4 */ unsigned long EmptyJobNotified : 1;/* 0x310:21 4 */ unsigned long NoSystemCharge : 1;/* 0x310:22 4 */ unsigned long DropNoWakeCharges : 1;/* 0x310:23 4 */ unsigned long NoWakeChargePolicyDecided : 1;/* 0x310:24 4 */ unsigned long NetRateControlActive : 1;/* 0x310:25 4 */ unsigned long OwnNetRateControl : 1;/* 0x310:26 4 */ unsigned long IoRateControlActive : 1;/* 0x310:27 4 */ unsigned long OwnIoRateControl : 1;/* 0x310:28 4 */ unsigned long DisallowNewProcesses : 1;/* 0x310:29 4 */ unsigned long Silo : 1;/* 0x310:30 4 */ unsigned long ContainerTelemetryIdSet : 1;/* 0x310:31 4 */ };/* 0x310 4 */ };/* 0x310 4 */ union { unsigned long JobFlags2;/* 0x314 4 */ struct { unsigned long ParentLocked : 1;/* 0x314:0 4 */ unsigned long EnableUsermodeSiloThreadImpersonation : 1;/* 0x314:1 4 */ unsigned long DisallowUsermodeSiloThreadImpersonation : 1;/* 0x314:2 4 */ };/* 0x314 4 */ };/* 0x314 4 */ struct _PROCESS_EXTENDED_ENERGY_VALUES* EnergyValues;/* 0x318 4 */ volatile unsigned long SharedCommitCharge;/* 0x31c 4 */ unsigned long DiskIoAttributionUserRefCount;/* 0x320 4 */ unsigned long DiskIoAttributionRefCount;/* 0x324 4 */ union { void* DiskIoAttributionContext;/* 0x328 4 */ struct _EJOB* DiskIoAttributionOwnerJob;/* 0x328 4 */ };/* 0x328 4 */ struct _JOB_RATE_CONTROL_HEADER IoRateControlHeader;/* 0x32c 20 */ /* ── cacheline 13 boundary (832 bytes) ── */ struct _PS_IO_CONTROL_ENTRY GlobalIoControl;/* 0x340 28 */ volatile long IoControlStateLock;/* 0x35c 4 */ struct _RTL_RB_TREE VolumeIoControlTree;/* 0x360 8 */ unsigned __int64 IoRateOverQuotaHistory;/* 0x368 8 */ unsigned long IoRateCurrentGeneration;/* 0x370 4 */ unsigned long IoRateLastQueryGeneration;/* 0x374 4 */ unsigned long IoRateGenerationLength;/* 0x378 4 */ unsigned long IoRateOverQuotaNotifySequenceId;/* 0x37c 4 */ /* ── cacheline 14 boundary (896 bytes) ── */ unsigned __int64 LastThrottledIoTime;/* 0x380 8 */ struct _EX_PUSH_LOCK IoControlLock;/* 0x388 4 */ long SiloHardReferenceCount;/* 0x38c 4 */ struct _WORK_QUEUE_ITEM RundownWorkItem;/* 0x390 16 */ void* PartitionObject;/* 0x3a0 4 */ struct _EJOB* PartitionOwnerJob;/* 0x3a4 4 */ union _JOBOBJECT_ENERGY_TRACKING_STATE EnergyTrackingState;/* 0x3a8 8 */ unsigned __int64 KernelWaitTime;/* 0x3b0 8 */ unsigned __int64 UserWaitTime;/* 0x3b8 8 */};size 960 (0x3c0)155 members4 holes (16 bytes)padding 015 cachelines
Used in (5)