3
A
回答
5
的Windows Driver Model(WDM)使用,其中給定裝置由至少兩個驅動器所服務的分層的方法:一個總線驅動器和 功能驅動程序。設備也可能具有增加值或修改設備行爲的過濾器驅動程序。爲設備提供服務的驅動程序鏈稱爲驅動程序堆棧。
(來自:http://www.microsoft.com/whdc/archive/wdmoverview.mspx)
另見:Device Driver Introduction,具體section 5 「設備驅動程序棧」。
1
如果你熟悉設計模式,一個很好的比喻是裝飾者。作爲一個例子,我會採用BufferedReader和其他任何類型的閱讀器。因此,您有基本的(可能不是非常高效的讀取器),並且您不需要關心如何使其緩衝並加速性能,因此您可以創建一個包裝底層Reader對象的BufferedReader。
驅動程序堆棧的概念是相似的 - 你可能有你的較低級別的驅動程序,它將寫入字符到設備,但你可以附加在另一個驅動程序,它會混雜每個字符,它基本上你有一個完整的加密堆棧。這種方式底層的驅動程序並不知道發生的這個「魔術」的任何事情,它正在完成它所做的 - 將字符寫入塊設備。
相關問題
- 1. 它是負責設置堆棧的程序或操作系統
- 2. OS堆棧和OS堆棧在多核操作系統中
- 3. 此代碼未定義的行爲?那麼操作系統和堆呢?操作系統如何處理堆棧?
- 4. 什麼是Windows內核驅動程序?
- 5. 什麼是開始Windows文件系統驅動程序開發的好資源?
- 6. C#程序知道在哪個驅動器中安裝了Windows操作系統?
- 7. 什麼是檢索系統驅動器
- 8. 設備驅動程序vs驅動程序堆棧
- 9. WiX - 安裝依賴於操作系統的驅動程序
- 10. 驅動程序如何成爲操作系統的一部分?
- 11. AHCI驅動程序爲自己的操作系統
- 12. PostgreSQL的:ODBC驅動程序在64位操作系統
- 13. 設備驅動程序堆棧
- 14. Windows移動應用程序開發Windows 7操作系統
- 15. 什麼是本地操作系統
- 16. C++堆棧/堆棧。爲什麼只有一個新操作員?
- 17. POSIX標準對atexit()處理程序中線程堆棧的說明是什麼?什麼是操作系統的做法?
- 18. Windows Azure的備份 - 失敗在驅動器C:(操作系統驅動器)
- 19. 在Windows操作系統中的pathos軟件包操作系統
- 20. 什麼是操作系統和元操作系統之間的差別
- 21. WIndows Azure CentOS擴展操作系統驅動器
- 22. 爲什麼Ruby程序不會將堆內存返回到操作系統?
- 23. 單程序操作系統
- 24. 誰在CreateFile上強制執行dwShareMode?操作系統還是驅動程序?
- 25. System.getProperty(「os.name」)在最新的Windows操作系統中返回什麼
- 26. 移動操作系統與桌面操作系統有什麼不同
- 27. 什麼是操作系統(關於嵌入式系統)?
- 28. windows mobile(過去的操作系統)和windows phone 7操作系統的功能有什麼區別?
- 29. 什麼是蘋果移動設備的操作系統
- 30. 如何通過Android操作系統中的Java訪問設備驅動程序?
歡迎來到StackOverflow!你在問題中付出的努力越多,你得到的答案的質量和數量就越好。建議澄清並擴展您的問題。你問網絡堆棧是什麼,驅動程序接口是什麼,NDIS是什麼,......?你已經看過什麼資源,但沒有得到滿足? – 2010-11-23 08:36:09