[发明专利]一种多工程独立编译方法、系统、终端及介质在审
申请号: | 202011224312.2 | 申请日: | 2020-11-05 |
公开(公告)号: | CN112306540A | 公开(公告)日: | 2021-02-02 |
发明(设计)人: | 吴英;刘根利;翟渊;向毅;刘宇 | 申请(专利权)人: | 重庆科技学院 |
主分类号: | G06F8/658 | 分类号: | G06F8/658;G06F8/41;G06F16/35 |
代理公司: | 北京国坤专利代理事务所(普通合伙) 11491 | 代理人: | 赵红霞 |
地址: | 401331 重*** | 国省代码: | 重庆;50 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 工程 独立 编译 方法 系统 终端 介质 | ||
本发明公开了一种多工程独立编译方法,其技术方案要点是:根据程序分类将完整代码分成多个代码组,为每个代码组创建独立文件夹;根据独立文件夹为每个代码组创建一个工程,并将MCU内的FLASH存储空间分成与每个工程一一对应的存储空间块,并将每个工程编译后的源代码导入对应存储空间块进行存储;创建函数指针结构体,将函数指针结构体成员指向其它工程对应函数和变量的地址;每个工程所有对外接口函数和变量的地址存储在每个工程存储空间块的固定位置。通过对每个工程进行独立编译实现不同代码的分离,增量升级时,仅对指定部分进行更新升级,有效解决了差分算法在低成本MCU上应用弊端,提高了增量升级在低成本MCU上的实现效率。
技术领域
本发明涉及计算机程序编译技术领域,更具体地说,它涉及一种多工程独立编译方法、系统、终端及介质。
背景技术
随着物联网技术的快速发展,通过空中下载技术(OTA)来实现智能终端设备的系统升级,修复系统BUG、功能拓展逐渐成为智能终端的迫切需求。
目前,使用的远程升级技术主要有全量升级和基于差分原理的增量升级2种升级方式。其中,传统全量升级方法由于升级时通信数据量大、对通信可靠性要求高、数据量大导致通信时间长,增加了设备的通信功耗,降低了产品的工作时间、同时当企业百万级别甚至更多的设备数量升级,对服务器的压力和通信成本来说,都有一定的局限性。尤其是在类似燃气表、水表、热水表等智能终端中的功耗的要求更加严格,那么通过增量升级来实现系统更新就更加具有实际意义了。
现有的增量升级技术,普遍采用的是基于差分原理的增量升级,虽然这种方式能在一定程度上降低通信数据量、降低升级成本和功耗。但是依旧具有局限性,主要体现为不能很好的应用于低成本MCU上,原因是低成本MCU的运行内存RAM和存储容量ROM较小,支持差分算法存在一定的问题。同时查阅相关资料了解到基于差分原理的查分增量升级效率最高能达到%5左右,并且升级包越大(目前有的芯片有1M内存)、升级效率越高,然而对于低成本的MCU总共容量才100左右的程序代码量。通过差分算法实现的效率是有限的,同时随着压缩效率的增加,对硬件的消耗越多,对硬件的要求就越高。
因此,如何研究设计一种能够有效的解决目前差分算法在低成本MCU上应用弊端的技术是我们目前急需解决的问题。
发明内容
为解决现有基于差分原理的增量升级不能很好的应用于低成本MCU上,其实现效率有限的的问题,本发明的目的是提供一种多工程独立编译方法、系统、终端及介质。
本发明的上述技术目的是通过以下技术方案得以实现的:
第一方面,提供了一种多工程独立编译方法,包括以下步骤:
源码分解:根据程序分类将完整代码分成多个代码组,为每个代码组创建独立文件夹;
工程创建:根据创建的独立文件夹为每个代码组创建一个工程,并将MCU内的FLASH存储空间分成与每个工程一一对应的存储空间块,并将每个工程编译后的源代码导入对应存储空间块进行存储;
工程关联:根据对应工程没有其它工程中的函数和变量的访问地址创建函数指针结构体,将函数指针结构体成员指向其它工程对应函数和变量的地址;每个工程所有对外接口函数和变量的地址按照顺序存储在每个工程存储空间块的固定位置,通过操作地址变量完成不同工程之间的函数调用和变量访问,以及完成不同工程中源代码的更新升级。
优选的,所述完整代码可根据驱动程序、操作系统程序、应用功能程序以及其它特殊分类要求进行分类来得到不同的代码组。
优选的,所述独立文件夹内按照预定规律创建子文件夹,子文件夹存储不同的模块代码。
优选的,所述FLASH存储空间分成一个固件工程存储空间块以及多个APP工程存储空间块。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于重庆科技学院,未经重庆科技学院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011224312.2/2.html,转载请声明来源钻瓜专利网。