当复制大于大约 500 MB,Windows Server 2003 SP1 中或在 Windows Server 2003 SP2 中的文件时,您可能会遇到系统总体性能下降

文章翻译 文章翻译
文章编号: 920739 - 查看本文应用于的产品
展开全部 | 关闭全部

本文内容

症状

当您复制大于大约 500mb 运行 Microsoft Windows Server 2003 Service Pack 1 的计算机上的文件 (SP1) 或 Windows Server 2003 Service Pack 2 (SP2) 尽管复制作业仍在正常运行,您可能会遇到系统总体性能下降。

此外,您可能会遇到以下症状:
  • 您的桌面和 $ 在计算机运行的程序可能会停止响应。
  • 鼠标可能会停止响应。
  • 可能是特定的应用程序 such as SQL Server,工作集剪裁或调出。

原因

当您复制大文件本地快速磁盘从速度慢的磁盘时,就会出现此问题。例如对于较大的文件从一个群集磁盘复制到本地系统磁盘时,可以将出现此问题。

系统内核缓存管理器使用一个名为 CcDirtyPageThreshold 的变量。默认状态下,CcDirtyPageThreshold 的值可能设置得太高的情况下,有许多惰性写入操作。默认状态下,CcDirtyPageThreshold 全局内核变量设置为一个值,该值是物理内存的一半。此变量将触发高速缓存管理器的写控制。

例如对于如果您要将复制为 1 GB,500 MB 的文件的文件之前,会复制到高速缓存缓存管理器启动刷新脏页。刷新 500 MB 的脏页会导致多个页面错误。这些页面错误必须提交到磁盘。如果发生这种情况将导致瓶颈较慢的磁盘上。

注意"脏页"是一页,该页已在缓存中被修改,但还不已写入到磁盘。

解决方案

服务包信息

若要解决此问题,获得最新的 service pack,Windows Server 2003 的。有关详细的信息请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
889100如何获取最新的 service pack,Windows Server 2003 的

修补程序信息

可以从 Microsoft 获得支持的修补程序。但是,此修补程序被用于解决本文所述的此问题。此修补程序仅应用于出现这一特定问题的系统。此修补程序可能会接受进一步的测试。因此,如果此问题没有对您造成严重的影响,我们建议您等待包含此修补程序的下一个软件更新。

是否可供下载此修补程序没有"提供修补程序下载"部分中,在这篇知识库文章的顶部。如果不会显示此部分,请联系 Microsoft 客户服务和支持以获取此修复程序。

注意如果出现其他问题,或者如果需要进行任何故障诊断,则您可能不得不创建单独的服务请求。将正常收取支持费用将应用于其他支持问题和不需要进行此特定的修补程序的问题。有关完整列表的 Microsoft 客户服务和支持的电话号码,或创建一个单独的服务请求,请访问下面的 Microsoft 网站:
http://support.microsoft.com/contactus/?ws=support
注意"提供修补程序下载"窗体所显示的此修复程序是可用的语言。如果您看不到您的语言,则是一个修复程序不能用于该语言。

系统必备组件

您必须在运行 Windows Server 2003 SP1。

重新启动要求

应用此修补程序后,您必须重新启动计算机。

修补程序替换信息

此修补程序不替代任何其他修补程序。

文件信息

此修补程序的英文版具有的文件属性 (或更新的文件属性) 在下表中列出。日期和时间对这些文件列出在协调世界时 (UTC)。当您查看文件信息时,将转换为本地时间。若要 UTC 与本地时间之间的时差使用控制面板中的 日期和时间 项中的 时区 选项卡。
Windows Server 2003,基于 Itanium 的版本
收起该表格展开该表格
文件的名称文件版本文件大小日期时间平台
Ntkrnlmp.exe5.2.3790.28036,520,3202006 年九月 28 日23: 16IA 64
基于 x64 的版本的 Windows Server 2003
收起该表格展开该表格
文件的名称文件版本文件大小日期时间平台SP 要求
Ntkrnlmp.exe5.2.3790.28034,627,9682006 年九月 28 日23: 22x64sp1
Ntoskrnl.exe5.2.3790.28034,483,0722006 年九月 28 日23: 22x64sp1
基于 x86 版本的 Windows Server 2003
收起该表格展开该表格
文件的名称文件版本文件大小日期时间平台SP 要求
Ntkrnlmp.exe5.2.3790.28032,459,6482006 年九月 29 日11: 22不适用sp1
Ntkrnlpa.exe5.2.3790.28032,271,7442006 年九月 29 日10: 49x86sp1
Ntkrpamp.exe5.2.3790.28032,311,6802006 年九月 29 日10: 50不适用sp1
Ntoskrnl.exe5.2.3790.28032,420,2242006 年九月 29 日11: 22x86sp1
重要此分区、 方法,或任务包含告诉您如何修改注册表的步骤。但是,如果注册表修改不当可能会出现严重问题。因此,请确保您仔细按照这些步骤。附加的保护注册表之前先备份您对其进行修改。然后,您可以在出现问题时还原注册表。有关如何备份和还原注册表的详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
322756如何备份和还原在 Windows 注册表


应用此修补程序后,或在安装 Windows Server 2003 SP2 后,您必须添加
SystemCacheDirtyPageThreshold
注册表项来更改默认行为。若要这样做,请按照下列步骤操作:
  1. 单击 开始、 单击 运行,键入 regedit,然后单击 确定
  2. 找到并右键单击以下注册表项:
    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SessionManager\MemoryManagement
  3. 指向 新建,然后单击 DWORD 值
  4. 键入 SystemCacheDirtyPageThreshold,然后按 ENTER 键。
  5. 双击 SystemCacheDirtyPageThreshold
  6. 数值数据 框中键入 0x20,然后单击确定。

    备注
    • "0x20"对应于十进制值为 32 MB。
    • 注册表项如下所示在 SystemCacheDirtyPageThreshold 值范围:
      最小值: 总物理 RAM 中除以 64 MB
      最大值: 汇总除以 2 mb 的物理 RAM
      默认值: 0

      默认值是一个不存在的键。如果添加了值范围内的计算机将恢复到默认的行为。 您添加的值是以 MB 为单位)。
  7. 退出注册表编辑器。

更多信息

若要验证您遇到此问题,使用该 ! defwrites 内核调试程序中的命令。该命令将显示在缓存管理器在使用了核心变量的值,它将显示在阈值和实际高速缓存中的脏页的值。您在运行此命令时,您可能会收到类似于以下内容的输出:
CcTotalDirtyPages: 14 (0 Kb)
CcDirtyPageThreshold: 130941 (0 Kb)
MmAvailablePages: 62445 (0 Kb)
MmThrottleTop: 450 (0 Kb)
MmThrottleBottom: 80 (0 Kb)
MmModifiedPageListHead.Total: 43 (0 Kb)
您可能会遇到如果 CcTotalDirtyPages 值接近于 CcDirtyPageThreshold 值这篇文章中描述的问题。

状态

Microsoft 已经确认这是在"适用于"一节中列出的 Microsoft 产品中的问题。

在 Microsoft Windows Server 2003 Service Pack 2 中,第一次已得到纠正此问题。
注意在安装 Windows Server 2003 SP2 后,您必须手动启用
SystemCacheDirtyPageThreshold
注册表项。

更多信息

有关详细的信息请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
824684用于描述 Microsoft 软件更新的标准术语的说明

属性

文章编号: 920739 - 最后修改: 2008年2月4日 - 修订: 5.4
这篇文章中的信息适用于:
  • Microsoft Windows Server 2003 Service Pack 1?当用于
    • Microsoft Windows Server 2003 Web Edition
    • Microsoft Windows Server 2003 Standard Edition
    • Microsoft Windows Server 2003 Enterprise Edition
    • Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
    • Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems
  • Microsoft Windows Server 2003 Service Pack 2?当用于
    • Microsoft Windows Server 2003 Web Edition
    • Microsoft Windows Server 2003 Datacenter Edition
    • Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems
    • Microsoft Windows Server 2003, Datacenter x64 Edition
    • Microsoft Windows Server 2003, Enterprise x64 Edition
    • Microsoft Windows Server 2003 Enterprise Edition
    • Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
    • Microsoft Windows Server 2003, Standard x64 Edition
    • Microsoft Windows Server 2003 Standard Edition
关键字:?
kbmt kbautohotfix kbwinserv2003sp2fix kbwinserv2003presp2fix kbbug kbfix kbhotfixserver kbqfe kbpubtypekc KB920739 KbMtzh
机器翻译
注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。
点击这里察看该文章的英文版: 920739
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。

提供反馈

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com