求助~~ 有关 windows内存管理,请问虚拟内存和页文件是什么关系? 谢谢

nanr_1122 2007-08-23 01:48:32
如题,在看 windows核心编程的 < 13.5物理存储器与页文件 > 节时,看不懂什么 关系?

"磁盘上的文件通常称为页文件,它包含了可供所
有进程使用的虚拟内存。"

主要是 这一句, 我的理解是 页文件就是说的我们设置 我的电脑-属性 里的那个虚拟内存在每个磁盘上的值, 不知道我理解的对不对?

谢谢大家`
...全文
190 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
nanr_1122 2007-08-23
  • 打赏
  • 举报
回复
书上原段:


13.5 物理存储器与页文件
在较老的操作系统中,物理存储器被视为
计算机拥有的R A M的容量。换句话说,如果计算机拥有1 6 M B的R A M,那么加载和运行的应用程序最多可以使用1 6 M B的R A M。\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\今天的操作
系统能够使得磁盘空间看上去就像内存一样。磁盘上的文件通常称为页文件,它包含了可供所
有进程使用的虚拟内存。
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\当然,若要使虚拟内存能够运行,需要得到C P U本身的大量帮助。当一个线程试图访问一
个字节的内存时, C P U必须知道这个字节是在R A M中还是在磁盘上。
从应用程序的角度来看,页文件透明地增加了应用程序能够使用的R A M(即内存)的数
量。如果计算机拥有6 4 M B的R A M,同时在硬盘上有一个100 MB的页文件,那么运行的应用
程序就认为计算机总共拥有1 6 4 M B的R A M。
当然,实际上并不拥有1 6 4 M B的R A M。相反,操作系统与C P U相协调,共同将R A M的各
个部分保存到页文件中,当运行的应用程序需要时,再将页文件的各个部分重新加载到R A M。
由于页文件增加了应用程序可以使用的R A M的容量,因此页文件的使用是视情况而定的。如
果没有页文件,那么系统就认为只有较少的R A M可供应用程序使用。但是,我们鼓励用户使
用页文件,这样他们就能够运行更多的应用程序,并且这些应用程序能够对更大的数据集进行
操作。最好将物理存储器视为存储在磁盘驱动器(通常是硬盘驱动器)上的页文件中的数据。
这样,当一个应用程序通过调用Vi r t u a l A l l o c函数,将物理存储器提交给地址空间的一个区域时,
地址空间实际上是从硬盘上的一个文件中进行分配的。系统的页文件的大小是确定有多少物理
存储器可供应用程序使用时应该考虑的最重要的因素, R A M的容量则影响非常小。
nanr_1122 2007-08-23
  • 打赏
  • 举报
回复
不是,书上把 页文件和 页面文件 严格,区分开来 说明的,页面是指的映射交换的 64KB 空间,我就想知道 页文件是不是就是虚拟内存?
龙凤呈祥焱 2007-08-23
  • 打赏
  • 举报
回复
页面文件应该是我们平时说的页面交换文件。
当物理不存不够用时,操作把物理内存中的一些页写入到页面交换文件中,以暂时获取一些可用的物理内存。这样,系统就能把需要的数据读入到物理内存中继续运行。
nanr_1122 2007-08-23
  • 打赏
  • 举报
回复
一句话 , 这两个东西是一样的吗? 指的同一东西?
?

15,471

社区成员

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

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