日期:2014-05-17  浏览次数:21070 次

问个关于物理存储器,页交换文件,文件映像的问题
在windows核心编程里面说到,虚拟地址空间-->物理存储器对应。

1、磁盘上的文件一般为页交换文件(是指windows专门分配的一个管理文件还是指.exe .dll这些文件本身?),

2、说到程序的运行分配过程:当用户要求执行一个应用程序时,系统会打开该应用程序对应的.exe文件并计算出应用程序的代码和数据的大小。然后系统会预定一块地址空间,并注明与该区域相关联的物理存储器就是.exe文件本身(是不是.exe文件就成为了物理存储器或者页交换文件?)

------解决方案--------------------
1.c盘有专门的swap空间做页面文件来置换内存中的文件(这个位置在系统高级设置可以改,默认是在c盘)
2.对与载入exe,系统做了一个memmap,将物理文件直接映射到进程空间,这样可以用一部分换一部分到内存,不用一次加载完,加速程序的加载,而且这样有个好处,不用一开始就在swap空间分配空间。
PS:你要看Windows核心编程,还是先了解一下操作系统的基本知识吧,否则类似问题你还会有很多。那本书不是给一般的程序员看的,也不是一本入门书籍,那是给对操作系统有兴趣的人看的