我正在试图弄清楚网卡在Windows中是如何工作的,以及如何传输数据。
我有两个假设。
1
2
我的假设是否正确?
如果缓冲区已满,卡或Windows是否有任何消息?
在我的以太网控制器的Windows系统属性中,我可以看到名为“接收缓冲区”和“传输缓冲区”的属性,两者都设置为256。 这是什么意思?
有没有关于这个主题的好文献?(我有Tanenbaum的现代操作系统,但它与Windows无关。)
答案 0 :(得分:1)
您的问题包含(至少!)三个非常非常广泛的主题:
1)Layer 2 (Data Link)硬件设备如何工作?
2)它与操作系统的network stack
有何关系......和......
3)它与操作系统的内核级device driver有什么关系?
下一个链接实际上与原始问题相反180度(API是相对较高的级别,您的问题属于最低的软件级别),但是查看.Net API以获取视角“如何工作“:
'希望这有助于...至少一点......
PS:
Linux是关于实现网络堆栈的大量信息:所有内核源代码和所有设备驱动程序都是完全可用的,并且有很好的文档记录。