Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1285 lines
26 KiB

  1. /*++
  2. Copyright (c) 1990, 1991 Microsoft Corporation
  3. Module Name:
  4. cmdat3.c
  5. Abstract:
  6. This module contains registry "static" data which we don't
  7. want pulled into the loader.
  8. Author:
  9. Bryan Willman (bryanwi) 19-Oct-93
  10. Environment:
  11. Kernel mode.
  12. Revision History:
  13. --*/
  14. #include "cmp.h"
  15. #pragma hdrstop
  16. #include "dpfiltercm.h"
  17. //
  18. // ***** INIT *****
  19. //
  20. //
  21. // Data for CmGetSystemControlValues
  22. //
  23. //
  24. // ----- CmControlVector -----
  25. //
  26. #ifdef ALLOC_DATA_PRAGMA
  27. #pragma data_seg("INIT")
  28. #endif
  29. //
  30. // Local examples
  31. //
  32. WCHAR CmDefaultLanguageId[ 12 ] = { 0 };
  33. ULONG CmDefaultLanguageIdLength = sizeof( CmDefaultLanguageId );
  34. ULONG CmDefaultLanguageIdType = REG_NONE;
  35. WCHAR CmInstallUILanguageId[ 12 ] = { 0 };
  36. ULONG CmInstallUILanguageIdLength = sizeof( CmInstallUILanguageId );
  37. ULONG CmInstallUILanguageIdType = REG_NONE;
  38. //
  39. // suite data
  40. //
  41. WCHAR CmSuiteBuffer[128] = {0};
  42. ULONG CmSuiteBufferLength = sizeof(CmSuiteBuffer);
  43. ULONG CmSuiteBufferType = REG_NONE;
  44. //
  45. // Verify driver list data
  46. //
  47. extern LONG CmRegistryLogSizeLimit;
  48. extern WCHAR MmLargePageDriverBuffer[];
  49. extern ULONG MmLargePageDriverBufferLength;
  50. extern ULONG MmLargePageDriverBufferType;
  51. extern WCHAR MmVerifyDriverBuffer[];
  52. extern ULONG MmVerifyDriverBufferLength;
  53. extern ULONG MmVerifyDriverBufferType;
  54. extern ULONG MmVerifyDriverLevel;
  55. extern ULONG IopAutoReboot;
  56. extern ULONG ObpProtectionMode;
  57. extern ULONG ObpAuditBaseDirectories;
  58. extern ULONG ObpAuditBaseObjects;
  59. extern ULONG ObpObjectSecurityMode;
  60. extern ACCESS_MASK SepProcessAccessesToAudit;
  61. extern ULONG CmNtGlobalFlag;
  62. extern ULONG CmpLazyFlushIntervalInSeconds;
  63. extern ULONG CmpLazyFlushHiveCount;
  64. extern SIZE_T PoolTrackTableSize;
  65. extern SIZE_T PoolBigPageTableSize;
  66. extern SIZE_T MmAllocationFragment;
  67. extern SIZE_T MmSizeOfPagedPoolInBytes;
  68. extern SIZE_T MmSizeOfNonPagedPoolInBytes;
  69. extern ULONG MmMaximumNonPagedPoolPercent;
  70. extern ULONG MmLargeSystemCache;
  71. #if defined (_X86_)
  72. extern ULONG MmLargeStackSize;
  73. #endif
  74. extern ULONG MmAllocationPreference;
  75. extern ULONG MmNumberOfSystemPtes;
  76. extern ULONG MmLowMemoryThreshold;
  77. extern ULONG MmHighMemoryThreshold;
  78. extern ULONG MmConsumedPoolPercentage;
  79. extern ULONG MmSecondaryColors;
  80. extern ULONG MmDisablePagingExecutive;
  81. extern ULONG MmModifiedPageLifeInSeconds;
  82. extern LOGICAL MmSpecialPoolCatchOverruns;
  83. #if 0
  84. extern ULONG MmCompressionThresholdRatio;
  85. #endif
  86. extern ULONG MmSpecialPoolTag;
  87. extern ULONG MmDynamicPfn;
  88. extern ULONG MmMirroring;
  89. extern SIZE_T MmSystemViewSize;
  90. extern SIZE_T MmSessionViewSize;
  91. extern SIZE_T MmSessionPoolSize;
  92. extern SIZE_T MmSessionImageSize;
  93. extern ULONG MmEnforceWriteProtection;
  94. extern ULONG MmLargePageMinimum;
  95. extern LOGICAL MmSnapUnloads;
  96. extern LOGICAL MmTrackLockedPages;
  97. extern LOGICAL MmMakeLowMemory;
  98. extern LOGICAL MmProtectFreedNonPagedPool;
  99. extern ULONG MmTrackPtes;
  100. extern ULONG CmRegistrySizeLimit;
  101. extern ULONG CmRegistrySizeLimitLength;
  102. extern ULONG CmRegistrySizeLimitType;
  103. extern ULONG PspDefaultPagedLimit;
  104. extern ULONG PspDefaultNonPagedLimit;
  105. extern ULONG PspDefaultPagefileLimit;
  106. extern ULONG ExResourceTimeoutCount;
  107. extern ULONG ExResourceCheckFlags;
  108. extern ULONG MmCritsectTimeoutSeconds;
  109. extern SIZE_T MmHeapSegmentReserve;
  110. extern SIZE_T MmHeapSegmentCommit;
  111. extern SIZE_T MmHeapDeCommitTotalFreeThreshold;
  112. extern SIZE_T MmHeapDeCommitFreeBlockThreshold;
  113. extern ULONG ExpAdditionalCriticalWorkerThreads;
  114. extern ULONG ExpAdditionalDelayedWorkerThreads;
  115. extern ULONG MmProductType;
  116. extern ULONG CmBrand;
  117. extern ULONG ExpHydraEnabled;
  118. extern ULONG ExpMultiUserTS;
  119. extern LOGICAL IoCountOperations;
  120. extern ULONG IopLargeIrpStackLocations;
  121. extern ULONG IovpVerifierLevel;
  122. extern ULONG IopFailZeroAccessCreate;
  123. extern ULONG MmZeroPageFile;
  124. extern ULONG ExpNtExpirationData[3];
  125. extern ULONG ExpNtExpirationDataLength;
  126. extern ULONG ExpMaxTimeSeperationBeforeCorrect;
  127. extern ULONG PopSimulate;
  128. extern ULONG PopIdleDefaultMinThrottle;
  129. extern ULONG PopIdleThrottleCheckRate;
  130. extern ULONG PopIdleThrottleCheckTimeout;
  131. extern ULONG PopIdleFrom0Delay;
  132. extern ULONG PopIdleFrom0IdlePercent;
  133. extern ULONG PopIdle0TimeCheck;
  134. extern ULONG PopIdleTimeCheck;
  135. extern ULONG PopIdleTo0Percent;
  136. extern ULONG PopIdleDefaultDemotePercent;
  137. extern ULONG PopIdleDefaultDemoteTime;
  138. extern ULONG PopIdleDefaultPromotePercent;
  139. extern ULONG PopIdleDefaultPromoteTime;
  140. extern ULONG PopPerfTimeDelta;
  141. extern ULONG PopPerfCriticalTimeDelta;
  142. extern ULONG PopPerfCriticalFrequencyDelta;
  143. extern ULONG PopPerfIncreasePercentModifier;
  144. extern ULONG PopPerfIncreaseAbsoluteModifier;
  145. extern ULONG PopPerfDecreasePercentModifier;
  146. extern ULONG PopPerfDecreaseAbsoluteModifier;
  147. extern ULONG PopPerfIncreaseTimeValue;
  148. extern ULONG PopPerfIncreaseMinimumTime;
  149. extern ULONG PopPerfDecreaseTimeValue;
  150. extern ULONG PopPerfDecreaseMinimumTime;
  151. extern ULONG PopPerfDegradeThrottleMinCapacity;
  152. extern ULONG PopPerfDegradeThrottleMinFrequency;
  153. extern ULONG PopPerfMaxC3Frequency;
  154. extern ULONG KiEnableTimerWatchdog;
  155. extern ULONG ObpTraceNoDeregister;
  156. extern WCHAR ObpTracePoolTagsBuffer[];
  157. extern ULONG ObpTracePoolTagsLength;
  158. extern ULONG ObpCaseInsensitive;
  159. extern WCHAR ObpUnsecureGlobalNamesBuffer[];
  160. extern ULONG ObpUnsecureGlobalNamesLength;
  161. extern ULONG ViSearchedNodesLimitFromRegistry;
  162. extern ULONG ViRecursionDepthLimitFromRegistry;
  163. extern ULONG MmMinimumStackCommitInBytes;
  164. extern ULONG ObpLUIDDeviceMapsDisabled;
  165. #if defined(_IA64_)
  166. extern ULONG KiEnableAlignmentFaultExceptions;
  167. #endif
  168. extern ULONG KiMaximumDpcQueueDepth;
  169. extern ULONG KiMinimumDpcRate;
  170. extern ULONG KiAdjustDpcThreshold;
  171. extern ULONG KiIdealDpcRate;
  172. extern LARGE_INTEGER ExpLastShutDown;
  173. ULONG shutdownlength = 0;
  174. #if defined (_X86_)
  175. extern ULONG KiFastSystemCallDisable;
  176. extern ULONG KiXMMIZeroingEnable;
  177. extern ULONG KiTimeLimitDpcMicroseconds;
  178. extern ULONG KiTimeLimitIsrMicroseconds;
  179. #endif
  180. #if defined(_IA64_)
  181. extern ULONG KiExceptionDeferralMode;
  182. extern ULONG KiBackingStoreSecurityMode;
  183. #endif
  184. //Debugger Retries
  185. extern KD_CONTEXT KdpContext;
  186. //
  187. // WMI Control Variables
  188. extern ULONG WmipMaxKmWnodeEventSize;
  189. #if defined (_IA64_)
  190. extern ULONG WmipDisableMCAPopups;
  191. extern ULONG WmipCoalesceCorrectedErrorInterval;
  192. extern ULONG WmipSingleBitEccErrorThreshold;
  193. extern ULONG WmipMaxCorrectedMCEOutstanding;
  194. extern ULONG WmipCorrectedEventlogCounter;
  195. #endif
  196. extern ULONG WmiTraceAlignment;
  197. // Initial user-mode process to start and arguments.
  198. extern WCHAR NtInitialUserProcessBuffer[];
  199. extern ULONG NtInitialUserProcessBufferLength;
  200. extern ULONG NtInitialUserProcessBufferType;
  201. //
  202. // CmpUlongPtrLength is used for registry values that are 4-byte on 32-bit
  203. // machines and can be 64-bit on 64-bit machines.
  204. //
  205. ULONG CmpUlongPtrLength = sizeof (ULONG_PTR);
  206. //
  207. // Vector - see ntos\inc\cm.h for definition
  208. //
  209. CM_SYSTEM_CONTROL_VECTOR CmControlVector[] = {
  210. { L"Session Manager",
  211. L"ProtectionMode",
  212. &ObpProtectionMode,
  213. NULL,
  214. NULL
  215. },
  216. { L"Session Manager",
  217. L"ObjectSecurityMode",
  218. &ObpObjectSecurityMode,
  219. NULL,
  220. NULL
  221. },
  222. { L"Session Manager",
  223. L"LUIDDeviceMapsDisabled",
  224. &ObpLUIDDeviceMapsDisabled,
  225. NULL,
  226. NULL
  227. },
  228. { L"LSA",
  229. L"AuditBaseDirectories",
  230. &ObpAuditBaseDirectories,
  231. NULL,
  232. NULL
  233. },
  234. { L"LSA",
  235. L"AuditBaseObjects",
  236. &ObpAuditBaseObjects,
  237. NULL,
  238. NULL
  239. },
  240. { L"LSA\\audit",
  241. L"ProcessAccessesToAudit",
  242. &SepProcessAccessesToAudit,
  243. NULL,
  244. NULL
  245. },
  246. { L"TimeZoneInformation",
  247. L"ActiveTimeBias",
  248. &ExpLastTimeZoneBias,
  249. NULL,
  250. NULL
  251. },
  252. { L"TimeZoneInformation",
  253. L"Bias",
  254. &ExpAltTimeZoneBias,
  255. NULL,
  256. NULL
  257. },
  258. { L"TimeZoneInformation",
  259. L"RealTimeIsUniversal",
  260. &ExpRealTimeIsUniversal,
  261. NULL,
  262. NULL
  263. },
  264. { L"Session Manager",
  265. L"GlobalFlag",
  266. &CmNtGlobalFlag,
  267. NULL,
  268. NULL
  269. },
  270. { L"Session Manager\\Memory Management",
  271. L"PagedPoolQuota",
  272. &PspDefaultPagedLimit,
  273. NULL,
  274. NULL
  275. },
  276. { L"Session Manager\\Memory Management",
  277. L"NonPagedPoolQuota",
  278. &PspDefaultNonPagedLimit,
  279. NULL,
  280. NULL
  281. },
  282. { L"Session Manager\\Memory Management",
  283. L"PagingFileQuota",
  284. &PspDefaultPagefileLimit,
  285. NULL,
  286. NULL
  287. },
  288. { L"Session Manager\\Memory Management",
  289. L"AllocationPreference",
  290. &MmAllocationPreference,
  291. NULL,
  292. NULL
  293. },
  294. { L"Session Manager\\Memory Management",
  295. L"DynamicMemory",
  296. &MmDynamicPfn,
  297. NULL,
  298. NULL
  299. },
  300. { L"Session Manager\\Memory Management",
  301. L"Mirroring",
  302. &MmMirroring,
  303. NULL,
  304. NULL
  305. },
  306. { L"Session Manager\\Memory Management",
  307. L"SystemViewSize",
  308. &MmSystemViewSize,
  309. NULL,
  310. NULL
  311. },
  312. { L"Session Manager\\Memory Management",
  313. L"SessionViewSize",
  314. &MmSessionViewSize,
  315. NULL,
  316. NULL
  317. },
  318. { L"Session Manager\\Memory Management",
  319. L"SessionImageSize",
  320. &MmSessionImageSize,
  321. NULL,
  322. NULL
  323. },
  324. { L"Session Manager\\Memory Management",
  325. L"SessionPoolSize",
  326. &MmSessionPoolSize,
  327. NULL,
  328. NULL
  329. },
  330. #if 0
  331. { L"Session Manager\\Memory Management",
  332. L"CompressionThresholdPercentage",
  333. &MmCompressionThresholdRatio,
  334. NULL,
  335. NULL
  336. },
  337. #endif
  338. { L"Session Manager\\Memory Management",
  339. L"PoolUsageMaximum",
  340. &MmConsumedPoolPercentage,
  341. NULL,
  342. NULL
  343. },
  344. { L"Session Manager\\Memory Management",
  345. L"MapAllocationFragment",
  346. &MmAllocationFragment,
  347. NULL,
  348. NULL
  349. },
  350. { L"Session Manager\\Memory Management",
  351. L"PagedPoolSize",
  352. &MmSizeOfPagedPoolInBytes,
  353. &CmpUlongPtrLength,
  354. NULL
  355. },
  356. { L"Session Manager\\Memory Management",
  357. L"NonPagedPoolSize",
  358. &MmSizeOfNonPagedPoolInBytes,
  359. &CmpUlongPtrLength,
  360. NULL
  361. },
  362. { L"Session Manager\\Memory Management",
  363. L"NonPagedPoolMaximumPercent",
  364. &MmMaximumNonPagedPoolPercent,
  365. NULL,
  366. NULL
  367. },
  368. { L"Session Manager\\Memory Management",
  369. L"LargeSystemCache",
  370. &MmLargeSystemCache,
  371. NULL,
  372. NULL
  373. },
  374. #if defined (_X86_)
  375. { L"Session Manager\\Memory Management",
  376. L"LargeStackSize",
  377. &MmLargeStackSize,
  378. NULL,
  379. NULL
  380. },
  381. #endif
  382. { L"Session Manager\\Memory Management",
  383. L"SystemPages",
  384. &MmNumberOfSystemPtes,
  385. NULL,
  386. NULL
  387. },
  388. { L"Session Manager\\Memory Management",
  389. L"LargePageDrivers",
  390. MmLargePageDriverBuffer,
  391. &MmLargePageDriverBufferLength,
  392. &MmLargePageDriverBufferType
  393. },
  394. { L"Session Manager\\Memory Management",
  395. L"LowMemoryThreshold",
  396. &MmLowMemoryThreshold,
  397. NULL,
  398. NULL
  399. },
  400. { L"Session Manager\\Memory Management",
  401. L"HighMemoryThreshold",
  402. &MmHighMemoryThreshold,
  403. NULL,
  404. NULL
  405. },
  406. { L"Session Manager\\Memory Management",
  407. L"DisablePagingExecutive",
  408. &MmDisablePagingExecutive,
  409. NULL,
  410. NULL
  411. },
  412. { L"Session Manager\\Memory Management",
  413. L"ModifiedPageLife",
  414. &MmModifiedPageLifeInSeconds,
  415. NULL,
  416. NULL
  417. },
  418. { L"Session Manager\\Memory Management",
  419. L"SecondLevelDataCache",
  420. &MmSecondaryColors,
  421. NULL,
  422. NULL
  423. },
  424. { L"Session Manager\\Memory Management",
  425. L"ClearPageFileAtShutdown",
  426. &MmZeroPageFile,
  427. NULL,
  428. NULL
  429. },
  430. { L"Session Manager\\Memory Management",
  431. L"PoolTagSmallTableSize",
  432. &PoolTrackTableSize,
  433. NULL,
  434. NULL
  435. },
  436. { L"Session Manager\\Memory Management",
  437. L"PoolTagBigTableSize",
  438. &PoolBigPageTableSize,
  439. NULL,
  440. NULL
  441. },
  442. { L"Session Manager\\Memory Management",
  443. L"PoolTag",
  444. &MmSpecialPoolTag,
  445. NULL,
  446. NULL
  447. },
  448. { L"Session Manager\\Memory Management",
  449. L"PoolTagOverruns",
  450. &MmSpecialPoolCatchOverruns,
  451. NULL,
  452. NULL
  453. },
  454. { L"Session Manager\\Memory Management",
  455. L"SnapUnloads",
  456. &MmSnapUnloads,
  457. NULL,
  458. NULL
  459. },
  460. { L"Session Manager\\Memory Management",
  461. L"ProtectNonPagedPool",
  462. &MmProtectFreedNonPagedPool,
  463. NULL,
  464. NULL
  465. },
  466. { L"Session Manager\\Memory Management",
  467. L"TrackLockedPages",
  468. &MmTrackLockedPages,
  469. NULL,
  470. NULL
  471. },
  472. { L"Session Manager\\Memory Management",
  473. L"TrackPtes",
  474. &MmTrackPtes,
  475. NULL,
  476. NULL
  477. },
  478. { L"Session Manager\\Memory Management",
  479. L"VerifyDrivers",
  480. MmVerifyDriverBuffer,
  481. &MmVerifyDriverBufferLength,
  482. &MmVerifyDriverBufferType
  483. },
  484. { L"Session Manager\\Memory Management",
  485. L"VerifyDriverLevel",
  486. &MmVerifyDriverLevel,
  487. NULL,
  488. NULL
  489. },
  490. { L"Session Manager\\Memory Management",
  491. L"LargePageMinimum",
  492. &MmLargePageMinimum,
  493. NULL,
  494. NULL
  495. },
  496. { L"Session Manager\\Memory Management",
  497. L"EnforceWriteProtection",
  498. &MmEnforceWriteProtection,
  499. NULL,
  500. NULL
  501. },
  502. { L"Session Manager\\Memory Management",
  503. L"MakeLowMemory",
  504. &MmMakeLowMemory,
  505. NULL,
  506. NULL
  507. },
  508. { L"Session Manager\\Memory Management",
  509. L"DeadlockRecursionDepthLimit",
  510. &ViRecursionDepthLimitFromRegistry,
  511. NULL,
  512. NULL
  513. },
  514. { L"Session Manager\\Memory Management",
  515. L"DeadlockSearchNodesLimit",
  516. &ViSearchedNodesLimitFromRegistry,
  517. NULL,
  518. NULL
  519. },
  520. { L"Session Manager\\Memory Management",
  521. L"MinimumStackCommitInBytes",
  522. &MmMinimumStackCommitInBytes,
  523. NULL,
  524. NULL
  525. },
  526. { L"Session Manager\\Executive",
  527. L"AdditionalCriticalWorkerThreads",
  528. &ExpAdditionalCriticalWorkerThreads,
  529. NULL,
  530. NULL
  531. },
  532. { L"Session Manager\\Executive",
  533. L"AdditionalDelayedWorkerThreads",
  534. &ExpAdditionalDelayedWorkerThreads,
  535. NULL,
  536. NULL
  537. },
  538. { L"Session Manager\\Executive",
  539. L"PriorityQuantumMatrix",
  540. &ExpNtExpirationData,
  541. &ExpNtExpirationDataLength,
  542. NULL
  543. },
  544. { L"Session Manager\\Kernel",
  545. L"DPCTimeout",
  546. &KiDPCTimeout,
  547. NULL,
  548. NULL
  549. },
  550. { L"Session Manager\\Kernel",
  551. L"SpinlockTimeout",
  552. &KiSpinlockTimeout,
  553. NULL,
  554. NULL
  555. },
  556. { L"Session Manager\\Kernel",
  557. L"ThreadDpcEnable",
  558. &KeThreadDpcEnable,
  559. NULL,
  560. NULL
  561. },
  562. { L"Session Manager\\Kernel",
  563. L"DpcQueueDepth",
  564. &KiMaximumDpcQueueDepth,
  565. NULL,
  566. NULL
  567. },
  568. { L"Session Manager\\Kernel",
  569. L"MinimumDpcRate",
  570. &KiMinimumDpcRate,
  571. NULL,
  572. NULL
  573. },
  574. { L"Session Manager\\Kernel",
  575. L"AdjustDpcThreshold",
  576. &KiAdjustDpcThreshold,
  577. NULL,
  578. NULL
  579. },
  580. #if defined(_IA64_)
  581. { L"Session Manager\\Kernel",
  582. L"ExceptionDeferralMode",
  583. &KiExceptionDeferralMode,
  584. NULL,
  585. NULL
  586. },
  587. { L"Session Manager\\Kernel",
  588. L"BackingStoreSecurityMode",
  589. &KiBackingStoreSecurityMode,
  590. NULL,
  591. NULL
  592. },
  593. #endif
  594. { L"Session Manager\\Kernel",
  595. L"IdealDpcRate",
  596. &KiIdealDpcRate,
  597. NULL,
  598. NULL
  599. },
  600. #if defined(_X86_)
  601. { L"Session Manager\\Kernel",
  602. L"FastSystemCallDisable",
  603. &KiFastSystemCallDisable,
  604. NULL,
  605. NULL
  606. },
  607. { L"Session Manager\\Kernel",
  608. L"XMMIZeroingEnable",
  609. &KiXMMIZeroingEnable,
  610. NULL,
  611. NULL
  612. },
  613. #endif
  614. { L"Session Manager\\Kernel",
  615. L"ObTracePoolTags",
  616. &ObpTracePoolTagsBuffer,
  617. &ObpTracePoolTagsLength,
  618. NULL
  619. },
  620. { L"Session Manager\\Kernel",
  621. L"ObTraceNoDeregister",
  622. &ObpTraceNoDeregister,
  623. NULL,
  624. NULL
  625. },
  626. { L"Session Manager\\Kernel",
  627. L"PoCleanShutdownFlags",
  628. &PopShutdownCleanly,
  629. NULL,
  630. NULL
  631. },
  632. { L"Session Manager\\Kernel",
  633. L"ObUnsecureGlobalNames",
  634. &ObpUnsecureGlobalNamesBuffer,
  635. &ObpUnsecureGlobalNamesLength,
  636. NULL
  637. },
  638. #if defined(_X86_)
  639. { L"Session Manager\\Kernel",
  640. L"TimeLimitDpcMicroseconds",
  641. &KiTimeLimitDpcMicroseconds,
  642. NULL,
  643. NULL
  644. },
  645. { L"Session Manager\\Kernel",
  646. L"TimeLimitIsrMicroseconds",
  647. &KiTimeLimitIsrMicroseconds,
  648. NULL,
  649. NULL
  650. },
  651. #endif
  652. { L"Session Manager\\Power",
  653. L"IdleDefaultMinThrottle",
  654. &PopIdleDefaultMinThrottle,
  655. NULL,
  656. NULL
  657. },
  658. { L"Session Manager\\Power",
  659. L"IdleThrottleCheckRate",
  660. &PopIdleThrottleCheckRate,
  661. NULL,
  662. NULL
  663. },
  664. { L"Session Manager\\Power",
  665. L"IdleThrottleCheckTimeout",
  666. &PopIdleThrottleCheckTimeout,
  667. NULL,
  668. NULL
  669. },
  670. { L"Session Manager\\Power",
  671. L"IdleFrom0Delay",
  672. &PopIdleFrom0Delay,
  673. NULL,
  674. NULL
  675. },
  676. { L"Session Manager\\Power",
  677. L"IdleFrom0IdlePercent",
  678. &PopIdleFrom0IdlePercent,
  679. NULL,
  680. NULL
  681. },
  682. { L"Session Manager\\Power",
  683. L"Idle0TimeCheck",
  684. &PopIdle0TimeCheck,
  685. NULL,
  686. NULL
  687. },
  688. { L"Session Manager\\Power",
  689. L"IdleTimeCheck",
  690. &PopIdleTimeCheck,
  691. NULL,
  692. NULL
  693. },
  694. { L"Session Manager\\Power",
  695. L"IdleTo0Percent",
  696. &PopIdleTo0Percent,
  697. NULL,
  698. NULL
  699. },
  700. { L"Session Manager\\Power",
  701. L"IdleDefaultDemotePercent",
  702. &PopIdleDefaultDemotePercent,
  703. NULL,
  704. NULL
  705. },
  706. { L"Session Manager\\Power",
  707. L"IdleDefaultDemoteTime",
  708. &PopIdleDefaultDemoteTime,
  709. NULL,
  710. NULL
  711. },
  712. { L"Session Manager\\Power",
  713. L"IdleDefaultPromotePercent",
  714. &PopIdleDefaultPromotePercent,
  715. NULL,
  716. NULL
  717. },
  718. { L"Session Manager\\Power",
  719. L"IdleDefaultPromoteTime",
  720. &PopIdleDefaultPromoteTime,
  721. NULL,
  722. NULL
  723. },
  724. { L"Session Manager\\Throttle",
  725. L"PerfTimeDelta",
  726. &PopPerfTimeDelta,
  727. NULL,
  728. NULL
  729. },
  730. { L"Session Manager\\Throttle",
  731. L"PerfCriticalTimeDelta",
  732. &PopPerfCriticalTimeDelta,
  733. NULL,
  734. NULL
  735. },
  736. { L"Session Manager\\Throttle",
  737. L"PerfCriticalFrequencyDelta",
  738. &PopPerfCriticalFrequencyDelta,
  739. NULL,
  740. NULL
  741. },
  742. { L"Session Manager\\Throttle",
  743. L"PerfIncreasePercentModifier",
  744. &PopPerfIncreasePercentModifier,
  745. NULL,
  746. NULL
  747. },
  748. { L"Session Manager\\Throttle",
  749. L"PerfIncreaseAbsoluteModifier",
  750. &PopPerfIncreaseAbsoluteModifier,
  751. NULL,
  752. NULL
  753. },
  754. { L"Session Manager\\Throttle",
  755. L"PerfDecreasePercentModifier",
  756. &PopPerfDecreasePercentModifier,
  757. NULL,
  758. NULL
  759. },
  760. { L"Session Manager\\Throttle",
  761. L"PerfDecreaseAbsoluteModifier",
  762. &PopPerfDecreaseAbsoluteModifier,
  763. NULL,
  764. NULL
  765. },
  766. { L"Session Manager\\Throttle",
  767. L"PerfIncreaseTimeValue",
  768. &PopPerfIncreaseTimeValue,
  769. NULL,
  770. NULL
  771. },
  772. { L"Session Manager\\Throttle",
  773. L"PerfIncreaseMinimumTime",
  774. &PopPerfIncreaseMinimumTime,
  775. NULL,
  776. NULL
  777. },
  778. { L"Session Manager\\Throttle",
  779. L"PerfDecreaseTimeValue",
  780. &PopPerfDecreaseTimeValue,
  781. NULL,
  782. NULL
  783. },
  784. { L"Session Manager\\Throttle",
  785. L"PerfDecreaseMinimumTime",
  786. &PopPerfDecreaseMinimumTime,
  787. NULL,
  788. NULL
  789. },
  790. { L"Session Manager\\Throttle",
  791. L"PerfDegradeThrottleMinCapacity",
  792. &PopPerfDegradeThrottleMinCapacity,
  793. NULL,
  794. NULL
  795. },
  796. { L"Session Manager\\Throttle",
  797. L"PerfDegradeThrottleMinFrequency",
  798. &PopPerfDegradeThrottleMinFrequency,
  799. NULL,
  800. NULL
  801. },
  802. { L"Session Manager\\Throttle",
  803. L"PerfMaxC3Frequency",
  804. &PopPerfMaxC3Frequency,
  805. NULL,
  806. NULL
  807. },
  808. { L"Session Manager\\Kernel",
  809. L"ObCaseInsensitive",
  810. &ObpCaseInsensitive,
  811. NULL,
  812. NULL
  813. },
  814. { L"Session Manager\\I/O System",
  815. L"CountOperations",
  816. &IoCountOperations,
  817. NULL,
  818. NULL
  819. },
  820. { L"Session Manager\\I/O System",
  821. L"LargeIrpStackLocations",
  822. &IopLargeIrpStackLocations,
  823. NULL,
  824. NULL
  825. },
  826. { L"Session Manager\\I/O System",
  827. L"IoVerifierLevel",
  828. &IovpVerifierLevel,
  829. NULL,
  830. NULL
  831. },
  832. { L"Session Manager\\I/O System",
  833. L"IoFailZeroAccessCreate",
  834. &IopFailZeroAccessCreate,
  835. NULL,
  836. NULL
  837. },
  838. { L"Session Manager",
  839. L"ResourceTimeoutCount",
  840. &ExResourceTimeoutCount,
  841. NULL,
  842. NULL
  843. },
  844. { L"Session Manager",
  845. L"ResourceCheckFlags",
  846. &ExResourceCheckFlags,
  847. NULL,
  848. NULL
  849. },
  850. { L"Session Manager",
  851. L"CriticalSectionTimeout",
  852. &MmCritsectTimeoutSeconds,
  853. NULL,
  854. NULL
  855. },
  856. { L"Session Manager",
  857. L"HeapSegmentReserve",
  858. &MmHeapSegmentReserve,
  859. NULL,
  860. NULL
  861. },
  862. { L"Session Manager",
  863. L"HeapSegmentCommit",
  864. &MmHeapSegmentCommit,
  865. NULL,
  866. NULL
  867. },
  868. { L"Session Manager",
  869. L"HeapDeCommitTotalFreeThreshold",
  870. &MmHeapDeCommitTotalFreeThreshold,
  871. NULL,
  872. NULL
  873. },
  874. { L"Session Manager",
  875. L"HeapDeCommitFreeBlockThreshold",
  876. &MmHeapDeCommitFreeBlockThreshold,
  877. NULL,
  878. NULL
  879. },
  880. #if defined(_IA64_)
  881. { L"Session Manager",
  882. L"EnableAlignmentFaultExceptions",
  883. &KiEnableAlignmentFaultExceptions,
  884. NULL,
  885. NULL
  886. },
  887. #endif
  888. { L"ProductOptions",
  889. L"ProductType",
  890. &MmProductType,
  891. NULL,
  892. NULL
  893. },
  894. { L"ProductOptions",
  895. L"Brand",
  896. &CmBrand,
  897. NULL,
  898. NULL
  899. },
  900. { L"Terminal Server",
  901. L"TSEnabled",
  902. &ExpHydraEnabled,
  903. NULL,
  904. NULL
  905. },
  906. { L"Terminal Server",
  907. L"TSAppCompat",
  908. &ExpMultiUserTS,
  909. NULL,
  910. NULL
  911. },
  912. { L"ProductOptions",
  913. L"ProductSuite",
  914. CmSuiteBuffer,
  915. &CmSuiteBufferLength,
  916. &CmSuiteBufferType
  917. },
  918. { L"Windows",
  919. L"CSDVersion",
  920. &CmNtCSDVersion,
  921. NULL,
  922. NULL
  923. },
  924. { L"Nls\\Language",
  925. L"Default",
  926. CmDefaultLanguageId,
  927. &CmDefaultLanguageIdLength,
  928. &CmDefaultLanguageIdType
  929. },
  930. { L"Nls\\Language",
  931. L"InstallLanguage",
  932. CmInstallUILanguageId,
  933. &CmInstallUILanguageIdLength,
  934. &CmInstallUILanguageIdType
  935. },
  936. { L"\0\0",
  937. L"RegistrySizeLimit",
  938. &CmRegistrySizeLimit,
  939. &CmRegistrySizeLimitLength,
  940. &CmRegistrySizeLimitType
  941. },
  942. { L"Session Manager\\Configuration Manager",
  943. L"RegistryLogSizeLimit",
  944. &CmRegistryLogSizeLimit,
  945. NULL,
  946. NULL
  947. },
  948. { L"Session Manager\\Configuration Manager",
  949. L"RegistryLazyFlushInterval",
  950. &CmpLazyFlushIntervalInSeconds,
  951. NULL,
  952. NULL
  953. },
  954. { L"Session Manager\\Configuration Manager",
  955. L"RegistryLazyFlushHiveCount",
  956. &CmpLazyFlushHiveCount,
  957. NULL,
  958. NULL
  959. },
  960. #if !defined(NT_UP)
  961. { L"Session Manager",
  962. L"RegisteredProcessors",
  963. &KeRegisteredProcessors,
  964. NULL,
  965. NULL
  966. },
  967. { L"Session Manager",
  968. L"LicensedProcessors",
  969. &KeLicensedProcessors,
  970. NULL,
  971. NULL
  972. },
  973. #endif
  974. { L"Session Manager",
  975. L"PowerPolicySimulate",
  976. &PopSimulate,
  977. NULL,
  978. NULL
  979. },
  980. { L"Session Manager\\Executive",
  981. L"MaxTimeSeparationBeforeCorrect",
  982. &ExpMaxTimeSeperationBeforeCorrect,
  983. NULL,
  984. NULL
  985. },
  986. { L"Windows",
  987. L"ShutdownTime",
  988. &ExpLastShutDown,
  989. &shutdownlength,
  990. NULL
  991. },
  992. { L"PriorityControl",
  993. L"Win32PrioritySeparation",
  994. &PsRawPrioritySeparation,
  995. NULL,
  996. NULL
  997. },
  998. #if defined(_X86_)
  999. { L"Session Manager",
  1000. L"EnableTimerWatchdog",
  1001. &KiEnableTimerWatchdog,
  1002. NULL,
  1003. NULL
  1004. },
  1005. #endif
  1006. { L"Session Manager",
  1007. L"Debugger Retries",
  1008. &KdpContext.KdpDefaultRetries,
  1009. NULL,
  1010. NULL
  1011. },
  1012. { L"Session Manager\\Debug Print Filter",
  1013. L"WIN2000",
  1014. &Kd_WIN2000_Mask,
  1015. NULL,
  1016. NULL
  1017. },
  1018. #include "dpfiltercm.c"
  1019. { L"WMI",
  1020. L"MaxEventSize",
  1021. &WmipMaxKmWnodeEventSize,
  1022. NULL,
  1023. NULL
  1024. },
  1025. #if defined(_IA64_)
  1026. { L"WMI",
  1027. L"DisableMCAPopups",
  1028. &WmipDisableMCAPopups,
  1029. NULL,
  1030. NULL
  1031. },
  1032. { L"WMI",
  1033. L"CoalesceCorrectedErrorInterval",
  1034. &WmipCoalesceCorrectedErrorInterval,
  1035. NULL,
  1036. NULL
  1037. },
  1038. { L"WMI",
  1039. L"SingleBitEccErrorThreshold",
  1040. &WmipSingleBitEccErrorThreshold,
  1041. NULL,
  1042. NULL
  1043. },
  1044. { L"WMI",
  1045. L"MaxCorrectedMCEOutstanding",
  1046. &WmipMaxCorrectedMCEOutstanding,
  1047. NULL,
  1048. NULL
  1049. },
  1050. { L"WMI",
  1051. L"MaxCorrectedEventlogs",
  1052. &WmipCorrectedEventlogCounter,
  1053. NULL,
  1054. NULL
  1055. },
  1056. #endif
  1057. { L"WMI\\Trace",
  1058. L"UsePerformanceClock",
  1059. &WmiUsePerfClock,
  1060. NULL,
  1061. NULL
  1062. },
  1063. { L"WMI\\Trace",
  1064. L"TraceAlignment",
  1065. &WmiTraceAlignment,
  1066. NULL,
  1067. NULL
  1068. },
  1069. { L"Session Manager",
  1070. L"Initial Process",
  1071. NtInitialUserProcessBuffer,
  1072. &NtInitialUserProcessBufferLength,
  1073. &NtInitialUserProcessBufferType
  1074. },
  1075. { L"EmbeddedNT\\Executive",
  1076. L"KernelOnlyConfiguration",
  1077. &PsEmbeddedNTMask,
  1078. NULL,
  1079. NULL
  1080. },
  1081. { L"CrashControl",
  1082. L"AutoReboot",
  1083. &IopAutoReboot,
  1084. NULL,
  1085. NULL
  1086. },
  1087. { NULL, NULL, NULL, NULL, NULL } // end marker
  1088. };
  1089. #ifdef ALLOC_DATA_PRAGMA
  1090. #pragma data_seg()
  1091. #endif