67、Windows如何分配用户内存?
Win32 API为应用程序使用内存提供了几种方式,包括虚拟内存、内存映射文件、堆和线程本地存储。
- 虚拟内存 :
- 分配时,应用程序调用
VirtualAlloc()来保留或提交虚拟内存。 - 释放时,调用
VirtualFree()来解除提交或释放内存。 -
这些函数允许应用程序指定内存分配的虚拟地址,并按内存页面大小的倍数进行操作。
-
内存映射文件 :
- 可将文件映射到进程的地址空间。
- 是两个进程共享内存的便捷方式。
- 内存映射是一个多阶段过程。
68、描述应用程序通过Win32 API使用内存的一些方式。
应用程序通过Win32 API使用内存的方式有:
-
虚拟内存
- 调用VirtualAlloc()预留或提交虚拟内存
- 调用VirtualFree()取消提交或释放内存
- 还可调用VirtualLock()将已提交页面锁定到物理内存 -
内存映射文件
- 将文件映射到进程的地址空间
- 也是两个进程共享内存的便捷方式 -
堆
- Win32进程初始化时会创建默认堆
- 提供了HeapCreate()、HeapAlloc()等多个堆管理函数 -
线程本地

最低0.47元/天 解锁文章
6249

被折叠的 条评论
为什么被折叠?



