15#define MODULE_INVOLVED_IN_ARM3
17#undef MmSystemRangeStart
157#if (_MI_PAGING_LEVELS == 2)
235#if (_MI_PAGING_LEVELS >= 3)
237#if (_MI_PAGING_LEVELS >= 4)
410 for (ListEntry = LoaderBlock->MemoryDescriptorListHead.
Flink;
411 ListEntry != &LoaderBlock->MemoryDescriptorListHead;
412 ListEntry = ListEntry->
Flink)
418 DPRINT(
"MD Type: %lx Base: %lx Count: %lx\n",
501 ULONG L2Associativity;
507 L2Associativity =
KeGetPcr()->SecondLevelCacheAssociativity;
556 PMMPTE PointerPte, LastPte;
567 while (PointerPte <= LastPte)
611 NextEntry = LoaderBlock->MemoryDescriptorListHead.
Flink;
612 while (NextEntry != &LoaderBlock->MemoryDescriptorListHead)
668 PMMPTE PointerPte, LastPte;
677 NextEntry = LoaderBlock->MemoryDescriptorListHead.
Flink;
678 while (NextEntry != &LoaderBlock->MemoryDescriptorListHead)
710 DPRINT(
"MD Type: %lx Base: %lx Count: %lx\n", MdBlock->
MemoryType, BasePage, PageCount);
713 while (PointerPte <= LastPte)
720 ASSERT(FreePageCount != 0);
764 PFN_NUMBER PageFrameIndex, StartupPdIndex, PtePageIndex;
790 Pfn1->
u3.
e2.ReferenceCount = 1;
795 MI_SET_PFN_PROCESS_NAME(Pfn1,
"Initial PDE");
837 Pfn2->
u3.
e2.ReferenceCount = 1;
842 MI_SET_PFN_PROCESS_NAME(Pfn2,
"Initial PTE");
882 Pfn1->
u3.
e2.ReferenceCount = 0xFFF0;
903 NextEntry = LoaderBlock->MemoryDescriptorListHead.
Flink;
904 while (NextEntry != &LoaderBlock->MemoryDescriptorListHead)
930 if (!PageCount)
break;
939 DPRINT1(
"You either have specified /BURNMEMORY or damaged RAM modules.\n");
949 PageFrameIndex += PageCount - 1;
957 if (!Pfn1->
u3.
e2.ReferenceCount)
992 if (!Pfn1->
u3.
e2.ReferenceCount)
998 Pfn1->
u3.
e2.ReferenceCount = 1;
1011 Pfn1->
u3.
e2.ReferenceCount = 0;
1037 PMMPTE PointerPte, LastPte;
1043 while (PointerPte <= LastPte)
1051 Pfn1->
u3.
e2.ReferenceCount = 1;
1096 NextMd = LoaderBlock->MemoryDescriptorListHead.
Flink;
1097 while (NextMd != &LoaderBlock->MemoryDescriptorListHead)
1114 NextMd = LoaderBlock->MemoryDescriptorListHead.
Flink;
1115 while (NextMd != &LoaderBlock->MemoryDescriptorListHead)
1150 BasePage =
Entry->BasePage;
1157 if (!(Pfn1->
u3.
e2.ReferenceCount) && (!Pfn1->
u1.
Flink))
1183 DPRINT(
"Loader pages freed: %lx\n", LoaderPages);
1251 DaclLength =
sizeof(
ACL) +
1412 PMMPDE PointerPde, LastPde;
1425 while (PointerPde <= LastPde)
1469 PCHAR Consumer =
"Unknown";
1471 ULONG ActivePages = 0, FreePages = 0, OtherPages = 0;
1508 if (!Pfn1)
continue;
1519 Consumer =
"Active and Valid";
1525 Consumer =
"Zero Page List";
1531 Consumer =
"Free Page List";
1537 Consumer =
"Other (ASSERT!)";
1544 UsageBucket[Pfn1->PfnUsage]++;
1551 DbgPrint(
"0x%08p:\t%20s\t(%04d.%04d)\t[%16s - %16s]\n",
1554 Pfn1->
u3.
e2.ReferenceCount,
1557 MI_USAGE_TEXT[Pfn1->PfnUsage],
1565 DbgPrint(
"Active: %5d pages\t[%6d KB]\n", ActivePages, (ActivePages <<
PAGE_SHIFT) / 1024);
1566 DbgPrint(
"Free: %5d pages\t[%6d KB]\n", FreePages, (FreePages <<
PAGE_SHIFT) / 1024);
1567 DbgPrint(
"Other: %5d pages\t[%6d KB]\n", OtherPages, (OtherPages <<
PAGE_SHIFT) / 1024);
1568 DbgPrint(
"-----------------------------------------\n");
1571 DbgPrint(
"Boot Images: %5d pages\t[%6d KB]\n", OtherPages, (OtherPages <<
PAGE_SHIFT) / 1024);
1573 DbgPrint(
"System Drivers: %5d pages\t[%6d KB]\n", OtherPages, (OtherPages <<
PAGE_SHIFT) / 1024);
1575 DbgPrint(
"PFN Database: %5d pages\t[%6d KB]\n", OtherPages, (OtherPages <<
PAGE_SHIFT) / 1024);
1577 DbgPrint(
"Page Tables: %5d pages\t[%6d KB]\n", OtherPages, (OtherPages <<
PAGE_SHIFT) / 1024);
1579 DbgPrint(
"System PTEs: %5d pages\t[%6d KB]\n", OtherPages, (OtherPages <<
PAGE_SHIFT) / 1024);
1581 DbgPrint(
"VADs: %5d pages\t[%6d KB]\n", OtherPages, (OtherPages <<
PAGE_SHIFT) / 1024);
1583 DbgPrint(
"Continuous Allocs: %5d pages\t[%6d KB]\n", OtherPages, (OtherPages <<
PAGE_SHIFT) / 1024);
1585 DbgPrint(
"MDLs: %5d pages\t[%6d KB]\n", OtherPages, (OtherPages <<
PAGE_SHIFT) / 1024);
1587 DbgPrint(
"NonPaged Pool: %5d pages\t[%6d KB]\n", OtherPages, (OtherPages <<
PAGE_SHIFT) / 1024);
1589 DbgPrint(
"Paged Pool: %5d pages\t[%6d KB]\n", OtherPages, (OtherPages <<
PAGE_SHIFT) / 1024);
1591 DbgPrint(
"Demand Zero: %5d pages\t[%6d KB]\n", OtherPages, (OtherPages <<
PAGE_SHIFT) / 1024);
1593 DbgPrint(
"Zero Loop: %5d pages\t[%6d KB]\n", OtherPages, (OtherPages <<
PAGE_SHIFT) / 1024);
1595 DbgPrint(
"PEB/TEB: %5d pages\t[%6d KB]\n", OtherPages, (OtherPages <<
PAGE_SHIFT) / 1024);
1597 DbgPrint(
"Kernel Stack: %5d pages\t[%6d KB]\n", OtherPages, (OtherPages <<
PAGE_SHIFT) / 1024);
1599 DbgPrint(
"Init Memory: %5d pages\t[%6d KB]\n", OtherPages, (OtherPages <<
PAGE_SHIFT) / 1024);
1601 DbgPrint(
"Sections: %5d pages\t[%6d KB]\n", OtherPages, (OtherPages <<
PAGE_SHIFT) / 1024);
1603 DbgPrint(
"Cache: %5d pages\t[%6d KB]\n", OtherPages, (OtherPages <<
PAGE_SHIFT) / 1024);
1605 DbgPrint(
"Free: %5d pages\t[%6d KB]\n", OtherPages, (OtherPages <<
PAGE_SHIFT) / 1024);
1640 Buffer->NumberOfRuns = InitialRuns;
1645 NextEntry = LoaderBlock->MemoryDescriptorListHead.
Flink;
1646 while (NextEntry != &LoaderBlock->MemoryDescriptorListHead)
1699 ASSERT(Run <= Buffer->NumberOfRuns);
1704 if (InitialRuns >
Run)
1735 Buffer->NumberOfPages = PageCount;
1751#if (_MI_PAGING_LEVELS >= 3)
1754#elif (_MI_PAGING_LEVELS == 2)
1840#if (_MI_PAGING_LEVELS >= 3)
1881#if (_MI_PAGING_LEVELS >= 3)
1920 BitMapSize = (
ULONG)NumberOfPages;
1998 "FirmwareTemporary ",
1999 "FirmwarePermanent ",
2006 "ConsoleOutDriver ",
2008 "StartupKernelStack",
2009 "StartupPanicStack ",
2021 DPRINT1(
"Base\t\tLength\t\tType\n");
2024 NextEntry = NextEntry->
Flink)
2047 PMMPTE PointerPte, TestPte;
2097#if (_MI_PAGING_LEVELS >= 3)
2099#if (_MI_PAGING_LEVELS >= 4)
2121 for (
i = 0;
i < 8;
i++)
2193 DPRINT(
"System PTE count has been tuned to %lu (%lu bytes)\n",
2302 ASSERT(PointerPte == TestPte);
2308 ASSERT(PointerPte == TestPte);
2312 for (
j = 0;
j < 20;
j += 1)
2316 ASSERT(PointerPte == TestPte);
2324 ASSERT(PointerPte == TestPte);
2369 DPRINT(
"PHYSICAL RAM [0x%08p to 0x%08p]\n",
2510 DPRINT1(
"System cache working set too big\n");
SIZE_T MmHeapSegmentReserve
SIZE_T MmMinimumNonPagedPoolSize
ULONG MmMaximumNonPagedPoolPercent
PFN_NUMBER MiNumberOfFreePages
PVOID MmNonPagedSystemStart
PFN_NUMBER MmSystemCacheWsMinimum
SIZE_T MmHeapDeCommitFreeBlockThreshold
SIZE_T MmTotalCommitLimitMaximum
PMEMORY_ALLOCATION_DESCRIPTOR MxFreeDescriptor
PFN_NUMBER MmLowMemoryThreshold
VOID NTAPI MiInitializePfnDatabase(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
SIZE_T MmMinimumStackCommitInBytes
SIZE_T MmTotalCommitLimit
MM_SYSTEMSIZE MmSystemSize
ULONG MmSecondaryColorMask
SIZE_T MmHeapDeCommitTotalFreeThreshold
BOOLEAN NTAPI MiInitializeMemoryEvents(VOID)
PFN_COUNT MmNumberOfPhysicalPages
PFN_NUMBER MmMinimumFreePages
SIZE_T MmSizeOfNonPagedPoolInBytes
PFN_NUMBER MiLowPagedPoolThreshold
VOID NTAPI MiInitializeColorTables(VOID)
PFN_NUMBER NTAPI MxGetNextPage(IN PFN_NUMBER PageCount)
SIZE_T MmSessionImageSize
PMMPTE MiSessionImagePteEnd
VOID NTAPI MmDumpArmPfnDatabase(IN BOOLEAN StatusOnly)
BOOLEAN NTAPI MmArmInitSystem(IN ULONG Phase, IN PLOADER_PARAMETER_BLOCK LoaderBlock)
VOID NTAPI MiBuildPfnDatabaseFromPages(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
PFN_NUMBER MmMaximumNonPagedPoolInPages
VOID NTAPI MiAdjustWorkingSetManagerParameters(IN BOOLEAN Client)
VOID NTAPI MiBuildPagedPool(VOID)
PVOID MiSessionImageStart
VOID NTAPI MiScanMemoryDescriptors(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
PFN_NUMBER MmPlentyFreePages
PMMWSL MmSystemCacheWorkingSetList
PFN_NUMBER MiHighPagedPoolThreshold
VOID NTAPI MmFreeLoaderBlock(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
PMMPTE MiSessionImagePteStart
VOID NTAPI MiAddHalIoMappings(VOID)
VOID NTAPI MiDbgDumpMemoryDescriptors(VOID)
VOID NTAPI MiBuildPfnDatabaseZeroPage(VOID)
PFN_NUMBER MmLowestPhysicalPage
ULONG MiNumberDescriptors
BOOLEAN MmLargeSystemCache
NTSTATUS NTAPI MiCreateMemoryEvent(IN PUNICODE_STRING Name, OUT PKEVENT *Event)
PKEVENT MiLowNonPagedPoolEvent
PKEVENT MiHighMemoryEvent
PPHYSICAL_MEMORY_DESCRIPTOR NTAPI MmInitializeMemoryLimits(IN PLOADER_PARAMETER_BLOCK LoaderBlock, IN PBOOLEAN IncludeType)
SIZE_T MmMaximumNonPagedPoolInBytes
ULONG MmMaxAdditionNonPagedPoolPerMb
PVOID MmNonPagedPoolExpansionStart
PFN_NUMBER MmHighestPhysicalPage
ULONG_PTR MmSizeOfSystemCacheInPages
ULONG_PTR MmUserProbeAddress
VOID NTAPI MiNotifyMemoryEvents(VOID)
ULONG MmMinAdditionNonPagedPoolPerMb
VOID NTAPI MiMapPfnDatabase(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
PFN_NUMBER MiLowNonPagedPoolThreshold
MMSUPPORT MmSystemCacheWs
PFN_NUMBER MiHighNonPagedPoolThreshold
MEMORY_ALLOCATION_DESCRIPTOR MxOldFreeDescriptor
VOID NTAPI MiComputeColorInformation(VOID)
PKEVENT MiHighPagedPoolEvent
PFN_NUMBER MxPfnAllocation
PVOID MmNonPagedPoolStart
BOOLEAN MiDbgEnableMdDump
SIZE_T MmHeapSegmentCommit
VOID NTAPI MiBuildPfnDatabaseFromLoaderBlock(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
SIZE_T MmDefaultMaximumNonPagedPool
SIZE_T MmAllocationFragment
PKEVENT MiLowPagedPoolEvent
PFN_NUMBER MmSizeOfPagedPoolInPages
LARGE_INTEGER MmCriticalSectionTimeout
PFN_COUNT MmNumberOfSystemPtes
PPHYSICAL_MEMORY_DESCRIPTOR MmPhysicalMemoryBlock
BOOLEAN NTAPI MiIsRegularMemory(IN PLOADER_PARAMETER_BLOCK LoaderBlock, IN PFN_NUMBER Pfn)
SIZE_T MmSizeOfPagedPoolInBytes
PMMCOLOR_TABLES MmFreePagesByColor[FreePageList+1]
VOID NTAPI MiBuildPfnDatabaseSelf(VOID)
PFN_NUMBER MmHighMemoryThreshold
PFN_NUMBER MmSystemCacheWsMaximum
PKEVENT MiHighNonPagedPoolEvent
PVOID MmHighestUserAddress
ULONG MmCritsectTimeoutSeconds
HARDWARE_PTE_ARMV6 TempPte
HARDWARE_PDE_ARMV6 TempPde
IN PUNICODE_STRING IN POBJECT_ATTRIBUTES ObjectAttributes
#define RtlInitializeBitMap
#define NT_SUCCESS(StatCode)
#define ExAllocatePoolWithTag(hernya, size, tag)
#define KeRaiseIrql(irql, oldIrql)
#define KeInitializeEvent(pEvt, foo, foo2)
#define KeLowerIrql(oldIrql)
#define KeSetEvent(pEvt, foo, foo2)
#define InitializeListHead(ListHead)
VOID NTAPI KeClearEvent(IN PKEVENT Event)
LONG NTAPI KeReadStateEvent(IN PKEVENT Event)
#define ExInitializePushLock
VOID NTAPI InitializePool(IN POOL_TYPE PoolType, IN ULONG Threshold)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint GLint GLint j
VOID FASTCALL KeInitializeGuardedMutex(OUT PKGUARDED_MUTEX GuardedMutex)
#define OBJ_KERNEL_HANDLE
NTSYSAPI NTSTATUS WINAPI RtlAddAccessAllowedAce(PACL, DWORD, DWORD, PSID)
NTSYSAPI NTSTATUS WINAPI RtlSetDaclSecurityDescriptor(PSECURITY_DESCRIPTOR, BOOLEAN, PACL, BOOLEAN)
PLOADER_PARAMETER_BLOCK KeLoaderBlock
VOID NTAPI MiInitializeDriverLargePageList(VOID)
VOID NTAPI MiInitializeLargePageSupport(VOID)
VOID NTAPI MiSyncCachedRanges(VOID)
PFN_COUNT MiExpansionPoolPagesInitialCharge
KGUARDED_MUTEX MmSectionBasedMutex
FORCEINLINE BOOLEAN MI_IS_PHYSICAL_ADDRESS(IN PVOID Address)
FORCEINLINE BOOLEAN MiIsMemoryTypeInvisible(TYPE_OF_MEMORY MemoryType)
PFN_NUMBER NTAPI MiRemoveZeroPage(IN ULONG Color)
VOID NTAPI MiInitializePoolEvents(VOID)
SLIST_HEADER MmDeadStackSListHead
struct _MMCOLOR_TABLES MMCOLOR_TABLES
#define MI_SET_PFN_DELETED(x)
VOID NTAPI MiInsertPageInFreeList(IN PFN_NUMBER PageFrameIndex)
KGUARDED_MUTEX MmPagedPoolMutex
PFN_NUMBER MmResidentAvailableAtInit
MM_PAGED_POOL_INFO MmPagedPoolInfo
VOID NTAPI MiInitializePfnForOtherProcess(IN PFN_NUMBER PageFrameIndex, IN PVOID PteAddress, IN PFN_NUMBER PteFrame)
FORCEINLINE VOID MI_WRITE_VALID_PDE(IN PMMPDE PointerPde, IN MMPDE TempPde)
VOID NTAPI MiDecrementShareCount(IN PMMPFN Pfn1, IN PFN_NUMBER PageFrameIndex)
struct _MMCOLOR_TABLES * PMMCOLOR_TABLES
MMPFNLIST MmStandbyPageListByPriority[8]
PMMPTE NTAPI MiReserveSystemPtes(IN ULONG NumberOfPtes, IN MMSYSTEM_PTE_POOL_TYPE SystemPtePoolType)
FORCEINLINE BOOLEAN MiIsMemoryTypeFree(TYPE_OF_MEMORY MemoryType)
KGUARDED_MUTEX MmSectionCommitMutex
BOOLEAN NTAPI MiInitializeSystemSpaceMap(IN PMMSESSION InputSession OPTIONAL)
FORCEINLINE VOID MI_WRITE_VALID_PTE(IN PMMPTE PointerPte, IN MMPTE TempPte)
KEVENT MmZeroingPageEvent
LIST_ENTRY MmWorkingSetExpansionHead
ULONG MmMaximumDeadKernelStacks
BOOLEAN NTAPI MmIsAddressValid(IN PVOID VirtualAddress)
#define MiAddressToPte(x)
#define MiAddressToPteOffset(x)
#define MiAddressToPde(x)
#define ExFreePoolWithTag(_P, _T)
#define EVENT_QUERY_STATE
#define InitializeObjectAttributes(p, n, a, r, s)
FORCEINLINE struct _KPRCB * KeGetCurrentPrcb(VOID)
#define MI_HIGHEST_USER_ADDRESS
_In_ HANDLE _Outptr_result_bytebuffer_ ViewSize PVOID * BaseAddress
NTSYSAPI NTSTATUS NTAPI ZwClose(_In_ HANDLE Handle)
_Out_writes_bytes_to_opt_ AbsoluteSecurityDescriptorSize PSECURITY_DESCRIPTOR _Inout_ PULONG _Out_writes_bytes_to_opt_ DaclSize PACL Dacl
NTSYSAPI NTSTATUS NTAPI RtlCreateAcl(PACL Acl, ULONG AclSize, ULONG AclRevision)
NTSYSAPI ULONG NTAPI RtlLengthSid(IN PSID Sid)
NTSYSAPI NTSTATUS NTAPI RtlCreateSecurityDescriptor(_Out_ PSECURITY_DESCRIPTOR SecurityDescriptor, _In_ ULONG Revision)
POBJECT_TYPE ExEventObjectType
#define MI_ALLOCATION_FRAGMENT
#define MI_PAGED_POOL_START
#define MI_USER_PROBE_ADDRESS
#define MI_DEFAULT_SYSTEM_RANGE_START
#define MI_WRITE_VALID_PPE
#define MiSubsectionPteToSubsection(x)
FORCEINLINE VOID MI_MAKE_PROTOTYPE_PTE(IN PMMPTE NewPte, IN PMMPTE PointerPte)
#define MI_MIN_PAGES_FOR_SYSPTE_BOOST
#define MI_MIN_PAGES_FOR_SYSPTE_TUNING
#define MI_SYSTEM_CACHE_WS_START
#define MI_MAX_SECONDARY_COLORS
FORCEINLINE PMMPTE MiAddressToPpe(PVOID Address)
#define MiProtoPteToPte(x)
FORCEINLINE PMMPTE MiAddressToPxe(PVOID Address)
#define MI_IS_PAGE_LARGE(x)
#define MI_HIGHEST_SYSTEM_ADDRESS
#define MI_NONPAGED_POOL_END
#define MI_MIN_ALLOCATION_FRAGMENT
#define MI_MIN_INIT_PAGED_POOLSIZE
#define MI_SECONDARY_COLORS
#define MI_MIN_SECONDARY_COLORS
#define MI_SYSTEM_CACHE_END
#define MI_MIN_PAGES_FOR_SYSPTE_BOOST_BOOST
FORCEINLINE VOID MI_MAKE_SUBSECTION_PTE(_Out_ PMMPTE NewPte, _In_ PVOID Segment)
#define MI_SYSTEM_CACHE_START
#define MI_MAX_ALLOCATION_FRAGMENT
#define MiPteToAddress(_Pte)
VOID NTAPI KeFlushCurrentTb(VOID)
PFN_NUMBER MmResidentAvailablePages
BOOLEAN NTAPI MiInitializeLoadedModuleList(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
FORCEINLINE PMMPFN MiGetPfnEntry(IN PFN_NUMBER Pfn)
#define MI_SET_PROCESS2(x)
@ MI_USAGE_NONPAGED_POOL_EXPANSION
@ MI_USAGE_LEGACY_PAGE_DIRECTORY
@ MI_USAGE_CONTINOUS_ALLOCATION
@ MI_USAGE_PAGE_DIRECTORY
@ MI_USAGE_KERNEL_STACK_EXPANSION
LIST_ENTRY MmLoadedUserImageList
VOID NTAPI MiReloadBootLoadedDrivers(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
VOID NTAPI MiInitializeSpecialPool(VOID)
PFN_NUMBER MmAvailablePages
VOID NTAPI KeInitializeMutant(IN PKMUTANT Mutant, IN BOOLEAN InitialOwner)
PFN_NUMBER MmSystemPageDirectory[PPE_PER_PAGE]
VOID NTAPI MiInitializeSessionSpaceLayout(VOID)
NTSTATUS NTAPI MiInitMachineDependent(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
NTSTATUS NTAPI ObReferenceObjectByHandle(IN HANDLE Handle, IN ACCESS_MASK DesiredAccess, IN POBJECT_TYPE ObjectType, IN KPROCESSOR_MODE AccessMode, OUT PVOID *Object, OUT POBJECT_HANDLE_INFORMATION HandleInformation OPTIONAL)
VOID NTAPI KeBugCheckEx(_In_ ULONG BugCheckCode, _In_ ULONG_PTR BugCheckParameter1, _In_ ULONG_PTR BugCheckParameter2, _In_ ULONG_PTR BugCheckParameter3, _In_ ULONG_PTR BugCheckParameter4)
@ LoaderFirmwareTemporary
@ LoaderFirmwarePermanent
#define KERNEL_LARGE_STACK_SIZE
#define KERNEL_STACK_SIZE
base of all file and directory entries
struct _LIST_ENTRY * Flink
PLOADER_PARAMETER_EXTENSION Extension
LIST_ENTRY MemoryDescriptorListHead
ULONG_PTR LoaderPagesSpanned
TYPE_OF_MEMORY MemoryType
struct _MMPFN::@1808::@1814 e2
EX_PUSH_LOCK WorkingSetMutex
PMMPTE LastPteForPagedPool
PRTL_BITMAP EndOfPagedPoolBitmap
PRTL_BITMAP PagedPoolAllocationMap
PMMPDE NextPdeForPagedPoolExpansion
PMMPTE FirstPteForPagedPool
PHYSICAL_MEMORY_RUN Run[1]
#define LIST_HEAD(name, type)
#define RTL_CONSTANT_STRING(s)
#define RtlCopyMemory(Destination, Source, Length)
#define RtlZeroMemory(Destination, Length)
#define CONTAINING_RECORD(address, type, field)
#define STATUS_INSUFFICIENT_RESOURCES
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_PROPERTY_DATA _In_ DEVPROPTYPE _In_ ULONG Size
_Must_inspect_result_ _In_ WDFIORESLIST _In_ PIO_RESOURCE_DESCRIPTOR Descriptor
#define EVENT_MODIFY_STATE
_In_ USHORT _In_ ULONG _In_ PSOCKADDR _In_ PSOCKADDR _Reserved_ ULONG _In_opt_ PVOID _In_opt_ const WSK_CLIENT_CONNECTION_DISPATCH _In_opt_ PEPROCESS _In_opt_ PETHREAD _In_opt_ PSECURITY_DESCRIPTOR SecurityDescriptor
_Out_ PHANDLE EventHandle
_Requires_lock_held_ Interrupt _Releases_lock_ Interrupt _In_ _IRQL_restores_ KIRQL OldIrql
#define ROUND_TO_PAGES(Size)
#define BYTES_TO_PAGES(Size)
enum _MM_SYSTEM_SIZE MM_SYSTEMSIZE
FORCEINLINE VOID InitializeSListHead(_Out_ PSLIST_HEADER SListHead)
#define SECURITY_DESCRIPTOR_REVISION