ReactOS  0.4.12-dev-934-g9a4676f
cmdata.c
Go to the documentation of this file.
1 /*
2  * PROJECT: ReactOS Kernel
3  * LICENSE: GPL - See COPYING in the top level directory
4  * FILE: ntoskrnl/config/cmdata.c
5  * PURPOSE: Configuration Manager - Global Configuration Data
6  * PROGRAMMERS: Alex Ionescu (alex.ionescu@reactos.org)
7  */
8 
9 /* INCLUDES ******************************************************************/
10 
11 #include "ntoskrnl.h"
12 #define NDEBUG
13 #include "debug.h"
14 #include "./../mm/ARM3/miarm.h"
15 
16 /* GLOBALS *******************************************************************/
17 
20 extern ULONG MmProductType;
21 
25 
29 
33 
35 
38 
40 
42 {
43  { L"HARDWARE", L"MACHINE\\", NULL, HIVE_VOLATILE , 0 , NULL, FALSE, FALSE, FALSE},
44  { L"SECURITY", L"MACHINE\\", NULL, 0 , 0 , NULL, FALSE, FALSE, FALSE},
45  { L"SOFTWARE", L"MACHINE\\", NULL, 0 , 0 , NULL, FALSE, FALSE, FALSE},
46  { L"SYSTEM", L"MACHINE\\", NULL, 0 , 0 , NULL, FALSE, FALSE, FALSE},
47  { L"DEFAULT", L"USER\\.DEFAULT", NULL, 0 , 0 , NULL, FALSE, FALSE, FALSE},
48  { L"SAM", L"MACHINE\\", NULL, HIVE_NOLAZYFLUSH , 0 , NULL, FALSE, FALSE, FALSE},
49  { NULL, NULL, 0, 0 , 0 , NULL, FALSE, FALSE, FALSE}
50 };
51 
53  RTL_CONSTANT_STRING(L"SymbolicLinkValue");
54 
56 
62 
64 ULONG CmpTypeCount[MaximumType + 1];
65 
67 
69 {
70  RTL_CONSTANT_STRING(L"System"),
71  RTL_CONSTANT_STRING(L"Processor"),
72  RTL_CONSTANT_STRING(L"Cache"),
73  RTL_CONSTANT_STRING(L"Adapter"),
74  RTL_CONSTANT_STRING(L"Controller"),
75  RTL_CONSTANT_STRING(L"Peripheral"),
76  RTL_CONSTANT_STRING(L"MemoryClass"),
77  RTL_CONSTANT_STRING(L"Undefined")
78 };
79 
80 INIT_SECTION UNICODE_STRING CmTypeName[MaximumType + 1] =
81 {
82  RTL_CONSTANT_STRING(L"System"),
83  RTL_CONSTANT_STRING(L"CentralProcessor"),
84  RTL_CONSTANT_STRING(L"FloatingPointProcessor"),
85  RTL_CONSTANT_STRING(L"PrimaryICache"),
86  RTL_CONSTANT_STRING(L"PrimaryDCache"),
87  RTL_CONSTANT_STRING(L"SecondaryICache"),
88  RTL_CONSTANT_STRING(L"SecondaryDCache"),
89  RTL_CONSTANT_STRING(L"SecondaryCache"),
90  RTL_CONSTANT_STRING(L"EisaAdapter"),
91  RTL_CONSTANT_STRING(L"TcAdapter"),
92  RTL_CONSTANT_STRING(L"ScsiAdapter"),
93  RTL_CONSTANT_STRING(L"DtiAdapter"),
94  RTL_CONSTANT_STRING(L"MultifunctionAdapter"),
95  RTL_CONSTANT_STRING(L"DiskController"),
96  RTL_CONSTANT_STRING(L"TapeController"),
97  RTL_CONSTANT_STRING(L"CdRomController"),
98  RTL_CONSTANT_STRING(L"WormController"),
99  RTL_CONSTANT_STRING(L"SerialController"),
100  RTL_CONSTANT_STRING(L"NetworkController"),
101  RTL_CONSTANT_STRING(L"DisplayController"),
102  RTL_CONSTANT_STRING(L"ParallelController"),
103  RTL_CONSTANT_STRING(L"PointerController"),
104  RTL_CONSTANT_STRING(L"KeyboardController"),
105  RTL_CONSTANT_STRING(L"AudioController"),
106  RTL_CONSTANT_STRING(L"OtherController"),
107  RTL_CONSTANT_STRING(L"DiskPeripheral"),
108  RTL_CONSTANT_STRING(L"FloppyDiskPeripheral"),
109  RTL_CONSTANT_STRING(L"TapePeripheral"),
110  RTL_CONSTANT_STRING(L"ModemPeripheral"),
111  RTL_CONSTANT_STRING(L"MonitorPeripheral"),
112  RTL_CONSTANT_STRING(L"PrinterPeripheral"),
113  RTL_CONSTANT_STRING(L"PointerPeripheral"),
114  RTL_CONSTANT_STRING(L"KeyboardPeripheral"),
115  RTL_CONSTANT_STRING(L"TerminalPeripheral"),
116  RTL_CONSTANT_STRING(L"OtherPeripheral"),
117  RTL_CONSTANT_STRING(L"LinePeripheral"),
118  RTL_CONSTANT_STRING(L"NetworkPeripheral"),
119  RTL_CONSTANT_STRING(L"SystemMemory"),
120  RTL_CONSTANT_STRING(L"DockingInformation"),
121  RTL_CONSTANT_STRING(L"RealModeIrqRoutingTable"),
122  RTL_CONSTANT_STRING(L"RealModePCIEnumeration"),
123  RTL_CONSTANT_STRING(L"Undefined")
124 };
125 
127 {
128  {"ISA", Isa, 0},
129  {"MCA", MicroChannel, 0},
130  {"PCI", PCIBus, 0},
131  {"VME", VMEBus, 0},
132  {"PCMCIA", PCMCIABus, 0},
133  {"CBUS", CBus, 0},
134  {"MPIPI", MPIBus, 0},
135  {"MPSA", MPSABus, 0},
136  {NULL, Internal, 0}
137 };
138 
140 {
141  {
142  L"Session Manager",
143  L"ProtectionMode",
144  &DummyData,
145  NULL,
146  NULL
147  },
148 
149  {
150  L"Session Manager",
151  L"ObjectSecurityMode",
152  &DummyData,
153  NULL,
154  NULL
155  },
156 
157  {
158  L"Session Manager",
159  L"LUIDDeviceMapsDisabled",
160  &DummyData,
161  NULL,
162  NULL
163  },
164 
165  {
166  L"LSA",
167  L"AuditBaseDirectories",
168  &DummyData,
169  NULL,
170  NULL
171  },
172 
173  {
174  L"LSA",
175  L"AuditBaseObjects",
176  &DummyData,
177  NULL,
178  NULL
179  },
180 
181  {
182  L"LSA\\audit",
183  L"ProcessAccessesToAudit",
184  &DummyData,
185  NULL,
186  NULL
187  },
188 
189  {
190  L"TimeZoneInformation",
191  L"ActiveTimeBias",
192  &DummyData,
193  NULL,
194  NULL
195  },
196 
197  {
198  L"TimeZoneInformation",
199  L"Bias",
200  &DummyData,
201  NULL,
202  NULL
203  },
204 
205  {
206  L"TimeZoneInformation",
207  L"RealTimeIsUniversal",
208  &DummyData,
209  NULL,
210  NULL
211  },
212 
213  {
214  L"Session Manager",
215  L"GlobalFlag",
217  NULL,
218  NULL
219  },
220 
221  {
222  L"Session Manager\\Memory Management",
223  L"PagedPoolQuota",
224  &DummyData,
225  NULL,
226  NULL
227  },
228 
229  {
230  L"Session Manager\\Memory Management",
231  L"NonPagedPoolQuota",
232  &DummyData,
233  NULL,
234  NULL
235  },
236 
237  {
238  L"Session Manager\\Memory Management",
239  L"PagingFileQuota",
240  &DummyData,
241  NULL,
242  NULL
243  },
244 
245  {
246  L"Session Manager\\Memory Management",
247  L"AllocationPreference",
248  &DummyData,
249  NULL,
250  NULL
251  },
252 
253  {
254  L"Session Manager\\Memory Management",
255  L"DynamicMemory",
256  &MmDynamicPfn,
257  NULL,
258  NULL
259  },
260 
261  {
262  L"Session Manager\\Memory Management",
263  L"Mirroring",
264  &MmMirroring,
265  NULL,
266  NULL
267  },
268 
269  {
270  L"Session Manager\\Memory Management",
271  L"SystemViewSize",
272  &DummyData,
273  NULL,
274  NULL
275  },
276 
277  {
278  L"Session Manager\\Memory Management",
279  L"SessionImageSize",
280  &DummyData,
281  NULL,
282  NULL
283  },
284 
285  {
286  L"Session Manager\\Memory Management",
287  L"SessionPoolSize",
288  &DummyData,
289  NULL,
290  NULL
291  },
292 
293  {
294  L"Session Manager\\Memory Management",
295  L"PoolUsageMaximum",
297  NULL,
298  NULL
299  },
300 
301  {
302  L"Session Manager\\Memory Management",
303  L"MapAllocationFragment",
305  NULL,
306  NULL
307  },
308 
309  {
310  L"Session Manager\\Memory Management",
311  L"PagedPoolSize",
313  NULL,
314  NULL
315  },
316 
317  {
318  L"Session Manager\\Memory Management",
319  L"NonPagedPoolSize",
321  NULL,
322  NULL
323  },
324 
325  {
326  L"Session Manager\\Memory Management",
327  L"NonPagedPoolMaximumPercent",
328  &DummyData,
329  NULL,
330  NULL
331  },
332 
333  {
334  L"Session Manager\\Memory Management",
335  L"LargeSystemCache",
337  NULL,
338  NULL
339  },
340 
341  {
342  L"Session Manager\\Memory Management",
343  L"LargeStackSize",
345  NULL,
346  NULL
347  },
348 
349  {
350  L"Session Manager\\Memory Management",
351  L"SystemPages",
353  NULL,
354  NULL
355  },
356 
357  {
358  L"Session Manager\\Memory Management",
359  L"LowMemoryThreshold",
361  NULL,
362  NULL
363  },
364 
365  {
366  L"Session Manager\\Memory Management",
367  L"HighMemoryThreshold",
369  NULL,
370  NULL
371  },
372 
373  {
374  L"Session Manager\\Memory Management",
375  L"DisablePagingExecutive",
377  NULL,
378  NULL
379  },
380 
381  {
382  L"Session Manager\\Memory Management",
383  L"ModifiedPageLife",
384  &DummyData,
385  NULL,
386  NULL
387  },
388 
389  {
390  L"Session Manager\\Memory Management",
391  L"SecondLevelDataCache",
393  NULL,
394  NULL
395  },
396 
397  {
398  L"Session Manager\\Memory Management",
399  L"ClearPageFileAtShutdown",
401  NULL,
402  NULL
403  },
404 
405  {
406  L"Session Manager\\Memory Management",
407  L"PoolTagSmallTableSize",
408  &DummyData,
409  NULL,
410  NULL
411  },
412 
413  {
414  L"Session Manager\\Memory Management",
415  L"PoolTagBigTableSize",
416  &DummyData,
417  NULL,
418  NULL
419  },
420 
421  {
422  L"Session Manager\\Memory Management",
423  L"PoolTag",
424  &DummyData,
425  NULL,
426  NULL
427  },
428 
429  {
430  L"Session Manager\\Memory Management",
431  L"PoolTagOverruns",
432  &DummyData,
433  NULL,
434  NULL
435  },
436 
437  {
438  L"Session Manager\\Memory Management",
439  L"SnapUnloads",
440  &DummyData,
441  NULL,
442  NULL
443  },
444 
445  {
446  L"Session Manager\\Memory Management",
447  L"ProtectNonPagedPool",
449  NULL,
450  NULL
451  },
452 
453  {
454  L"Session Manager\\Memory Management",
455  L"TrackLockedPages",
457  NULL,
458  NULL
459  },
460 
461  {
462  L"Session Manager\\Memory Management",
463  L"TrackPtes",
464  &MmTrackPtes,
465  NULL,
466  NULL
467  },
468 
469  {
470  L"Session Manager\\Memory Management",
471  L"VerifyDrivers",
475  },
476 
477  {
478  L"Session Manager\\Memory Management",
479  L"VerifyDriverLevel",
481  NULL,
482  NULL
483  },
484 
485  {
486  L"Session Manager\\Memory Management",
487  L"VerifyMode",
488  &DummyData,
489  NULL,
490  NULL
491  },
492 
493  {
494  L"Session Manager\\Memory Management",
495  L"LargePageMinimum",
496  &DummyData,
497  NULL,
498  NULL
499  },
500 
501  {
502  L"Session Manager\\Memory Management",
503  L"EnforceWriteProtection",
505  NULL,
506  NULL
507  },
508 
509  {
510  L"Session Manager\\Memory Management",
511  L"MakeLowMemory",
513  NULL,
514  NULL
515  },
516 
517  {
518  L"Session Manager\\Memory Management",
519  L"WriteWatch",
520  &DummyData,
521  NULL,
522  NULL
523  },
524 
525  {
526  L"Session Manager\\Memory Management",
527  L"MinimumStackCommitInBytes",
529  NULL,
530  NULL
531  },
532 
533  {
534  L"Session Manager\\Executive",
535  L"AdditionalCriticalWorkerThreads",
536  &DummyData,
537  NULL,
538  NULL
539  },
540 
541  {
542  L"Session Manager\\Executive",
543  L"AdditionalDelayedWorkerThreads",
544  &DummyData,
545  NULL,
546  NULL
547  },
548 
549  {
550  L"Session Manager\\Executive",
551  L"PriorityQuantumMatrix",
552  &DummyData,
553  &DummyData,
554  NULL
555  },
556 
557  {
558  L"Session Manager\\Kernel",
559  L"DpcQueueDepth",
560  &DummyData,
561  NULL,
562  NULL
563  },
564 
565  {
566  L"Session Manager\\Kernel",
567  L"MinimumDpcRate",
568  &DummyData,
569  NULL,
570  NULL
571  },
572 
573  {
574  L"Session Manager\\Kernel",
575  L"AdjustDpcThreshold",
576  &DummyData,
577  NULL,
578  NULL
579  },
580 
581  {
582  L"Session Manager\\Kernel",
583  L"IdealDpcRate",
584  &DummyData,
585  NULL,
586  NULL
587  },
588 
589  {
590  L"Session Manager\\Kernel",
591  L"ObUnsecureGlobalNames",
594  NULL
595  },
596 
597  {
598  L"Session Manager\\I/O System",
599  L"CountOperations",
600  &DummyData,
601  NULL,
602  NULL
603  },
604 
605  {
606  L"Session Manager\\I/O System",
607  L"LargeIrpStackLocations",
608  &DummyData,
609  NULL,
610  NULL
611  },
612 
613  {
614  L"Session Manager\\I/O System",
615  L"IoVerifierLevel",
616  &DummyData,
617  NULL,
618  NULL
619  },
620 
621  {
622  L"Session Manager",
623  L"ResourceTimeoutCount",
624  &DummyData,
625  NULL,
626  NULL
627  },
628 
629  {
630  L"Session Manager",
631  L"CriticalSectionTimeout",
633  NULL,
634  NULL
635  },
636 
637  {
638  L"Session Manager",
639  L"HeapSegmentReserve",
641  NULL,
642  NULL
643  },
644  {
645  L"Session Manager",
646  L"HeapSegmentCommit",
648  NULL,
649  NULL
650  },
651 
652  {
653  L"Session Manager",
654  L"HeapDeCommitTotalFreeThreshold",
656  NULL,
657  NULL
658  },
659 
660  {
661  L"Session Manager",
662  L"HeapDeCommitFreeBlockThreshold",
664  NULL,
665  NULL
666  },
667 
668  {
669  L"ProductOptions",
670  L"ProductType",
671  &MmProductType,
672  NULL,
673  NULL
674  },
675 
676  {
677  L"Terminal Server",
678  L"TSEnabled",
679  &DummyData,
680  NULL,
681  NULL
682  },
683 
684  {
685  L"Terminal Server",
686  L"TSAppCompat",
687  &DummyData,
688  NULL,
689  NULL
690  },
691 
692 
693  {
694  L"ProductOptions",
695  L"ProductSuite",
699  },
700 
701  {
702  L"Windows",
703  L"CSDVersion",
705  NULL,
706  NULL
707  },
708 
709  {
710  L"Windows",
711  L"CSDReleaseType",
713  NULL,
714  NULL
715  },
716 
717  {
718  L"Nls\\Language",
719  L"Default",
723  },
724 
725  {
726  L"Nls\\Language",
727  L"InstallLanguage",
731  },
732 
733  {
734  L"\0\0",
735  L"RegistrySizeLimit",
736  &DummyData,
737  &DummyData,
738  &DummyData
739  },
740 
741  {
742  L"Session Manager",
743  L"ForceNpxEmulation",
744  &DummyData,
745  NULL,
746  NULL
747  },
748 
749  {
750  L"Session Manager",
751  L"PowerPolicySimulate",
752  &DummyData,
753  NULL,
754  NULL
755  },
756 
757  {
758  L"Session Manager\\Executive",
759  L"MaxTimeSeparationBeforeCorrect",
760  &DummyData,
761  NULL,
762  NULL
763  },
764 
765  {
766  L"Windows",
767  L"ShutdownTime",
768  &DummyData,
769  &DummyData,
770  NULL
771  },
772 
773  {
774  L"PriorityControl",
775  L"Win32PrioritySeparation",
777  NULL,
778  NULL
779  },
780 
781  {
782  L"Session Manager",
783  L"EnableTimerWatchdog",
784  &DummyData,
785  NULL,
786  NULL
787  },
788 
789  {
790  L"Session Manager",
791  L"Debugger Retries",
793  NULL,
794  NULL
795  },
796 
797  {
798  L"Session Manager\\Debug Print Filter",
799  L"WIN2000",
801  NULL,
802  NULL
803  },
804 
805  /* TODO: Add the other masks */
806 
807  {
808  L"WMI",
809  L"MaxEventSize",
810  &DummyData,
811  NULL,
812  NULL
813  },
814 
815  {
816  L"WMI\\Trace",
817  L"UsePerformanceClock",
818  &DummyData,
819  NULL,
820  NULL
821  },
822 
823  {
824  L"WMI\\Trace",
825  L"TraceAlignment",
826  &DummyData,
827  NULL,
828  NULL
829  },
830 
831  {
832  NULL,
833  NULL,
834  NULL,
835  NULL,
836  NULL
837  }
838 };
BOOLEAN MmTrackPtes
Definition: mdlsup.c:20
ULONG CmpConfigurationAreaSize
Definition: cmdata.c:36
ULONG CmDefaultLanguageIdType
Definition: cmdata.c:24
SIZE_T MmHeapDeCommitTotalFreeThreshold
Definition: mminit.c:368
#define TRUE
Definition: types.h:120
BOOLEAN MmMirroring
Definition: pfnlist.c:35
ULONG DummyData
Definition: cmdata.c:18
WCHAR CmInstallUILanguageId[12]
Definition: cmdata.c:26
BOOLEAN MmZeroPageFile
Definition: pagefile.c:58
WCHAR ObpUnsecureGlobalNamesBuffer[128]
Definition: obname.c:32
#define HIVE_VOLATILE
Definition: hivedata.h:23
ULONG MmNumberOfSystemPtes
Definition: init.c:42
PFN_NUMBER MmHighMemoryThreshold
Definition: mminit.c:301
ULONG CmSuiteBufferType
Definition: cmdata.c:32
BOOLEAN CmSelfHeal
Definition: cmdata.c:58
ULONG MmVerifyDriverBufferType
Definition: drvmgmt.c:25
ULONG PsRawPrioritySeparation
Definition: process.c:27
HIVE_LIST_ENTRY CmpMachineHiveList[]
Definition: cmdata.c:41
INIT_SECTION CMP_MF_TYPE CmpMultifunctionTypes[]
Definition: cmdata.c:126
ULONG MmProductType
Definition: mminit.c:325
SIZE_T MmMinimumStackCommitInBytes
Definition: mminit.c:370
ULONG CmNtCSDReleaseType
Definition: init.c:57
BOOLEAN MmLargeSystemCache
Definition: mminit.c:340
ULONG MmLargeStackSize
Definition: mminit.c:262
SIZE_T MmSizeOfPagedPoolInBytes
Definition: miarm.h:600
ULONG CmpBootType
Definition: cmdata.c:61
ULONG MmVerifyDriverBufferLength
Definition: drvmgmt.c:24
BOOLEAN MmDynamicPfn
Definition: pfnlist.c:34
USHORT CmpUnknownBusCount
Definition: cmdata.c:63
INIT_SECTION UNICODE_STRING CmTypeName[MaximumType+1]
Definition: cmdata.c:80
ULONG CmpTypeCount[MaximumType+1]
Definition: cmdata.c:64
BOOLEAN CmpSelfHeal
Definition: cmdata.c:59
unsigned char BOOLEAN
smooth NULL
Definition: ftsmooth.c:416
KD_CONTEXT KdpContext
Definition: kdmain.c:23
ULONG MmConsumedPoolPercentage
Definition: pool.c:28
Definition: registry.c:568
__wchar_t WCHAR
Definition: xmlstorage.h:180
ULONG Kd_WIN2000_Mask
Definition: kdmain.c:24
SIZE_T MmHeapDeCommitFreeBlockThreshold
Definition: mminit.c:369
WCHAR CmSuiteBuffer[128]
Definition: cmdata.c:30
SIZE_T MmHeapSegmentReserve
Definition: mminit.c:366
BOOLEAN CmpMiniNTBoot
Definition: cmdata.c:60
WCHAR MmVerifyDriverBuffer[512]
Definition: drvmgmt.c:23
PFN_NUMBER MmLowMemoryThreshold
Definition: mminit.c:300
static const WCHAR L[]
Definition: oid.c:1250
ULONG CmNtGlobalFlag
Definition: cmdata.c:19
BOOLEAN MmMakeLowMemory
Definition: sysldr.c:46
#define PAGE_SIZE
Definition: env_spec_w32.h:49
ULONG MmSecondaryColors
Definition: mminit.c:256
BOOLEAN MmProtectFreedNonPagedPool
Definition: pool.c:29
EX_PUSH_LOCK CmpLoadHiveLock
Definition: cmdata.c:39
UNICODE_STRING CmSymbolicLinkValueName
Definition: cmdata.c:52
PCM_FULL_RESOURCE_DESCRIPTOR CmpConfigurationData
Definition: cmdata.c:37
ULONG CmDefaultLanguageIdLength
Definition: cmdata.c:23
ULONG CmInstallUILanguageIdLength
Definition: cmdata.c:27
EX_PUSH_LOCK CmpHiveListHeadLock
Definition: cmdata.c:39
WCHAR CmDefaultLanguageId[12]
Definition: cmdata.c:22
INIT_SECTION UNICODE_STRING CmClassName[MaximumClass+1]
Definition: cmdata.c:68
unsigned short USHORT
Definition: pedump.c:61
SIZE_T MmAllocationFragment
Definition: mminit.c:352
ULONG MmVerifyDriverLevel
Definition: drvmgmt.c:26
SIZE_T MmHeapSegmentCommit
Definition: mminit.c:367
#define HIVE_NOLAZYFLUSH
Definition: hivedata.h:24
ULONG KdpDefaultRetries
Definition: windbgkd.h:226
ULONG CmSuiteBufferLength
Definition: cmdata.c:31
INIT_SECTION CM_SYSTEM_CONTROL_VECTOR CmControlVector[]
Definition: cmdata.c:139
BOOLEAN MmTrackLockedPages
Definition: mdlsup.c:21
ULONG CmNtCSDVersion
Definition: init.c:56
unsigned int ULONG
Definition: retypes.h:1
ULONG ObpUnsecureGlobalNamesLength
Definition: obname.c:33
HANDLE CmpRegistryRootHandle
Definition: cmdata.c:66
ULONG MmCritsectTimeoutSeconds
Definition: mminit.c:387
ULONG MmSizeOfNonPagedPoolInBytes
Definition: init.c:21
UCHAR MmDisablePagingExecutive
Definition: mminit.c:27
BOOLEAN MmEnforceWriteProtection
Definition: sysldr.c:47
CMHIVE CmControlHive
Definition: cmdata.c:34
UNICODE_STRING CmpLoadOptions
Definition: cmdata.c:55
Definition: cm.h:391
ULONG CmInstallUILanguageIdType
Definition: cmdata.c:28
#define RTL_CONSTANT_STRING(s)
Definition: tunneltest.c:14
BOOLEAN CmpShareSystemHives
Definition: cmdata.c:57