当前位置: 首页 > wzjs >正文

网页报价表强强seo博客

网页报价表,强强seo博客,北京公司网站建设费用,长春网络营销网站在工业生产中,固件烧写是确保产品正常运行的关键环节。本文通过一个实际案例,揭示了Linux系统下因文件写入异步性导致的固件烧写不完全问题。 客户案例 客户产线上批量生产时,用SD卡进行固件烧写,烧写完成后蜂鸣器提示&#xf…

在工业生产中,固件烧写是确保产品正常运行的关键环节。本文通过一个实际案例,揭示了Linux系统下因文件写入异步性导致的固件烧写不完全问题。


  客户案例

客户产线上批量生产时,用SD卡进行固件烧写,烧写完成后蜂鸣器提示,产线工人听到蜂鸣器鸣叫后就直接断电重启,进入测试环节,结果在测试中发现有部分产品启动就出现异常。

客户用解压方式烧写系统固件,解压命令执行完后,再运行一个二进制可执行程序,然后鸣叫蜂鸣器。乍一看逻辑非常正确,没有任何问题。可问题却较高概率出现,问题出在哪里呢?

后来经过反复排查,发现客户解压脚本里的可执行程序里面还有二次解压操作,而且用system()调用了Linux的Shell命令。System()调用Shell命令会生成一个新的子进程,这样蜂鸣器鸣叫和二次解压分别在不同进程中,两者没有同步,解压完成和蜂鸣器鸣叫没有必然的先后顺序。按照蜂鸣器鸣叫就断电重启,这样就不可避免的出现了解压尚未完成就被断电的情况,从而引起文件烧写不完全,系统启动异常。

下面围绕该问题,对Linux文件系统写文件操作进行一些说明。

  原理说明

由于Linux系统存在页高速缓存,对写入的内容起到了缓存作用,用户的写操作实际上会被延迟。当页高速缓存中的数据比后台存储的数据新的时候,这些数据就被称作脏数据。发生以下三种情况时,脏页才会被写回磁盘:

  1. 当空闲内存低于一个特定的阈值时,内核必须将脏页写回磁盘以释放内存。
  2. 当脏页在内存中驻留时间超过一个特定的阈值时,内核必须将超时的脏页写回磁盘,以确保脏页不会无限期地驻留在内存中。
  3. 当用户进程调用 sync() 和 fsync() 系统调用时,内核会按照要求执行回写操作。


  应对方案

如果更新脚本在解压命令后没有sync指令,或者程序更新代码在执行解压或者写操作后没有调用fsync()函数执行写操作,Linux系统就会按照默认机制来实现写操作;如果没有达到如上前2个条件,发生了断电操作,则会导致写入数据不完整。

在程序更新脚本里,解压后必须执行sync指令完成写入同步,或者应用程序代码在写操作后调用fsync()函数完成写同步操作,确保数据写入存储器。

http://www.dtcms.com/wzjs/501961.html

相关文章:

  • 用模板做企业网站seo快速排名上首页
  • 重庆顶呱呱网站建设国内优秀网页设计赏析
  • 做网站首先必须切割图片吗网站设计用什么软件
  • 抚顺网站建设7113活动推广方案策划
  • 深圳网站开发的公司站长工具在线查询
  • 如何做隐藏网站的二维码百度推广话术全流程
  • 未来做那些网站能致富码迷seo
  • 房产网站建设推广谷歌浏览器搜索入口
  • 铜川做网站的公司电话济南网站制作平台
  • 如何在凡科上做网站昆明排名优化
  • 网站如何做品牌营销品牌营销平台
  • 专做美容师招聘网站今天最新的新闻
  • 正规网站建设模板网店怎么运营和推广
  • c#网站开发案例大全快速排名上
  • 网站开发交流平台企业网络推广服务
  • 网站做app的软件有哪些互联网站
  • 装饰公司网站如何做推广最近五天的新闻大事
  • 常德建设企业网站营销软文800字范文
  • 网站建设价格明细厦门百度快速优化排名
  • 钛媒体 wordpressseo优化的基本流程
  • 做网站代理怎么样广告营销留电话网站
  • 国际b2b免费网站落实20条优化措施
  • 三亚 网站建设手机推广平台有哪些
  • 企业搭建pc端网站推广资讯
  • 做网站公司在哪站长seo查询
  • 网网站开发设计百度账户
  • 棋牌游戏网站怎么做的软文营销常用的方式是什么
  • 搭建网站首页seo排名快速优化
  • 怎么用织梦源代码做网站珠海做网站的公司
  • 济南做网站哪里好不花钱网站推广