级别 II Oplocks 未授予后已锁定文件

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

本文内容

症状

级别 II oplocks 没有授予的文件已锁定该文件的范围。此行为发生卸下对该文件的所有引用都包括在操作系统这样的文件缓存中的引用。

此问题阻止网络客户端使用缓存或读本地信息,多个网络客户端试图检测文件的数据时可能会影响性能。

有关 oplock 行为的详细信息,请在这篇文章中查看 MORE 信息参考 部分。

原因

因为文件系统体系结构在本文开头列出的产品中不提供文件锁定和 $ oplocks 同步机制,则会出现此问题。如此一来级别 II oplocks 无法安全地授予对给定文件后文件锁已被授予对该文件。

状态

Microsoft 已经确认这是在本文开头列出的 Microsoft 产品中的问题。

更多信息

在系统内核和可安装文件系统 (IFS) 工具包,您不能移除不 alteratering grantable oplock 级别中的描述限制。这要求 redevelopment 和重新部署的所有文件系统 (NTFS、 CDFS、 FastFat,UDFS 和等等包括由第三方提供这些文件系统)。这些更改的影响不在现有的操作系统修补程序和服务包的范围之内。

重现问题的步骤

下列步骤要求一个基于 Windows 2000 的服务器和两个 Windows NT 或 Windows 2000 客户端。
  1. 客户端 1 打开文件,请求的读取和写入访问和共享。例如对于该代码将生成 NT_CREATE_ANDX SMB 服务器:
    HANDLE h = CreateFile( "\\server\share\filename.ext",
                           GENERIC_WRITE | GENERIC_READ,
                           FILE_SHARE_WRITE | FILE_SHARE_READ,
                           0, OPEN_EXISTING,
                           FILE_ATTRIBUTE_NORMAL, 0 );
    					
  2. 服务器响应客户端 1 与 NT_CREATE_ANDX SMB oplock 级别设置为"批处理"。
  3. 客户端 2 打开文件,请求的读取和写入访问和共享。
  4. 服务器发送到客户端 1,设置 中断 Oplock 标志 LOCKING_AND_X SMB
  5. 服务器响应客户端与 NT_CREATE_ANDX SMB 2 oplock 级别设置为"II"。
  6. 客户端 2 请求对该文件的排他锁。例如对于该代码将生成 LOCKING_ANDX SMB 服务器:
    OVERLAPPED o = { NULL, NULL, 0, 0, NULL };
    LockFileEx( h, LOCKFILE_EXCLUSIVE_LOCK, 0, 0, 0, &o );
    					
  7. 服务器将通知客户端 1 和 2 的锁 (LOCKING_ANDX SMB) 的客户端。
  8. 客户端 1 和客户端 2 关闭该文件。
  9. 客户端 1 打开文件,请求的读取和写入访问和共享。
  10. 服务器响应客户端 1 与 NT_CREATE_ANDX SMB oplock 级别设置为"批处理"。
  11. 客户端 2 打开文件,请求的读取和写入访问和共享。
  12. 服务器发送到客户端 1,设置 中断 Oplock 标志 LOCKING_AND_X SMB
  13. 服务器响应客户端与 NT_CREATE_ANDX SMB 2 oplock 级别设置为"无"。

参考

有关机会锁定的其他信息,请单击下面文章编号,以查看 Microsoft 知识库中相应的文章:
129202机会锁定在 Windows NT 的 PC 分机: 说明

属性

文章编号: 306981 - 最后修改: 2007年12月1日 - 修订: 3.2
这篇文章中的信息适用于:
  • Microsoft Windows 2000 Professional SP1
  • Microsoft Windows 2000 Professional SP2
  • Microsoft Windows 2000 Advanced Server SP1
  • Microsoft Windows 2000 Advanced Server SP2
  • Microsoft Windows 2000 Server SP1
  • Microsoft Windows 2000 Server SP2
  • Microsoft Windows XP Home Edition
  • Microsoft Windows XP Professional Edition
  • Microsoft Windows XP Professional x64 Edition
  • Microsoft Windows NT Workstation 4.0 开发员版
  • Microsoft Windows NT Workstation 4.0 开发员版
  • Microsoft Windows NT Workstation 4.0 开发员版
  • Microsoft Windows NT Workstation 4.0 开发员版
  • Microsoft Windows NT Workstation 4.0 开发员版
  • Microsoft Windows NT Workstation 4.0
  • Microsoft Windows NT Workstation 4.0 开发员版
  • Microsoft Windows NT Workstation 4.0 开发员版
  • Microsoft Windows NT Server 4.0 Standard Edition
  • Microsoft Windows NT 4.0 Service Pack 1
  • Microsoft Windows NT 4.0 Service Pack 2
  • Microsoft Windows NT 4.0 Service Pack 3
  • Microsoft Windows NT 4.0 Service Pack 4
  • Microsoft Windows NT 4.0 Service Pack 5
  • Microsoft Windows NT 4.0 Service Pack 6
  • Microsoft Windows NT 4.0 Service Pack 6a
关键字:?
kbmt kbfile kbnofix kbprb KB306981 KbMtzh
机器翻译
注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。
点击这里察看该文章的英文版: 306981
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