看了Windows核心编程,关于内存方面的几个问题。

fangongdalu7148 2010-08-25 12:33:59
1.平时我们那些内存分配函数 一般是把内存分配到 物理存储器 还是 页文件上??如何控制让内存只分配到物理存储器上,或者页文件上?
2.windows 核心编程 里 感觉把"虚拟内存"这个术语搞晕了,,有时候 好像代表页文件,有时候好像代表 进程的地址空间。。。 不知道是不是译者的错误?
...全文
91 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
dengzikun 2010-08-25
  • 打赏
  • 举报
回复
两者都可。根据上下文区分。
zgsdzhaolanxiang1 2010-08-25
  • 打赏
  • 举报
回复
第二个问题谁能回答?? windows 核心编程里说的 虚拟内存 是指 虚拟地址空间 还是页文件?
na_he 2010-08-25
  • 打赏
  • 举报
回复
VirtualAlloc 页上分配。
The VirtualAlloc function reserves or commits a region of pages in the virtual address space of the calling process. Memory allocated by this function is automatically initialized to zero, unless MEM_RESET is specified.

GlobalAlloc堆上分配
The GlobalAlloc function allocates the specified number of bytes from the heap. Windows memory management does not provide a separate local heap and global heap.



堆上再分配大的内存时有可能内存不足。所以引入页上分配的机制。可以参见MSDN和操作系统章节关于内存管理的章节。
zgsdzhaolanxiang1 2010-08-25
  • 打赏
  • 举报
回复
能不能强制 全部分配到 物理存储器?
jianuMan 2010-08-25
  • 打赏
  • 举报
回复
分配到内存上 内存分配函数并不考虑页的问题 页是系统考虑的

是内存和虚拟内存之间的关系
dvlinker 2010-08-25
  • 打赏
  • 举报
回复
帮忙顶一个~

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧