您的位置:程序门 -> vc/mfc -> 进程/线程/dll



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


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


求助~~ 有关 windows内存管理,请问虚拟内存和页文件是什么关系? 谢谢
发表于:2007-08-23 13:48:32 楼主
如题,在看   windows核心编程的   <   13.5物理存储器与页文件   >   节时,看不懂什么     关系?  

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

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

谢谢大家`
发表于:2007-08-23 14:02:061楼 得分:0
一句话   ,   这两个东西是一样的吗?   指的同一东西?
?
发表于:2007-08-23 14:16:022楼 得分:0
页面文件应该是我们平时说的页面交换文件。
当物理不存不够用时,操作把物理内存中的一些页写入到页面交换文件中,以暂时获取一些可用的物理内存。这样,系统就能把需要的数据读入到物理内存中继续运行。
发表于:2007-08-23 14:20:333楼 得分:0
不是,书上把   页文件和   页面文件   严格,区分开来   说明的,页面是指的映射交换的   64kb   空间,我就想知道       页文件是不是就是虚拟内存?
发表于:2007-08-23 14:24:554楼 得分:0
书上原段:


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的容量则影响非常小。


快速检索

最新资讯
热门点击