我们都知道在我们的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 –