linux内核中哪些函数会直接调用网卡的DMA驱动程序
时间: 2023-12-02 19:03:51 浏览: 141
Linux内核中与网络相关的函数会直接调用网卡的DMA驱动程序,包括以下几个函数:
1. netif_receive_skb:用于接收网络数据包并送到协议栈处理,该函数会调用网卡驱动程序的硬件收包函数。
2. netif_rx:与netif_receive_skb类似,也是用于接收网络数据包,但是可以一次处理多个skb。
3. netif_tx_wake_queue:用于唤醒一个队列,以便继续发送数据,该函数会调用网卡驱动程序的硬件发送函数。
4. netif_start_queue:用于启动一个队列,以便发送数据,该函数会调用网卡驱动程序的硬件发送函数。
5. netif_stop_queue:用于停止一个队列,以便暂停发送数据,该函数会调用网卡驱动程序的硬件发送函数。
这些函数都是在网络协议栈中使用的,通过调用网卡驱动程序的DMA接口完成对网卡硬件的控制,实现了数据包的接收和发送。
阅读全文