首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >虚拟内存泄漏与物理内存泄漏

虚拟内存泄漏与物理内存泄漏
EN

Stack Overflow用户
提问于 2010-12-15 05:55:59
回答 1查看 841关注 0票数 1

从调试.net应用程序的角度来看,我很难理解虚拟内存和物理内存泄漏之间的区别。

有没有人可以举例说明这个概念,为什么我们只有一种类型的泄漏,而不是另一种。

提亚

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-12-15 06:08:34

虚拟内存包括已标记为可供其使用的进程地址空间的范围。当您泄漏内存时,几乎总是涉及虚拟内存,因为这是大多数程序处理的唯一概念。

物理内存通常仅在程序访问虚拟内存时才会被消耗,为此操作系统必须提供与之匹配的物理内存。这很少独立于虚拟内存泄漏,因为它是在操作系统的控制之下。

程序可以通过强制某些虚拟内存页面保持映射到物理内存来对物理内存的分配进行更多的控制(这种机制在不同的OSes中有所不同)。在这种情况下,有buggy的程序可能会泄漏物理内存。

物理内存泄漏的一种较软形式是当程序不断接触它在逻辑上不需要访问的虚拟内存页面时。这将使这些页面保持热度,并阻碍操作系统保持工作集(物理映射页面集)较小的努力。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4444672

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档