检查IRP_MJ_FILE_SYSTEM_CONTROL的 Oplock 状态

以下IRP_MJ_FILE_SYSTEM_CONTROL操作检查 oplock 状态:

  • FSCTL_SET_ZERO_DATA

当调用方希望将给定流的当前内容归零时,此信息适用。

级别 2 请求类型的条件:

  • 始终中断为 None。

  • 无需确认;操作会立即继续。

所有其他请求类型的条件:

  • 如果操作发生在具有 oplock 键的FILE_OBJECT上,该键不同于拥有 oplock 的FILE_OBJECT的键,则FSCTL_SET_ZERO_DATA) IRP_MJ_FILE_SYSTEM_CONTROL (中断。 如果 oplock 中断,则中断为 None。

  • 确认要求有所不同,如下所示:

    • 读取请求:无需确认;操作会立即继续。

    • Read-Handle请求:尽管需要确认中断,但操作会立即继续 (,例如,无需等待确认) 。

    • 级别 1、Batch、Filter、Read-Write 和 Read-Write-Handle 请求:在操作继续之前,必须收到确认。