Windows下注册表的优化

来源:互联网 发布:ubuntu 怎么升级 编辑:程序博客网 时间:2024/05/01 09:13
 

Windows下注册表的优化

. 概述  注册表是Microsoft Windows 9x、Windows CE、Windows NT 和 Windows 2000 中使用的中央分层数据库,用于存储为一个或多个用户、应用程序和硬件设备配置系统所必需的信息,它直接控制着Windows 的启动、硬件驱动程序的装载以及一些Windows 应用程序的运行,对系统的运行起着至关重要的作用 (本文中的Windows系统为 98 以上版本) 。

注册表由Windows 在启动时生成,其中的信息来源于:SYSTEM.DAT:其中主要保存了计算机的硬件配置和系统的一些特殊设置信息。USER.DAT:其中保存了特定用户的相关信息,例如该用户的注册信息、桌面设置等。Windows 启动时动态生成并初始化信息。CONFIG.POL:其中包含了系统策略,这一文件由Windows 的系统策略编辑器生成。系统策略是指为特定用户指定的对计算机中相关资源的使用权限,CONFIG.POL中的有关设置优先于SYSTEM.DAT和USER.DAT的设置,主要使用于网络环境中。

对于Windows 个人用户来讲,注册表中的信息实际上主要还是来源SYSTEM.DAT和USER.DAT,这两个文件存放于Windows的系统文件夹(例如C:/Windows)中。通过导出、导入的注册表文件格式为 .REG,而自动备份的注册表文件以 .CAB压缩格式存放于Windows 的系统文件夹的下级文件夹sysback(例如C:/Windows/sysback)中,它还包括了另外两个重要文件:system.ini和Win.ini。

注册表和INI文件不同,它是多层次的树状数据结构,由六个根键(分支)组成。根键又由若干键和键值组成,每个键代表一个特定的配置项目,其值可能是一个二进制数或文本串。

注册表中包含Windows 系统的核心数据,如果注册表由于某种原因受到了破坏,轻者使Windows 的启动过程出现异常,重者可能会导致整个Windows系统的完全瘫痪。当然,合理的直接修改注册表,会使Windows 发挥更大的效用,提高系统性能,加快计算机运行速度。不过,在用工具软件(Regedit.exe)修改注册表之前,注意将注册表备份。

.优化注册表,提高系统性能,加快运行速度  通过注册表可以从各个方面提高计算机的整体性能,从而使其速度得到提高,比起通过改善硬件和各种提速软件要方便和安全的多

2.1全面提高Windows的速度  2.10 加速Windows 的启动  Windows 在启动时能自动加载一些程序,其中有的程序存放在“开始”菜单中的启动组,一些重要的、无须用户干涉的系统程序,则存放在注册表中。如果想加快Windows 启动速度,可以适当地删除这些程序。对于放在启动组中的程序可以通过“任务栏”很方便地删除。如果程序不在启动组中,则需要通过修改注册表来删除。下面以Windows 98为例进行说明(如无特别说明,以下均以98为例),方法如下:

⑴启动注册表编辑器Regedit.exe(以下略去此步);

⑵打HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/CurrentVersion/Run

子键分支;

⑶单击HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/CurrentVersion/

RunServices;

⑷选择右边窗口中出现的要删去的开机自启动程序,将之删除;

⑸退出注册表编辑器(以下此步略去)。

而对于XP来说,还可以通过在[开始]-->[运行]-->键入[Regedit]-->[HKEY_CURRENT_USER]-->[Control Panel]-->[Desktop],将字符串值[HungAppTimeout]的数值数据更改为[200],将字符串值[WaitToKillAppTimeout]的数值数据更改为1000.另外在[HKEY_LOCAL_MACHINE]-->[System]-->[CurrentControlSet]-->[Control],将字符串值[HungAppTimeout]的数值数据更改为[200],将字符串值[WaitToKillServiceTimeout]的数值数据更改1000,来加快开机及关机速度 。

2.11 让Windows 系统自动登录  为了省去输入开机的密码与进行确认操作,让系统自动登录,只要打开HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/CurrentVersion/Winlogon,新建如下键值:

⑴AutoAdminlogon(字符串),值设为1;

⑵DefaultUserName(字符串),值设为默认的登录名;

⑶DefaultPassWord(字符串),值设为默认的口令;

⑷DontDisplayLastUserName(DWORD),值设为0。

2.12 加快层次式菜单的显示速度  打开HKEY_CURRENT_USER/Control Panel/Desktop,右键单击右边窗口的空白处,选择“新建”菜单中的“串值”命令,命名为“MenuShowDelay”。双击之,可以显示对话框,输入数值“1~10”,“1”表示最快(XP中0表示最快,一般在0~200间)。重新启动计算机可以使设置生效。

2.13 提高软盘驱动器的读写速度  在计算机所配置的驱动器中要数软盘驱动器的读写速度最慢,这除了由物理方面的性质所决定之处,也跟Windows 系统中的默认采用FIFO来管理驱动器有关,也就是说不具备后台存储管理功能,但我们可以通过修改注册表来优化软盘驱动器的性能。

打开HKEY_LOCAL_MACHINE/System/CurrentControlSet/Services/Class/fdc/0000子键分支,在该项右边窗口的空白处,单击鼠标右键选择“新建”菜单中的“DWORD值”命令,命名为“ForeFifo”,把值改为“0”。

2.14增加缓存提高硬盘速度  增加硬盘的缓存也是提高硬盘读写速度的一个有效途径。打开HKEY_LOCAL_MACHINE/System/CurrentControlSet/Control/FileSystem子键分支,NameCache是文件名缓存,32MB系统建议为800000,64MB系统建议为0F0000;PathCache是路径缓存,32MB系统建议为008000,64MB系统建议为0F0000。

2.15 删除多余的DLL文件  在Windows的System子目录下存有大量的DLL文件,这些文件可能被系统和应用程序共享。但是由于经常安装和卸载软件,就会在System目录下留下一些垃圾DLL文件,它们不但占用硬盘空间,而且降低系统的运行速度,进入主键 HKEY_CURRENT_MACHINE/Software/Microsoft/Windows/CurrentVersion/

ShareDLLs,ShareDLLs子键记录的是有关程序共享作DLL信息,每个DLL文件的键值说明它已被几个应用程序共享。如果二进制键值为“00 00 00 00”,则表明不被任何应用程序共享。

还有一些DLL文件在内存中而不被使用,通过在[开始]-->[运行]-->键入[Regedit]-->[HKKEY_LOCAL_MACHINE]-->[SOFTWARE]-->[Microsoft]-->[Windows]-->[CurrentVersion],在[Explorer]增加一个项[AlwaysUnloadDLL],默认值设为1。注:如由默认值设定为[0]则代表停用此功能。 

2.16利用CPU的L2 Cache加快整体效能   以XP为例,在[开始]-->[运行]-->键入[Regedit]-->[HKEY_LOCAL_MACHINE]-->[SYSTEM]-->[CurrentControlSet]-->[Control]-->[SessionManager],在[MemoryManagement]的右边窗口,将[SecondLevelDataCache]的数值数据更改为与CPU L2 Cache相同的十进制数值:例如:P4 1.6G A的L2 Cache为512Kb,数值数据更改为十进制数值512。 

2.2多方位考虑Windows安全  由于XP在安全方面优于98,下面以XP为例来说明此问题

2.21屏蔽系统中的热键  点击“开始”→“运行”,输入Regedit,打开注册表编辑器。然后依次打开到HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Policies/Explorer,新建一个双字节值,键名为“NoWindows Keys”,键值为“1”,这样就可以禁止用户利用系统热键来执行一些禁用的命令。如果要恢复,只要将键值设为0或是将此键删除即可。 

2.22关闭不用的共享(以XP为例)  安全问题一直为大家所关注,为了自己的系统安全能够有保证,某些不必要的共享还是应该关闭的。用记事本编辑如下内容的注册表文件,保存为任意名字的.Reg文件,使用时双击即可关闭那些不必要的共享: 

Windows Registry Editor Version 5.00 

[HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/lanmanserver/parameters] 

"AutoShareServer"=dword:00000000 

"AutoSharewks"=dword:00000000 

[HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Control/Lsa] 

"restrictanonymous"=dword:00000001 

2.23修改服务名称和解释  在注册表HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services下的次级主键就是各个服务,选中任何一个次级主键,在右边可以看到DisplayName和Description两个字符串,DisplayName就是在“管理工具→服务”里面显示的名字,Description就是对应服务的描述。二者可以任意修改,但是次级主键名和其他的不能乱动。 

2.24自动关闭停止响应的程序  在Windows XP操作系统中,我们可以通过修改注册表,使Windows XP诊测到某个应用程序已经停止响应时就自动关闭它,这样就不需要手工干预了。想要实现这个功能,请点击“开始”→“运行”输入RegEdit,打开注册表编辑器,依次展示HKEY_CURRENT_USER/Control Panel/Desktop/Auto End Tasks,将其键值改为1即可。 

2.25禁止IE下载文件  在有些公用电脑上需要禁止下载文件功能,虽然某些管理软件可以做到这一点,但安装调试这类软件实在是太麻烦了。其实在注册表中稍作修改就可以满足大家的要求了。打开注册表编辑器,找到HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Internet Settings/Zones/3,然后在右边找到1803这个DWORD值,将其键值修改为3即可。重新启动IE看看还能不能够下载的?如果要取消限制的话,只需要还原DWORD值为0即可。 

3.结束语  由于篇幅的限制,不能一一介绍Windows各个版本注册表的每个键值的特效功能。本文只介绍少许注册表修改实例的目的主要还是在于显示注册表对提高系统性能,加快运行速度的神奇作用。抛砖引玉,希望大家积累自己需要的注册表使用实例,通过对注册表的修改,使计算机系统资源得以优化。