alpha / ntoskrnl /

_KPCR

← first 1 build latest →
struct _KPCR {
unsigned long MinorVersion;/* 0x0 4 */
unsigned long MajorVersion;/* 0x4 4 */
unsigned __int64 PalBaseAddress;/* 0x8 8 */
unsigned long PalMajorVersion;/* 0x10 4 */
unsigned long PalMinorVersion;/* 0x14 4 */
unsigned long PalSequenceVersion;/* 0x18 4 */
unsigned long PalMajorSpecification;/* 0x1c 4 */
unsigned long PalMinorSpecification;/* 0x20 4 */
/* 4 bytes padding */
unsigned __int64 FirmwareRestartAddress;/* 0x28 8 */
void* RestartBlock;/* 0x30 4 */
/* 4 bytes padding */
unsigned __int64 PalReserved[383];/* 0x38 3064 */
/* ── cacheline 48 boundary (3072 bytes) ── */
unsigned __int64 PalAlignmentFixupCount;/* 0xc30 8 */
void* PanicStack;/* 0xc38 4 */
unsigned long ProcessorType;/* 0xc3c 4 */
/* ── cacheline 49 boundary (3136 bytes) ── */
unsigned long ProcessorRevision;/* 0xc40 4 */
unsigned long PhysicalAddressBits;/* 0xc44 4 */
unsigned long MaximumAddressSpaceNumber;/* 0xc48 4 */
unsigned long PageSize;/* 0xc4c 4 */
unsigned long FirstLevelDcacheSize;/* 0xc50 4 */
unsigned long FirstLevelDcacheFillSize;/* 0xc54 4 */
unsigned long FirstLevelIcacheSize;/* 0xc58 4 */
unsigned long FirstLevelIcacheFillSize;/* 0xc5c 4 */
unsigned long FirmwareRevisionId;/* 0xc60 4 */
unsigned char SystemType[8];/* 0xc64 8 */
unsigned long SystemVariant;/* 0xc6c 4 */
unsigned long SystemRevision;/* 0xc70 4 */
unsigned char SystemSerialNumber[16];/* 0xc74 16 */
/* ── cacheline 50 boundary (3200 bytes) ── */
unsigned long CycleClockPeriod;/* 0xc84 4 */
unsigned long SecondLevelCacheSize;/* 0xc88 4 */
unsigned long SecondLevelCacheFillSize;/* 0xc8c 4 */
unsigned long ThirdLevelCacheSize;/* 0xc90 4 */
unsigned long ThirdLevelCacheFillSize;/* 0xc94 4 */
unsigned long FourthLevelCacheSize;/* 0xc98 4 */
unsigned long FourthLevelCacheFillSize;/* 0xc9c 4 */
char Number;/* 0xca4 1 */
/* 3 bytes padding */
unsigned long SetMember;/* 0xca8 4 */
/* 4 bytes padding */
unsigned __int64 HalReserved[64];/* 0xcb0 512 */
/* ── cacheline 58 boundary (3712 bytes) ── */
unsigned long IrqlTable[8];/* 0xeb0 32 */
/* ── cacheline 59 boundary (3776 bytes) ── */
/* ── cacheline 67 boundary (4288 bytes) ── */
void (*InterruptRoutine[256])(void);/* 0x10e0 1024 */
/* ── cacheline 83 boundary (5312 bytes) ── */
unsigned long ReservedVectors;/* 0x14e0 4 */
unsigned long NotMember;/* 0x14e4 4 */
unsigned long InterruptInProgress;/* 0x14e8 4 */
unsigned long DpcRequested;/* 0x14ec 4 */
unsigned char (*MachineCheckError)(struct _EXCEPTION_RECORD*, struct _KEXCEPTION_FRAME*, struct _KTRAP_FRAME*);/* 0x14f0 4 */
void* DpcStack;/* 0x14f4 4 */
unsigned long Spare1;/* 0x14f8 4 */
unsigned long CurrentPid;/* 0x14fc 4 */
/* ── cacheline 84 boundary (5376 bytes) ── */
unsigned long Spare2;/* 0x1500 4 */
unsigned long SystemServiceDispatchStart;/* 0x1504 4 */
unsigned long SystemServiceDispatchEnd;/* 0x1508 4 */
};
/* source: Windows 2000 RC2 DDK Alpha libcntpr.lib CodeView type records; build 2128 per the DDK's ntverp.h */
size 5392 (0x1510)53 members4 holes (15 bytes)padding 085 cachelines
Used in (1)