我需要编写一个以非常快的速度将日志条目吐出到常规文件的应用程序。此外,还有另一个进程可以同时读取同一个文件,其他进程将写入它。我有以下问题
read() 如何确定 EOF,特别是在底层文件可能同时被修改的情况下?
read() 是否可以从其他进程写入返回部分写入的数据?例如,写过程写了半行,读会选择那半行并返回?
该应用程序将使用 Ex4 文件系统在 linux 2.6.x 上用 C 语言编写
更新:下面的链接指向补丁,在读写之前将 inode 锁定在 EXT4 中。 http://patchwork.ozlabs.org/patch/91834/