加入收藏 | 设为首页 | 会员中心 | 我要投稿 东莞站长网 (https://www.0769zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

处理Linux中Flash掉电丢失数据问题

发布时间:2021-11-25 19:18:14 所属栏目:教程 来源:互联网
导读:我在一个嵌入式Linux项目中提供了一个配置界面用来更改机器的参数,我将参数以文件形式保存在flash中。现在发现一个问题,如果更改了参数,然后用reboot热重启,则参数已经被更改,但如果断电则发现参数并没有被修改,而且文件甚至可能被清空。 经过排查,原

我在一个嵌入式Linux项目中提供了一个配置界面用来更改机器的参数,我将参数以文件形式保存在flash中。现在发现一个问题,如果更改了参数,然后用reboot热重启,则参数已经被更改,但如果断电则发现参数并没有被修改,而且文件甚至可能被清空。
 
经过排查,原因是Linux中并没有立即在flash进行数据交换,而是每过一段时间缓存写入flash。Linux提供了强制同步缓存与flash的命令sync,调用此命令即可实现断电保存数据。
 
在qt中实现的方法:
 
QFile file1("/etc/eth0-setting");  
file1.open(QIODevice::WriteOnly);  
......  
......  
......  
file1.close();  
system("sync");  

(编辑:东莞站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读