#include <ntoskrnl.h>
#include <debug.h>
#include "ARM3/miarm.h"
Go to the source code of this file.
Data Structures |
| struct | PMM_ALLOCATION_REQUEST |
Defines |
| #define | NDEBUG |
Functions |
| VOID INIT_FUNCTION NTAPI | MmInitializeBalancer (ULONG NrAvailablePages, ULONG NrSystemPages) |
| VOID INIT_FUNCTION NTAPI | MmInitializeMemoryConsumer (ULONG Consumer, NTSTATUS(*Trim)(ULONG Target, ULONG Priority, PULONG NrFreed)) |
| VOID NTAPI | MiZeroPhysicalPage (IN PFN_NUMBER PageFrameIndex) |
| NTSTATUS NTAPI | MmReleasePageMemoryConsumer (ULONG Consumer, PFN_NUMBER Page) |
| ULONG NTAPI | MiTrimMemoryConsumer (ULONG Consumer, ULONG InitialTarget) |
| NTSTATUS | MmTrimUserMemory (ULONG Target, ULONG Priority, PULONG NrFreedPages) |
| static BOOLEAN | MiIsBalancerThread (VOID) |
| VOID NTAPI | MiDeletePte (IN PMMPTE PointerPte, IN PVOID VirtualAddress, IN PEPROCESS CurrentProcess, IN PMMPTE PrototypePte) |
| VOID NTAPI | MmRebalanceMemoryConsumers (VOID) |
| NTSTATUS NTAPI | MmRequestPageMemoryConsumer (ULONG Consumer, BOOLEAN CanWait, PPFN_NUMBER AllocatedPage) |
| VOID NTAPI | MiBalancerThread (PVOID Unused) |
| VOID INIT_FUNCTION NTAPI | MiInitBalancerThread (VOID) |
Variables |
| MM_MEMORY_CONSUMER | MiMemoryConsumers [MC_MAXIMUM] |
| static ULONG | MiMinimumAvailablePages |
| static ULONG | MiNrTotalPages |
| static LIST_ENTRY | AllocationListHead |
| static KSPIN_LOCK | AllocationListLock |
| static ULONG | MiMinimumPagesPerRun |
| static CLIENT_ID | MiBalancerThreadId |
| static HANDLE | MiBalancerThreadHandle = NULL |
| static KEVENT | MiBalancerEvent |
| static KTIMER | MiBalancerTimer |