FCB 资源同步

微型重定向程序驱动程序感兴趣的同步资源主要与 FCB 相关联。 有分页 I/O 资源和常规资源。 分页 I/O 资源由 RDBSS 在内部管理。 微型重定向程序驱动程序可访问的唯一资源是常规资源,应使用以下提供的例程来访问该资源:

例程所返回的值 说明

RxAcquireExclusiveFcbResourceInMRx

此例程在独占模式下获取 FCB 资源。 如果之前已获取,此例程将等待 FCB 资源可用;在获取独占资源之前,此例程不会返回控制权。 即使已取消与此 FCB 关联的RX_CONTEXT结构,此例程也会获取 FCB 资源。

RxAcquireSharedFcbResourceInMRx

此例程在共享模式下获取 FCB 资源。 此例程将等待 FCB 资源释放(如果以前是独占的);在获取共享资源之前,此例程不会返回控制权。 即使已取消与此 FCB 关联的RX_CONTEXT结构,此例程也会获取 FCB 资源。

RxAcquireSharedFcbResourceInMRxEx

此例程在共享模式下获取 FCB 资源。 此例程将等待 FCB 资源释放(如果以前是独占的);在获取共享资源之前,此例程不会返回控制权。 即使已取消与此 FCB 关联的RX_CONTEXT结构,此例程也会获取 FCB 资源。

此例程仅适用于 Windows Server 2003 Service Pack 1 (SP1) 及更高版本。

RxReleaseFcbResourceForThreadInMRx

此例程释放以前使用 RxAcquireSharedFcbResourceInMRxEx 获取的 FCB 资源。

此例程仅在 Windows Server 2003 Service Pack 1 及更高版本上可用。

RxReleaseFcbResourceInMRx

此例程释放以前使用 RxAcquireExclusiveFcbResourceInMRxRxAcquireSharedFcbResourceInMRx 获取的 FCB 资源。

以下宏在 rxprocs.h 头文件中定义,以确定当前线程是否有权访问 FCB 常规资源。

说明

RxFcbAcquiredShared (RXCONTEXTFCB)

此宏检查当前线程是否有权访问共享模式下的常规资源。 此宏调用 ExIsResourceAcquiredSharedLite 例程。

RxIsFcbAcquiredShared (FCB)

此宏检查当前线程是否有权访问共享模式下的常规资源。 此宏调用 ExIsResourceAcquiredSharedLite 例程。

RxIsFcbAcquiredExclusive (FCB)

此宏检查当前线程是否有权在独占模式下访问常规资源。 此宏调用 ExIsResourceAcquiredExclusiveLite 例程。

RxIsFcbAcquired (FCB)

此宏检查当前线程是否有权在共享或独占模式下访问常规资源。 此宏调用 ExIsResourceAcquiredSharedLiteExIsResourceAcquiredExclusiveLite 例程。