[MIT 6.1810]Lab7-networking
为硬件所有,当网卡收到包时,会检查环形队列 head 位置的描述符。此时,生产者是硬件网卡(维护head指针),消费者是需要实现的接收函数(维护tail指针)。作为生产者将入参mbuf打包发送到发送环形队列中,这样硬件作为消费者会自己处理(发出去)。生产者消费者之间的通讯方式是:网卡收到包时产生中断,中断处理程序去调用接收函数。为了达成目的,需要看E1000的文档,对E1000有足够的了解。所以,接收函数就是要去实现处理这个环形队列中已有的待处理包。手册中约定了控制寄存器的地址,例如环形队列的地址…
原创
2023-10-22 16:16:25 ·
316 阅读 ·
0 评论