技术领域
本发明涉及属于通讯及物联网技术领域,具体涉及一种基于高通平台通过新增分区兼容不同大小EMMC的方法。
背景技术
由于高通平台软件版本在编译时会有分区表对不同的分区进行大小固定,当我们使用不同容量(如16G,32G,64G)的EMMC(嵌入式多媒体控制器)时,由于其他分区大小固定,我们需要动态调整userdata分区大小。使得应用端获取分区大小以及能使用的实际容量大小和EMMC容量一致。这样就保证同一套软件可以适用到不同EMMC容量的智能终端上。目前有两种比较理想的方法,一是利用文件系统自身的resize功能,在挂载userdata分区之前判断super block和block device的大小是否一致,不一致则进行resize操作。第二种方法是第一次开机是进行格式化userdata分区再挂载userdata分区。
其中第二种方法是使用比较多的方法。该方法的问题的关键是如何判断第一次开机,并且保证设备以后开机不会去格式化userdata分区(包括恢复出厂和系统升级后)。
发明内容
本发明的目的在于提供一种基于高通平台通过新增分区兼容不同大小EMMC的方法,以解决现有技术中难以保证同一套软件可以适用到不同EMMC容量的智能终端上的问题。
具体的,基于高通平台通过新增分区兼容不同大小EMMC的方法,所述方法包括以下步骤:
步骤一新建分区,添加标志位并打包;
步骤二将新建分区添加到系统分区表,调整该分区启动顺序在用户数据分区之前;
步骤三将android系统包和新建分区打包后对设备进行刷机后开机,开机过程中会在init进程挂载文件系统时判断format_emmc.txt文件是否存在,若存在,跳转到步骤四,否则跳转到步骤五;
步骤四init进程的fs_mgr对用户数据分区格式化,用户数据分区格式化后会匹配到EMMC实际大小,然后进行挂载操作,删除format_emmc.txt文件,开机后即可根据EMMC实际大小进行使用,从而完成兼容;
步骤五正常开机,流程结束。
进一步的,所述方法步骤一中新建分区命名为unrecoverable分区。
进一步的,所述方法步骤一中,添加format_emmc.txt文件标志位,打包为unrecoverable.img。
进一步的,所述方法步骤二中用户数据分区为userdata分区。
本发明的有益效果在于:本发明设计一种基于高通平台通过新增分区兼容不同大小EMMC的方法,新增一个unrecoverable分区,在unrecoverable分区里面放入一个format_emmc.txt文件作为标志位,只有在第一次刷机后进行userdata格式化操作。unrecoverable无法进行恢复出厂操作,保证了升级和设备恢复出厂后重启过程中造成userdata分区被再次格式化(非用户手动格式化);
利用android系统原生init进程的fs_mgr对userdata进行格式化操作,无需额外操作,简单稳定。
本发明的方法可移植性强,主要是新增一个分区以及对fs_mgr添加一个判断对userdata进行是否格式操作。
附图说明
图1是本发明方法的流程图。
具体实施方式
下面结合附图对本发明的具体实施方式进行说明:
本发明基于高通平台,首先我们会新增一个分区(名字指定为unrecoverable),保证不能被恢复出厂恢复或删除,调节分区启动顺序,保证该分区会先于userdata分区被挂载。分区里面需要有一个标志位,如一个空的文本文件format_emmc.txt的存在与否作为标志位。当刷机后终端第一次开机时,android系统启动BootLoader,调用linux内核,启动init进程,挂载文件系。当开始挂载userdata分区时,判断unrecoverable分区中是否有format_emmc.txt文件,如果有,则先格式化userdata分区,使其调整到当前EMMC实际容量在进行分区挂载,并删除format_emmc.txt文件。以后恢复出厂设置或者进行软件升级后,重新开机时format_emmc.txt都不存在,保证了用户数据不会被擦除(非用户操作)。
如图1所示,本发明提出的一种基于高通平台通过新增分区兼容不同大小EMMC的方法,包括如下步骤:
1)新建unrecoverable分区,添加format_emmc.txt标志位,打包为unrecoverable.img。
2)将unrecoverable分区添加到系统分区表,调整该分区启动顺序在userdata分区之前。
3)将android系统包和unrecoverable.img打包后对设备进行刷机后开机,开机过程中会在init进程挂载文件系统时判断format_emmc.txt文件是否存在,若存在,跳转到4),否则跳转到5)。
4)init进程的fs_mgr对userdata分区格式化,userdata格式化后会匹配到EMMC实际大小(android原生设计),然后进行挂载操作,删除format_emmc.txt文件,开机后就是可以EMMC实际大小进行使用,从而完成兼容。
5)正常开机,流程结束。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
机译: 具有至少一个相邻参考图像分区的几何形状或大小不同的几何形状或大小的当前图像分区的运动矢量的预测,并使用一种这样的预测进行编码和解码
机译: 预测具有与至少一个相邻参考图像分区不同的几何形状或大小的当前图像分区的运动矢量,并使用一种这样的预测进行编码和解码
机译: 在基于互联网协议的第一通信终端中生成音调的方法,该第一通信终端基于互联网协议。向基于不同通信协议操作的终端生成铃声的方法以及用于生成铃声的系统在不同的通信协议中基于S操作的终端