ReactOS 0.4.16-dev-1457-g02ea0aa
|
#include <stdarg.h>
#include <stdlib.h>
#include <string.h>
#include <limits.h>
#include <sys/types.h>
#include "ntstatus.h"
#include "windef.h"
#include "winbase.h"
#include "winnls.h"
#include "winternl.h"
#include "winerror.h"
#include "ddk/wdm.h"
#include "kernelbase.h"
#include "wine/exception.h"
#include "wine/debug.h"
Go to the source code of this file.
Classes | |
struct | rtl_heap_entry |
struct | kernelbase_global_data |
struct | mem_entry |
Macros | |
#define | WIN32_NO_STATUS |
#define | ROUND_ADDR(addr) ((void *)((UINT_PTR)(addr) & ~page_mask)) |
#define | ROUND_SIZE(addr, size) (((SIZE_T)(size) + ((UINT_PTR)(addr) & page_mask) + page_mask) & ~page_mask) |
#define | RTL_HEAP_ENTRY_BUSY 0x0001 |
#define | RTL_HEAP_ENTRY_REGION 0x0002 |
#define | RTL_HEAP_ENTRY_BLOCK 0x0010 |
#define | RTL_HEAP_ENTRY_UNCOMMITTED 0x1000 |
#define | RTL_HEAP_ENTRY_COMMITTED 0x4000 |
#define | RTL_HEAP_ENTRY_LFH 0x8000 |
#define | HEAP_ADD_USER_INFO 0x00000100 |
#define | MEM_FLAG_USED 1 |
#define | MEM_FLAG_MOVEABLE 2 |
#define | MEM_FLAG_DISCARDABLE 4 |
#define | MEM_FLAG_DISCARDED 8 |
#define | MEM_FLAG_DDESHARE 0x8000 |
#define | MAX_MEM_HANDLES 0x10000 |
Variables | |
static const SIZE_T | page_mask = 0xfff |
static struct mem_entry * | next_free_mem |
static struct kernelbase_global_data | global_data = {0} |
BOOL WINAPI DECLSPEC_HOTPATCH AllocateUserPhysicalPages | ( | HANDLE | process, |
ULONG_PTR * | pages, | ||
ULONG_PTR * | userarray | ||
) |
Definition at line 1289 of file memory.c.
Referenced by AllocateUserPhysicalPagesNuma().
BOOL WINAPI DECLSPEC_HOTPATCH AllocateUserPhysicalPagesNuma | ( | HANDLE | process, |
ULONG_PTR * | pages, | ||
ULONG_PTR * | userarray, | ||
DWORD | node | ||
) |
Definition at line 1408 of file memory.c.
|
static |
Definition at line 60 of file memory.c.
Referenced by FlushInstructionCache(), and WriteProcessMemory().
Definition at line 1633 of file memory.c.
Referenced by FileCopyCallback(), FileCopyPage(), MoveFileWithProgressW(), PrepareAndDoCopyThread(), and SetupUpdateMemoryInfo().
HANDLE WINAPI DECLSPEC_HOTPATCH CreateFileMappingNumaW | ( | HANDLE | file, |
LPSECURITY_ATTRIBUTES | sa, | ||
DWORD | protect, | ||
DWORD | size_high, | ||
DWORD | size_low, | ||
LPCWSTR | name, | ||
DWORD | node | ||
) |
HANDLE WINAPI DECLSPEC_HOTPATCH CreateMemoryResourceNotification | ( | MEMORY_RESOURCE_NOTIFICATION_TYPE | type | ) |
Definition at line 1238 of file memory.c.
DWORD WINAPI DECLSPEC_HOTPATCH DiscardVirtualMemory | ( | void * | addr, |
SIZE_T | size | ||
) |
Definition at line 103 of file memory.c.
Definition at line 1817 of file memory.c.
|
static |
Definition at line 150 of file memory.c.
Referenced by GetNativeSystemInfo(), and GetSystemInfo().
Definition at line 128 of file memory.c.
Definition at line 116 of file memory.c.
BOOL WINAPI DECLSPEC_HOTPATCH FreeUserPhysicalPages | ( | HANDLE | process, |
ULONG_PTR * | pages, | ||
ULONG_PTR * | userarray | ||
) |
|
static |
Definition at line 1788 of file memory.c.
Referenced by EnumSystemFirmwareTables(), and GetSystemFirmwareTable().
BOOL WINAPI DECLSPEC_HOTPATCH GetLogicalProcessorInformation | ( | SYSTEM_LOGICAL_PROCESSOR_INFORMATION * | buffer, |
DWORD * | len | ||
) |
BOOL WINAPI DECLSPEC_HOTPATCH GetLogicalProcessorInformationEx | ( | LOGICAL_PROCESSOR_RELATIONSHIP | relationship, |
SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX * | buffer, | ||
DWORD * | len | ||
) |
void WINAPI DECLSPEC_HOTPATCH GetNativeSystemInfo | ( | SYSTEM_INFO * | si | ) |
Definition at line 200 of file memory.c.
BOOL WINAPI DECLSPEC_HOTPATCH GetNumaHighestNodeNumber | ( | ULONG * | node | ) |
BOOL WINAPI DECLSPEC_HOTPATCH GetNumaNodeProcessorMaskEx | ( | USHORT | node, |
GROUP_AFFINITY * | mask | ||
) |
BOOL WINAPI DECLSPEC_HOTPATCH GetNumaProximityNodeEx | ( | ULONG | proximity_id, |
USHORT * | node | ||
) |
BOOL WINAPI DECLSPEC_HOTPATCH GetPhysicallyInstalledSystemMemory | ( | ULONGLONG * | memory | ) |
Definition at line 1314 of file memory.c.
BOOL WINAPI GetSystemCpuSetInformation | ( | SYSTEM_CPU_SET_INFORMATION * | info, |
ULONG | buffer_length, | ||
ULONG * | return_length, | ||
HANDLE | process, | ||
ULONG | flags | ||
) |
Definition at line 1470 of file memory.c.
BOOL WINAPI DECLSPEC_HOTPATCH GetSystemFileCacheSize | ( | SIZE_T * | mincache, |
SIZE_T * | maxcache, | ||
DWORD * | flags | ||
) |
void WINAPI DECLSPEC_HOTPATCH GetSystemInfo | ( | SYSTEM_INFO * | si | ) |
Definition at line 231 of file memory.c.
Referenced by GetNativeSystemInfo().
UINT WINAPI DECLSPEC_HOTPATCH GetWriteWatch | ( | DWORD | flags, |
void * | base, | ||
SIZE_T | size, | ||
void ** | addresses, | ||
ULONG_PTR * | count, | ||
ULONG * | granularity | ||
) |
Definition at line 260 of file memory.c.
HGLOBAL WINAPI DECLSPEC_HOTPATCH GlobalAlloc | ( | UINT | flags, |
SIZE_T | size | ||
) |
Definition at line 951 of file memory.c.
HGLOBAL WINAPI DECLSPEC_HOTPATCH GlobalFree | ( | HLOCAL | handle | ) |
BOOL WINAPI DECLSPEC_HOTPATCH GlobalMemoryStatusEx | ( | MEMORYSTATUSEX * | status | ) |
Definition at line 1333 of file memory.c.
SIZE_T WINAPI DECLSPEC_HOTPATCH HeapCompact | ( | HANDLE | heap, |
DWORD | flags | ||
) |
BOOL WINAPI DECLSPEC_HOTPATCH HeapDestroy | ( | HANDLE | heap | ) |
BOOL WINAPI DECLSPEC_HOTPATCH HeapLock | ( | HANDLE | heap | ) |
BOOL WINAPI HeapQueryInformation | ( | HANDLE | heap, |
HEAP_INFORMATION_CLASS | info_class, | ||
PVOID | info, | ||
SIZE_T | size, | ||
PSIZE_T | size_out | ||
) |
BOOL WINAPI HeapSetInformation | ( | HANDLE | heap, |
HEAP_INFORMATION_CLASS | infoclass, | ||
PVOID | info, | ||
SIZE_T | size | ||
) |
Definition at line 784 of file memory.c.
Referenced by LocalFree(), and LocalReAlloc().
BOOL WINAPI DECLSPEC_HOTPATCH HeapWalk | ( | HANDLE | heap, |
PROCESS_HEAP_ENTRY * | entry | ||
) |
Definition at line 826 of file memory.c.
Definition at line 919 of file memory.c.
Referenced by LocalAlloc().
Definition at line 931 of file memory.c.
Referenced by DllMain().
BOOL WINAPI InitializeContext | ( | void * | buffer, |
DWORD | context_flags, | ||
CONTEXT ** | context, | ||
DWORD * | length | ||
) |
Definition at line 1625 of file memory.c.
Referenced by DosBootsectorInitialize(), DosKRNLInitialize(), DosMouseInitialize(), DosStart(), InitializeBiosInt32(), and KsCreateDefaultAllocatorEx().
BOOL WINAPI InitializeContext2 | ( | void * | buffer, |
DWORD | context_flags, | ||
CONTEXT ** | context, | ||
DWORD * | length, | ||
ULONG64 | compaction_mask | ||
) |
Definition at line 1585 of file memory.c.
Referenced by InitializeContext().
Definition at line 449 of file memory.c.
Referenced by VirtualAlloc2FromApp(), and VirtualAllocFromApp().
HLOCAL WINAPI DECLSPEC_HOTPATCH LocalAlloc | ( | UINT | flags, |
SIZE_T | size | ||
) |
Definition at line 980 of file memory.c.
Referenced by Dns_AllocZero(), and GlobalAlloc().
HLOCAL WINAPI DECLSPEC_HOTPATCH LocalFree | ( | HLOCAL | handle | ) |
Definition at line 1040 of file memory.c.
Referenced by Dns_Free(), GlobalFree(), and LocalAlloc().
LPVOID WINAPI DECLSPEC_HOTPATCH LocalLock | ( | HLOCAL | handle | ) |
BOOL WINAPI DECLSPEC_HOTPATCH LocalUnlock | ( | HLOCAL | handle | ) |
BOOL WINAPI DECLSPEC_HOTPATCH MapUserPhysicalPages | ( | void * | addr, |
ULONG_PTR | page_count, | ||
ULONG_PTR * | pages | ||
) |
LPVOID WINAPI DECLSPEC_HOTPATCH MapViewOfFile | ( | HANDLE | mapping, |
DWORD | access, | ||
DWORD | offset_high, | ||
DWORD | offset_low, | ||
SIZE_T | count | ||
) |
Definition at line 273 of file memory.c.
LPVOID WINAPI DECLSPEC_HOTPATCH MapViewOfFile3 | ( | HANDLE | handle, |
HANDLE | process, | ||
PVOID | baseaddr, | ||
ULONG64 | offset, | ||
SIZE_T | size, | ||
ULONG | alloc_type, | ||
ULONG | protection, | ||
MEM_EXTENDED_PARAMETER * | params, | ||
ULONG | params_count | ||
) |
Definition at line 326 of file memory.c.
LPVOID WINAPI DECLSPEC_HOTPATCH MapViewOfFileEx | ( | HANDLE | handle, |
DWORD | access, | ||
DWORD | offset_high, | ||
DWORD | offset_low, | ||
SIZE_T | count, | ||
LPVOID | addr | ||
) |
Definition at line 283 of file memory.c.
Referenced by MapViewOfFile(), and MapViewOfFileExNuma().
LPVOID WINAPI DECLSPEC_HOTPATCH MapViewOfFileFromApp | ( | HANDLE | handle, |
ULONG | access, | ||
ULONG64 | offset, | ||
SIZE_T | size | ||
) |
|
static |
Definition at line 46 of file memory.c.
Referenced by FlushInstructionCache(), and WriteProcessMemory().
BOOL WINAPI DECLSPEC_HOTPATCH QueryMemoryResourceNotification | ( | HANDLE | handle, |
BOOL * | state | ||
) |
Definition at line 1265 of file memory.c.
BOOL WINAPI DECLSPEC_HOTPATCH QueryVirtualMemoryInformation | ( | HANDLE | process, |
const void * | addr, | ||
WIN32_MEMORY_INFORMATION_CLASS | info_class, | ||
void * | info, | ||
SIZE_T | size, | ||
SIZE_T * | ret_size | ||
) |
Definition at line 1563 of file memory.c.
BOOL WINAPI DECLSPEC_HOTPATCH ReadProcessMemory | ( | HANDLE | process, |
const void * | addr, | ||
void * | buffer, | ||
SIZE_T | size, | ||
SIZE_T * | bytes_read | ||
) |
Definition at line 347 of file memory.c.
UINT WINAPI DECLSPEC_HOTPATCH ResetWriteWatch | ( | void * | base, |
SIZE_T | size | ||
) |
Definition at line 357 of file memory.c.
|
static |
Definition at line 65 of file memory.c.
Referenced by FlushInstructionCache(), and WriteProcessMemory().
BOOL WINAPI DECLSPEC_HOTPATCH SetSystemFileCacheSize | ( | SIZE_T | mincache, |
SIZE_T | maxcache, | ||
DWORD | flags | ||
) |
BOOL WINAPI DECLSPEC_HOTPATCH UnmapViewOfFile | ( | const void * | addr | ) |
Definition at line 379 of file memory.c.
BOOL WINAPI DECLSPEC_HOTPATCH UnmapViewOfFileEx | ( | void * | addr, |
ULONG | flags | ||
) |
Definition at line 909 of file memory.c.
Referenced by GlobalAlloc(), LocalFree(), LocalLock(), LocalReAlloc(), and LocalUnlock().
Definition at line 925 of file memory.c.
Referenced by LocalFree(), LocalLock(), LocalReAlloc(), and LocalUnlock().
LPVOID WINAPI DECLSPEC_HOTPATCH VirtualAlloc | ( | void * | addr, |
SIZE_T | size, | ||
DWORD | type, | ||
DWORD | protect | ||
) |
Definition at line 415 of file memory.c.
Referenced by init_global_data().
LPVOID WINAPI DECLSPEC_HOTPATCH VirtualAlloc2FromApp | ( | HANDLE | process, |
void * | addr, | ||
SIZE_T | size, | ||
DWORD | type, | ||
DWORD | protect, | ||
MEM_EXTENDED_PARAMETER * | parameters, | ||
ULONG | count | ||
) |
LPVOID WINAPI DECLSPEC_HOTPATCH VirtualAllocEx | ( | HANDLE | process, |
void * | addr, | ||
SIZE_T | size, | ||
DWORD | type, | ||
DWORD | protect | ||
) |
Definition at line 424 of file memory.c.
Referenced by VirtualAlloc(), and VirtualAllocExNuma().
LPVOID WINAPI DECLSPEC_HOTPATCH VirtualAllocFromApp | ( | void * | addr, |
SIZE_T | size, | ||
DWORD | type, | ||
DWORD | protect | ||
) |
Definition at line 482 of file memory.c.
Definition at line 515 of file memory.c.
BOOL WINAPI DECLSPEC_HOTPATCH VirtualFreeEx | ( | HANDLE | process, |
void * | addr, | ||
SIZE_T | size, | ||
DWORD | type | ||
) |
Definition at line 524 of file memory.c.
Referenced by VirtualFree().
BOOL WINAPI DECLSPEC_HOTPATCH VirtualLock | ( | void * | addr, |
SIZE_T | size | ||
) |
Definition at line 539 of file memory.c.
BOOL WINAPI DECLSPEC_HOTPATCH VirtualProtect | ( | void * | addr, |
SIZE_T | size, | ||
DWORD | new_prot, | ||
DWORD * | old_prot | ||
) |
Definition at line 548 of file memory.c.
BOOL WINAPI DECLSPEC_HOTPATCH VirtualProtectEx | ( | HANDLE | process, |
void * | addr, | ||
SIZE_T | size, | ||
DWORD | new_prot, | ||
DWORD * | old_prot | ||
) |
Definition at line 557 of file memory.c.
Referenced by VirtualProtect().
SIZE_T WINAPI DECLSPEC_HOTPATCH VirtualQuery | ( | LPCVOID | addr, |
PMEMORY_BASIC_INFORMATION | info, | ||
SIZE_T | len | ||
) |
Definition at line 571 of file memory.c.
Referenced by UnmapViewOfFile().
SIZE_T WINAPI DECLSPEC_HOTPATCH VirtualQueryEx | ( | HANDLE | process, |
LPCVOID | addr, | ||
PMEMORY_BASIC_INFORMATION | info, | ||
SIZE_T | len | ||
) |
Definition at line 580 of file memory.c.
Referenced by VirtualQuery(), and WriteProcessMemory().
BOOL WINAPI DECLSPEC_HOTPATCH VirtualUnlock | ( | void * | addr, |
SIZE_T | size | ||
) |
Definition at line 594 of file memory.c.
WINE_DECLARE_DEBUG_CHANNEL | ( | globalmem | ) |
WINE_DECLARE_DEBUG_CHANNEL | ( | virtual | ) |
WINE_DEFAULT_DEBUG_CHANNEL | ( | heap | ) |
BOOL WINAPI DECLSPEC_HOTPATCH WriteProcessMemory | ( | HANDLE | process, |
void * | addr, | ||
const void * | buffer, | ||
SIZE_T | size, | ||
SIZE_T * | bytes_written | ||
) |
Definition at line 603 of file memory.c.
|
static |
Definition at line 907 of file memory.c.
Referenced by init_global_data(), KernelBaseGetGlobalData(), LocalAlloc(), and unsafe_mem_from_HLOCAL().
Definition at line 906 of file memory.c.
Referenced by init_global_data(), LocalAlloc(), and LocalFree().
Definition at line 96 of file memory.c.
Referenced by elf_map_file(), and macho_load_section_info().