跟随这个问题: 如何在 C 中快速创建大文件?
我记得 4-5 年前,我能够fallocate
在 Linux 中使用 shell 实用程序来创建没有孔/间隙的文件。
磁盘文件系统是 ext3、ext4 或 xfs。
当时,fallocate
shell 实用程序在不到一秒的时间内创建了 8 GB 的文件。我不记得文件是否充满零或随机。
我现在尝试复制它,但它似乎创建了带有孔/间隙的文件。
我想知道这是如何用C
语言完成的?
- 一些仅适用于 Linux 的内核调用?
- 一些内核调用在规范中有错误,后来被修复?
- 一些不再可用的内核调用?