|
#define | MI_QUOTA_NON_PAGED_NEEDED_PAGES 64 |
|
#define | MI_NON_PAGED_QUOTA_MIN_RESIDENT_PAGES 200 |
|
#define | MI_CHARGE_PAGED_POOL_QUOTA 0x80000 |
|
#define | MI_CHARGE_NON_PAGED_POOL_QUOTA 0x10000 |
|
#define | MM_NOIRQL ((KIRQL)0xFFFFFFFF) |
|
#define | MMDBG_COPY_WRITE 0x00000001 |
|
#define | MMDBG_COPY_PHYSICAL 0x00000002 |
|
#define | MMDBG_COPY_UNSAFE 0x00000004 |
|
#define | MMDBG_COPY_CACHED 0x00000008 |
|
#define | MMDBG_COPY_UNCACHED 0x00000010 |
|
#define | MMDBG_COPY_WRITE_COMBINED 0x00000020 |
|
#define | MMDBG_COPY_MAX_SIZE 0x8 |
|
#define | MI_STATIC_MEMORY_AREAS (13) |
|
#define | MEMORY_AREA_SECTION_VIEW (1) |
|
#define | MEMORY_AREA_OWNED_BY_ARM3 (15) |
|
#define | MEMORY_AREA_STATIC (0x80000000) |
|
#define | MM_VIRTMEM_GRANULARITY (64 * 1024) |
|
#define | STATUS_MM_RESTART_OPERATION ((NTSTATUS)0xD0000001) |
|
#define | PAGE_WRITETHROUGH (1024) |
|
#define | PAGE_SYSTEM (2048) |
|
#define | SEC_PHYSICALMEMORY (0x80000000) |
|
#define | MC_USER (0) |
|
#define | MC_SYSTEM (1) |
|
#define | MC_MAXIMUM (2) |
|
#define | PAGED_POOL_MASK 1 |
|
#define | MUST_SUCCEED_POOL_MASK 2 |
|
#define | CACHE_ALIGNED_POOL_MASK 4 |
|
#define | QUOTA_POOL_MASK 8 |
|
#define | SESSION_POOL_MASK 32 |
|
#define | VERIFIER_POOL_MASK 64 |
|
#define | MAX_PAGING_FILES (16) |
|
#define | MM_ROUND_UP(x, s) ((PVOID)(((ULONG_PTR)(x)+(s)-1) & ~((ULONG_PTR)(s)-1))) |
|
#define | MM_ROUND_DOWN(x, s) ((PVOID)(((ULONG_PTR)(x)) & ~((ULONG_PTR)(s)-1))) |
|
#define | PAGE_FLAGS_VALID_FOR_SECTION |
|
#define | PAGE_IS_READABLE |
|
#define | PAGE_IS_WRITABLE |
|
#define | PAGE_IS_EXECUTABLE |
|
#define | PAGE_IS_WRITECOPY |
|
#define | InterlockedCompareExchangePte(PointerPte, Exchange, Comperand) InterlockedCompareExchange((PLONG)(PointerPte), Exchange, Comperand) |
|
#define | InterlockedExchangePte(PointerPte, Value) InterlockedExchange((PLONG)(PointerPte), Value) |
|
#define | MM_PHYSICALMEMORY_SEGMENT (0x1) |
|
#define | MM_DATAFILE_SEGMENT (0x2) |
|
#define | MM_SEGMENT_INDELETE (0x4) |
|
#define | MM_SEGMENT_INCREATE (0x8) |
|
#define | MM_IMAGE_SECTION_FLUSH_DELETE (0x10) |
|
#define | MA_GetStartingAddress(_MemoryArea) ((_MemoryArea)->VadNode.StartingVpn << PAGE_SHIFT) |
|
#define | MA_GetEndingAddress(_MemoryArea) (((_MemoryArea)->VadNode.EndingVpn + 1) << PAGE_SHIFT) |
|
#define | MI_SET_USAGE(x) |
|
#define | MI_SET_PROCESS(x) |
|
#define | MI_SET_PROCESS2(x) |
|
#define | StartOfAllocation ReadInProgress |
|
#define | EndOfAllocation WriteInProgress |
|
#define | MM_FREE_POOL_SIGNATURE 'ARM3' |
|
#define | RMAP_SEGMENT_MASK ~((ULONG_PTR)0xff) |
|
#define | RMAP_IS_SEGMENT(x) (((ULONG_PTR)(x) & RMAP_SEGMENT_MASK) == RMAP_SEGMENT_MASK) |
|
#define | MI_ASSERT_PFN_LOCK_HELD() NT_ASSERT((KeGetCurrentIrql() >= DISPATCH_LEVEL) && (MmPfnLock != 0)) |
|
#define | MmSetCleanPage(__P, __A) MmSetDirtyBit(__P, __A, FALSE) |
|
#define | MmSetDirtyPage(__P, __A) MmSetDirtyBit(__P, __A, TRUE) |
|
#define | PFN_FROM_SSE(E) ((PFN_NUMBER)((E) >> PAGE_SHIFT)) |
|
#define | IS_SWAP_FROM_SSE(E) ((E) & 0x00000001) |
|
#define | MM_IS_WAIT_PTE(E) (IS_SWAP_FROM_SSE(E) && SWAPENTRY_FROM_SSE(E) == MM_WAIT_ENTRY) |
|
#define | MAKE_PFN_SSE(P) ((ULONG_PTR)((P) << PAGE_SHIFT)) |
|
#define | SWAPENTRY_FROM_SSE(E) ((E) >> 1) |
|
#define | MAKE_SWAP_SSE(S) (((ULONG_PTR)(S) << 1) | 0x1) |
|
#define | DIRTY_SSE(E) ((E) | 2) |
|
#define | CLEAN_SSE(E) ((E) & ~2) |
|
#define | IS_DIRTY_SSE(E) ((E) & 2) |
|
#define | WRITE_SSE(E) ((E) | 4) |
|
#define | IS_WRITE_SSE(E) ((E) & 4) |
|
#define | PAGE_FROM_SSE(E) ((E) & 0xFFFFF000) |
|
#define | SHARE_COUNT_FROM_SSE(E) (((E) & 0x00000FFC) >> 3) |
|
#define | MAX_SHARE_COUNT 0x1FF |
|
#define | MAKE_SSE(P, C) ((ULONG_PTR)((P) | ((C) << 3))) |
|
#define | BUMPREF_SSE(E) (PAGE_FROM_SSE(E) | ((SHARE_COUNT_FROM_SSE(E) + 1) << 3) | ((E) & 0x7)) |
|
#define | DECREF_SSE(E) (PAGE_FROM_SSE(E) | ((SHARE_COUNT_FROM_SSE(E) - 1) << 3) | ((E) & 0x7)) |
|
#define | MmLockSectionSegment(x) _MmLockSectionSegment(x,__FILE__,__LINE__) |
|
#define | MmUnlockSectionSegment(x) _MmUnlockSectionSegment(x,__FILE__,__LINE__) |
|
#define | MmSetPageEntrySectionSegment(S, O, E) _MmSetPageEntrySectionSegment(S,O,E,__FILE__,__LINE__) |
|
#define | MmGetPageEntrySectionSegment(S, O) _MmGetPageEntrySectionSegment(S,O,__FILE__,__LINE__) |
|
|
NTSTATUS NTAPI | MmDbgCopyMemory (IN ULONG64 Address, IN PVOID Buffer, IN ULONG Size, IN ULONG Flags) |
|
BOOLEAN NTAPI | MmIsSessionAddress (IN PVOID Address) |
|
ULONG NTAPI | MmGetSessionId (IN PEPROCESS Process) |
|
ULONG NTAPI | MmGetSessionIdEx (IN PEPROCESS Process) |
|
NTSTATUS NTAPI | MmCreateMemoryArea (PMMSUPPORT AddressSpace, ULONG Type, PVOID *BaseAddress, SIZE_T Length, ULONG Protection, PMEMORY_AREA *Result, ULONG AllocationFlags, ULONG AllocationGranularity) |
|
PMEMORY_AREA NTAPI | MmLocateMemoryAreaByAddress (PMMSUPPORT AddressSpace, PVOID Address) |
|
NTSTATUS NTAPI | MmFreeMemoryArea (PMMSUPPORT AddressSpace, PMEMORY_AREA MemoryArea, PMM_FREE_PAGE_FUNC FreePage, PVOID FreePageContext) |
|
VOID NTAPI | MiRosCleanupMemoryArea (PEPROCESS Process, PMMVAD Vad) |
|
PMEMORY_AREA NTAPI | MmLocateMemoryAreaByRegion (PMMSUPPORT AddressSpace, PVOID Address, SIZE_T Length) |
|
PVOID NTAPI | MmFindGap (PMMSUPPORT AddressSpace, SIZE_T Length, ULONG_PTR Granularity, BOOLEAN TopDown) |
|
VOID NTAPI | MiRosCheckMemoryAreas (PMMSUPPORT AddressSpace) |
|
VOID NTAPI | MiCheckAllProcessMemoryAreas (VOID) |
|
VOID NTAPI | MiInitializeNonPagedPool (VOID) |
|
PVOID NTAPI | MiAllocatePoolPages (IN POOL_TYPE PoolType, IN SIZE_T SizeInBytes) |
|
POOL_TYPE NTAPI | MmDeterminePoolType (IN PVOID VirtualAddress) |
|
ULONG NTAPI | MiFreePoolPages (IN PVOID StartingAddress) |
|
| _Requires_lock_held_ (PspQuotaLock) BOOLEAN NTAPI MmRaisePoolQuota(_In_ POOL_TYPE PoolType |
|
VOID NTAPI | MmBuildMdlFromPages (PMDL Mdl, PPFN_NUMBER Pages) |
|
VOID NTAPI | MmInit1 (VOID) |
|
BOOLEAN NTAPI | MmInitSystem (IN ULONG Phase, IN PLOADER_PARAMETER_BLOCK LoaderBlock) |
|
SWAPENTRY NTAPI | MmAllocSwapPage (VOID) |
|
VOID NTAPI | MmFreeSwapPage (SWAPENTRY Entry) |
|
VOID NTAPI | MmInitPagingFile (VOID) |
|
BOOLEAN NTAPI | MmIsFileObjectAPagingFile (PFILE_OBJECT FileObject) |
|
NTSTATUS NTAPI | MmReadFromSwapPage (SWAPENTRY SwapEntry, PFN_NUMBER Page) |
|
NTSTATUS NTAPI | MmWriteToSwapPage (SWAPENTRY SwapEntry, PFN_NUMBER Page) |
|
VOID NTAPI | MmShowOutOfSpaceMessagePagingFile (VOID) |
|
NTSTATUS NTAPI | MiReadPageFile (_In_ PFN_NUMBER Page, _In_ ULONG PageFileIndex, _In_ ULONG_PTR PageFileOffset) |
|
NTSTATUS NTAPI | MmInitializeProcessAddressSpace (IN PEPROCESS Process, IN PEPROCESS Clone OPTIONAL, IN PVOID Section OPTIONAL, IN OUT PULONG Flags, IN POBJECT_NAME_INFORMATION *AuditName OPTIONAL) |
|
NTSTATUS NTAPI | MmCreatePeb (IN PEPROCESS Process, IN PINITIAL_PEB InitialPeb, OUT PPEB *BasePeb) |
|
NTSTATUS NTAPI | MmCreateTeb (IN PEPROCESS Process, IN PCLIENT_ID ClientId, IN PINITIAL_TEB InitialTeb, OUT PTEB *BaseTeb) |
|
VOID NTAPI | MmDeleteTeb (struct _EPROCESS *Process, PTEB Teb) |
|
VOID NTAPI | MmCleanProcessAddressSpace (IN PEPROCESS Process) |
|
VOID NTAPI | MmDeleteProcessAddressSpace (IN PEPROCESS Process) |
|
ULONG NTAPI | MmGetSessionLocaleId (VOID) |
|
NTSTATUS NTAPI | MmSetMemoryPriorityProcess (IN PEPROCESS Process, IN UCHAR MemoryPriority) |
|
NTSTATUS NTAPI | MmPageFault (ULONG Cs, PULONG Eip, PULONG Eax, ULONG Cr2, ULONG ErrorCode) |
|
VOID NTAPI | MiInitializeSpecialPool (VOID) |
|
BOOLEAN NTAPI | MmUseSpecialPool (IN SIZE_T NumberOfBytes, IN ULONG Tag) |
|
BOOLEAN NTAPI | MmIsSpecialPoolAddress (IN PVOID P) |
|
BOOLEAN NTAPI | MmIsSpecialPoolAddressFree (IN PVOID P) |
|
PVOID NTAPI | MmAllocateSpecialPool (IN SIZE_T NumberOfBytes, IN ULONG Tag, IN POOL_TYPE PoolType, IN ULONG SpecialType) |
|
VOID NTAPI | MmFreeSpecialPool (IN PVOID P) |
|
NTSTATUS NTAPI | MmAccessFault (IN ULONG FaultCode, IN PVOID Address, IN KPROCESSOR_MODE Mode, IN PVOID TrapInformation) |
|
PVOID NTAPI | MmCreateKernelStack (BOOLEAN GuiStack, UCHAR Node) |
|
VOID NTAPI | MmDeleteKernelStack (PVOID Stack, BOOLEAN GuiStack) |
|
FORCEINLINE VOID | UpdateTotalCommittedPages (LONG Delta) |
|
VOID NTAPI | MmInitializeMemoryConsumer (ULONG Consumer, NTSTATUS(*Trim)(ULONG Target, ULONG Priority, PULONG NrFreed)) |
|
VOID NTAPI | MmInitializeBalancer (ULONG NrAvailablePages, ULONG NrSystemPages) |
|
NTSTATUS NTAPI | MmReleasePageMemoryConsumer (ULONG Consumer, PFN_NUMBER Page) |
|
NTSTATUS NTAPI | MmRequestPageMemoryConsumer (ULONG Consumer, BOOLEAN MyWait, PPFN_NUMBER AllocatedPage) |
|
VOID NTAPI | MiInitBalancerThread (VOID) |
|
VOID NTAPI | MmRebalanceMemoryConsumers (VOID) |
|
VOID NTAPI | MmSetRmapListHeadPage (PFN_NUMBER Page, struct _MM_RMAP_ENTRY *ListHead) |
|
struct _MM_RMAP_ENTRY *NTAPI | MmGetRmapListHeadPage (PFN_NUMBER Page) |
|
VOID NTAPI | MmInsertRmap (PFN_NUMBER Page, struct _EPROCESS *Process, PVOID Address) |
|
VOID NTAPI | MmDeleteAllRmaps (PFN_NUMBER Page, PVOID Context, VOID(*DeleteMapping)(PVOID Context, struct _EPROCESS *Process, PVOID Address)) |
|
VOID NTAPI | MmDeleteRmap (PFN_NUMBER Page, struct _EPROCESS *Process, PVOID Address) |
|
VOID NTAPI | MmInitializeRmapList (VOID) |
|
NTSTATUS NTAPI | MmPageOutPhysicalAddress (PFN_NUMBER Page) |
|
PMM_SECTION_SEGMENT NTAPI | MmGetSectionAssociation (PFN_NUMBER Page, PLARGE_INTEGER Offset) |
|
| _IRQL_raises_ (DISPATCH_LEVEL) _IRQL_requires_max_(DISPATCH_LEVEL) _Requires_lock_not_held_(MmPfnLock) _Acquires_lock_(MmPfnLock) _IRQL_saves_ FORCEINLINE KIRQL MiAcquirePfnLock(VOID) |
|
| _Requires_lock_held_ (MmPfnLock) _Releases_lock_(MmPfnLock) _IRQL_requires_(DISPATCH_LEVEL) FORCEINLINE VOID MiReleasePfnLock(_In_ _IRQL_restores_ KIRQL OldIrql) |
|
| _IRQL_requires_min_ (DISPATCH_LEVEL) _Requires_lock_not_held_(MmPfnLock) _Acquires_lock_(MmPfnLock) FORCEINLINE VOID MiAcquirePfnLockAtDpcLevel(VOID) |
|
FORCEINLINE PMMPFN | MiGetPfnEntry (IN PFN_NUMBER Pfn) |
|
FORCEINLINE PFN_NUMBER | MiGetPfnEntryIndex (IN PMMPFN Pfn1) |
|
PFN_NUMBER NTAPI | MmGetLRUNextUserPage (PFN_NUMBER PreviousPage, BOOLEAN MoveToLast) |
|
PFN_NUMBER NTAPI | MmGetLRUFirstUserPage (VOID) |
|
VOID NTAPI | MmDumpArmPfnDatabase (IN BOOLEAN StatusOnly) |
|
VOID NTAPI | MmZeroPageThread (VOID) |
|
PVOID NTAPI | MiMapPageInHyperSpace (IN PEPROCESS Process, IN PFN_NUMBER Page, IN PKIRQL OldIrql) |
|
VOID NTAPI | MiUnmapPageInHyperSpace (IN PEPROCESS Process, IN PVOID Address, IN KIRQL OldIrql) |
|
PVOID NTAPI | MiMapPagesInZeroSpace (IN PMMPFN Pfn1, IN PFN_NUMBER NumberOfPages) |
|
VOID NTAPI | MiUnmapPagesInZeroSpace (IN PVOID VirtualAddress, IN PFN_NUMBER NumberOfPages) |
|
NTSTATUS NTAPI | MmCreateVirtualMapping (struct _EPROCESS *Process, PVOID Address, ULONG flProtect, PFN_NUMBER Page) |
|
NTSTATUS NTAPI | MmCreateVirtualMappingUnsafe (struct _EPROCESS *Process, PVOID Address, ULONG flProtect, PFN_NUMBER Page) |
|
NTSTATUS NTAPI | MmCreatePhysicalMapping (_Inout_opt_ PEPROCESS Process, _In_ PVOID Address, _In_ ULONG flProtect, _In_ PFN_NUMBER Page) |
|
ULONG NTAPI | MmGetPageProtect (struct _EPROCESS *Process, PVOID Address) |
|
VOID NTAPI | MmSetPageProtect (struct _EPROCESS *Process, PVOID Address, ULONG flProtect) |
|
BOOLEAN NTAPI | MmIsPagePresent (struct _EPROCESS *Process, PVOID Address) |
|
BOOLEAN NTAPI | MmIsDisabledPage (struct _EPROCESS *Process, PVOID Address) |
|
VOID NTAPI | MmInitGlobalKernelPageDirectory (VOID) |
|
VOID NTAPI | MmDeletePageFileMapping (struct _EPROCESS *Process, PVOID Address, SWAPENTRY *SwapEntry) |
|
NTSTATUS NTAPI | MmCreatePageFileMapping (struct _EPROCESS *Process, PVOID Address, SWAPENTRY SwapEntry) |
|
VOID NTAPI | MmGetPageFileMapping (PEPROCESS Process, PVOID Address, SWAPENTRY *SwapEntry) |
|
BOOLEAN NTAPI | MmIsPageSwapEntry (struct _EPROCESS *Process, PVOID Address) |
|
PFN_NUMBER NTAPI | MmAllocPage (ULONG Consumer) |
|
VOID NTAPI | MmDereferencePage (PFN_NUMBER Page) |
|
VOID NTAPI | MmReferencePage (PFN_NUMBER Page) |
|
ULONG NTAPI | MmGetReferenceCountPage (PFN_NUMBER Page) |
|
BOOLEAN NTAPI | MmIsPageInUse (PFN_NUMBER Page) |
|
VOID NTAPI | MmSetSavedSwapEntryPage (PFN_NUMBER Page, SWAPENTRY SavedSwapEntry) |
|
SWAPENTRY NTAPI | MmGetSavedSwapEntryPage (PFN_NUMBER Page) |
|
VOID NTAPI | MmSetCleanPage (struct _EPROCESS *Process, PVOID Address) |
|
VOID NTAPI | MmSetDirtyBit (PEPROCESS Process, PVOID Address, BOOLEAN Bit) |
|
VOID NTAPI | MmDeletePageTable (struct _EPROCESS *Process, PVOID Address) |
|
PFN_NUMBER NTAPI | MmGetPfnForProcess (struct _EPROCESS *Process, PVOID Address) |
|
BOOLEAN NTAPI | MmCreateProcessAddressSpace (IN ULONG MinWs, IN PEPROCESS Dest, IN PULONG_PTR DirectoryTableBase) |
|
NTSTATUS NTAPI | MmInitializeHandBuiltProcess (IN PEPROCESS Process, IN PULONG_PTR DirectoryTableBase) |
|
NTSTATUS NTAPI | MmInitializeHandBuiltProcess2 (IN PEPROCESS Process) |
|
NTSTATUS NTAPI | MmSetExecuteOptions (IN ULONG ExecuteOptions) |
|
NTSTATUS NTAPI | MmGetExecuteOptions (IN PULONG ExecuteOptions) |
|
| _Success_ (return) BOOLEAN MmDeleteVirtualMapping(_Inout_opt_ PEPROCESS Process |
|
BOOLEAN | MiArchCreateProcessAddressSpace (_In_ PEPROCESS Process, _In_ PULONG_PTR DirectoryTableBase) |
|
NTSTATUS | MmTrimUserMemory (ULONG Target, ULONG Priority, PULONG NrFreedPages) |
|
NTSTATUS NTAPI | MmAlterRegion (PMMSUPPORT AddressSpace, PVOID BaseAddress, PLIST_ENTRY RegionListHead, PVOID StartAddress, SIZE_T Length, ULONG NewType, ULONG NewProtect, PMM_ALTER_REGION_FUNC AlterFunc) |
|
VOID NTAPI | MmInitializeRegion (PLIST_ENTRY RegionListHead, SIZE_T Length, ULONG Type, ULONG Protect) |
|
PMM_REGION NTAPI | MmFindRegion (PVOID BaseAddress, PLIST_ENTRY RegionListHead, PVOID Address, PVOID *RegionBaseAddress) |
|
VOID NTAPI | _MmLockSectionSegment (PMM_SECTION_SEGMENT Segment, const char *file, int line) |
|
VOID NTAPI | _MmUnlockSectionSegment (PMM_SECTION_SEGMENT Segment, const char *file, int line) |
|
VOID NTAPI | MmGetImageInformation (OUT PSECTION_IMAGE_INFORMATION ImageInformation) |
|
PFILE_OBJECT NTAPI | MmGetFileObjectForSection (IN PVOID Section) |
|
NTSTATUS NTAPI | MmGetFileNameForAddress (IN PVOID Address, OUT PUNICODE_STRING ModuleName) |
|
NTSTATUS NTAPI | MmGetFileNameForSection (IN PVOID Section, OUT POBJECT_NAME_INFORMATION *ModuleName) |
|
NTSTATUS NTAPI | MmQuerySectionView (PMEMORY_AREA MemoryArea, PVOID Address, PMEMORY_BASIC_INFORMATION Info, PSIZE_T ResultLength) |
|
NTSTATUS NTAPI | MmProtectSectionView (PMMSUPPORT AddressSpace, PMEMORY_AREA MemoryArea, PVOID BaseAddress, SIZE_T Length, ULONG Protect, PULONG OldProtect) |
|
NTSTATUS NTAPI | MmInitSectionImplementation (VOID) |
|
NTSTATUS NTAPI | MmNotPresentFaultSectionView (PMMSUPPORT AddressSpace, MEMORY_AREA *MemoryArea, PVOID Address, BOOLEAN Locked) |
|
NTSTATUS NTAPI | MmPageOutSectionView (PMMSUPPORT AddressSpace, PMEMORY_AREA MemoryArea, PVOID Address, ULONG_PTR Entry) |
|
NTSTATUS NTAPI | MmCreatePhysicalMemorySection (VOID) |
|
NTSTATUS NTAPI | MmAccessFaultSectionView (PMMSUPPORT AddressSpace, MEMORY_AREA *MemoryArea, PVOID Address, BOOLEAN Locked) |
|
VOID NTAPI | MmFreeSectionSegments (PFILE_OBJECT FileObject) |
|
NTSTATUS NTAPI | MmMapViewInSystemSpaceEx (_In_ PVOID Section, _Outptr_result_bytebuffer_(*ViewSize) PVOID *MappedBase, _Inout_ PSIZE_T ViewSize, _Inout_ PLARGE_INTEGER SectionOffset, _In_ ULONG_PTR Flags) |
|
BOOLEAN NTAPI | MmArePagesResident (_In_ PEPROCESS Process, _In_ PVOID BaseAddress, _In_ ULONG Length) |
|
NTSTATUS NTAPI | MmMakePagesDirty (_In_ PEPROCESS Process, _In_ PVOID Address, _In_ ULONG Length) |
|
NTSTATUS NTAPI | MmFlushSegment (_In_ PSECTION_OBJECT_POINTERS SectionObjectPointer, _In_opt_ PLARGE_INTEGER Offset, _In_ ULONG Length, _Out_opt_ PIO_STATUS_BLOCK Iosb) |
|
NTSTATUS NTAPI | MmMakeDataSectionResident (_In_ PSECTION_OBJECT_POINTERS SectionObjectPointer, _In_ LONGLONG Offset, _In_ ULONG Length, _In_ PLARGE_INTEGER ValidDataLength) |
|
BOOLEAN NTAPI | MmPurgeSegment (_In_ PSECTION_OBJECT_POINTERS SectionObjectPointer, _In_opt_ PLARGE_INTEGER Offset, _In_ ULONG Length) |
|
BOOLEAN NTAPI | MmCheckDirtySegment (PMM_SECTION_SEGMENT Segment, PLARGE_INTEGER Offset, BOOLEAN ForceDirty, BOOLEAN PageOut) |
|
BOOLEAN NTAPI | MmUnsharePageEntrySectionSegment (PMEMORY_AREA MemoryArea, PMM_SECTION_SEGMENT Segment, PLARGE_INTEGER Offset, BOOLEAN Dirty, BOOLEAN PageOut, ULONG_PTR *InEntry) |
|
| _When_ (OldIrql==MM_NOIRQL, _IRQL_requires_max_(DISPATCH_LEVEL)) _When_(OldIrql |
|
| _Requires_lock_not_held_ (MmPfnLock)) _When_(OldIrql ! |
|
| _Releases_lock_ (MmPfnLock)) _When_(OldIrql ! |
|
| _IRQL_requires_ (DISPATCH_LEVEL)) VOID NTAPI MmDereferenceSegmentWithLock(_In_ PMM_SECTION_SEGMENT Segment |
|
_In_ | _When_ (OldIrql !=MM_NOIRQL, _IRQL_restores_) KIRQL OldIrql) |
|
| _IRQL_requires_max_ (DISPATCH_LEVEL) _Requires_lock_not_held_(MmPfnLock) FORCEINLINE VOID MmDereferenceSegment(PMM_SECTION_SEGMENT Segment) |
|
NTSTATUS NTAPI | MmExtendSection (_In_ PVOID Section, _Inout_ PLARGE_INTEGER NewSize) |
|
NTSTATUS NTAPI | _MmSetPageEntrySectionSegment (PMM_SECTION_SEGMENT Segment, PLARGE_INTEGER Offset, ULONG_PTR Entry, const char *file, int line) |
|
ULONG_PTR NTAPI | _MmGetPageEntrySectionSegment (PMM_SECTION_SEGMENT Segment, PLARGE_INTEGER Offset, const char *file, int line) |
|
VOID NTAPI | MiReloadBootLoadedDrivers (IN PLOADER_PARAMETER_BLOCK LoaderBlock) |
|
BOOLEAN NTAPI | MiInitializeLoadedModuleList (IN PLOADER_PARAMETER_BLOCK LoaderBlock) |
|
BOOLEAN NTAPI | MmChangeKernelResourceSectionProtection (IN ULONG_PTR ProtectionMask) |
|
VOID NTAPI | MmMakeKernelResourceSectionWritable (VOID) |
|
NTSTATUS NTAPI | MmLoadSystemImage (IN PUNICODE_STRING FileName, IN PUNICODE_STRING NamePrefix OPTIONAL, IN PUNICODE_STRING LoadedName OPTIONAL, IN ULONG Flags, OUT PVOID *ModuleObject, OUT PVOID *ImageBaseAddress) |
|
NTSTATUS NTAPI | MmUnloadSystemImage (IN PVOID ImageHandle) |
|
NTSTATUS NTAPI | MmCheckSystemImage (IN HANDLE ImageHandle, IN BOOLEAN PurgeSection) |
|
NTSTATUS NTAPI | MmCallDllInitialize (_In_ PLDR_DATA_TABLE_ENTRY LdrEntry, _In_ PLIST_ENTRY ModuleListHead) |
|
VOID NTAPI | MmFreeDriverInitialization (IN PLDR_DATA_TABLE_ENTRY LdrEntry) |
|
NTSTATUS NTAPI | RtlpFindExportedRoutineByName (_In_ PVOID ImageBase, _In_ PCSTR ExportName, _Out_ PVOID *Function, _Out_opt_ PBOOLEAN IsForwarder, _In_ NTSTATUS NotFoundStatus) |
| ReactOS-only helper routine for RtlFindExportedRoutineByName(), that provides a finer granularity regarding the nature of the export, and the failure reasons.
|
|
PVOID NTAPI | RtlFindExportedRoutineByName (_In_ PVOID ImageBase, _In_ PCSTR ExportName) |
| Finds the address of a given named exported routine in a loaded image. Note that this function does not support forwarders.
|
|
NTSTATUS NTAPI | MmGrowKernelStack (IN PVOID StackPointer) |
|
FORCEINLINE VOID | MmLockAddressSpace (PMMSUPPORT AddressSpace) |
|
FORCEINLINE VOID | MmUnlockAddressSpace (PMMSUPPORT AddressSpace) |
|
FORCEINLINE PEPROCESS | MmGetAddressSpaceOwner (IN PMMSUPPORT AddressSpace) |
|
FORCEINLINE PMMSUPPORT | MmGetCurrentAddressSpace (VOID) |
|
FORCEINLINE PMMSUPPORT | MmGetKernelAddressSpace (VOID) |
|
VOID NTAPI | ExpCheckPoolAllocation (PVOID P, POOL_TYPE PoolType, ULONG Tag) |
|
VOID NTAPI | ExReturnPoolQuota (IN PVOID P) |
|
NTSTATUS NTAPI | MmAdjustWorkingSetSize (IN SIZE_T WorkingSetMinimumInBytes, IN SIZE_T WorkingSetMaximumInBytes, IN ULONG SystemCache, IN BOOLEAN IncreaseOkay) |
|
| _IRQL_requires_max_ (APC_LEVEL) NTSTATUS NTAPI MmAttachSession(_Inout_ PVOID SessionEntry |
|
VOID NTAPI | MmQuitNextSession (_Inout_ PVOID SessionEntry) |
|
PVOID NTAPI | MmGetSessionById (_In_ ULONG SessionId) |
|
VOID | MmShutdownSystem (IN ULONG Phase) |
|
NTSTATUS NTAPI | MmCopyVirtualMemory (IN PEPROCESS SourceProcess, IN PVOID SourceAddress, IN PEPROCESS TargetProcess, OUT PVOID TargetAddress, IN SIZE_T BufferSize, IN KPROCESSOR_MODE PreviousMode, OUT PSIZE_T ReturnSize) |
|
| _Requires_exclusive_lock_held_ (WorkingSet->WorkingSetMutex) VOID NTAPI MiInitializeWorkingSetList(_Inout_ PMMSUPPORT WorkingSet) |
|