我试着用fsync把一些文件尽快写入SD卡。但是,在将文件物理写入SD卡之前,fsync实际上不会阻塞。在数据真正进入SD卡之前,似乎需要5-6秒的时间。但是,使用commit =1或sync选项挂载文件系统(我尝试了ext3、ext4)似乎确实有效,在1秒内重新启动后数据是安全的。我的问题是,有没有办法在不求助于分区范围的解决方案的情况下实现刷新?我使用的是linux内核2.6.37。谢谢
发布于 2014-09-24 12:24:18
如果您希望确保SD卡上写入了内容,则应该在退出程序之前使用--flushbufs调用blockdev。如果您想对写入过程进行基准测试,可以在每次写入之后调用此函数。
/sbin/blockdev --flushbufs $devhttps://stackoverflow.com/questions/26007050
复制相似问题