我們都知道在我們的Windows中爲我們執行HTTP處理的操作系統中有一個名爲http.sys 的內核模式驅動程序。這基本上是我們所知道的。http.sys實施
但今天我想:嘿,我們所有的網絡東西,如TCP/IP,還有這裏,在userland - ws2_32.dll的提供者(mswsock.dll)及其所有朋友。由於有userland組件,http.sys沒有辦法使用它們。問題是:他們如何做到這一點?任何信息鏈接將不勝感激。
我們都知道在我們的Windows中爲我們執行HTTP處理的操作系統中有一個名爲http.sys 的內核模式驅動程序。這基本上是我們所知道的。http.sys實施
但今天我想:嘿,我們所有的網絡東西,如TCP/IP,還有這裏,在userland - ws2_32.dll的提供者(mswsock.dll)及其所有朋友。由於有userland組件,http.sys沒有辦法使用它們。問題是:他們如何做到這一點?任何信息鏈接將不勝感激。
找到了一個好問題的答案在這裏:http://www.codemachine.com/article_tdi.html
看來,是非常有,更多的在Windows聯網比Winsock的向我們展示。
我會想象HTTP.SYS利用Windows Kernel Sockets來實現它的目標。另請參閱here。
你對http.sys做了什麼錯誤的心理模型。它僅解決了希望在端口80上收聽太多節目的問題。在codeproject.com上有一篇很好的文章:http://www.codeproject.com/Articles/437733/Demystify-http-sys-with-HttpSysManager –