共用方式為


Windows I/O 模型概觀

每個作業系統都有隱含或明確的 I/O 模型,可處理周邊裝置與周邊裝置之間的資料流程。 Microsoft Windows I/O 模型的其中一項功能是其支援非同步 I/O。 此外,I/O 模型具有下列一般功能:

  • I/O 管理員會將一致的介面提供給所有核心模式驅動程式,包括最低層級、中繼和檔案系統驅動程式。 所有 I/O 要求都會以 I/O 要求封包的形式傳送給驅動程式, (IRP) 。

  • I/O 作業會分層。 I/O 管理員會匯出 I/O 系統服務,使用者模式受保護子系統會呼叫代表其應用程式和/或終端使用者執行 I/O 作業。 I/O 管理員會攔截這些呼叫、設定一或多個 IRP,並透過可能階層式驅動程式將它們路由傳送到實體裝置。

  • I/O 管理員會定義一組標準常式,一些必要和其他選擇性的驅動程式可以支援。 所有驅動程式都遵循相對一致的實作模型,因為周邊裝置之間的差異,以及匯流排、函式、篩選和檔案系統驅動程式所需的不同功能。

  • 如同作業系統本身,驅動程式是以物件為基礎。 驅動程式、其裝置和系統硬體會以物件表示。 I/O 管理員和其他作業系統元件會匯出核心模式支援常式,驅動程式可以藉由操作適當的物件來呼叫以完成工作。

除了使用 IRP 傳達傳統 I/O 要求之外,I/O 管理員還會與 PnP 和電源管理員合作,以傳送包含 PnP 和電源要求的 IRP。