函数fallocate()&来自FreeBSD的splice()

时间:2012-10-30 13:19:19

标签: freebsd splice

我需要在大文件的中间实现添加和删除块 - “打孔”我在FreeBSD下找不到模拟函数fallocate()splice()

2 个答案:

答案 0 :(得分:1)

自8.3以来FreeBSD已经posix_fallocate(2)但没有splice()

答案 1 :(得分:0)

Roland对posix_fallocate()是正确的。顺便说一句,即使在这里的Linux系统(RHEL-5.7)上也找不到fallocate(),所以你真的不想依赖它在Linux上的存在。

至于splice(),看起来似乎没有。它在FreeBSD上最接近的是sendfile() - 但仅当目的地是套接字时。