Windows XP及其以后的操作系统中,增加了预读取功能(也可以理解为“预先装载”),该功能可以提高系统的性能,加快系统的启动、文件读取的速度,这些预读文件保存在%systemroot%\Prefetch目录中,以*.pf为扩展名,这些*.pf文件包括了载入文件的详细信息和载入顺序。
每一个应用程序,包括Windows XP的启动过程,都会在PrefetCh目录下留下相应的预读取文件,预读取文件描述了应用程序或启动时各个模块的装载顺序,其命名方式是以应用程序的可执行文件的名字为基础,加上一个“-”和描述执行文件完整路径的十六进制值,再加上文件扩展名。pf,例如QQ.EX-0065A2A1.pf。每当用户启动一个程序,会自动在Prefetch目录中对应的*.pf文件中留下一条记录。不过,Windows XP启动的预读取文件总是同一个名称,即NTOSBOOT-B00DFAAD.PF,其中包含着启动时载入文件的记录。
当下一次启动系统或运行某个程序时,Windows会参考相应的*.pf文件,将其中记录的所有文件载入内存,而不是象以往一项一项依指令逐个载入文件。另外,Windows会利用启动程序或程序的*.pf文件制订一个最优化的磁盘分配方案,这个方案的相关信息存储在Lyaout.ini文件中。
清空预读文件是否是加速启动呢?答案是否定的。WINDOWS定期会自动进行预读优化,如果清空了预读文件,那么系统就必须为所有运行的程序重新建立预读文件,显然这不是明智的事。因为创建文件的过程反而会增加系统负担,降低启动速度。那么如果修改预读文件设置来提高电脑开关机速度呢?请看下面设置:
一、禁止程序产生索引文件
预读文件导致系统启动变慢,是因为要读取运行程序时生成的索引文件所造成的。因此,我们只需要禁止PF文件的产生即可。
在“运行”窗口中输入“msconfig”后回车打开系统配置实用程序窗口,将其切换到“服务”标签,然后将其中的“Task Scheduler”项前的勾取消并保存设置,这样即可起到禁止建立索引文件的目的。
二、只读取系统文件
由于Prefetch中保存了系统和应用程序的索引信息,从提高启动速度的角度来看,提醒大家可以只设置读取系统文件,而跳过应用程序的索引文件读取过程。对此,可以运行“regedit”后打开注册表编辑器,依次选择HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParameters,双击右侧的“EnablePrefetcher”,可以看到其值为3,即读取系统文件和应用程序,我们可以将其改为2,即只预读取Windows 系统文件。
三、关机自动清空预读文件
我们还可以通过关机时自动清空预读文件夹内容,以达到加快下次开机速度的目的。打开记事本,在里面输入del %systemroot%\Prefetch\*.* /q,将该文件保存为del.bat文件。接下来再打开“运行”窗口,输入gpedit.msc后回车打开组策略编辑器,依次选择“计算机配置—Windows设置—脚本”,双击右侧的“关机”项,在打开的窗口中单击“添加”按钮,把del.bat文件添加进来。这样在关机时组策略即会在后台调用del.bat并运行其中的命令对预读文件夹中的内容进行清除,从而提高下次启动的速度。
通过上面的操作,相信预读文件只发挥其原本的功能,不再成为开机的障碍了。