1181 lines
23 KiB
C
1181 lines
23 KiB
C
|
/*++
|
||
|
|
||
|
Copyright (c) 1990, 1991 Microsoft Corporation
|
||
|
|
||
|
|
||
|
Module Name:
|
||
|
|
||
|
cmdat3.c
|
||
|
|
||
|
Abstract:
|
||
|
|
||
|
This module contains registry "static" data which we don't
|
||
|
want pulled into the loader.
|
||
|
|
||
|
Author:
|
||
|
|
||
|
Bryan Willman (bryanwi) 19-Oct-93
|
||
|
|
||
|
|
||
|
Environment:
|
||
|
|
||
|
Kernel mode.
|
||
|
|
||
|
Revision History:
|
||
|
|
||
|
--*/
|
||
|
|
||
|
#include "cmp.h"
|
||
|
#pragma hdrstop
|
||
|
#include "dpfiltercm.h"
|
||
|
|
||
|
//
|
||
|
// ***** INIT *****
|
||
|
//
|
||
|
|
||
|
//
|
||
|
// Data for CmGetSystemControlValues
|
||
|
//
|
||
|
//
|
||
|
// ----- CmControlVector -----
|
||
|
//
|
||
|
#ifdef ALLOC_DATA_PRAGMA
|
||
|
#pragma data_seg("INIT")
|
||
|
#endif
|
||
|
|
||
|
//
|
||
|
// Local examples
|
||
|
//
|
||
|
WCHAR CmDefaultLanguageId[ 12 ] = { 0 };
|
||
|
ULONG CmDefaultLanguageIdLength = sizeof( CmDefaultLanguageId );
|
||
|
ULONG CmDefaultLanguageIdType = REG_NONE;
|
||
|
|
||
|
WCHAR CmInstallUILanguageId[ 12 ] = { 0 };
|
||
|
ULONG CmInstallUILanguageIdLength = sizeof( CmInstallUILanguageId );
|
||
|
ULONG CmInstallUILanguageIdType = REG_NONE;
|
||
|
//
|
||
|
// suite data
|
||
|
//
|
||
|
WCHAR CmSuiteBuffer[128] = {0};
|
||
|
ULONG CmSuiteBufferLength = sizeof(CmSuiteBuffer);
|
||
|
ULONG CmSuiteBufferType = REG_NONE;
|
||
|
|
||
|
//
|
||
|
// Verify driver list data
|
||
|
//
|
||
|
extern LONG CmRegistryLogSizeLimit;
|
||
|
extern WCHAR MmVerifyDriverBuffer[];
|
||
|
extern ULONG MmVerifyDriverBufferLength;
|
||
|
extern ULONG MmVerifyDriverBufferType;
|
||
|
extern ULONG MmVerifyDriverLevel;
|
||
|
extern LOGICAL MmDontVerifyRandomDrivers;
|
||
|
|
||
|
extern ULONG IopAutoReboot;
|
||
|
extern ULONG ObpProtectionMode;
|
||
|
extern ULONG ObpAuditBaseDirectories;
|
||
|
extern ULONG ObpAuditBaseObjects;
|
||
|
extern ACCESS_MASK SepProcessAccessesToAudit;
|
||
|
extern ULONG CmNtGlobalFlag;
|
||
|
extern SIZE_T MmAllocationFragment;
|
||
|
extern SIZE_T MmSizeOfPagedPoolInBytes;
|
||
|
extern SIZE_T MmSizeOfNonPagedPoolInBytes;
|
||
|
extern ULONG MmMaximumNonPagedPoolPercent;
|
||
|
extern ULONG MmLargeSystemCache;
|
||
|
#if defined (_X86_)
|
||
|
extern ULONG MmLargeStackSize;
|
||
|
#endif
|
||
|
extern ULONG MmAllocationPreference;
|
||
|
extern ULONG MmNumberOfSystemPtes;
|
||
|
extern ULONG MmLowMemoryThreshold;
|
||
|
extern ULONG MmHighMemoryThreshold;
|
||
|
extern ULONG MmConsumedPoolPercentage;
|
||
|
extern ULONG MmSecondaryColors;
|
||
|
extern ULONG MmDisablePagingExecutive;
|
||
|
extern ULONG MmModifiedPageLifeInSeconds;
|
||
|
extern LOGICAL MmSpecialPoolCatchOverruns;
|
||
|
#if 0
|
||
|
extern ULONG MmCompressionThresholdRatio;
|
||
|
#endif
|
||
|
extern ULONG MmSpecialPoolTag;
|
||
|
extern ULONG MmDynamicPfn;
|
||
|
extern ULONG MmMirroring;
|
||
|
extern SIZE_T MmSystemViewSize;
|
||
|
extern SIZE_T MmSessionViewSize;
|
||
|
extern SIZE_T MmSessionPoolSize;
|
||
|
extern SIZE_T MmSessionImageSize;
|
||
|
extern ULONG MmEnforceWriteProtection;
|
||
|
extern ULONG MmLargePageMinimum;
|
||
|
extern LOGICAL MmSnapUnloads;
|
||
|
extern LOGICAL MmTrackLockedPages;
|
||
|
extern LOGICAL MmMakeLowMemory;
|
||
|
extern LOGICAL MmProtectFreedNonPagedPool;
|
||
|
extern ULONG MmTrackPtes;
|
||
|
extern ULONG CmRegistrySizeLimit;
|
||
|
extern ULONG CmRegistrySizeLimitLength;
|
||
|
extern ULONG CmRegistrySizeLimitType;
|
||
|
extern ULONG PspDefaultPagedLimit;
|
||
|
extern ULONG PspDefaultNonPagedLimit;
|
||
|
extern ULONG PspDefaultPagefileLimit;
|
||
|
extern ULONG ExResourceTimeoutCount;
|
||
|
extern ULONG MmCritsectTimeoutSeconds;
|
||
|
extern SIZE_T MmHeapSegmentReserve;
|
||
|
extern SIZE_T MmHeapSegmentCommit;
|
||
|
extern SIZE_T MmHeapDeCommitTotalFreeThreshold;
|
||
|
extern SIZE_T MmHeapDeCommitFreeBlockThreshold;
|
||
|
extern ULONG ExpAdditionalCriticalWorkerThreads;
|
||
|
extern ULONG ExpAdditionalDelayedWorkerThreads;
|
||
|
extern ULONG MmProductType;
|
||
|
extern ULONG CmBrand;
|
||
|
extern ULONG ExpHydraEnabled;
|
||
|
extern ULONG ExpMultiUserTS;
|
||
|
extern LOGICAL IoCountOperations;
|
||
|
extern ULONG IopLargeIrpStackLocations;
|
||
|
extern ULONG IovpVerifierLevel;
|
||
|
extern ULONG MmZeroPageFile;
|
||
|
extern ULONG ExpNtExpirationData[3];
|
||
|
extern ULONG ExpNtExpirationDataLength;
|
||
|
extern ULONG ExpMaxTimeSeperationBeforeCorrect;
|
||
|
extern ULONG PopSimulate;
|
||
|
extern ULONG PopIdleDefaultMinThrottle;
|
||
|
extern ULONG PopIdleThrottleCheckRate;
|
||
|
extern ULONG PopIdleThrottleCheckTimeout;
|
||
|
extern ULONG PopIdleFrom0Delay;
|
||
|
extern ULONG PopIdleFrom0IdlePercent;
|
||
|
extern ULONG PopIdle0TimeCheck;
|
||
|
extern ULONG PopIdleTimeCheck;
|
||
|
extern ULONG PopIdleTo0Percent;
|
||
|
extern ULONG PopIdleDefaultDemotePercent;
|
||
|
extern ULONG PopIdleDefaultDemoteTime;
|
||
|
extern ULONG PopIdleDefaultPromotePercent;
|
||
|
extern ULONG PopIdleDefaultPromoteTime;
|
||
|
extern ULONG PopPerfTimeDelta;
|
||
|
extern ULONG PopPerfCriticalTimeDelta;
|
||
|
extern ULONG PopPerfCriticalFrequencyDelta;
|
||
|
extern ULONG PopPerfIncreasePercentModifier;
|
||
|
extern ULONG PopPerfIncreaseAbsoluteModifier;
|
||
|
extern ULONG PopPerfDecreasePercentModifier;
|
||
|
extern ULONG PopPerfDecreaseAbsoluteModifier;
|
||
|
extern ULONG PopPerfIncreaseTimeValue;
|
||
|
extern ULONG PopPerfIncreaseMinimumTime;
|
||
|
extern ULONG PopPerfDecreaseTimeValue;
|
||
|
extern ULONG PopPerfDecreaseMinimumTime;
|
||
|
extern ULONG PopPerfDegradeThrottleMinCapacity;
|
||
|
extern ULONG PopPerfDegradeThrottleMinFrequency;
|
||
|
extern ULONG PopPerfMaxC3Frequency;
|
||
|
extern ULONG KiEnableTimerWatchdog;
|
||
|
extern ULONG ObpTraceNoDeregister;
|
||
|
extern WCHAR ObpTracePoolTagsBuffer[];
|
||
|
extern ULONG ObpTracePoolTagsLength;
|
||
|
extern ULONG ObpCaseInsensitive;
|
||
|
extern ULONG ViSearchedNodesLimitFromRegistry;
|
||
|
extern ULONG ViRecursionDepthLimitFromRegistry;
|
||
|
extern ULONG MmMinimumStackCommitInBytes;
|
||
|
extern ULONG ObpLUIDDeviceMapsDisabled;
|
||
|
|
||
|
#if defined(_AMD64_) || defined(_IA64_)
|
||
|
extern ULONG KiEnableAlignmentFaultExceptions;
|
||
|
#endif
|
||
|
|
||
|
extern ULONG KiMaximumDpcQueueDepth;
|
||
|
extern ULONG KiMinimumDpcRate;
|
||
|
extern ULONG KiAdjustDpcThreshold;
|
||
|
extern ULONG KiIdealDpcRate;
|
||
|
extern LARGE_INTEGER ExpLastShutDown;
|
||
|
ULONG shutdownlength = 0;
|
||
|
|
||
|
#if defined (_X86_)
|
||
|
extern ULONG KiFastSystemCallDisable;
|
||
|
extern ULONG KeVerifyNumaPageShift;
|
||
|
extern ULONG KeVerifyNumaPageMask;
|
||
|
extern ULONG KeVerifyNumaAffinityShift;
|
||
|
extern ULONG KeVerifyNumaAffinity;
|
||
|
extern ULONG KeVerifyNumaNodeCount;
|
||
|
#endif
|
||
|
|
||
|
#if defined(_IA64_)
|
||
|
extern ULONG KiExceptionDeferralMode;
|
||
|
#endif
|
||
|
|
||
|
//Debugger Retries
|
||
|
extern KD_CONTEXT KdpContext;
|
||
|
|
||
|
//
|
||
|
// WMI Control Variables
|
||
|
extern ULONG WmipMaxKmWnodeEventSize;
|
||
|
#if defined (_IA64_)
|
||
|
extern ULONG WmipDisableMCAPopups;
|
||
|
#endif
|
||
|
extern ULONG WmiTraceAlignment;
|
||
|
|
||
|
// Initial user-mode process to start and arguments.
|
||
|
extern WCHAR NtInitialUserProcessBuffer[];
|
||
|
extern ULONG NtInitialUserProcessBufferLength;
|
||
|
extern ULONG NtInitialUserProcessBufferType;
|
||
|
|
||
|
//
|
||
|
// CmpUlongPtrLength is used for registry values that are 4-byte on 32-bit
|
||
|
// machines and can be 64-bit on 64-bit machines.
|
||
|
//
|
||
|
ULONG CmpUlongPtrLength = sizeof (ULONG_PTR);
|
||
|
|
||
|
//
|
||
|
// Vector - see ntos\inc\cm.h for definition
|
||
|
//
|
||
|
CM_SYSTEM_CONTROL_VECTOR CmControlVector[] = {
|
||
|
|
||
|
{ L"Session Manager",
|
||
|
L"ProtectionMode",
|
||
|
&ObpProtectionMode,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
|
||
|
{ L"Session Manager",
|
||
|
L"LUIDDeviceMapsDisabled",
|
||
|
&ObpLUIDDeviceMapsDisabled,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
|
||
|
{ L"LSA",
|
||
|
L"AuditBaseDirectories",
|
||
|
&ObpAuditBaseDirectories,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
|
||
|
{ L"LSA",
|
||
|
L"AuditBaseObjects",
|
||
|
&ObpAuditBaseObjects,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
|
||
|
{ L"LSA\\audit",
|
||
|
L"ProcessAccessesToAudit",
|
||
|
&SepProcessAccessesToAudit,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
|
||
|
{ L"TimeZoneInformation",
|
||
|
L"ActiveTimeBias",
|
||
|
&ExpLastTimeZoneBias,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
|
||
|
{ L"TimeZoneInformation",
|
||
|
L"Bias",
|
||
|
&ExpAltTimeZoneBias,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"TimeZoneInformation",
|
||
|
L"RealTimeIsUniversal",
|
||
|
&ExpRealTimeIsUniversal,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager",
|
||
|
L"GlobalFlag",
|
||
|
&CmNtGlobalFlag,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"DontVerifyRandomDrivers",
|
||
|
&MmDontVerifyRandomDrivers,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"PagedPoolQuota",
|
||
|
&PspDefaultPagedLimit,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"NonPagedPoolQuota",
|
||
|
&PspDefaultNonPagedLimit,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"PagingFileQuota",
|
||
|
&PspDefaultPagefileLimit,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"AllocationPreference",
|
||
|
&MmAllocationPreference,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"DynamicMemory",
|
||
|
&MmDynamicPfn,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"Mirroring",
|
||
|
&MmMirroring,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"SystemViewSize",
|
||
|
&MmSystemViewSize,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"SessionViewSize",
|
||
|
&MmSessionViewSize,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"SessionImageSize",
|
||
|
&MmSessionImageSize,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"SessionPoolSize",
|
||
|
&MmSessionPoolSize,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
#if 0
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"CompressionThresholdPercentage",
|
||
|
&MmCompressionThresholdRatio,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
#endif
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"PoolUsageMaximum",
|
||
|
&MmConsumedPoolPercentage,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"MapAllocationFragment",
|
||
|
&MmAllocationFragment,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"PagedPoolSize",
|
||
|
&MmSizeOfPagedPoolInBytes,
|
||
|
&CmpUlongPtrLength,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"NonPagedPoolSize",
|
||
|
&MmSizeOfNonPagedPoolInBytes,
|
||
|
&CmpUlongPtrLength,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"NonPagedPoolMaximumPercent",
|
||
|
&MmMaximumNonPagedPoolPercent,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"LargeSystemCache",
|
||
|
&MmLargeSystemCache,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
#if defined (_X86_)
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"LargeStackSize",
|
||
|
&MmLargeStackSize,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
#endif
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"SystemPages",
|
||
|
&MmNumberOfSystemPtes,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"LowMemoryThreshold",
|
||
|
&MmLowMemoryThreshold,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"HighMemoryThreshold",
|
||
|
&MmHighMemoryThreshold,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"DisablePagingExecutive",
|
||
|
&MmDisablePagingExecutive,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"ModifiedPageLife",
|
||
|
&MmModifiedPageLifeInSeconds,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"SecondLevelDataCache",
|
||
|
&MmSecondaryColors,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"ClearPageFileAtShutdown",
|
||
|
&MmZeroPageFile,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"PoolTag",
|
||
|
&MmSpecialPoolTag,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"PoolTagOverruns",
|
||
|
&MmSpecialPoolCatchOverruns,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"SnapUnloads",
|
||
|
&MmSnapUnloads,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"ProtectNonPagedPool",
|
||
|
&MmProtectFreedNonPagedPool,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"TrackLockedPages",
|
||
|
&MmTrackLockedPages,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"TrackPtes",
|
||
|
&MmTrackPtes,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"VerifyDrivers",
|
||
|
MmVerifyDriverBuffer,
|
||
|
&MmVerifyDriverBufferLength,
|
||
|
&MmVerifyDriverBufferType
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"VerifyDriverLevel",
|
||
|
&MmVerifyDriverLevel,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"LargePageMinimum",
|
||
|
&MmLargePageMinimum,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"EnforceWriteProtection",
|
||
|
&MmEnforceWriteProtection,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"MakeLowMemory",
|
||
|
&MmMakeLowMemory,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"DeadlockRecursionDepthLimit",
|
||
|
&ViRecursionDepthLimitFromRegistry,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"DeadlockSearchNodesLimit",
|
||
|
&ViSearchedNodesLimitFromRegistry,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management",
|
||
|
L"MinimumStackCommitInBytes",
|
||
|
&MmMinimumStackCommitInBytes,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Executive",
|
||
|
L"AdditionalCriticalWorkerThreads",
|
||
|
&ExpAdditionalCriticalWorkerThreads,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
|
||
|
{ L"Session Manager\\Executive",
|
||
|
L"AdditionalDelayedWorkerThreads",
|
||
|
&ExpAdditionalDelayedWorkerThreads,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Executive",
|
||
|
L"PriorityQuantumMatrix",
|
||
|
&ExpNtExpirationData,
|
||
|
&ExpNtExpirationDataLength,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Kernel",
|
||
|
L"DpcQueueDepth",
|
||
|
&KiMaximumDpcQueueDepth,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Kernel",
|
||
|
L"MinimumDpcRate",
|
||
|
&KiMinimumDpcRate,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Kernel",
|
||
|
L"AdjustDpcThreshold",
|
||
|
&KiAdjustDpcThreshold,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
#if defined(_IA64_)
|
||
|
|
||
|
{ L"Session Manager\\Kernel",
|
||
|
L"ExceptionDeferralMode",
|
||
|
&KiExceptionDeferralMode,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
#endif
|
||
|
|
||
|
{ L"Session Manager\\Kernel",
|
||
|
L"IdealDpcRate",
|
||
|
&KiIdealDpcRate,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
#if defined(_X86_)
|
||
|
|
||
|
{ L"Session Manager\\Kernel",
|
||
|
L"FastSystemCallDisable",
|
||
|
&KiFastSystemCallDisable,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
#endif
|
||
|
|
||
|
{ L"Session Manager\\Kernel",
|
||
|
L"ObTracePoolTags",
|
||
|
&ObpTracePoolTagsBuffer,
|
||
|
&ObpTracePoolTagsLength,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Kernel",
|
||
|
L"ObTraceNoDeregister",
|
||
|
&ObpTraceNoDeregister,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Kernel",
|
||
|
L"PoCleanShutdownFlags",
|
||
|
&PopShutdownCleanly,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Power",
|
||
|
L"IdleDefaultMinThrottle",
|
||
|
&PopIdleDefaultMinThrottle,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Power",
|
||
|
L"IdleThrottleCheckRate",
|
||
|
&PopIdleThrottleCheckRate,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Power",
|
||
|
L"IdleThrottleCheckTimeout",
|
||
|
&PopIdleThrottleCheckTimeout,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Power",
|
||
|
L"IdleFrom0Delay",
|
||
|
&PopIdleFrom0Delay,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Power",
|
||
|
L"IdleFrom0IdlePercent",
|
||
|
&PopIdleFrom0IdlePercent,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Power",
|
||
|
L"Idle0TimeCheck",
|
||
|
&PopIdle0TimeCheck,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Power",
|
||
|
L"IdleTimeCheck",
|
||
|
&PopIdleTimeCheck,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Power",
|
||
|
L"IdleTo0Percent",
|
||
|
&PopIdleTo0Percent,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Power",
|
||
|
L"IdleDefaultDemotePercent",
|
||
|
&PopIdleDefaultDemotePercent,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Power",
|
||
|
L"IdleDefaultDemoteTime",
|
||
|
&PopIdleDefaultDemoteTime,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Power",
|
||
|
L"IdleDefaultPromotePercent",
|
||
|
&PopIdleDefaultPromotePercent,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Power",
|
||
|
L"IdleDefaultPromoteTime",
|
||
|
&PopIdleDefaultPromoteTime,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Throttle",
|
||
|
L"PerfTimeDelta",
|
||
|
&PopPerfTimeDelta,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Throttle",
|
||
|
L"PerfCriticalTimeDelta",
|
||
|
&PopPerfCriticalTimeDelta,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Throttle",
|
||
|
L"PerfCriticalFrequencyDelta",
|
||
|
&PopPerfCriticalFrequencyDelta,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Throttle",
|
||
|
L"PerfIncreasePercentModifier",
|
||
|
&PopPerfIncreasePercentModifier,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Throttle",
|
||
|
L"PerfIncreaseAbsoluteModifier",
|
||
|
&PopPerfIncreaseAbsoluteModifier,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Throttle",
|
||
|
L"PerfDecreasePercentModifier",
|
||
|
&PopPerfDecreasePercentModifier,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Throttle",
|
||
|
L"PerfDecreaseAbsoluteModifier",
|
||
|
&PopPerfIncreaseAbsoluteModifier,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Throttle",
|
||
|
L"PerfIncreaseTimeValue",
|
||
|
&PopPerfIncreaseTimeValue,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Throttle",
|
||
|
L"PerfIncreaseMinimumTime",
|
||
|
&PopPerfIncreaseMinimumTime,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Throttle",
|
||
|
L"PerfDecreaseTimeValue",
|
||
|
&PopPerfDecreaseTimeValue,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Throttle",
|
||
|
L"PerfDecreaseMinimumTime",
|
||
|
&PopPerfDecreaseMinimumTime,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Throttle",
|
||
|
L"PerfDegradeThrottleMinCapacity",
|
||
|
&PopPerfDegradeThrottleMinCapacity,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Throttle",
|
||
|
L"PerfDegradeThrottleMinFrequency",
|
||
|
&PopPerfDegradeThrottleMinFrequency,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Throttle",
|
||
|
L"PerfMaxC3Frequency",
|
||
|
&PopPerfMaxC3Frequency,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Kernel",
|
||
|
L"ObCaseInsensitive",
|
||
|
&ObpCaseInsensitive,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\I/O System",
|
||
|
L"CountOperations",
|
||
|
&IoCountOperations,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\I/O System",
|
||
|
L"LargeIrpStackLocations",
|
||
|
&IopLargeIrpStackLocations,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\I/O System",
|
||
|
L"IoVerifierLevel",
|
||
|
&IovpVerifierLevel,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager",
|
||
|
L"ResourceTimeoutCount",
|
||
|
&ExResourceTimeoutCount,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager",
|
||
|
L"CriticalSectionTimeout",
|
||
|
&MmCritsectTimeoutSeconds,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager",
|
||
|
L"HeapSegmentReserve",
|
||
|
&MmHeapSegmentReserve,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager",
|
||
|
L"HeapSegmentCommit",
|
||
|
&MmHeapSegmentCommit,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager",
|
||
|
L"HeapDeCommitTotalFreeThreshold",
|
||
|
&MmHeapDeCommitTotalFreeThreshold,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager",
|
||
|
L"HeapDeCommitFreeBlockThreshold",
|
||
|
&MmHeapDeCommitFreeBlockThreshold,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
#if defined(_AMD64_) || defined(_IA64_)
|
||
|
|
||
|
{ L"Session Manager",
|
||
|
L"EnableAlignmentFaultExceptions",
|
||
|
&KiEnableAlignmentFaultExceptions,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
#endif
|
||
|
|
||
|
{ L"ProductOptions",
|
||
|
L"ProductType",
|
||
|
&MmProductType,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"ProductOptions",
|
||
|
L"Brand",
|
||
|
&CmBrand,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Terminal Server",
|
||
|
L"TSEnabled",
|
||
|
&ExpHydraEnabled,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Terminal Server",
|
||
|
L"TSAppCompat",
|
||
|
&ExpMultiUserTS,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"ProductOptions",
|
||
|
L"ProductSuite",
|
||
|
CmSuiteBuffer,
|
||
|
&CmSuiteBufferLength,
|
||
|
&CmSuiteBufferType
|
||
|
},
|
||
|
|
||
|
{ L"Windows",
|
||
|
L"CSDVersion",
|
||
|
&CmNtCSDVersion,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Windows",
|
||
|
L"CSDReleaseType",
|
||
|
&CmNtCSDReleaseType,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Nls\\Language",
|
||
|
L"Default",
|
||
|
CmDefaultLanguageId,
|
||
|
&CmDefaultLanguageIdLength,
|
||
|
&CmDefaultLanguageIdType
|
||
|
},
|
||
|
|
||
|
{ L"Nls\\Language",
|
||
|
L"InstallLanguage",
|
||
|
CmInstallUILanguageId,
|
||
|
&CmInstallUILanguageIdLength,
|
||
|
&CmInstallUILanguageIdType
|
||
|
},
|
||
|
|
||
|
{ L"\0\0",
|
||
|
L"RegistrySizeLimit",
|
||
|
&CmRegistrySizeLimit,
|
||
|
&CmRegistrySizeLimitLength,
|
||
|
&CmRegistrySizeLimitType
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Configuration Manager",
|
||
|
L"RegistryLogSizeLimit",
|
||
|
&CmRegistryLogSizeLimit,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
#if defined (_X86_)
|
||
|
//
|
||
|
// The following are used for testing NUMA configurations on
|
||
|
// non-NUMA machines.
|
||
|
//
|
||
|
|
||
|
{ L"Session Manager\\Memory Management\\FakeNuma",
|
||
|
L"NodeCount",
|
||
|
&KeVerifyNumaNodeCount,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management\\FakeNuma",
|
||
|
L"Affinity",
|
||
|
&KeVerifyNumaAffinity,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management\\FakeNuma",
|
||
|
L"AffinityShift",
|
||
|
&KeVerifyNumaAffinityShift,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management\\FakeNuma",
|
||
|
L"PageMask",
|
||
|
&KeVerifyNumaPageMask,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Memory Management\\FakeNuma",
|
||
|
L"PageShift",
|
||
|
&KeVerifyNumaPageShift,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
#endif
|
||
|
|
||
|
#if !defined(NT_UP)
|
||
|
{ L"Session Manager",
|
||
|
L"RegisteredProcessors",
|
||
|
&KeRegisteredProcessors,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
{ L"Session Manager",
|
||
|
L"LicensedProcessors",
|
||
|
&KeLicensedProcessors,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
#endif
|
||
|
|
||
|
{ L"Session Manager",
|
||
|
L"PowerPolicySimulate",
|
||
|
&PopSimulate,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Executive",
|
||
|
L"MaxTimeSeparationBeforeCorrect",
|
||
|
&ExpMaxTimeSeperationBeforeCorrect,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Windows",
|
||
|
L"ShutdownTime",
|
||
|
&ExpLastShutDown,
|
||
|
&shutdownlength,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"PriorityControl",
|
||
|
L"Win32PrioritySeparation",
|
||
|
&PsRawPrioritySeparation,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
#if defined(_X86_)
|
||
|
{ L"Session Manager",
|
||
|
L"EnableTimerWatchdog",
|
||
|
&KiEnableTimerWatchdog,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
#endif
|
||
|
|
||
|
{ L"Session Manager",
|
||
|
L"Debugger Retries",
|
||
|
&KdpContext.KdpDefaultRetries,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager\\Debug Print Filter",
|
||
|
L"WIN2000",
|
||
|
&Kd_WIN2000_Mask,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
#include "dpfiltercm.c"
|
||
|
|
||
|
{ L"WMI",
|
||
|
L"MaxEventSize",
|
||
|
&WmipMaxKmWnodeEventSize,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
#if defined(_IA64_)
|
||
|
{ L"WMI",
|
||
|
L"DisableMCAPopups",
|
||
|
&WmipDisableMCAPopups,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
#endif
|
||
|
|
||
|
{ L"WMI\\Trace",
|
||
|
L"UsePerformanceClock",
|
||
|
&WmiUsePerfClock,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"WMI\\Trace",
|
||
|
L"TraceAlignment",
|
||
|
&WmiTraceAlignment,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"Session Manager",
|
||
|
L"Initial Process",
|
||
|
NtInitialUserProcessBuffer,
|
||
|
&NtInitialUserProcessBufferLength,
|
||
|
&NtInitialUserProcessBufferType
|
||
|
},
|
||
|
|
||
|
{ L"EmbeddedNT\\Executive",
|
||
|
L"KernelOnlyConfiguration",
|
||
|
&PsEmbeddedNTMask,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ L"CrashControl",
|
||
|
L"AutoReboot",
|
||
|
&IopAutoReboot,
|
||
|
NULL,
|
||
|
NULL
|
||
|
},
|
||
|
|
||
|
{ NULL, NULL, NULL, NULL, NULL } // end marker
|
||
|
};
|
||
|
|
||
|
#ifdef ALLOC_DATA_PRAGMA
|
||
|
#pragma data_seg()
|
||
|
#endif
|