分区配比编译适配方法组成比例

技术编号:11244756 阅读:73 留言:0更新日期:2015-04-01 18:10
本发明专利技术揭示了一种分区配比编译适配方法,包括:判断资源分区配比是否不足够;若不足够则转至步骤S3,否则转至步骤S5;步骤S3.编译报错,判断报错内存需要的空间大小;根据文件大小以及最佳配比算法计算出篡改方案,篡改内存分区配比参数;步骤S4.跳过不必要编译代码,重新编译分区相关编译步骤;步骤S5.编译完成;判断是否需要自适应最佳配比方案;若需要则获取存放文件大小,根据文件大小以及最佳配比算法计算出篡改方案,篡改内存分区配比参数;跳过不必要编译代码,重新编译分区相关编译步骤。本发明专利技术可根据客户出厂版本预置在手机内的资源不同,自适应选择最佳的配比分区大小,在手机刷机时,进行自适应分区配置。

【技术实现步骤摘要】
分区配比编译适配方法
本专利技术属于手机
,涉及一种分区方法,尤其涉及一种分区配比编译适配方法。
技术介绍
当前智能机发展很膨胀,客户项目愈发繁多,每个客户都希望自己的手机内存尽量大,而通常客户所理解的内存一直是硬件配置的内存,并没有预留给手机操作系统等存放的空间,而目前代码编译刷机包中的内存分区配置,都是提前划出,在手机下载时就已经规划确定了,后期无法调整,除非重新刷机。而配置的这个分区,都是由工程师自行提前设置的,而不同的客户放置在系统区的文件可能会不同,统一的提前分区并不合理。有鉴于此,如今迫切需要设计一种新的分区方式,以便克服现有分区方式的上述缺陷。
技术实现思路
本专利技术所要解决的技术问题是:提供一种分区配比编译适配方法,可根据客户出厂版本预置在手机内的资源不同,自适应选择最佳的配比分区大小,在手机刷机时,进行自适应分区配置。为解决上述技术问题,本专利技术采用如下技术方案:一种分区配比编译适配方法,所述方法包括:步骤S1、开始正常编译;步骤S2、判断资源分区配比是否不足够;若不足够则转至步骤S3,否则转至步骤S5;步骤S3、编译报错,判断报错内存需要的空间大小;根据文件大小以及最佳配比算法计算出篡改方案,篡改内存分区配比参数;所述最佳配比是指根据不同的平台,计算出来的经验值,转换公式,包括预留一定空间给系统升级,预留一定空间给代码运行,预留一定flash块空间留给版本;通过给定一个较大的打包镜像空间,来将镜像文件打包出来,获取镜像文件大小,然后再将此大小转换为在内存空间分布需要的大小;即:获取镜像文件大小,转换为byte,加上10M预留给OTA升级的空间,配置进去即可;步骤S4、跳过不必要编译代码,重新编译分区相关编译步骤;转至步骤S9;步骤S5、编译完成;判断是否需要自适应最佳配比方案;若需要则转至步骤S6,否则转至步骤S9;步骤S6、获取存放文件大小;步骤S7、根据文件大小以及最佳配比算法计算出篡改方案,篡改内存分区配比参数;步骤S8、跳过不必要编译代码,重新编译分区相关编译步骤;转至步骤S9;步骤S9、生成版本。一种分区配比编译适配方法,所述方法包括:步骤S1、开始正常编译;步骤S2、判断资源分区配比是否不足够;若不足够则转至步骤S3,否则转至步骤S5;步骤S3、编译报错,判断报错内存需要的空间大小;根据文件大小以及最佳配比算法计算出篡改方案,篡改内存分区配比参数;步骤S4、跳过不必要编译代码,重新编译分区相关编译步骤;转至步骤S9;步骤S5、编译完成;判断是否需要自适应最佳配比方案;若需要则转至步骤S6,否则转至步骤S9;步骤S6、获取存放文件大小;步骤S7、根据文件大小以及最佳配比算法计算出篡改方案,篡改内存分区配比参数;步骤S8、跳过不必要编译代码,重新编译分区相关编译步骤;转至步骤S9;步骤S9、生成版本。作为本专利技术的一种优选方案,步骤S3中,所述最佳配比是指根据不同的平台,计算出来的经验值,转换公式,包括预留一定空间给系统升级,预留一定空间给代码运行,预留一定flash块空间留给版本。作为本专利技术的一种优选方案,步骤S3中,通过给定一个较大的打包镜像空间,来将镜像文件打包出来,获取镜像文件大小,然后再将此大小转换为在内存空间分布需要的大小;即:获取镜像文件大小,转换为byte,加上10M预留给OTA升级的空间,配置进去即可。本专利技术揭示的最佳分区配比的编译适配方法,包含二次编译,以确保计算出来的最佳配比更好的切合到编译结果。所述自行篡改的编译脚本是指省略掉与内存分区无关的一些编译占用时间,如编译环境监测,编译客户资源卷出等等,节约时间。所述编译脚本是由makefile文件组成,使用shell脚本进行配合。所述根据生成的需要烧录到手机内的文件大小,文件大小使用linux环境下的环境命令来列出相应的文件大小。所述编译出文件大小,文件的搜索方式是根据烧录表格(scatter.txt),进行文件匹配捕捉的。为了加快编译速度,使用了ccache(预存池)的编译方式,第一遍编译将.h文件的导入进行了备份。为了加快二次性编译速度,对编译总比较耗时的对文件的搜索,等动作可以备份的,在第一编译进行了备份便于二次编译直接使用。本专利技术的有益效果在于:本专利技术提出的分区配比编译适配方法,可根据客户出厂版本预置在手机内的资源不同,自适应选择最佳的配比分区大小,在手机刷机时,进行自适应分区配置。附图说明图1为本专利技术分区配比编译适配方法的流程图。具体实施方式下面结合附图详细说明本专利技术的优选实施例。实施例一本专利技术揭示了一种分区配比编译适配方法,通过编译脚本控制调整代码编译机制,来达到自适应不同客户需求预置资源的,最佳空间配比方案,首先开始正常编译,按照通用的编译方法进行版本代码编译。请参阅图1,所述分区配比编译适配方法包括如下步骤:步骤S1、开始正常编译;步骤S2、判断资源分区配比是否不足够;若不足够则转至步骤S3,否则转至步骤S5;步骤S3、编译报错,判断报错内存需要的空间大小;根据文件大小以及最佳配比算法计算出篡改方案,篡改内存分区配比参数;所述最佳配比是指根据不同的平台,计算出来的经验值,转换公式,包括预留一定空间给系统升级,预留一定空间给代码运行,预留一定flash块空间留给版本。本实施例中,通过给定一个较大的打包镜像空间,来将镜像文件打包出来,获取镜像文件大小,然后再将此大小转换为在内存空间分布需要的大小;即:获取镜像文件大小,转换为byte,加上10M预留给OTA升级的空间,配置进去即可。步骤S4、跳过不必要编译代码,重新编译分区相关编译步骤;转至步骤S9;步骤S5、编译完成;判断是否需要自适应最佳配比方案;若需要则转至步骤S6,否则转至步骤S9;步骤S6、获取存放文件大小;步骤S7、根据文件大小以及最佳配比算法计算出篡改方案,篡改内存分区配比参数;步骤S8、跳过不必要编译代码,重新编译分区相关编译步骤;转至步骤S9;步骤S9、生成版本。实施例二本专利技术通过编译脚本控制调整代码编译机制,来达到自适应不同客户需求预置资源的,最佳空间配比方案,首先开始正常编译,按照通用的编译方法进行版本代码编译。其次,在编译过程中出现的三种情况分别做了对应的处理,第一种情况,编译报错,资源不够的错误,在记录日志(android.log)中可以搜寻到关键字leb_cnttoolow(1024(256M)need)(内存块不够,需要1024个块同256M空间),根据此数据修改,内存分区配比表中的配比为256,然后使用自行篡改的编译脚本,省略不必要的与内存分区无关的编译步骤脚本进行编译,加快二次编译速度。第二种情况,就是编译通过,但是在判断是否需要自适应配比内存最佳分区时,客户选择的是不需要,则直接结束,生成版本。第三种情况,是关键之处,即使在编译通过的情况下,仍然需要对编译的结果,进行一次check,check是否是最佳的内存分区状态,若不是,则根据生成的需要烧录到手机内的文件大小,进行适配大小计算,修改分区表中的配比为相应的最佳配比,进行二次型编译,同样适用省略与分区无关的编译。实施例三本实施例与实施例一的区别在于,本实施例中,步骤S3中,使用的是MTK平台,经验公式是,预留空间给系统升级10M,代码运行空间是指dat本文档来自技高网...
分区配比编译适配方法

【技术保护点】
一种分区配比编译适配方法,其特征在于,所述方法包括:步骤S1、开始正常编译;步骤S2、判断资源分区配比是否不足够;若不足够则转至步骤S3,否则转至步骤S5;步骤S3、编译报错,判断报错内存需要的空间大小;根据文件大小以及最佳配比算法计算出篡改方案,篡改内存分区配比参数;所述最佳配比是指根据不同的平台,计算出来的经验值,转换公式,包括预留一定空间给系统升级,预留一定空间给代码运行,预留一定flash块空间留给版本;通过给定一个较大的打包镜像空间,来将镜像文件打包出来,获取镜像文件大小,然后再将此大小转换为在内存空间分布需要的大小;即:获取镜像文件大小,转换为byte,加上10M预留给OTA升级的空间,配置进去即可;步骤S4、跳过不必要编译代码,重新编译分区相关编译步骤;转至步骤S9;步骤S5、编译完成;判断是否需要自适应最佳配比方案;若需要则转至步骤S6,否则转至步骤S9;步骤S6、获取存放文件大小;步骤S7、根据文件大小以及最佳配比算法计算出篡改方案,篡改内存分区配比参数;步骤S8、跳过不必要编译代码,重新编译分区相关编译步骤;转至步骤S9;步骤S9、生成版本。

【技术特征摘要】
1.一种分区配比编译适配方法,其特征在于,所述方法包括:步骤S1、开始正常编译;步骤S2、判断资源分区配比是否不足够;若不足够则转至步骤S3,否则转至步骤S5;步骤S3、编译报错,判断报错内存需要的空间大小;根据文件大小以及最佳配比算法计算出篡改方案,篡改内存分区配比参数;所述最佳配比是指根据不同的平台,计算出来的经验值,转换公式,包括预留一定空间给系统升级,预留一定空间给代码运行,预留一定flash块空间给版本;通过给定一个打包镜像空间,来将镜像文件打包出来,获取镜像文件大小,然后再将此大小转换为在内存空间分布需要的大小;即:获取镜像文件大小,转换为byte,加上10M预留给OTA升级的空间,配置进去即可;步骤S4、跳过不必要编译代码,重新编译分区相关编译步骤;转至步骤S9;步骤S5、编译完成;判断是否需要自适应最佳配比方案;若需要则转至步骤S6,否则转至步骤S9;步骤S6、获取存放文件大小;步骤S7、根据文件大小以及最佳配比算法计算出篡改方案,篡改内存分区...

【专利技术属性】
技术研发人员:李蕊
申请(专利权)人:闻泰通讯股份有限公司
类型:发明
国别省市:浙江;33

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

1