linux - 如何在写入之前向 ext4 指示文件的大小?

标签 linux filesystems ext4

我很好奇是否有办法做到这一点?我对 ext4 的理解有限,但我相信它有能力分配连续范围的磁盘空间

我正在从 RAM 中写入一个文件,并且在 open() 之前知道它的大小。有没有办法可以向文件系统表明这一点?有性能优势吗?

最佳答案

您似乎正在寻找 posix_fallocate .

使用它允许文件系统预先分配 block ,这可以减少文件的碎片。特别是,这对于随机写入文件 block 的应用程序(例如 BitTorrent 客户端)很重要。对于顺序写入文件的应用程序来说,这可能不值得。

关于linux - 如何在写入之前向 ext4 指示文件的大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11356076/

相关文章:

c - 如何知道缓冲区头映射到哪个地址空间?

windows - Mod_rewrite 在 Windows 和 Ubuntu 上有不同的结果

java - Java中获取文件特定版本的图标

c# - 是否可以观看一个文件,看看它何时被读取?

linux - EXT4 上的触摸时间戳准确性

linux - 如何在 ext4 上存储十亿个文件?

c - 在哪里放置用于从共享内存段读取和写入的信号量?

c - 编译相同的源代码如何生成不同的目标文件?

C:在不使用全局变量的情况下,从创建的线程中操作在 main 中声明的结构

linux-kernel - 如何在 ext4 文件系统中模拟中止日志?