这是我用Google搜索的内容:
sendfile()
与write()
类似,只是直接从描述符到套接字。这消除了将数据从缓冲区缓存复制到用户空间中的缓冲区。
当前的NIC可以执行分散 - 聚集I/O
,即它们可以从内核缓冲区获取数据包头,但是来自缓冲区缓存的数据包内容(来自用户的csum部分副本)。
结果称为Zero Copy TCP,它是最终目标。
我的问题是:
csum_partial_copy_from_user()
及其被召唤的目的是什么?我按照sendfile的过程直到dev_queue_xmit()
,但我没有找到它的调用位置。感谢