CN109324810A - 物联网设备升级包的制作方法及系统 - Google Patents
物联网设备升级包的制作方法及系统 Download PDFInfo
- Publication number
- CN109324810A CN109324810A CN201710617296.5A CN201710617296A CN109324810A CN 109324810 A CN109324810 A CN 109324810A CN 201710617296 A CN201710617296 A CN 201710617296A CN 109324810 A CN109324810 A CN 109324810A
- Authority
- CN
- China
- Prior art keywords
- difference
- upgrade package
- internet
- things equipment
- parameter item
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明涉及一种物联网设备升级包的制作方法,包括:读取并设定配置参数项,并将所述配置参数项通过排列组合方式写入配置文件;从所述配置文件中读取各组所述配置参数项数据;基于所述各配置参数项数据,生成多组差分升级包,从中找出升级步骤较少的差分包作为设备正式软件升级包。本发明的物联网设备升级包的制作方法可提高设备升级成功率、避免研发人员对差分算法二次开发及重新编译差分制作工具以节约人力和时间成本、且可缩短设备升级时间以降低功耗。本发明还涉及一种物联网设备升级包的制作系统。
Description
技术领域
本发明涉及物联网通讯技术领域,特别涉及一种物联网设备升级包的制作方法及系统。
背景技术
物联网终端设备上市销售后,为解决使用过程中出现的软件问题,对设备软件功能进行提升,设备厂商会针对此设备进行软件升级操作。
当前设备升级通常采用差分升级方式,差分升级包中包含操作代码,地址偏移,版本差异内容。设备在获取到差分包后按照差分包内操作代码步骤对源版本进行地址偏移,达到版本升级目的。但源版本在进行差异内容搬移时对内存需求较大,物联网设备无法满足,通常只能通过修改差分包算法调整对内存的需求,这样就需要修改源码并重新编译,花费大量人力及时间成本。另一方面,因差分算法固定,生成的差分包唯一,升级过程不一定是最短路径,从而增加了设备升级时间,影响了设备功耗。
发明内容
为了解决现有技术存在的不足,本发明的目的在于提供一种物联网设备升级包的制作方法及系统,其可提高设备升级成功率、避免研发人员对差分算法二次开发及重新编译差分制作工具以节约人力和时间成本、且可缩短设备升级时间以降低功耗。
为实现上述目的,本发明提供一种物联网设备升级包的制作方法,其包括:
读取并设定配置参数项,并将所述配置参数项通过排列组合方式写入配置文件;
从所述配置文件中读取各组所述配置参数项数据;
基于所述各配置参数项数据,生成多组差分升级包,从中找出升级步骤较少的差分包作为设备正式软件升级包。
进一步地,所述配置参数项包括可用内存空间数据、一次可写入数据尺寸及版本分块差分尺寸。
进一步地,所述可用内存空间数据从设备运行后剩余的可用空间值中获得。
进一步地,所述一次可写入的数据尺寸参数值可根据物联网设备flash页的尺寸获得。
进一步地,所述版本分块差分尺寸不超过可用内存空间尺寸。
本发明还提供一种物联网设备升级包的制作系统,其包括:
差分算法参数调整模块,其读取并设定配置参数项,并将其通过排列组合方式写入配置文件;
参数项数据读取模块,其读取所述配置文件中写入的所述参数项数据;以及
差分包制作模块,其基于所述参数项数据读取模块读取的所述参数项数据,执行差分算法以生成差分升级包,记录差分升级所需执行的步骤数,并从若干组差分包中选取差分升级所需执行步骤最少的差分升级包作为设备正式软件升级包发布。
进一步地,所述配置参数项包括可用内存空间数据、一次可写入数据尺寸、及版本分块差分尺寸。
相对于现有技术,本发明的物联网设备升级包的制作方法及系统中,可将物联网设备的可用内存空间、一次可写入数据尺寸、版本分块差分尺寸作为参数值,写入配置文件,差分包制作过程中从配置文件中读取每组配置项参数值,按该参数要求生成多组升级差分包,从中找出升级步骤较少(即升级过程路径最短)的差分包,从而缩短物联网设备实际升级过程的时间,有利于降低功耗;同时,可生成适合较小内存的物联网设备差分升级包,使用该升级差分包还可以避免物联网设备升级过程中因内存不足而导致的升级失败,提高设备升级成功率,进而避免研发人员对差分算法进行二次开发及重新编译差分包制作工具,以节约人力和时间成本。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,并与本发明的实施例一起,用于解释本发明,并不构成对本发明的限制。在附图中:
图1为本发明的差分包升级原理的示意图;
图2为本发明的物联网设备升级包的制作方法的流程示意图;
图3为本发明的差分算法参数调整过程的流程示意图;
图4为本发明的差分包制作过程的流程示意图;
图5为本发明的物联网设备升级包的制作系统的示意图。
具体实施方式
以下将结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
本发明一实施例提供一种物联网设备升级包的制作方法,该方法基于本发明的差分包升级原理而实施,图1为本发明的差分包升级原理的示意图,如图1所示,该源版本基于差分包进行升级的原理为:源版本通过对目标版本相同数据进行地址偏移和差分包中新增数据进行写入,以最终实现升级到目标版本。其中,数据地址偏移如图1中mov1,mov2,mov3和mov4操作;新增数据写入如图1中add1,add2和add3操作。在本发明的差分包升级原理中,将版本分成源版本ver part1和源版本ver part2两部分以分别进行差分,升级时仅需将源版本ver part1和源版本ver part2依次读入内存进行升级,从而减少升级时对设备内存的消耗。应理解,mov2和mov3是移动相邻两块数据到相邻地址,由于flash一次写入块尺寸限制产生了此类现象,可通过修改一次写入数据尺寸实现操作合并,从而减少升级步骤,如图1中虚线箭头搬移操作;同样地,add1和add2也可实现步骤合并。
基于本发明的上述差分包升级原理,本发明的物联网设备升级包的制作方法包括差分算法参数调整和差分包制作两个过程,图2为本发明的物联网设备升级包的制作方法的流程示意图,如图2所示,该物联网设备升级包的制作方法包括以下步骤:
步骤S201,将配置参数项写入配置文件。
将配置参数项写入配置文件的过程即为差分算法参数调整过程,其为读取并设定配置参数项,并将配置参数项通过排列组合方式写入配置文件的过程。其中,配置参数项包括可用内存空间数据、一次可写入数据尺寸及版本分块差分尺寸。图3为本发明的差分算法参数调整过程的流程示意图,如图3所示,具体地,该差分算法参数调整包括以下步骤:
步骤S301:读取并设定可用内存空间数据。
应理解,制作差分包时对差分数据执行所消耗内存进行限定,可用内存空间参数值可从设备运行后剩余的可用空间值中获得。通常情况下,该参数取值不能超出设备的可用物理内存空间的尺寸。
步骤S302:读取并设定一次可写入数据尺寸。
差分算法可在数据尺寸范围内最大化执行(移动,新增)差分数据。一次可写入的数据尺寸参数值可以根据设备flash页的尺寸获得,通常取值512字节,1024字节等,如果超出页尺寸则该参数值将失去取值意义。
步骤S303:读取并设定版本分块差分尺寸。
应理解,将版本按该尺寸分块进行读取差分可减少升级过程的内存消耗。版本分块差分尺寸可参照可用内存空间尺寸设定,通常每块尺寸不超过可用内存空间尺寸。
步骤S304:将以上可用内存空间数据、一次可写入数据尺寸及版本分块差分尺寸通过排列组合方式写入配置文件。
差分包制作过程为:从配置文件中读取并设备各组配置参数项数据(步骤S202);基于各配置参数项数据,执行差分算法生成多组差分升级包(步骤S203);记录升级过程所需执行步骤数量(步骤S204);选取执行步骤最少的差分升级包(步骤S205);将选取的差分升级包作为设备正式软件升级包发布(步骤S206)。
图4为本发明的差分包制作过程的流程示意图,如图4所示,具体地,该差分包制作包括以下步骤:
步骤S401:判断配置文件中是否存在未读取参数项组;如果存在,从配置文件中读取一组参数数据,转入步骤S402;如果不存在,转入步骤S407。
步骤S402-S404:读取可用内存空间、可写入数据尺寸、版本分块差分尺寸等参数项数据并设定。
其中,读取的可用内存空间、可写入数据尺寸、版本分块差分尺寸等参数项数据为上述差分算法参数调整过程写入配置文件的数据。
步骤S405:执行差分算法以生成差分升级包。
步骤S406:记录差分升级所需执行的步骤数,转入步骤S401。
步骤S407:从若干组差分包中选取差分升级所需执行步骤最少的差分升级包作为设备软件升级包。
步骤S408:发布物联网设备正式软件升级包。
基于上述物联网设备升级包的制作方法的实施,本发明一实施例提供一种物联网设备升级包的制作系统50。图5为本发明的物联网设备升级包的制作系统的示意图,如图5所示,该物联网设备升级包的制作系统50包括差分算法参数调整模块510、参数项数据读取模块520、以及差分包制作模块530。
差分算法参数调整模块510用于读取并设定可用内存空间数据、一次可写入数据尺寸、及版本分块差分尺寸等配置参数项,并将以上配置参数项通过排列组合方式写入配置文件。
参数项数据读取模块520用于从配置文件中读取可用内存空间数据、一次可写入数据尺寸、及版本分块差分尺寸等配置参数项数据。
差分包制作模块530基于参数项数据读取模块520从配置文件中读取的可用内存空间数据、一次可写入数据尺寸、及版本分块差分尺寸等配置参数项数据,执行差分算法以生成差分升级包,记录差分升级所需执行的步骤数,并从若干组差分包中选取差分升级所需执行步骤最少的差分升级包作为设备正式软件升级包发布。
上述实施例的物联网设备升级包的制作方法及系统中,可将物联网设备的可用内存空间、一次可写入数据尺寸、版本分块差分尺寸作为参数值,写入配置文件,差分包制作过程中从配置文件中读取每组配置项参数值,按该参数要求生成多组升级差分包,从中找出升级步骤较少(即升级过程路径最短)的差分包,从而缩短物联网设备实际升级过程的时间,有利于降低功耗;同时,可生成适合较小内存的物联网设备差分升级包,使用该升级差分包还可以避免物联网设备升级过程中因内存不足而导致的升级失败,提高设备升级成功率,进而避免研发人员对差分算法进行二次开发及重新编译差分包制作工具,以节约人力和时间成本。
本领域普通技术人员可以理解:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种物联网设备升级包的制作方法,其特征在于,包括:
读取并设定配置参数项,并将所述配置参数项通过排列组合方式写入配置文件;
从所述配置文件中读取各组所述配置参数项数据;
基于所述各配置参数项数据,生成多组差分升级包,从中找出升级步骤较少的差分包作为设备正式软件升级包。
2.如权利要求1所述的物联网设备升级包的制作方法,其特征在于,所述配置参数项包括可用内存空间数据、一次可写入数据尺寸及版本分块差分尺寸。
3.如权利要求2所述的物联网设备升级包的制作方法,其特征在于,所述可用内存空间数据从设备运行后剩余的可用空间值中获得。
4.如权利要求2所述的物联网设备升级包的制作方法,其特征在于,所述一次可写入的数据尺寸参数值可根据物联网设备flash页的尺寸获得。
5.如权利要求2所述的物联网设备升级包的制作方法,其特征在于,所述版本分块差分尺寸不超过可用内存空间尺寸。
6.一种物联网设备升级包的制作系统,其特征在于,包括:
差分算法参数调整模块,其读取并设定配置参数项,并将其通过排列组合方式写入配置文件;
参数项数据读取模块,其读取所述配置文件中写入的所述参数项数据;以及
差分包制作模块,其基于所述参数项数据读取模块读取的所述参数项数据,执行差分算法以生成差分升级包,记录差分升级所需执行的步骤数,并从若干组差分包中选取差分升级所需执行步骤最少的差分升级包作为设备正式软件升级包发布。
7.如权利要求6所述的物联网设备升级包的制作系统,其特征在于,所述配置参数项包括可用内存空间数据、一次可写入数据尺寸、及版本分块差分尺寸。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710617296.5A CN109324810A (zh) | 2017-07-26 | 2017-07-26 | 物联网设备升级包的制作方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710617296.5A CN109324810A (zh) | 2017-07-26 | 2017-07-26 | 物联网设备升级包的制作方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109324810A true CN109324810A (zh) | 2019-02-12 |
Family
ID=65244641
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710617296.5A Withdrawn CN109324810A (zh) | 2017-07-26 | 2017-07-26 | 物联网设备升级包的制作方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109324810A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112398666A (zh) * | 2019-08-13 | 2021-02-23 | 中兴通讯股份有限公司 | 软件差分升级方法、装置、设备及存储介质 |
CN112732319A (zh) * | 2021-01-22 | 2021-04-30 | 百度在线网络技术(北京)有限公司 | 文件升级方法、装置、设备和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102132258A (zh) * | 2009-08-24 | 2011-07-20 | 日立系统解决方案有限公司 | 固件更新系统、信息设备以及程序 |
CN102693145A (zh) * | 2012-05-31 | 2012-09-26 | 红石阳光(北京)科技有限公司 | 用于嵌入式系统的差分升级方法 |
CN105700926A (zh) * | 2016-01-14 | 2016-06-22 | 青岛海信电器股份有限公司 | 差分升级包制作方法及装置、系统差分升级方法及装置 |
CN106250195A (zh) * | 2016-08-10 | 2016-12-21 | 青岛海信电器股份有限公司 | 更新系统文件的方法、设备及系统 |
CN106569843A (zh) * | 2015-10-12 | 2017-04-19 | 青岛海信移动通信技术股份有限公司 | 一种生成ota中间包的方法及装置 |
-
2017
- 2017-07-26 CN CN201710617296.5A patent/CN109324810A/zh not_active Withdrawn
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102132258A (zh) * | 2009-08-24 | 2011-07-20 | 日立系统解决方案有限公司 | 固件更新系统、信息设备以及程序 |
CN102693145A (zh) * | 2012-05-31 | 2012-09-26 | 红石阳光(北京)科技有限公司 | 用于嵌入式系统的差分升级方法 |
CN106569843A (zh) * | 2015-10-12 | 2017-04-19 | 青岛海信移动通信技术股份有限公司 | 一种生成ota中间包的方法及装置 |
CN105700926A (zh) * | 2016-01-14 | 2016-06-22 | 青岛海信电器股份有限公司 | 差分升级包制作方法及装置、系统差分升级方法及装置 |
CN106250195A (zh) * | 2016-08-10 | 2016-12-21 | 青岛海信电器股份有限公司 | 更新系统文件的方法、设备及系统 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112398666A (zh) * | 2019-08-13 | 2021-02-23 | 中兴通讯股份有限公司 | 软件差分升级方法、装置、设备及存储介质 |
CN112398666B (zh) * | 2019-08-13 | 2024-04-30 | 中兴通讯股份有限公司 | 软件差分升级方法、装置、设备及存储介质 |
CN112732319A (zh) * | 2021-01-22 | 2021-04-30 | 百度在线网络技术(北京)有限公司 | 文件升级方法、装置、设备和存储介质 |
CN112732319B (zh) * | 2021-01-22 | 2024-02-23 | 百度在线网络技术(北京)有限公司 | 文件升级方法、装置、设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102096639B (zh) | 用于修剪在非易失性闪速介质上的数据的方法 | |
JP2016164775A (ja) | フィールドデバイスコミッショニングシステムおよび方法 | |
CN105760184A (zh) | 一种加载组件的方法和装置 | |
CN105912350A (zh) | 一种兼容多款屏幕参数的软件适配方法和系统 | |
WO2016078263A1 (zh) | 升级控制设备、终端、终端升级方法及系统、存储介质 | |
CN105430118A (zh) | 一种mac地址生成方法及装置 | |
CN103177077A (zh) | 一种apk文件的存储及输出方法 | |
CN104391800B (zh) | 一种数据存储装置及存储方法 | |
CN109324810A (zh) | 物联网设备升级包的制作方法及系统 | |
CN103778964A (zh) | 一种NAND Flash烧写数据的处理、使用方法及装置、系统 | |
CN110727543A (zh) | 一种商用非对称密码算法硬件模块 | |
CN101909314A (zh) | 一种配置基站参数的方法和系统 | |
CN107704730A (zh) | 一种电子设备内嵌软件自加密方法 | |
CN102880497B (zh) | 一种编译器及软件管理存储器的重用优化方法 | |
CN108170459B (zh) | 软件升级方法、智能终端及具有存储功能的装置 | |
CN105335679A (zh) | 一种序列号的写入方法及装置 | |
CN104503776A (zh) | 一种在APP开发平台上快速打包android应用程序的方法 | |
CN102446102A (zh) | Acpi表远程更新系统及方法 | |
CN104394220A (zh) | 一种智能电网的升级方法和智能电网 | |
CN105139890A (zh) | 一种信息处理方法及固态硬盘 | |
CN105354107A (zh) | NOR Flash的数据传输方法及系统 | |
CN105550050A (zh) | 硬件通信的方法及装置 | |
CN105631505B (zh) | 一种支持java卡补丁函数的智能卡 | |
CN108345429A (zh) | 一种Nand flash元件 | |
TWI467578B (zh) | 錯誤處理方法、記憶體儲存裝置與記憶體控制電路單元 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20190212 |