在Windows操作系统中是否存在零拷贝技术?

10

阅读这篇零拷贝文章后,

Windows操作系统(Server 2003、2008、2008 R2)中是否存在零拷贝技术?

1个回答

10

是的,通过TransmitFile API支持。

我很确定IIS也使用了这个方法。

虽然文档中并没有明确提到这种方法是否真正进行了零拷贝(即没有将文件缓冲区复制到套接字缓冲区),但是考虑到该方法的定义方式明显可以实现,如果不是这种情况,我会非常惊讶。

文档最接近明确陈述的内容是这段话:

[...] TransmitFile通过直接从文件缓存发送数据来获得性能提升。


谢谢Joachim。我想知道TransmitFile()是否将数据从内核读取缓冲区复制到套接字缓冲区再到NIC缓冲区?还是直接将数据从内核读取缓冲区复制到NIC缓冲区? - Lydon Ch

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接