2013-07-09 40 views
1

我在the documentation for a windows OS "DRIVER_OBJECT"看到A driver object is partially opaque。但是「部分不透明」是什麼意思?「部分不透明」對於Windows代碼意味着什麼?

我猜測,這意味着,只有DRIVER_OBJECT的一部分是avaialable,但後來什麼,編程來說,意味着什麼?也就是說,如果某些代碼有指向DRIVER_OBJECT的指針,那麼它可以讀取(也可能寫入)整個對象作爲一個單元。

回答

2

完整報價,

驅動程序對象是部分不透明的。驅動程序編寫者必須瞭解 驅動程序對象的某些成員初始化一個驅動程序和 卸載它,如果司機卸載的。驅動程序可以訪問以下驅動程序對象的成員。

相關部分是:驅動程序編寫者必須知道約某些成員。

爲了寫/使用驅動程序,你需要的代碼的某些部分進行訪問。一個接口的種類。 (沒有語言形式化)。這些成員在上述引用後的文檔中進行了解釋。

驅動程序對象中未記錄的成員應視爲 不可訪問。對獲得無證成員與對象的成員位置或 依賴驅動程序可能不保持便攜式和 互操作性與其他司機隨着時間的推移。

這意味着,雖然所需的「接口」是可見的,任何東西在驅動程序其他應被認爲是「私人」。當然你可以用C來達到它,但這是不支持的,它可能會破壞,不能攜帶等等。

這是部分不透明,不透明的意思是'not transparent'的定義。 部分不透明意味着它是部分不透明,或者相反,它是部分可見。採用部分不透明而不是部分可見,穿驅動程序對象的隱蔽性的強調,而不是可見的部分。

相關問題