随着智能设备的普及,从手机系统手动升级到路由器自启动升级,甚至是汽车内的智能设备升级,那么固件升级到底是什么呢?通过什么原理来实现固件升级的呢?有哪些常见的固件升级方式?今天,咱们来一探究竟。
所谓固件升级,是指对底层的软件进行修改、替换从而使得硬件增加新功能或者更好的工作(修复和改善)。固件又叫做韧体,英文是firmware。
固件一般存储于设备中的电可擦除只读存储器EEPROM(Electrically Erasable Programmable ROM)或FLASH芯片中,一般可由用户通过特定的刷新程序进行升级的程序。一般来说,担任着一个数码产品最基础、最底层工作的软件才可以称之为固件,比如计算机主板上的基本输入/输出系统BIOS(Basic Input/output System),在以前其实更多的专业人士叫它固件。
通常这些硬件内所保存的程序是无法被用户直接读出或修改的。在以前,一般情况下是没有必要对固件进行升级操作的,即使在固件内发现了严重的Bug也必须由专业人员带着写好程序的芯片把原来机器上的更换下来。这是因为早期固件芯片一般采用了ROM设计,它的Firmware代码是在生产过程中固化的,用任何手段都无法修改。
随着技术的不断发展,修改固件以适应不断更新的硬件环境成了用户们的迫切要求,所以,可重复写入的可编程可擦除只读存储器EPROM(Erasable Programmable ROM),EEPROM和flash出现了。这些芯片是可以重复刷写的,让固件得以修改和升级。
与此同时,随着无线通信技术和芯片技术的发展,固件升级的方式也越来越方便,从用传统的编程器刷入固件的方式来更新,拓展至通过外部的接口接线更新(如通过USB、SPI通信接口),以及通过无线方式升级(即OTA升级,如通过蓝牙、Wi-Fi等方式,不再需要手动连线)。
因此,方便快捷的OTA技术,来更新版本、优化体验、让产品保持先进性,成为了智能硬件产品的必要手段之一。
比如说
在生活中,在使用这些智能产品的时候,有的需要我们手动确认才会自动升级,有的则会自动检测更新升级,这背后是什么原因呢?
原来是操作方式的不同
一种是后台式升级
另一种是非后台式式更新
不管哪种操作方式,主要流程几乎如出一辙
制造升级包
下载升级包
验签升级包
固件更新
在实现这些流程的过程中,不仅需要全面考虑如何才能接收固件、如何保证固件的完整性和合法性、如何替换固件,还要固件向下兼容设计、版本管理、固件推送统计和分布,这些需要端+云+业务逻辑三方配合,也涉及到芯片、OS、连接和场景等多种方面,会大大增加OTA研发成本。因此,大部分企业会考虑借助第三方平台来完成OTA升级。
为了让智能设备高效、安全、稳定的实现升级,机智云推出OTA升级服务,支持多种定向升级策略,如按批次、按地域、按原固件版本等条件进行远程推送,解决智能设备出厂后的持续升级要求,优化产品性能,提升体验感。
企业只需通过机智云开发者中心,在线添加推送固件及规则,完成验证固件,确认开始推送,待推送完成,即可在线查询推送结果。还能根据流水号查看推送详情,在线进行版本推送管理,通过图表形式查看版本分布情况。
机智云的OTA服务功能如下:
OTA通知服务,即离线升级。当设备的固件程序有新版本发布,OTA 通知服务会推送升级通知到设备。
OTA透传服务,即在线升级。设备固件程序通过M2M 消息服务透传到设备端。
支持一个产品同时有多个推送。
支持Wi-Fi/MCU升级。
支持推送全部设备。
支持定向升级设备。可指定设备mac地址、区域、旧固件版本进行推送。
支持定时推送。可自定义推送周期及推送时段。
OTA版本推送记录。
OTA进度统计分析。
登陆 dev.gizwits.com ,体验机智云OTA服务
OTA使用指南devdocs.gizwits.com/zh-cn/ProductDev/AddProduct/CreatProduct.html
相关推荐:
◆科普|为什么说中低速应用场景要选Cat.1
◆开发者案例|GC211实现MCU开发和OTA升级
◆开发案例|家用热水器智能化改造记
◆开发者案例|老年人饮水状况监测系统
◆如何在线创建一个智慧网关,实现多品牌不同协议的互联互通
技术交流:
http://shop159680395.taobao.com/index.htm
原文标题:浅谈OTA升级原理及应用
文章出处:【微信公众号:机智云开发者】欢迎添加关注!文章转载请注明出处。
-
机智云
+关注
关注
2文章
584浏览量
26392
原文标题:浅谈OTA升级原理及应用
文章出处:【微信号:IoTMaker,微信公众号:机智云开发者】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论