软件升级方法及系统技术方案

技术编号:23161412 阅读:34 留言:0更新日期:2020-01-21 21:55
本发明专利技术提出一种软件升级方法及系统,该方法包括以下步骤:对软件升级包进行预处理,得到多个分段升级包;将多个分段升级包存入服务器中,并记录分段升级包的相关信息;接收软件升级请求,并根据软件升级请求确认是否进行升级;当确定升级时,逐段传输请求的多个分段升级包的内容,并写入升级缓存区;当多个分段升级包的内容全部传输完成时,加载多个分段升级包的内容,实现软件升级。本发明专利技术能够减少软件升级过程中的通信次数、设备缓存内存中占用的空间和设备对数据的处理过程,有效减少下载缓冲区空间大小的限制,提高软件升级的可靠性和效率,可用于存储空间有限的设备,适用性强。

【技术实现步骤摘要】
软件升级方法及系统
本专利技术涉及软件
,特别涉及一种软件升级方法及系统。
技术介绍
由于嵌入式设备在实验室环境或者在真实环境测试条件有限,尽管出厂前做了很详尽的模拟测试,但是最终到达真实用户的手中,遇到的环境会更复杂,可能会出现一些轻微的差异,也可能出现阻塞的问题,造成用户体验不理想,或者因为功能的不断更新,设备软件更新不及时导致用户体验差。这时候,就需要一种远程升级系统或者软件的手段,更新嵌入式设备中的系统或者软件。FOTA(FirmwareOver-The-Air,移动终端的空中下载软件升级),是通过空中下载的方式,对系统或者软件升级的一种升级手段,从服务端获取软件,替换原系统或者软件以完成系统修复和优化。对于嵌入式设备而言,主要是因为成本限制,储存空间非常有限,特别是低成本的嵌入式设备,运行内存和Flash内存更加有限。目前一般的升级方法是将新的内存直接整块下载到缓存空间中,然后开机复制整块内存到主内存中。对于存储空间充足的设备来说,这种方式是比较可靠和有效率的;但是对于存储空间有限的设备,如内存达不到1倍剩余空间本文档来自技高网...

【技术保护点】
1.一种软件升级方法,其特征在于,包括以下步骤:/n对软件升级包进行预处理,得到多个分段升级包;/n将多个所述分段升级包存入服务器中,并记录所述分段升级包的相关信息;/n接收软件升级请求,并根据所述软件升级请求确认是否进行升级;/n当确定升级时,逐段传输请求的多个所述分段升级包的内容,并写入升级缓存区;/n当多个所述分段升级包的内容全部传输完成时,加载多个所述分段升级包的内容,实现软件升级。/n

【技术特征摘要】
1.一种软件升级方法,其特征在于,包括以下步骤:
对软件升级包进行预处理,得到多个分段升级包;
将多个所述分段升级包存入服务器中,并记录所述分段升级包的相关信息;
接收软件升级请求,并根据所述软件升级请求确认是否进行升级;
当确定升级时,逐段传输请求的多个所述分段升级包的内容,并写入升级缓存区;
当多个所述分段升级包的内容全部传输完成时,加载多个所述分段升级包的内容,实现软件升级。


2.根据权利要求1所述的软件升级方法,其特征在于,所述对软件升级包进行预处理,包括:
按照连续的地址对所述软件升级包进行分段,依次将每段内容、对应的写入地址、内容长度及校验和合成为一个所述分段升级包。


3.根据权利要求2所述的软件升级方法,其特征在于,所述每个分段升级包的内容长度为8的倍数。


4.根据权利要求1所述的软件升级方法,其特征在于,所述每个分段升级包的相关信息至少包括:产品名称、固件版本、软件版本号、软件版本代号、升级包文件大小、每页大小、总页数及升级包文件校验。


5.根据权利要求1所述的软件升级方法,其特征在于,所述软件升级请求包括:查询请求及设备的产品名称和固件版本的升级包版本信息,所述接收软件升级请求,并根据所述软件升级请求确认是否进行升级,包括:
服务器根据所述查询请求,判断是否存在对应于产品名称和固件版本的升级包版本信息的分段升级包;
如果存在,则向设备回复对应的版本信息,以确定升级;
否则,回复设备请求的版本号,且将分段升级包其他信息置零,不进行升级。


6.根据权利要求5所述的软件升级方法,其特征在于,逐段传输多个所述分段升级包的内容,包括:
如果所述产品名称和固件版本不匹配,则丢弃本次请求的结果。


7.根据权利要求6所述的软件升级方法,其特征在于,逐段传输多个所述分段升级包的内容,还包括:
如果收到的当前最新软件版本代号发生...

【专利技术属性】
技术研发人员:陈孟轩游小龙郑伟强
申请(专利权)人:领翌技术横琴有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1