int fallocate(int fd, int mode, off_t offset, off_t len);
posix_fadvise, posix_fallocate
为文件预分配物理空间。
#include <fcntl.h>
成功返回0,失败返回-1。
fd 文件描述符
mode 目前两种mode:
1.FALLOC_FL_KEEP_SIZE:从offset开始分配大小为len的空间,
并将内容初始化为0。不改变文件大小。
2.not FALLOC_FL_KEEP_SIZE: 跟1一样,但是如果offset+len大于
文件大小,则改变文件大小为offset+len。
offset 文件内偏移
len 从offset开始预留的空间大小
linux内核 2.6.23及其以上 && glibc2.10及其以上。