什么是posix_fallocate的替代API

问题描述:

我正在制定一个定制的android目标板。主板文件系统通过NFS进行安装。有一个API调用过程Libcore.os.posix_fallocate试图创建物理文件的长度,但由于“错误:操作在传输端点上不受支持”操作失败。我的猜测是posix_fallocate不能通过NFS操作,我搜索了一下,似乎我的猜测是有效的。那么是否有任何替代API可用于操作相同的结果?什么是posix_fallocate的替代API

看来我可以用dd命令预先创建一个文件,如果是这种情况,dd命令实际上调​​用了哪个API?我想我可以窃取dd

ftruncate的API可以取代它,它没有考虑偏移参数

+0

虽然'ftruncate'将设置大小也不一定会分配空间,而不是把它当作一个稀疏文件(如果由文件系统支持)。 'fallocate'完全实现了文件,并且现在检查磁盘满,而不是实际写入字节的时间。 –