要求擁有權
當 I/O 管理員將 I/O 要求傳送至架構型驅動程式時,架構會攔截要求並建立架構要求物件。 架構會「擁有」要求物件,因為只有架構可以存取要求,並在物件上執行作業。
架構建立要求物件之後,它會將 物件放在驅動程式的其中一個 I/O 佇列中。 架構會繼續擁有要求物件,直到它從佇列中移除要求,並將它傳遞給驅動程式為止。
驅動程式 收到 要求物件之後,它會擁有要求。 驅動程式可以透過控制碼存取要求物件,並在 物件上執行作業。 雖然驅動程式擁有要求物件,但可以 重新佇列、 完成、 取消或 轉送 要求,之後它就不再擁有要求物件,而且無法存取該要求。
當要求物件的擁有權在驅動程式與架構之間傳遞時,物件控制碼的值不會變更。 例如,如果驅動程式從 I/O 佇列收到要求,請將它重新排入不同的佇列,然後再次收到要求,控制碼的值將不會變更。 同樣地,如果驅動程式將要求轉送至 I/O 目標,並在稍後收到 I/O 目標完成要求的通知,驅動程式的通知回呼函式會收到與驅動程式提供給 I/O 目標的相同控制碼值。