かなり遅い速度(50バイト/秒程度)でファイルに書き込む組み込みLinuxアプリがあります。このファイルは、ハードドライブのXFSファイルシステムにあります。write()
ファイルは、ではなく、を呼び出すことによって書き込まれますfwrite()
。
システムの電源を入れ直してファイルを確認すると、1分以上のデータが失われています。Linuxのデフォルトの動作は、 5秒ごとにディスクキャッシュを同期することだと思いました( 5秒分のデータの欠落を許容できるので、これで問題はありません)。長い間同期されない理由を確認するには、何を確認する必要がありますか?500/proc/sys/vm/dirty_writeback_centisecs
です。私がチェックすべき他の変更可能なものはありますか?それは間違いなくディスクキャッシュの問題のように見えます-ファイルの場合、サイズは予想どおりであり、電源を入れ直した後は以前よりも小さくなります。ls -l