Fungsi Manajemen Memori
- Fungsi memori umum
- Fungsi pencegahan eksekusi data
- Fungsi pemetaan file
- Fungsi AWE
- Fungsi timbunan
- Fungsi memori virtual
- Fungsi global dan lokal
- Fungsi memori buruk
- Fungsi Enklave
- Fungsi thunk ATL
- Fungsi usang
Fungsi memori umum
Function | Deskripsi |
---|---|
TambahkanSecureMemoryCacheCallback | Mendaftarkan fungsi panggilan balik yang akan dipanggil ketika rentang memori aman dibebaskan atau perlindungannya diubah. |
CopyDeviceMemory | Menyalin memori dari satu lokasi ke lokasi lain tanpa gangguan dari pengoptimalan pengkompilasi dalam situasi di mana pengembang perlu juga memastikan bahwa kesalahan penyelarasan tidak akan dihasilkan saat mengakses memori perangkat. |
CopyMemory | Menyalin blok memori dari satu lokasi ke lokasi lainnya. |
CopyVolatileMemory | Menyalin konten blok memori sumber ke blok memori tujuan. |
CreateMemoryResourceNotification | Membuat objek pemberitahuan sumber daya memori. |
FillDeviceMemory | Mengatur konten buffer tanpa gangguan dari pengoptimalan kompilator dalam situasi di mana pengembang perlu juga memastikan bahwa kesalahan penyelarasan tidak akan dihasilkan saat mengakses memori perangkat. |
FillMemory | Mengisi blok memori dengan nilai tertentu. |
FillVolatileMemory | Mengisi blok memori dengan nilai isian yang ditentukan. |
GetLargePageMinimum | Mengambil ukuran minimum halaman besar. |
GetPhysicallyInstalledSystemMemory | Mengambil jumlah RAM yang diinstal secara fisik di komputer. |
GetSystemFileCacheSize | Mengambil batas ukuran saat ini untuk kumpulan cache sistem yang berfungsi. |
GetWriteWatch | Mengambil alamat halaman yang telah ditulis di wilayah memori virtual. |
GlobalMemoryStatusEx | Mendapatkan informasi tentang penggunaan memori fisik dan virtual sistem saat ini. |
MoveMemory | Memindahkan blok memori dari satu lokasi ke lokasi lainnya. |
MoveVolatileMemory | Menyalin konten blok memori sumber ke blok memori tujuan, dan mendukung blok memori sumber dan tujuan yang tumpang tindih. |
QueryMemoryResourceNotification | Mengambil status objek sumber daya memori yang ditentukan. |
RemoveSecureMemoryCacheCallback | Membatalkan pendaftaran fungsi panggilan balik yang sebelumnya terdaftar dengan fungsi AddSecureMemoryCacheCallback. |
ResetWriteWatch | Mengatur ulang status pelacakan tulis untuk wilayah memori virtual. |
SecureMemoryCacheCallback | Fungsi yang ditentukan aplikasi yang dipanggil ketika rentang memori aman dibeberkan atau perlindungannya diubah. |
SecureZeroMemory | Mengisi blok memori dengan nol. |
SecureZeroMemory2 | Mengisi blok memori dengan nol dengan cara yang dijamin aman. |
SetSystemFileCacheSize | Membatasi ukuran set kerja untuk cache sistem file. |
ZeroDeviceMemory | Mengatur konten buffer ke nol tanpa gangguan dari pengoptimalan kompilator dalam situasi di mana pengembang perlu juga memastikan bahwa kesalahan penyelarasan tidak akan dihasilkan saat mengakses memori perangkat. |
ZeroMemory | Mengisi blok memori dengan nol. |
ZeroVolatileMemory | Mengisi blok memori dengan nol. |
Fungsi pencegahan eksekusi data
Fungsi-fungsi ini digunakan dengan Pencegahan Eksekusi Data (DEP).
Function | Deskripsi |
---|---|
GetProcessDEPPolicy | Mengambil pengaturan DEP untuk proses. |
GetSystemDEPPolicy | Mengambil pengaturan DEP untuk sistem. |
SetProcessDEPPolicy | Mengubah pengaturan DEP untuk proses. |
Fungsi pemetaan file
Fungsi-fungsi ini digunakan dalam pemetaan file.
Function | Deskripsi |
---|---|
CreateFileMappingA | Membuat atau membuka objek pemetaan file bernama atau tidak bernama untuk file tertentu. |
CreateFileMappingW | Membuat atau membuka objek pemetaan file bernama atau tidak bernama untuk file tertentu. |
CreateFileMapping2 | Membuat atau membuka objek pemetaan file bernama atau tidak bernama untuk file tertentu. Anda dapat menentukan simpul NUMA pilihan untuk memori fisik sebagai parameter yang diperluas; lihat parameter ExtendedParameters . |
CreateFileMappingFromApp | Membuat atau membuka objek pemetaan file bernama atau tidak bernama untuk file tertentu dari aplikasi Bursa Windows. |
CreateFileMappingNuma | Membuat atau membuka objek pemetaan file bernama atau tidak bernama untuk file tertentu, dan menentukan simpul NUMA untuk memori fisik. |
FlushViewOfFile | Menulis ke disk rentang byte dalam tampilan file yang dipetakan. |
GetMappedFileName | Memeriksa apakah alamat yang ditentukan berada dalam file yang dipetakan memori di ruang alamat proses yang ditentukan. Jika demikian, fungsi mengembalikan nama file yang dipetakan memori. |
MapViewOfFile | Peta tampilan pemetaan file ke ruang alamat proses panggilan. |
MapViewOfFile2 | Peta tampilan file atau bagian yang didukung pagefile ke ruang alamat proses yang ditentukan. |
MapViewOfFile3 | Peta tampilan file atau bagian yang didukung pagefile ke ruang alamat proses yang ditentukan. |
MapViewOfFile3FromApp | Peta tampilan pemetaan file ke ruang alamat proses panggilan dari aplikasi Bursa Windows. |
MapViewOfFileEx | Peta tampilan pemetaan file ke ruang alamat proses panggilan. Pemanggil dapat secara opsional menentukan alamat memori yang disarankan untuk tampilan. |
MapViewOfFileExNuma | Peta tampilan pemetaan file ke ruang alamat proses panggilan, dan menentukan simpul NUMA untuk memori fisik. |
MapViewOfFileFromApp | Peta tampilan pemetaan file ke ruang alamat proses panggilan dari aplikasi Bursa Windows. |
MapViewOfFileNuma2 | Peta tampilan file atau bagian yang didukung pagefile ke ruang alamat proses yang ditentukan. |
OpenFileMapping | Membuka objek pemetaan file bernama. |
OpenFileMappingFromApp | Membuka objek pemetaan file bernama. |
UnmapViewOfFile | Batalkan peta tampilan file yang dipetakan dari ruang alamat proses panggilan. |
UnmapViewOfFile2 | Batalkan peta tampilan file yang dipetakan sebelumnya atau bagian yang didukung pagefile. |
UnmapViewOfFileEx | Batalkan peta tampilan file yang dipetakan sebelumnya atau bagian yang didukung pagefile. |
Fungsi AWE
Ini adalah fungsi AWE.
Function | Deskripsi |
---|---|
AllocateUserPhysicalPages | Mengalokasikan halaman memori fisik untuk dipetakan dan tidak dipetakan dalam wilayah AWE mana pun dalam proses. |
AllocateUserPhysicalPagesNuma | Mengalokasikan halaman memori fisik untuk dipetakan dan tidak dipetakan dalam wilayah AWE mana pun dalam proses, dan menentukan simpul NUMA untuk memori fisik. |
FreeUserPhysicalPages | Membebaskan halaman memori fisik yang sebelumnya dialokasikan dengan AllocateUserPhysicalPages. |
MapUserPhysicalPages | Peta halaman memori fisik yang dialokasikan sebelumnya di alamat yang ditentukan dalam wilayah AWE. |
MapUserPhysicalPagesScatter | Peta halaman memori fisik yang dialokasikan sebelumnya di alamat yang ditentukan dalam wilayah AWE. |
Fungsi timbunan
Ini adalah fungsi timbunan.
Function | Deskripsi |
---|---|
GetProcessHeap | Mendapatkan handel ke tumpukan proses panggilan. |
GetProcessHeaps | Mendapatkan handel ke semua timbunan yang valid untuk proses panggilan. |
HeapAlloc | Mengalokasikan blok memori dari timbunan. |
HeapCompact | Coalesces blok bebas memori yang berdekatan pada tumpukan. |
HeapCreate | Membuat objek timbunan. |
HeapDestroy | Menghancurkan objek tumpukan yang ditentukan. |
HeapFree | Membebaskan blok memori yang dialokasikan dari timbunan. |
HeapLock | Mencoba memperoleh kunci yang terkait dengan tumpukan tertentu. |
HeapQueryInformation | Mengambil informasi tentang timbunan yang ditentukan. |
HeapReAlloc | Mengalokasikan blok memori dari timbunan. |
HeapSetInformation | Mengatur informasi timbunan untuk timbunan yang ditentukan. |
Ukuran Tumpuk | Mengambil ukuran blok memori yang dialokasikan dari timbunan. |
HeapUnlock | Melepaskan kepemilikan kunci yang terkait dengan tumpukan tertentu. |
HeapValidate | Mencoba memvalidasi timbunan tertentu. |
HeapWalk | Menghitung blok memori dalam tumpukan tertentu. |
Fungsi memori virtual
Ini adalah fungsi memori virtual.
Function | Deskripsi |
---|---|
BuangVirtualMemory | Membuang isi memori dari rentang halaman memori, tanpa menonaktifkan memori. Isi memori yang dibuang tidak terdefinisi dan harus ditulis ulang oleh aplikasi. |
OfferVirtualMemory | Menunjukkan bahwa data yang terkandung dalam rentang halaman memori tidak lagi diperlukan oleh aplikasi dan dapat dibuang oleh sistem jika perlu. |
PrefetchVirtualMemory | Prefetches rentang alamat virtual ke dalam memori fisik. |
QueryVirtualMemoryInformation | Mengembalikan informasi tentang halaman atau sekumpulan halaman dalam ruang alamat virtual dari proses yang ditentukan. |
ReclaimVirtualMemory | Merebut kembali berbagai halaman memori yang ditawarkan ke sistem dengan OfferVirtualMemory. |
SetProcessValidCallTargets | Menyediakan CFG dengan daftar target panggilan tidak langsung yang valid dan menentukan apakah mereka harus ditandai valid atau tidak. |
VirtualAlloc | Mencadangkan atau menerapkan wilayah halaman di ruang alamat virtual proses panggilan. |
VirtualAlloc2 | Mencadangkan, menerapkan, atau mengubah status wilayah memori dalam ruang alamat virtual dari proses yang ditentukan. Fungsi ini menginisialisasi memori yang dialokasikan ke nol. |
VirtualAlloc2FromApp | Mencadangkan, menerapkan, atau mengubah status wilayah halaman di ruang alamat virtual proses panggilan. Memori yang dialokasikan oleh fungsi ini secara otomatis diinisialisasi ke nol. |
VirtualAllocEx | Mencadangkan atau menerapkan wilayah halaman di ruang alamat virtual dari proses yang ditentukan. |
VirtualAllocExNuma | Mencadangkan atau menerapkan wilayah memori dalam ruang alamat virtual dari proses yang ditentukan, dan menentukan simpul NUMA untuk memori fisik. |
VirtualAllocFromApp | Mencadangkan, menerapkan, atau mengubah status wilayah halaman di ruang alamat virtual proses panggilan. Memori yang dialokasikan oleh fungsi ini secara otomatis diinisialisasi ke nol. |
VirtualFree | Merilis atau menonaktifkan wilayah halaman dalam ruang alamat virtual proses panggilan. |
VirtualFreeEx | Merilis atau menonaktifkan wilayah memori dalam ruang alamat virtual dari proses tertentu. |
VirtualLock | Mengunci wilayah yang ditentukan dari ruang alamat virtual proses ke dalam memori fisik. |
VirtualProtect | Mengubah perlindungan akses pada wilayah halaman yang diterapkan di ruang alamat virtual proses panggilan. |
VirtualProtectEx | Mengubah perlindungan akses pada wilayah halaman yang diterapkan di ruang alamat virtual proses panggilan. |
VirtualProtectFromApp | Mengubah perlindungan pada wilayah halaman yang diterapkan di ruang alamat virtual proses panggilan. |
VirtualQuery | Menyediakan informasi tentang rentang halaman di ruang alamat virtual proses panggilan. |
VirtualQueryEx | Menyediakan informasi tentang rentang halaman di ruang alamat virtual proses panggilan. |
VirtualUnlock | Membuka kunci rentang halaman tertentu di ruang alamat virtual proses. |
Fungsi global dan lokal
Lihat juga fungsi global dan lokal. Fungsi-fungsi ini disediakan untuk kompatibilitas dengan Windows 16-bit dan digunakan dengan Dynamic Data Exchange (DDE), fungsi clipboard, dan objek data OLE. Kecuali dokumentasi secara khusus menyatakan bahwa fungsi global atau lokal harus digunakan, aplikasi baru harus menggunakan fungsi timbunan yang sesuai dengan handel yang dikembalikan oleh GetProcessHeap. Untuk fungsionalitas yang setara dengan fungsi global atau lokal, atur parameter dwFlags fungsi timbunan ke 0.
Function | Deskripsi | Fungsi timbunan yang sesuai |
---|---|---|
GlobalAlloc, LocalAlloc | Mengalokasikan jumlah byte yang ditentukan dari tumpukan. | HeapAlloc |
GlobalDiscard, LocalDiscard | Membuang blok memori global yang ditentukan. | Tidak berlaku. |
GlobalFlags, LocalFlags | Mengembalikan informasi tentang objek memori global yang ditentukan. | Tidak berlaku. Gunakan HeapValidate untuk memvalidasi heap. |
GlobalFree, LocalFree | Membebaskan objek memori global yang ditentukan. | HeapFree |
GlobalHandle, LocalHandle | Mengambil handel yang terkait dengan penunjuk yang ditentukan ke blok memori global. Fungsi ini harus digunakan hanya dengan fungsi OLE dan clipboard yang memerlukannya. | Tidak berlaku. |
GlobalLock, LocalLock | Mengunci objek memori global dan mengembalikan penunjuk ke byte pertama blok memori objek. | Tidak berlaku. |
GlobalReAlloc, LocalReAlloc | Mengubah ukuran atau atribut objek memori global tertentu. | HeapReAlloc |
GlobalSize, LocalSize | Mengambil ukuran objek memori global yang ditentukan saat ini. | Ukuran Tumpuk |
GlobalUnlock, LocalUnlock | Mengurangi jumlah kunci yang terkait dengan objek memori. Fungsi ini harus digunakan hanya dengan fungsi OLE dan clipboard yang memerlukannya. | Tidak berlaku. |
Fungsi memori buruk
Function | Deskripsi |
---|---|
BadMemoryCallbackRoutine | Fungsi yang ditentukan aplikasi yang terdaftar dengan fungsi RegisterBadMemoryNotification yang dipanggil ketika satu atau beberapa halaman memori buruk terdeteksi. |
GetMemoryErrorHandlingCapabilities | Mendapatkan kemampuan penanganan kesalahan memori sistem. |
RegisterBadMemoryNotification | Mendaftarkan pemberitahuan memori buruk yang dipanggil ketika satu atau beberapa halaman memori buruk terdeteksi. |
UnregisterBadMemoryNotification | Menutup handel pemberitahuan memori buruk yang ditentukan. |
Fungsi Enklave
Function | Deskripsi |
---|---|
CreateEnclave | Membuat enklave baru yang belum diinisialisasi. Enklave adalah wilayah kode dan data yang terisolasi dalam ruang alamat untuk aplikasi. Hanya kode yang berjalan dalam enklave yang dapat mengakses data dalam enklave yang sama. |
InitializeEnclave | Menginisialisasi enklave yang Anda buat dan muat dengan data. |
IsEnclaveTypeSupported | Mengambil apakah jenis enklave yang ditentukan didukung. |
LoadEnclaveData | Memuat data ke enklave yang tidak diinisialisasi yang Anda buat dengan memanggil CreateEnclave. |
Fungsi thunk ATL
Function | Deskripsi |
---|---|
AtlThunk_AllocateData | Mengalokasikan ruang dalam memori untuk thunk ATL. |
AtlThunk_DataToCode | Mengembalikan fungsi yang dapat dieksekusi yang sesuai dengan parameter AtlThunkData_t. |
AtlThunk_FreeData | Membebaskan memori yang terkait dengan thunk ATL. |
AtlThunk_InitData | Menginisialisasi thunk ATL. |
Fungsi Usang
Fungsi-fungsi ini disediakan hanya untuk kompatibilitas dengan Windows versi 16-bit:
Fungsi di bawah ini dapat mengembalikan informasi yang salah, dan tidak boleh digunakan. Sebagai gantinya , gunakan fungsi GlobalMemoryStatusEx .
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk