CN104298532A - 一种软件升级方法及系统 - Google Patents

一种软件升级方法及系统 Download PDF

Info

Publication number
CN104298532A
CN104298532A CN201410612142.3A CN201410612142A CN104298532A CN 104298532 A CN104298532 A CN 104298532A CN 201410612142 A CN201410612142 A CN 201410612142A CN 104298532 A CN104298532 A CN 104298532A
Authority
CN
China
Prior art keywords
image file
software
software upgrading
file
upgrading image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201410612142.3A
Other languages
English (en)
Other versions
CN104298532B (zh
Inventor
龚前进
孙德亮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
PANSOFT Co.,Ltd.
Original Assignee
Shanghai Feixun Data Communication Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Feixun Data Communication Technology Co Ltd filed Critical Shanghai Feixun Data Communication Technology Co Ltd
Priority to CN201410612142.3A priority Critical patent/CN104298532B/zh
Publication of CN104298532A publication Critical patent/CN104298532A/zh
Application granted granted Critical
Publication of CN104298532B publication Critical patent/CN104298532B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明提供一种软件升级方法,包括:将预先编译好的软件升级源代码打包成与软件升级镜像文件,并在软件升级镜像文件的头部加入校验值;判断软件升级镜像文件的校验值是否大于第一校验阈值以确定所述软件升级镜像文件的合法性,若是,判断确定软件升级镜像文件为合法的校验值是否大于等于所述第二校验阈值以确定软件升级镜像文件是否为与用户需要升级的嵌入式软件文件相对应的软件升级镜像文件,若是,将与用户需要升级的嵌入式软件文件对应的软件升级镜像文件写入与用户需要升级的嵌入式软件文件对应的分区;若否,将软件升级镜像文件写入内存区;若否,提示用户软件升级镜像文件非法。本发明软件升级方法及系统实现了对独立模块单独升级的功能。

Description

一种软件升级方法及系统
技术领域
本发明属于网络设备和嵌入式技术领域,特别是涉及一种软件升级方法及系统。
背景技术
蓝牙是一种低功耗的无线技术。主要优点有:
1)可以随时随地地用无线接口来代替有线电缆连接;
2)具有很强的移植性,可应用于多种通信场合,如WAP(无线应用协议)、GSM(全球移动通信系统)、DECT(欧规数字无绳通信)等,引入身份识别后可以灵活的实现漫游;
3)低功耗,对人体伤害小;
4)蓝牙集成电路简单,成本低廉,实现容易,易于推广。
蓝牙技术提供低成本。近距离的无线通信,构成固定与移动设备通信环境中的个人网络,使得近距离内各种信息设备能够实现无缝资源共享。
蓝牙技术工作在全球通用的2.4GHz ISM(工业、科学、医学)频段,从而消除了“国界”的障碍。蓝牙的数据速率为1Mb/s。从理论上来讲,以2.45GHz ISM频段运行的技术能够使相距30米以内的设备互相连接,传输速率可以达到2Mb/s,但实际上很难达到。任意蓝牙设备一旦搜寻到另一个蓝牙技术设备,马上就可以建立联系,而无需用户进行任何设置(可以理解为“即插即用”),在无线电环境非常嘈杂的环境下,其优势更加明显。
另外,ISM频段是对所有无线电系统都开发的频段,因此使用其中的某个频段都会遇到不可预测的干扰源,例如某些家电、无绳电话、微波炉等,都可能是干扰源。为此,蓝牙技术特别设计了快速确认和跳频方案以确保链路的稳定。与其他工作在相同频段的系统相比,蓝牙跳频更快、数据分组更短,这使蓝牙技术系统比其它系统更稳定。
PSG1200BI就是通过蓝牙将家里的带蓝牙的设备连在一起,如智能血压计。智能血压计将测量到的血压数据通过蓝牙发送到路由器上,再通过路由器将这些数据上传到云服务器上,这样我们通过移动智能设备上的APP连接到云服务器解析上传的数据,就能随时查看我们的血压指标,进而判断是否健康。针对PSG1200BI,目前使用的是蓝牙3.0版本,蓝牙版本都是向下兼容,向上不兼容,如果用户使用的是蓝牙4.0版本或者后续可能出现更高版本的蓝牙设备,则该路由器无法连接上蓝牙设备,从而无法满足用户的需求,这样就需要进行升级蓝牙版本,从而能够满足用户的要求。
目前路由器已经普及到社会上的各处,带蓝牙功能将会是将来的主流,而随着蓝牙的不断完善与体验的改进,我们需要为用户提供一种更方便有效的蓝牙升级方式。
目前路由器处理蓝牙升级的方案是研发人员在编译整体镜像文件的时候,将蓝牙模块的所有文件拷贝到根目录系统的/usr/sbin/目录下,然后打包生成整个镜像文件,通过web页面升级的方式升级整个系统。在系统启动的过程中,将蓝牙系统相关的所有文件拷贝到根目录系统的/tmp/bluetooth/目录下进行运行。
然而这种升级方法存在以下两个缺点:
第一、需要长时间等待,并且由于长时间的Flash写操作,在出现断电等异常情况的概率就比较大,而这种情况下极易出现Flash挂掉的情况(即路由器无法再次正常工作,需要返厂处理);
第二、蓝牙运行过程中生成的配置文件和配对设备列表文件在系统断电重启后无法保存。
因此,如何提供一种软件升级方法及系统,以解决现有技术中在终端设备,尤其是路由设备中无法实现对独立模块单独升级的缺陷,实已成为本领域从业者亟待解决的技术问题。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种软件升级方法及系统,用于解决现有技术中硬件设备,尤其是路由设备中无法实现对独立模块单独升级的问题。
为实现上述目的及其他相关目的,本发明一方面提供一种软件升级方法,应用于包括若干嵌入式软件文件的终端设备,在所述终端设备中设置用以存储所述嵌入式软件文件的内存区,并将所述内存区按照所述软件的功能划分成若干个分区;所述嵌入式软件文件包括上层应用层和内核底层,所述上层应用层包括主函数,所述内核底层包括管理函数和读写函数;所述软件升级方法包括:将预先编译好的软件升级源代码打包成与所述软件升级源代码对应的软件升级镜像文件,并在所述软件升级镜像文件的头部加入一校验值;识别所述软件升级镜像文件;判断所述软件升级镜像文件的校验值是否大于一第一校验阈值以确定所述软件升级镜像文件的合法性,若是,则表示所述软件升级镜像文件合法,继续执行下一步骤;若否,则表示所述软件升级镜像文件非法,提示用户所述软件升级镜像文件非法;判断确定所述软件升级镜像文件为合法的校验值是否大于等于一第二校验阈值以确定所述软件升级镜像文件是否为与用户需要升级的嵌入式软件文件相对应的软件升级镜像文件,其中,所述第二校验阈值大于所述第一校验阈值,若被判别为软件升级镜像文件为合法的校验值大于等于第二校验阈值,则将与所述用户需要升级的嵌入式软件文件相对应的软件升级镜像文件写入与所述用户需要升级的嵌入式软件文件对应的分区。
可选地,若确定所述软件升级镜像文件为合法的校验值小于第二校验阈值,则将所述软件升级镜像文件写入所述内存区。
可选地,所述软件升级方法还包括将所述软件升级镜像文件传递至所述上层应用层。
可选地,将所述软件升级镜像文件传递至所述上层应用层的主函数,通过调用所述主函数识别所述软件升级镜像文件中的所述校验值。
可选地,判断确定所述软件升级镜像文件为合法的校验值是否大于等于所述第二校验阈值以确定所述软件升级镜像文件是否为与用户需要升级的嵌入式软件文件相对应的软件升级镜像文件的步骤中还包括:
若所述软件升级镜像文件为与用户需要升级的嵌入式软件文件相对应的软件升级镜像文件时,调用所述管理函数以便将所述软件升级镜像文件传送至所述内核底层,调用所述读写函数将所述软件升级镜像文件写入与所述用户需要升级的嵌入式软件文件对应的分区。
可选地,判断确定所述软件升级镜像文件为合法的校验值是否大于等于所述第二校验阈值以确定所述软件升级镜像文件是否为与用户需要升级的嵌入式软件文件相对应的软件升级镜像文件的步骤中还包括:
若所述软件升级镜像文件不为与用户需要升级的嵌入式软件文件相对应的软件升级镜像文件,则为终端设备整体升级文件,调用所述管理函数以便将与所述终端设备整体升级文件相对应的所述软件升级镜像文件传送至所述内核底层,调用所述读写函数将与所述终端设备整体升级文件相对应的所述软件升级镜像文件写入内存区。
本发明另一方面还提供一种软件升级系统,应用于包括若干嵌入式软件文件的终端设备,在所述终端设备中设置用以存储所述嵌入式软件文件的内存区,并将所述内存区按照所述软件的功能划分成若干个分区;所述嵌入式软件文件包括上层应用层和内核底层,所述上层应用层包括主函数,所述内核底层包括管理函数和读写函数;所述软件升级系统包括:封装模块,用于将预先编译好的软件升级源代码打包成与所述软件升级源代码对应的软件升级镜像文件,并在所述软件升级镜像文件的头部加入一校验值;识别模块,用于识别所述软件升级镜像文件;第一判断模块,用于判断所述软件升级镜像文件的校验值是否大于一第一校验阈值以确定所述软件升级镜像文件的合法性,若是,则表示所述软件升级镜像文件合法;若否,则表示所述软件升级镜像文件非法,提示用户所述软件升级镜像文件非法;第二判断模块,用于在所述第一判断模块判断所述软件升级镜像文件合法时,判断确定所述软件升级镜像文件为合法的校验值是否大于等于一第二校验阈值以确定所述软件升级镜像文件是否为与用户需要升级的嵌入式软件文件相对应的软件升级镜像文件,其中,所述第二校验阈值大于所述第一校验阈值,若被判别为软件升级镜像文件为合法的校验值大于第二校验阈值,则调用一读写模块将与所述用户需要升级的嵌入式软件文件相对应的软件升级镜像文件写入与所述用户需要升级的嵌入式软件文件对应的分区。
可选地,所述第二判断模块还用于在判断确定所述软件升级镜像文件为合法的校验值是否大于第二校验阈值以确定所述软件升级镜像文件是否为与用户需要升级的嵌入式软件文件相对应的软件升级镜像文件时,若所述软件升级镜像文件为与用户需要升级的嵌入式软件文件相对应的软件升级镜像文件时,调用所述管理函数以便将所述软件升级镜像文件传送至所述内核底层,通过所述读写模块调用所述读写函数将所述软件升级镜像文件写入与所述用户需要升级的嵌入式软件文件对应的分区。
可选地,所述第二判断模块还用于在判断确定所述软件升级镜像文件为合法的校验值是否大于等于第二校验阈值以确定所述软件升级镜像文件是否为与用户需要升级的嵌入式软件文件相对应的软件升级镜像文件时,若所述软件升级镜像文件不为与用户需要升级的嵌入式软件文件相对应的软件升级镜像文件,则为终端设备整体升级文件,调用所述管理函数以便将与所述终端设备整体升级文件相对应的所述软件升级镜像文件传送至所述内核底层,通过所述读写模块调用所述读写函数将与所述终端设备整体升级文件相对应的所述软件升级镜像文件写入内存区。
如上所述,本发明的软件升级方法及系统,具有以下有益效果:
从用户角度讲具有以下优点:
1)操作简洁;该过程中仅需要鼠标操作就行了,跟正常升级整个路由器操作无二。不需要拥有专业技术,只要选择要升级的文件,然后点击升级按钮即可。
2)不需要额外的设备;该过程中仅确保能够从网络上下载下要升级的文件即可,不需要其他的设备。
从研发人员角度将具有有以下好处:
1)避免底层操作;整个过程中只需要按照原先已有的升级整个系统的流程的上层应用中添加一个magic判断,根据magic不同修改ioctl传向底层的变量值即可。
2)避免了调试蓝牙功能需要升级整个系统;节省了大量时间。
附图说明
图1显示为本发明的软件升级方法流程示意图。
图2显示为本发明的软件升级系统原理结构示意图。
元件标号说明
1      终端设备
10     软件升级系统
101    封装模块
102    识别模块
103    第一判断模块
104    第二判断模块
105    告警模块
106    读写模块
S1~S7 步骤
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
实施例一
本实施例提供一种软件升级方法,应用于包括若干嵌入式软件文件的终端设备,在本实施例中,所述终端设备为路由设备,需单独升级的模块为路由设备中的蓝牙模块。在本实施例中,基于PSD1200B1的设备,例如,智能血压计,所述智能血压计将测量好的血压数据通过蓝牙发送到带有蓝牙模块的路由设备上,再通过所述路由设备将血压数据上传到云服务器上,再通过云服务器解析上传的血压数据,就可以随时查看用户的血压指标,进而判断用户是否健康。在所述路由设备中设置用以存储所述嵌入式软件文件的内存区,并将所述内存区按照所述软件的功能划分成若干个分区。所述嵌入式软件文件包括上层应用层和内核底层,所述上层应用层包括主函数,所述内核底层包括管理函数和读写函数。由于路由设备一般采用的文件系统是只读文件系统SquashFS文件系统,而SquashFS是一套基于linux内核使用的压缩只读文件系统,因此首先需要给蓝牙专门创建一个分区并挂载一个可读可写的文件系统,这样蓝牙在运行过程中产生的一些配置文件和配对设备列表文件在路由设备断电重启之后仍然保存着之前的配置信息和配对设备列表信息。
路由设备在启动的过程中将该可读可写的文件系统挂载到系统根目录下的/media/目录下,这样就使得蓝牙模块与整个系统分离,成为一个独立的子系统,在需要更新蓝牙软件文件的时候,只需要将该文件升级就可以了,这样就避免了在升级过程中导致整个路由设备挂掉的情况和升级时间过长的问题,以及在升级过程中无法上网的问题。当然在升级过程中要确保升级文件所在电脑与需要升级的路由设备保持网络连接,只有这样才能确保升级过程中,升级文件能够上传到需要升级的路由器设备中。
请参阅图1,显示为软件升级方法的流程示意图,如图1所示,所述软件升级方法包括:
S1,将预先编译好的软件升级源代码,在本实施例中,所述预先编译好的软件升级源代码为预先编译好的蓝牙软件升级源代码,将所述蓝牙软件升级源代码打包成与所述软件升级源代码对应的软件升级镜像文件,并在所述软件升级镜像文件的头部加入一校验值,所述校验值用以判断所述软件升级镜像文件合法性的校验值。在本实施例中,所述校验值为一magic值,该magic值可由软件工程师预先设置。在本实施例中,所述软件升级镜像文件是否合法是指该软件升级镜像文件是否是针对与之相对应的路由设备编译而成,是否与之对应的路由设备相匹配。
S2,将所述软件升级镜像文件传递至所述上层应用层,即将所述软件升级镜像文件传递至所述上层应用层的主函数。
S3,识别并读取所述软件升级镜像文件。在本实施例中,识别并读取所述软件升级镜像文件的校验值。在本步骤S3中,通过调用所述主函数(main函数)识别所述软件升级镜像文件中的所述校验值。
S4,判断所述软件升级镜像文件的校验值是否大于第一校验阈值以确定所述软件升级镜像文件的合法性,若是,则表示所述软件升级镜像文件合法,继续执行下一步骤S5;若否,则表示所述软件升级镜像文件非法,,执行步骤S8,即提示用户所述软件升级镜像文件非法,结束进程。在本实施例中,第一校验阈值,是预先设置的,比如,可设置为0,即所述软件升级镜像文件的校验值大于0,则表示所述软件升级镜像文件是合法的,也就是说该软件升级镜像文件是针对所述路由设备而编译的。所述软件升级镜像文件的校验值不大于0时,表示所述软件升级镜像文件是非法的,也就是说该软件升级镜像文件并非是针对所述路由设备而编译的。
S5,判断确定所述软件升级镜像文件为合法的校验值是否大于等于第二校验阈值以确定该软件升级镜像文件是否为与用户需要升级的嵌入式软件文件对应的软件升级镜像文件,即本实施例中,用户需要升级的嵌入式软件文件为蓝牙软件文件,与所述蓝牙软件文件相对应的软件升级镜像文件为蓝牙软件升级镜像文件,若确定所述软件升级镜像文件为合法的校验值大于等于第二校验阈值,则执行步骤S6。若确定所述软件升级镜像文件为合法的校验值小于第二校验阈值,则执行步骤S7。在本实施例中,所述第二校验阈值,同样是预先设置的,比如,可设置为2。
S6,若确定所述软件升级镜像文件为合法的校验值大于等于第二校验阈值,则将擦除与所述用户需要升级的嵌入式软件文件相对应的分区,并将与所述用户需要升级的嵌入式软件文件相对应的蓝牙软件升级镜像文件写入与所述用户需要升级的嵌入式软件文件对应的分区,换句话说就是,若所述蓝牙软件升级镜像文件为与用户需要升级的嵌入式软件文件相对应的蓝牙软件升级镜像文件时,调用所述管理函数(ioctl函数)以便将所述蓝牙软件升级镜像文件传送至所述内核底层,调用所述读写函数将所述蓝牙软件升级镜像文件写入与所述用户需要升级的嵌入式软件文件对应的分区。在本实施例中,所述路由设备重启的过程中,将与所述用户需要升级的嵌入式软件文件对应的分区制作成可读写的蓝牙软件升级镜像文件爱你挂载在根目录下的media目录下以实现路由设备在关机重启后仍然保存着蓝牙运行过程中生成的配置文件和配对设备生成的配对列表。
S7,若所述软件升级镜像文件不为与用户需要升级的嵌入式软件文件相对应的软件升级镜像文件,即该软件升级镜像文件为所述路由设备整体升级文件时,调用所述管理函数(ioctl函数)以便将与所述路由设备整体升级文件相对应的所述软件升级镜像文件传送至所述内核底层,调用所述读写函数将与所述路由设备整体升级文件相对应的所述软件升级镜像文件写入内存区。
在本实施例中,用户若需要升级路由设备中的蓝牙版本可在官方网站上下载用户需要升级的蓝牙软件升级镜像文件到本地电脑上,通过打开路由设备管理页面,通常为192.168.1.1进入到软件升级页面,所述蓝牙软件升级镜像文件通过所述软件升级页面传递到上层应用层的主函数中,根据magic值判断该镜像文件的合法性,并且判断该镜像文件是路由设备整体升级文件还是蓝牙软件升级文件,点击升级按钮。
使用本实施例所述的软件升级方法对于用户进行升级操作有以下好处:
1)操作简洁;该过程中仅需要鼠标操作就行了,跟正常升级整个路由器操作无二。不需要拥有专业技术,只要选择要升级的文件,然后点击升级按钮即可。
2)不需要额外的设备;该过程中仅确保能够从网络上下载下要升级的文件即可,不需要其他的设备。
使用本实施例所述的软件升级方法对于研发人员有以下好处:
1)避免底层操作;整个过程中只需要按照原先已有的升级整个系统的流程的上层应用中添加一个magic判断,根据magic不同管理函数传向内核底层的变量值即可。
2)避免了调试蓝牙功能需要升级整个系统;节省了大量时间。
3)可实现对独立模块单独升级。
实施例二
本实施例提供一种软件升级系统10,应用于包括若干嵌入式软件文件的终端设备1,请参阅图2,显示为软件升级系统原理结构示意图。在本实施例中,所述终端设备1为路由设备1,需单独升级的模块为路由设备中的蓝牙模块,在所述路由设备中设置用以存储所述嵌入式软件文件的内存区,并将所述内存区按照所述软件的功能划分成若干个分区;所述嵌入式软件文件包括上层应用层和内核底层,所述上层应用层包括主函数,所述内核底层包括管理函数和读写函数;所述软件升级系统10包括:封装模块101、识别模块102、第一判断模块103、第二判断模块104、告警模块105、及读写模块106。以下将详细描述上述各模块的具体功能。
所述封装模块101用于将预先编译好的软件升级源代码,在本实施例中,所述预先编译好的软件升级元代码为预先编译好的蓝牙软件升级源代码,将蓝牙软件升级源代码打包成与所述软件升级源代码对应的软件升级镜像文件,并在所述软件升级镜像文件的头部加入一校验值,所述校验值用以判断所述软件升级镜像文件合法性的校验值。在本实施例中,所述校验值为一magic值,该magic值可由软件工程师预先设置。在本实施例中,所述软件升级镜像文件是否合法是指该软件升级镜像文件是否是针对与之相对应的路由设备编译而成,是否与之对应的路由设备相匹配。所述校验值包括第一校验阈值和第二校验阈值。且所述封装模块101还用于将所述软件升级镜像文件传递至所述上层应用层,即将所述软件升级镜像文件传递至所述上层应用层的主函数。
与所述封装模块101连接的所述识别模块102用于识别并读取所述软件升级镜像文件。在本实施例中,所述识别模块102识别并读取所述软件升级镜像文件的校验值,更具体地,所述识别模块102是通过调用所述主函数(main函数)识别所述软件升级镜像文件中的所述校验值。
与所述识别模块102连接的第一判断模块103用于判断所述软件升级镜像文件的校验值是否大于第一校验阈值以确定所述软件升级镜像文件的合法性,若是,则表示所述软件升级镜像文件合法,调用所述第二判断模块104;若否,则表示所述软件升级镜像文件非法,提示用户所述软件升级镜像文件非法,调用用于提示用户所述软件升级镜像文件非法的告警模块105,所述告警模块105与所述第一判断模块103连接。在本实施例中,第一校验阈值可设置为0,即所述软件升级镜像文件的校验值大于0,则表示所述软件升级镜像文件是合法的,也就是说该软件升级镜像文件是针对所述路由设备而编译的。所述软件升级镜像文件的校验值不大于0时,表示所述软件升级镜像文件是非法的,也就是说该软件升级镜像文件并非是针对所述路由设备而编译的。
与所述第一判断模块103连接的所述第二判断模块104用于判断确定所述软件升级镜像文件为合法的校验值是否大于等于第二校验阈值以确定该软件升级镜像文件是否为与用户需要升级的嵌入式软件文件对应的软件升级镜像文件,即本实施例中,用户需要升级的嵌入式软件文件为蓝牙软件文件,与所述蓝牙软件文件相对应的软件升级镜像文件为蓝牙软件升级镜像文件,若确定所述软件升级镜像文件为合法的校验值大于等于第二校验阈值或小于第二校验阈值,则调用所述读写模块106将所述软件升级镜像文件写相应的分区或整个内存区。在本实施例中,所述第二校验阈值可设置为2。所述读写模块106与所述第二判断模块104连接。
所述第二判断模块104若确定所述软件升级镜像文件为合法的校验值大于等于第二校验阈值时,则将擦除与所述用户需要升级的嵌入式软件文件相对应的分区,并调用所述读写模块106将与所述用户需要升级的嵌入式软件文件相对应的软件升级镜像文件写入与所述用户需要升级的嵌入式软件文件对应的分区,换句话说就是,若所述蓝牙软件升级镜像文件为与用户需要升级的嵌入式软件文件相对应的蓝牙软件升级镜像文件时,调用所述管理函数(ioctl函数)以便将所述软件升级镜像文件传送至所述内核底层,通过所述读写模块106调用所述读写函数将所述软件升级镜像文件写入与所述用户需要升级的嵌入式软件文件对应的分区。在本实施例中,所述路由设备重启的过程中,将与所述用户需要升级的嵌入式软件文件对应的分区制作成可读写的软件升级镜像文件挂载在根目录下的media目录下以实现路由设备在关机重启后仍然保存着蓝牙运行过程中生成的配置文件和配对设备生成的配对列表。
所述第二判断模块104若确定所述软件升级镜像文件不为与用户需要升级的嵌入式软件文件相对应的软件升级镜像文件,即该软件升级镜像文件为所述路由设备整体升级文件时,调用所述管理函数(ioctl函数)以便将与所述路由设备整体升级文件相对应的所述软件升级镜像文件传送至所述内核底层,通过所述读写模块106调用所述读写函数将与所述路由设备整体升级文件相对应的所述软件升级镜像文件写入内存区。
本发明所述的软件升级方法及系统从用户角度讲具有以下优点:
1)操作简洁;该过程中仅需要鼠标操作就行了,跟正常升级整个路由器操作无二。不需要拥有专业技术,只要选择要升级的文件,然后点击升级按钮即可。
2)不需要额外的设备;该过程中仅确保能够从网络上下载下要升级的文件即可,不需要其他的设备。
从研发人员角度将具有有以下好处:
1)避免底层操作;整个过程中只需要按照原先已有的升级整个系统的流程的上层应用中添加一个magic判断,根据magic不同修改管理函数传向内核底层的变量值即可。
2)避免了调试蓝牙功能需要升级整个系统;节省了大量时间。
3)可实现对独立模块单独升级。
所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。

Claims (10)

1.一种软件升级方法,应用于包括若干嵌入式软件文件的终端设备,其特征在于,在所述终端设备中设置用以存储所述嵌入式软件文件的内存区,并将所述内存区按照所述软件的功能划分成若干个分区;所述嵌入式软件文件包括上层应用层和内核底层,所述上层应用层包括主函数,所述内核底层包括管理函数和读写函数;所述软件升级方法包括:
将预先编译好的软件升级源代码打包成与所述软件升级源代码对应的软件升级镜像文件,并在所述软件升级镜像文件的头部加入一校验值;
识别所述软件升级镜像文件;
判断所述软件升级镜像文件的校验值是否大于一第一校验阈值以确定所述软件升级镜像文件的合法性,若是,则表示所述软件升级镜像文件合法,继续执行下一步骤;若否,则表示所述软件升级镜像文件非法,提示用户所述软件升级镜像文件非法;
判断确定所述软件升级镜像文件为合法的校验值是否大于等于一第二校验阈值以确定所述软件升级镜像文件是否为与用户需要升级的嵌入式软件文件相对应的软件升级镜像文件,其中,所述第二校验阈值大于所述第一校验阈值,若被判别为软件升级镜像文件为合法的校验值大于等于第二校验阈值,则将与所述用户需要升级的嵌入式软件文件相对应的软件升级镜像文件写入与所述用户需要升级的嵌入式软件文件对应的分区。
2.根据权利要求1所述的软件升级方法,其特征在于:若确定所述软件升级镜像文件为合法的校验值小于第二校验阈值,则将所述软件升级镜像文件写入所述内存区。
3.根据权利要求1所述的软件升级方法,其特征在于:所述软件升级方法还包括将所述软件升级镜像文件传递至所述上层应用层。
4.根据权利要求3所述的软件升级方法,其特征在于:将所述软件升级镜像文件传递至所述上层应用层的主函数,通过调用所述主函数识别所述软件升级镜像文件中的所述校验值。
5.根据权利要求1所述的软件升级方法,其特征在于:判断确定所述软件升级镜像文件为合法的校验值是否大于等于所述第二校验阈值以确定所述软件升级镜像文件是否为与用户需要升级的嵌入式软件文件相对应的软件升级镜像文件的步骤中还包括:若所述软件升级镜像文件为与用户需要升级的嵌入式软件文件相对应的软件升级镜像文件时,调用所述管理函数以便将所述软件升级镜像文件传送至所述内核底层,调用所述读写函数将所述软件升级镜像文件写入与所述用户需要升级的嵌入式软件文件对应的分区。
6.根据权利要求5所述的软件升级方法,其特征在于:判断确定所述软件升级镜像文件为合法的校验值是否大于等于所述第二校验阈值以确定所述软件升级镜像文件是否为与用户需要升级的嵌入式软件文件相对应的软件升级镜像文件的步骤中还包括:若所述软件升级镜像文件不为与用户需要升级的嵌入式软件文件相对应的软件升级镜像文件,则为终端设备整体升级文件,调用所述管理函数以便将与所述终端设备整体升级文件相对应的所述软件升级镜像文件传送至所述内核底层,调用所述读写函数将与所述终端设备整体升级文件相对应的所述软件升级镜像文件写入内存区。
7.一种软件升级系统,其特征在于,应用于包括若干嵌入式软件文件的终端设备,其特征在于,在所述终端设备中设置用以存储所述嵌入式软件文件的内存区,并将所述内存区按照所述软件的功能划分成若干个分区;所述嵌入式软件文件包括上层应用层和内核底层,所述上层应用层包括主函数,所述内核底层包括管理函数和读写函数;所述软件升级系统包括:
封装模块,用于将预先编译好的软件升级源代码打包成与所述软件升级源代码对应的软件升级镜像文件,并在所述软件升级镜像文件的头部加入一校验值;
识别模块,用于识别所述软件升级镜像文件;
第一判断模块,用于判断所述软件升级镜像文件的校验值是否大于一第一校验阈值以确定所述软件升级镜像文件的合法性,若是,则表示所述软件升级镜像文件合法;若否,则表示所述软件升级镜像文件非法,提示用户所述软件升级镜像文件非法;
第二判断模块,用于在所述第一判断模块判断所述软件升级镜像文件合法时,判断确定所述软件升级镜像文件为合法的校验值是否大于等于一第二校验阈值以确定所述软件升级镜像文件是否为与用户需要升级的嵌入式软件文件相对应的软件升级镜像文件,其中,所述第二校验阈值大于所述第一校验阈值,若被判别为软件升级镜像文件为合法的校验值大于第二校验阈值,则调用一读写模块将与所述用户需要升级的嵌入式软件文件相对应的软件升级镜像文件写入与所述用户需要升级的嵌入式软件文件对应的分区。
8.根据权利要求7所述的软件升级系统,其特征在于:所述第二判断模块还用于若确定所述软件升级镜像文件为合法的校验值小于第二校验阈值,则调用所述读写模块将所述软件升级镜像文件写入所述内存区。
9.根据权利要求7所述的软件升级系统,其特征在于:所述第二判断模块还用于在判断确定所述软件升级镜像文件为合法的校验值是否大于第二校验阈值以确定所述软件升级镜像文件是否为与用户需要升级的嵌入式软件文件相对应的软件升级镜像文件时,若所述软件升级镜像文件为与用户需要升级的嵌入式软件文件相对应的软件升级镜像文件时,调用所述管理函数以便将所述软件升级镜像文件传送至所述内核底层,通过所述读写模块调用所述读写函数将所述软件升级镜像文件写入与所述用户需要升级的嵌入式软件文件对应的分区。
10.根据权利要求9所述的软件升级系统,其特征在于:所述第二判断模块还用于在判断确定所述软件升级镜像文件为合法的校验值是否大于等于第二校验阈值以确定所述软件升级镜像文件是否为与用户需要升级的嵌入式软件文件相对应的软件升级镜像文件时,若所述软件升级镜像文件不为与用户需要升级的嵌入式软件文件相对应的软件升级镜像文件,则为终端设备整体升级文件,调用所述管理函数以便将与所述终端设备整体升级文件相对应的所述软件升级镜像文件传送至所述内核底层,通过所述读写模块调用所述读写函数将与所述终端设备整体升级文件相对应的所述软件升级镜像文件写入内存区。
CN201410612142.3A 2014-11-04 2014-11-04 一种软件升级方法及系统 Active CN104298532B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410612142.3A CN104298532B (zh) 2014-11-04 2014-11-04 一种软件升级方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410612142.3A CN104298532B (zh) 2014-11-04 2014-11-04 一种软件升级方法及系统

Publications (2)

Publication Number Publication Date
CN104298532A true CN104298532A (zh) 2015-01-21
CN104298532B CN104298532B (zh) 2018-05-01

Family

ID=52318272

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410612142.3A Active CN104298532B (zh) 2014-11-04 2014-11-04 一种软件升级方法及系统

Country Status (1)

Country Link
CN (1) CN104298532B (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104730993A (zh) * 2015-03-24 2015-06-24 深圳市金正方科技股份有限公司 智能仪表分区升级方法及智能仪表
CN106227571A (zh) * 2016-08-25 2016-12-14 维沃移动通信有限公司 系统升级方法及其移动终端
CN106293790A (zh) * 2015-05-28 2017-01-04 Tcl集团股份有限公司 基于Firefox操作系统的应用程序升级方法和装置
CN107465709A (zh) * 2016-06-03 2017-12-12 阿里巴巴集团控股有限公司 分布式镜像构建任务方法及装置、系统
CN107608699A (zh) * 2017-10-17 2018-01-19 安徽皖通邮电股份有限公司 一种基于魔术分区的细粒度软件版本升级方法
CN109802705A (zh) * 2019-01-31 2019-05-24 慧翰微电子股份有限公司 基于bt5的汽车或工业用数据传输系统
CN110932891A (zh) * 2019-11-21 2020-03-27 广州邦讯信息系统有限公司 防出错ota升级方法、装置、计算机设备及存储介质
CN111552479A (zh) * 2020-05-06 2020-08-18 湖南国科微电子股份有限公司 镜像文件编译方法、装置和电子设备
CN112346771A (zh) * 2019-08-07 2021-02-09 杭州海康威视数字技术股份有限公司 升级文件生成方法及装置
CN112836230A (zh) * 2021-03-02 2021-05-25 北京睿芯高通量科技有限公司 一种工业路由器中的镜像加密方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101299190A (zh) * 2008-06-30 2008-11-05 深圳市同洲电子股份有限公司 一种只读文件系统下的软件升级方法、系统及嵌入式设备
CN101425018A (zh) * 2008-12-05 2009-05-06 深圳创维数字技术股份有限公司 基于分段式的嵌入式固件升级方法及装置
CN101477471A (zh) * 2009-01-07 2009-07-08 杭州海康威视数字技术股份有限公司 一种嵌入式系统固件在线升级方法
CN102043634A (zh) * 2009-10-23 2011-05-04 康佳集团股份有限公司 一种嵌入式系统和嵌入式软件升级方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101299190A (zh) * 2008-06-30 2008-11-05 深圳市同洲电子股份有限公司 一种只读文件系统下的软件升级方法、系统及嵌入式设备
CN101425018A (zh) * 2008-12-05 2009-05-06 深圳创维数字技术股份有限公司 基于分段式的嵌入式固件升级方法及装置
CN101477471A (zh) * 2009-01-07 2009-07-08 杭州海康威视数字技术股份有限公司 一种嵌入式系统固件在线升级方法
CN102043634A (zh) * 2009-10-23 2011-05-04 康佳集团股份有限公司 一种嵌入式系统和嵌入式软件升级方法

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104730993A (zh) * 2015-03-24 2015-06-24 深圳市金正方科技股份有限公司 智能仪表分区升级方法及智能仪表
CN106293790B (zh) * 2015-05-28 2019-12-13 Tcl集团股份有限公司 基于Firefox操作系统的应用程序升级方法和装置
CN106293790A (zh) * 2015-05-28 2017-01-04 Tcl集团股份有限公司 基于Firefox操作系统的应用程序升级方法和装置
CN107465709A (zh) * 2016-06-03 2017-12-12 阿里巴巴集团控股有限公司 分布式镜像构建任务方法及装置、系统
CN106227571A (zh) * 2016-08-25 2016-12-14 维沃移动通信有限公司 系统升级方法及其移动终端
CN107608699A (zh) * 2017-10-17 2018-01-19 安徽皖通邮电股份有限公司 一种基于魔术分区的细粒度软件版本升级方法
CN107608699B (zh) * 2017-10-17 2020-09-08 安徽皖通邮电股份有限公司 一种基于魔术分区的细粒度软件版本升级方法
CN109802705A (zh) * 2019-01-31 2019-05-24 慧翰微电子股份有限公司 基于bt5的汽车或工业用数据传输系统
CN112346771A (zh) * 2019-08-07 2021-02-09 杭州海康威视数字技术股份有限公司 升级文件生成方法及装置
CN112346771B (zh) * 2019-08-07 2024-05-31 杭州海康威视数字技术股份有限公司 升级文件生成方法及装置
CN110932891A (zh) * 2019-11-21 2020-03-27 广州邦讯信息系统有限公司 防出错ota升级方法、装置、计算机设备及存储介质
CN111552479A (zh) * 2020-05-06 2020-08-18 湖南国科微电子股份有限公司 镜像文件编译方法、装置和电子设备
CN112836230A (zh) * 2021-03-02 2021-05-25 北京睿芯高通量科技有限公司 一种工业路由器中的镜像加密方法及系统
CN112836230B (zh) * 2021-03-02 2024-05-03 北京中科通量科技有限公司 一种工业路由器中的镜像加密方法及系统

Also Published As

Publication number Publication date
CN104298532B (zh) 2018-05-01

Similar Documents

Publication Publication Date Title
CN104298532A (zh) 一种软件升级方法及系统
CN107632828B (zh) 多dts文件支持方法、编译装置及嵌入式设备
CN104252342B (zh) 一种可配置参数的嵌入式应用实现方法及装置
CN108376073B (zh) 一种测试软件包生成方法及终端
KR20180054805A (ko) 단말기 애플리케이션을 로딩하기 위한 방법 및 장치
CN106325847B (zh) 基于iOS平台获取应用程序功能的方法和装置
CN105335181A (zh) 一种实现ota升级的方法和终端
CN108647032B (zh) 应用加载方法及装置、计算机装置和计算机可读存储介质
CN105680934A (zh) 用于执行通信的设备及其方法
CN106796521B (zh) 独立于产品发布的api版本控制
CN105141686A (zh) 一种实现蓝牙通信的方法及装置
CN109582377A (zh) Bios选项修改方法、装置、设备及存储介质
CN105354065A (zh) 一种多产品软件升级方法及终端
CN110837391B (zh) 应用程序的热更新方法及装置、存储介质及电子设备
CN113672224A (zh) 小程序页面代码生成方法、装置及计算机设备
CN113504918A (zh) 设备树配置优化方法、装置、计算机设备和存储介质
CN104731626B (zh) 应用的安装方法及装置
CN106293790B (zh) 基于Firefox操作系统的应用程序升级方法和装置
CN109002305A (zh) 一种设备程序的更新方法及其系统
CN113031996A (zh) 一种电子设备的ota升级方法、装置、控制终端及介质
CN111290740B (zh) 应用程序的开发方法、装置、计算机设备和存储介质
CN108664389B (zh) 一种测试方法、装置及终端
CN106775916B (zh) 减小应用安装包的方法、装置及电子设备
CN106527979B (zh) 数据迁移方法及装置
CN110192178A (zh) 程序打补丁的方法、装置、微控制单元和终端设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20201214

Address after: 313028 Industrial Park, balidian Town, Huzhou City, Zhejiang Province

Patentee after: HUZHOU FENGYUAN AGRICULTURAL EQUIPMENT MANUFACTURE Co.,Ltd.

Address before: 201616 No. 3666 Sixian Road, Songjiang District, Shanghai

Patentee before: Phicomm (Shanghai) Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20211213

Address after: Room a309, Qilu Software Park building, 1768 Xinluo street, high tech Zone, Jinan City, Shandong Province

Patentee after: Shandong torch Technology Service Co.,Ltd.

Address before: 313028 Industrial Park, balidian Town, Huzhou City, Zhejiang Province

Patentee before: HUZHOU FENGYUAN AGRICULTURAL EQUIPMENT MANUFACTURE Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20211229

Address after: Floor 1, building 2, Qilu Software Park, No.1 Shunhua Road, high tech Zone, Jinan City, Shandong Province

Patentee after: PANSOFT Co.,Ltd.

Address before: Room a309, Qilu Software Park building, 1768 Xinluo street, high tech Zone, Jinan City, Shandong Province

Patentee before: Shandong torch Technology Service Co.,Ltd.