Swapfile.sys
Windows中的Swapfile.sys是什么?
不知道你有没发现,在 Windows 10/8 系统中,除了 pagefile.sys 和 hiberfil.sys 文件外,在系统根目录会多出一个 swapfile.sys 虚拟内存文件。Windows 10/8 系统为什么会同时使用 SWAP 交换文件和 Page 页面文件呢?其实 swapfile.sys 文件目前只被用来交换 Universal App (其实就是Metro App)的个别类型数据,而不是直接作为系统交换文件使用。swapfile.sys 文件与 pagefile.sys 和 hiberfil.sys 一样,都会被写到系统根目录下,如果你在文件夹选项中取消隐藏受保护的操作系统文件并打开显示隐藏的文件、文件夹和驱动器选项,就可以看到。你可能会问,微软为啥要单独弄一个 swapfile.sys 虚拟页面文件出来呢?由于 Universal App 这类应用的工作方式与传统意义上的应用程序在工作方式上是有所不同的,因此微软需要有一个新的模式来为这种应用建立内存管理的框架。当 Windows 检测到系统负载压力时,会自动将非活动状态 Universal App 应用的交换数据写入到磁盘的 swapfile.sys 虚拟页面文件当中,释放出内存并将应用切换到暂停状态。当应用被用户切换到活动状态时,再从磁盘将交换数据读入 working set。由于 Universal App 应用与传统应用程序在使用模式、内存空间申请、内存增长步长、读写策略上都有很大的不同,因此微软为了方便(偷懒走捷径吧)最终选择了将 swapfile.sys 交换文件与 pagefile.sys 页面文件分开进行处理。一般情况下,我们都是不建议用户删除 Swapfile.sys 文件的,其占用的磁盘空间非常小,一般最大情况下不会超过 256 M。但如果你使用的是存储资源非常有限的移动设置,删除 Swapfile.sys 文件则可以释放出一定的磁盘空间。(几百 M 空间的释放量,大家都不太在乎了吧)swapfile.sys 与 pagefile.sys 文件的管理方式一致,无法直接删除。由于采用了统一的管理方式,所以要禁用 swapfile.sys 就得把虚拟内存给禁了,这样 pagefile.sys 页面文件也就消失了。禁用虚拟内存的配置:按下 Windows + R — 执行 systempropertiesadvanced 命令 — 在性能中点击设置 — 选择高级选项卡 — 虚拟内存中进行更改。我在这里给大家几点建议:
Win10/Win8.1安装分区(C盘)根目录中的swapfile.sys文件是干什么用的?
如果你正在使用的是Win10或者Win8.1,你会在系统安装分区(C盘)根目录中发现一个名为Swapfile.sys的文件(注:该文件为受系统保护的隐藏文件),文件大小为256MB。这个文件在以前版本的Windows中并未出现,那么这个神秘的Swapfile.sys文件究竟有何用途呢?This is a special type of pagefile used internally by the system to make certain types of paging operations more efficient.翻译过来就是:Swapfile.sys是系统内部使用的一种特殊的页面文件,使用该文件可以让一些特殊类型的分页操作变得更加高效。在系统安装分区内你可以找到一个名为Pagefile.sys的文件,这就是页面文件。页面文件通常也叫做虚拟内存文件。当你的电脑可用内存不足时,系统会将内存中相对来说不活跃的部分保存到Pagefile.sys文件中,从而释放物理内存给新的任务。如果系统要重新把页面文件中的部分内容读回内存,那么就需要把内存中其他部分内容再写进Pagefile.sys为将要读回的内容腾出空间。Windows就是利用这样的机制达到增大“内存”的目的的。我们知道在Win8、Win8.1中引入了一种叫做Metro/Mordern的新型应用。针对这种新型应用,为了和传统的虚拟内存管理方式有所区别,于是就有了Swapfile.sys文件——用于冻结(暂停)/恢复Metro/Mordern应用。其工作机制与Pagefile.sys相似。在Win8中除非在任务管理器中结束应用进程,否则Metro应用只能暂停而不会完全关闭。当电脑可用内存不足时,系统会将处于暂停状态的Metro/Mordern应用工作集转移至硬盘中的Swapfile.sys文件中,以此来释放出物理内存空间。当用户激活被暂停的Metro/Mordern应用时,会再次从Swapfile.sys读取该应用工作集,这样也可以提高打开应用的速度。要说明的是,在Win8.1中微软做了一些调整,在将应用拉至窗口底部时停留一段时间,应用窗口会做一次180°翻转动作,这样就可以彻底关闭Metro应用释放物理内存空间了。注: 1、微软官方并没有相关文章详细解释Swapfile.sys文件的作用。关于这个文件,目前已知的只有这么多。 2、关闭虚拟内存后,Swapfile.sys文件也会自动消失。 3、从VHD启动的的Win8/Win8.1可能没有这个文件。 4、该文件与快速启动应该没有关系,快速启动利用的是休眠功能,与之相关的文件为Hiberfil.sys(休眠文件)。