USB 大量儲存裝置的驅動程式

USB 大量儲存驅動程式庫可用來與大量儲存裝置通訊,例如隨身碟、外接硬碟和透過 USB 連接的其他類型的卸除式媒體。USB 大量儲存驅動程式庫分為兩個部分。

SCSI 區塊裝置

區塊裝置會實作 BlockImplQueryBlockImplQueue。支援讀取、寫入和清除作業。如果在寫入作業與清除作業之間失去電力,寫入 USB 大量儲存裝置的變更可能不會保存到裝置中。在實際寫入實體媒體時,驅動程式庫沒有機制可通知駕駛人在堆疊中的較高位置。就 USB 大量儲存空間而言,當裝置確認寫入作業時,系統會將寫入作業視為已完成。

核心裝置

核心裝置會做為區塊裝置和 USB 堆疊之間的介面。核心會接受來自區塊裝置的要求,並將其轉換為 USB 要求,而 USB 要求最終會透過 USB 堆疊傳送至硬體。系統會針對每個要求執行下列步驟:

  • 要求已新增至佇列。
  • 該要求會由工作站執行緒接收。
  • 要求中儲存的 SCSI 指令會傳送至裝置。
  • 要求狀態會從裝置還原。
  • 系統會叫用完成回呼,通知區塊裝置層已完成要求。

某些 USB 大量儲存裝置可能有多個區塊裝置,例如磁碟陣列。在這種情況下,核心驅動程式會為每個磁碟建立一個區塊裝置。