OTA升级Mbn的管理方法、装置、系统、设备和介质与流程

文档序号:19827825发布日期:2020-02-04 12:04阅读:1060来源:国知局
OTA升级Mbn的管理方法、装置、系统、设备和介质与流程

本发明涉及计算机技术领域,特别涉及一种ota升级mbn的管理方法、装置、系统、设备和介质。



背景技术:

mbn(modemconfigurationbinary,数据机配置二进制)文件是高通平台针对具体运营商和网络要求集成了相关网络协议参数的配置文件。不同的mbn有不同的配置,分别满足运营商网络的运营要求;mbn文件也用于配置实验室测试或入网许可认证测试,以满足实验室测试和验证要求。

如图7所示,现有高通平台mbn升级流程具体是:

(1)在modem代码的\modem_proc\mcfg\configs\mcfg_sw\generic\的路径下创建mbn_ota目录,将要升级的各个mbn文件放到这个mbn_ota目录下;modem编译会将mbn_ota目录下各个mbn文件编译到modem镜像文件;

(2)设备开机,boot启动会将modem镜像文件中要ota(over-the-airtechnology,空中下载技术)升级的mbn文件导入到androdi端的/firmware/image/modem_im/modem_pr/mcfg/configs/mcfg_sw/generic/mbn_ota/*目录下;

(3)system启动,将

/firmware/image/modem_im/modem_pr/mcfg/configs/mcfg_sw/generic/mbn_ota/*目录下各mbn文件,拷贝到/data/misc/radio/modem_config目录下。

(4)启动到qcril(qcril是高通的radiointerfacelayer,用于android应用处理器和modem处理器的接口层)时,会先读取persist.radio.start_ota_daemon的属性,判断设备是否支持mbnota,若不支持则不升级,直接return;若支持升级则读取modem文件系统已经加载过的mbn链表;

(5)读取android端的/data/misc/radio/modem_config目录下各mbn文件,然后逐一处理;

(6)取出的android下mbn和modemmbnlist链表逐一对比,判断modemmbnlist链表中是否含有同名文件,如果否,则说明这个要ota升级的mbn文件是新名字的mbn文件,直接升级到modem的文件系统里;如果是,则继续判断版本号是否为最新,如果是,则不进行升级;如果否,将该mbn文件升级到modem的文件系统里;

(7)判断android端的/data/misc/radio/modem_config目录下各mbn文件是否都处理完,没处理完则按照(6)继续执行,直到所有mbn文件都处理完时则升级mbn完毕。

可见,上述升级方法具有如下缺点:

1、每次升级都得和modem镜像包一起升级,升级一个mbn文件的大小才几十kb,升级多个mbn文件最多几mb;而整个modemimg镜像包的大小则达到50mb以上;导致ota升级包变大,用户升级浪费流量;

2、因为不同用户的硬件板子可能不一样,比如国家a和国家b,国家a支持lte/wcdma/gsm网络,而国家b支持lte/wcdma/tdscma/cdma/gsm网络,从而在支持频段上也是不一样。那么可能的情况是:不同项目的射频不一样、mbn不一样,使用的modem也不一样。为了使modem升级到对应客户,且能正常工作,那么每个客户得维护一套软件,各维护一套ota升级包,导致管理方便,且容易出错。



技术实现要素:

本发明要解决的技术问题,在于提供一种ota升级mbn的管理方法、装置、系统、设备和介质,减少升级需耗费的流量,且便于管理。

第一方面,本发明提供了一种ota升级mbn的管理方法,包括下述步骤:

s1、设备开机启动系统,将单独存放于服务器中的要升级的mbn文件下载至本机的/system/etc/firmware/mbn_ota/目录下;所述单独存放是指mbn文件存储于服务器针对客户建立的目录下,而不集成到modem镜像文件里;

s2、重启设备,将/system/etc/firmware/mbn_ota/目录下的mbn文件移到/data/misc/radio/modem_config目录下;

s3、启动qcril,判断设备是否满足进行mbnota升级的条件,若是则进行升级,若否,结束升级流程。

第二方面,本发明提供了一种ota升级mbn的管理方法,包括下述步骤:

s1、要升级的mbn文件经译后被单独存放于服务器针对客户建立的目录下,而不集成到modem镜像文件里;

s2、设备开机启动系统,从服务器中将要升级的mbn文件下载至本机的/system/etc/firmware/mbn_ota/目录下;

s3、重启设备,将/system/etc/firmware/mbn_ota/目录下的mbn文件移到/data/misc/radio/modem_config目录下;

s4、启动qcril,判断设备是否满足进行mbnota升级的条件,若是则进行升级,若否,结束升级流程。

第三方面,本发明提供了一种ota升级mbn的管理装置,该装置为高通平台的android设备,包括:

下载模块,用于在设备开机启动系统后,将单独存放于服务器中的要升级的mbn文件下载至本机的/system/etc/firmware/mbn_ota/目录下;所述单独存放是指mbn文件存储于服务器针对客户建立的目录下,而不集成到modem镜像文件里;

移动模块,在设备重启时,将/system/etc/firmware/mbn_ota/目录下的mbn文件移到/data/misc/radio/modem_config目录下;

升级模块,在设备启动qcril时,判断设备是否满足进行mbnota升级的条件,若是则进行升级,若否,结束升级流程。

第四方面,本发明提供了一种ota升级mbn的管理系统,包括:

服务器,用于存放编译后的要升级的mbn文件,且所述mbn文件被单独存放于服务器针对客户建立的目录下,而不集成到modem镜像文件里;

设备,进一步包括:

下载模块,用于在设备开机启动系统后,将服务器中对应客户目录下的要升级的mbn文件下载至本机的/system/etc/firmware/mbn_ota/目录下;

移动模块,在设备重启时,将/system/etc/firmware/mbn_ota/目录下的mbn文件移到/data/misc/radio/modem_config目录下;

升级模块,在设备启动qcril时,判断设备是否满足进行mbnota升级的条件,若是则进行升级,若否,结束升级流程。

第五方面,本发明提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现第一方面所述的方法。

第六方面,本发明提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面所述的方法。

本发明实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:

本申请实施例提供的方法、装置、系统、设备和介质,是将要升级的mbn文件单独存放于服务器中,针对客户建立的目录下,而不集成到modem镜像文件里;设备升级时再下载至本机的/system/etc/firmware/mbn_ota/目录下,从而与镜像文件毫无关系,无需升级整个镜像文件,只要升级mbn文件本身即可,大大减少了升级需耗费的流量,且由于升级与镜像文件毫无关系,这样多个客户可以共用一个镜像文件,服务器专门针对客户建立一目录用于单独存放mbn文件,只需维护各个专门针对客户建立的目录即可,大大方便了管理。

上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。

附图说明

下面参照附图结合实施例对本发明作进一步的说明。

图1为本发明ota升级mbn的管理的系统框架示意图;

图2为本发明实施例一中方法的流程图;

图2a为本发明实施例一中方法进一步细化的流程图;

图3为本发明实施例二中方法的流程图;

图4为本发明实施例三中装置的结构示意图;

图5为本发明实施例四中电子设备的结构示意图;

图6为本发明实施例五中介质的结构示意图;

图7为现有的ota升级mbn的管理的方法的流程图。

具体实施方式

本申请实施例通过提供一种ota升级mbn的管理方法、装置、系统、设备及介质,以减少升级需耗费的流量,减少管理流程,和减少升级过程中因断网而下载失败的概率,且便于管理。本发明主要应用于高通平台的android设备,设备支持ota升级。如手机、pos、pad等。这些设备出厂后可能需要升级更新mbn,那么本方案提出更优的方式解决这个问题。

本申请实施例中的技术方案,总体思路如下:将要升级的mbn文件单独存放于服务器中,针对客户建立的目录下,而不集成到modem镜像文件里;设备升级时再下载至本机的/system/etc/firmware/mbn_ota/目录下,从而与镜像文件毫无关系,无需升级整个镜像文件,只要升级mbn文件本身即可;且由于升级过程与镜像文件毫无关系,这样多个客户可以共用一个镜像文件,服务器专门针对客户建立一目录用于单独存放mbn文件,只需维护各个专门针对客户建立的目录即可。

在介绍具体实施例之前,如图1所示,先介绍本申请实施例方法所对应的ota升级mbn的管理系统大概分两个部分:

服务器,用于存放编译后的要升级的mbn文件,且所述mbn文件被单独存放于服务器针对客户建立的目录下,而不集成到modem镜像文件里;

设备,进一步包括:

下载模块,用于在设备开机启动系统后,将服务器中对应客户目录下的要升级的mbn文件下载至本机的/system/etc/firmware/mbn_ota/目录下;

移动模块,在设备重启时,将/system/etc/firmware/mbn_ota/目录下的mbn文件移到/data/misc/radio/modem_config目录下;

升级模块,在设备启动qcril时,判断设备是否满足进行mbnota升级的条件,若是则进行升级,若否,结束升级流程。

实施例一

本实施例提供本发明提供了一种ota升级mbn的管理方法,如图2所示,包括下述步骤:

s1、设备开机启动系统,将单独存放于服务器中的要升级的mbn文件下载至本机的/system/etc/firmware/mbn_ota/目录下;所述单独存放是指mbn文件存储于服务器针对客户建立的目录下,而不集成到modem镜像文件里;

s2、重启设备,将/system/etc/firmware/mbn_ota/目录下的mbn文件移到/data/misc/radio/modem_config目录下;

s3、启动qcril,判断设备是否满足进行mbnota升级的条件,若是则进行升级,若否,结束升级流程。

再如图2a所示,该方法可进一步细化为如下过程:

s1、设备开机启动系统,将单独存放于服务器中的要升级的mbn文件下载至本机的/system/etc/firmware/mbn_ota/目录下;所述单独存放是指mbn文件存储于服务器针对客户建立的目录下,而不集成到modem镜像文件里;具体是:

(11)设备开机启动系统,启动系统的过程中读取本机平台,项目和客户信息;

(12)在与服务器通信后,先读取本机/system/etc/firmware/mbn_ota/是否有mbn_ota.txt文件,若有则读取mbn_ota.txt文件的mbn_ota_version值,若无则默认mbn_ota_version为0;

(13)读取服务器对应客户目录下的mbn_ota.txt文件的mbn_ota_version值,并和读取到的本机的mbn_ota_version值比较,如果比本机的mbn_ota_version值大,则说明服务器mbn_ota.txt文件比较新,则进行下一步,否则结束流程;

(14)将服务器对应客户目录下的mbn_ota.txt文件下载到本机的/system/etc/firmware/mbn_ota/目录下,然后读取此下载的mbn_ota.txt文件中的mbn_ota_mark值,若mbn_ota_mark值是true,读取mbn_ota.txt中ota_file值对应的mbn文件名,然后从服务器的对应客户目录下下载这些mbn文件到/system/etc/firmware/mbn_ota/目录下,若mbn_ota_mark值是false,则结束流程。(若升级标志mbn_ota_mark是true,说明要升级,则读取mbn_ota.txt的ota_file变量的参数值,如ota_file=mbna,mbnb,意味着要升级mbna和mbnb,然后将mbna和mbnb下载到/system/etc/firmware/mbn_ota/目录下)。

s2、重启设备,将/system/etc/firmware/mbn_ota/目录下的mbn文件移到/data/misc/radio/modem_config目录下;

s3、启动qcril,判断设备是否满足进行mbnota升级的条件,若是则进行升级,若否,结束升级流程。其中,判断设备是否满足进行mbnota升级的条件的过程是:

(31)先判断设备是否支持mbnota升级,若支持mbnota升级则读取设备的modem文件系统已经加载过的mbn文件链表;

(32)将mbn文件链表下的mbn文件和/data/misc/radio/modem_config目录下的某一个mbn文件进行文件名称的比较,如果没有相同名称,将/data/misc/radio/modem_config目录下的mbn文件直接升级到modem的文件系统里;如果有相同名称,则进入下一步;

(33)判断相同名称两个mbn文件的版本号,如果/data/misc/radio/modem_config目录下的mbn文件的版本号为更新的版本号,则将该/data/misc/radio/modem_config目录下的mbn文件升级到modem的文件系统里;否则回到步骤(32),对/data/misc/radio/modem_config目录下的下一个mbn文件进行判断,直到所有/data/misc/radio/modem_config目录下的mbn文件都判断完,进入下一步;

(34)将/system/etc/firmware/mbn_ota/mbn_ota.txt的mbn_ota_mark设置为false。

联网后,因mbn_ota.txt文件的版本号和服务器一样,及mbn_ota_mark

为false,则不会从服务器再次下载mbn_ota.txt文件和mbn*文件。

另外,还需要说明的是:

1、关于mbn文件在服务器的的存放

本发明是将要升级的各mbn文件从modem镜像文件剥离出来。编译生成的各mbn不集成到modem镜像文件里,而是单独存放,服务器会存储维护各个客户的mbn和要升级的mbn文件。路径如:平台*/项目*/客户*/mbn/含mbn_ota.txt和各个mbn,表现大致如下:

|---平台a---项目a---客户a---mbn-----mbn_ota.txt

|-----mbna

|-----mbnb

|-----mbnc

mbn_ota.txt记录着是否升级标志位,及要升级哪几个mbn,升级版本号;如:

mbn_ota_version=*****(5位数字,版本号更高意味着服务器有更新过);

mbn_ota_mark=true或false(true代表要升级,false不升级);

mbn_ota_file=mbna,mbnb(要升级这个mbna、mbnb两个文件);

2、关于设备的系统(system)启动过程,原来系统启动过程是将

/firmware/image/modem_im/modem_pr/mcfg/configs/mcfg_sw/generic/mbn_ota/*目录下各文件,拷贝到/data/misc/radio/modem_config目录。本发明修改为:/system/etc/firmware/mbn_ota/目录下各文件,拷贝到/data/misc/radio/modem_config目录。/system/etc/firmware/mbn_ota/该目录用于存储服务器下载的mbn文件,这样mbn升级就和modem镜像打包无关了。

基于同一发明构思,本申请还提供了与实施例一中的方法对应的应用于图1所示的系统的方法,详见实施例二。

实施例二

在本实施例中提供了一种ota升级mbn的管理方法,如图1和3所示,包括下述步骤:

s1、要升级的mbn文件经译后被单独存放于服务器针对客户建立的目录下,而不集成到modem镜像文件里;

s2、设备开机启动系统,从服务器中将要升级的mbn文件下载至本机的/system/etc/firmware/mbn_ota/目录下;

s3、重启设备,将/system/etc/firmware/mbn_ota/目录下的mbn文件移到/data/misc/radio/modem_config目录下;

s4、启动qcril,判断设备是否满足进行mbnota升级的条件,若是则进行升级,若否,结束升级流程。

基于同一发明构思,本申请还提供了与实施例一中的方法对应的装置,详见实施例三。

实施例三

在本实施例中提供了一种ota升级mbn的管理装置,如图4所示,包括:

下载模块,用于在设备开机启动系统后,将单独存放于服务器中的要升级的mbn文件下载至本机的/system/etc/firmware/mbn_ota/目录下;所述单独存放是指mbn文件存储于服务器针对客户建立的目录下,而不集成到modem镜像文件里;所述下载模块具体实现下述过程:

(11)设备开机启动系统,启动系统的过程中读取本机平台,项目和客户信息;

(12)在与服务器通信后,先读取本机/system/etc/firmware/mbn_ota/是否有mbn_ota.txt文件,若有则读取mbn_ota.txt文件的mbn_ota_version值,若无则默认mbn_ota_version为0;

(13)读取服务器对应客户目录下的mbn_ota.txt文件的mbn_ota_version值,并和读取到的本机的mbn_ota_version值比较,如果比本机的mbn_ota_version值大,则进行下一步,否则结束流程;

(14)将服务器对应客户目录下的mbn_ota.txt文件下载到本机的/system/etc/firmware/mbn_ota/目录下,然后读取此下载的mbn_ota.txt文件中的mbn_ota_mark值,若mbn_ota_mark值是true,读取mbn_ota.txt中ota_file值对应的mbn文件名,然后从服务器的对应客户目录下下载这些mbn文件到/system/etc/firmware/mbn_ota/目录下,若mbn_ota_mark值是false,则结束流程。

移动模块,在设备重启时,将/system/etc/firmware/mbn_ota/目录下的mbn文件移到/data/misc/radio/modem_config目录下;

升级模块,在设备启动qcril时,判断设备是否满足进行mbnota升级的条件,若是则进行升级,若否,结束升级流程。其中,判断设备是否满足进行mbnota升级的条件的过程是:

(31)先判断设备是否支持mbnota升级,若支持mbnota升级则读取设备的modem文件系统已经加载过的mbn文件链表;

(32)将mbn文件链表下的mbn文件和/data/misc/radio/modem_config目录下的某一个mbn文件进行文件名称的比较,如果没有相同名称,将/data/misc/radio/modem_config目录下的mbn文件直接升级到modem的文件系统里;如果有相同名称,则进入下一步;

(33)判断相同名称两个mbn文件的版本号,如果/data/misc/radio/modem_config目录下的mbn文件的版本号为更新的版本号,则将该/data/misc/radio/modem_config目录下的mbn文件升级到modem的文件系统里;否则回到步骤(32),对/data/misc/radio/modem_config目录下的下一个mbn文件进行判断,直到所有/data/misc/radio/modem_config目录下的mbn文件都判断完,进入下一步;

(34)将/system/etc/firmware/mbn_ota/mbn_ota.txt的mbn_ota_mark设置为false。

由于本发明实施例三所介绍的装置,为实施本发明实施例一的方法所采用的装置,故而基于本发明实施例一所介绍的方法,本领域所属人员能够了解该装置的具体结构及变形,故而在此不再赘述。凡是本发明实施例一的方法所采用的装置都属于本发明所欲保护的范围。

基于同一发明构思,本申请提供了实施例一对应的电子设备实施例,详见实施例三。

实施例三

本实施例提供了一种电子设备,如图5所示,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时,可以实现实施例一中任一实施方式。

由于本实施例所介绍的电子设备为实施本申请实施例一中方法所采用的设备,故而基于本申请实施例一中所介绍的方法,本领域所属技术人员能够了解本实施例的电子设备的具体实施方式以及其各种变化形式,所以在此对于该电子设备如何实现本申请实施例中的方法不再详细介绍。只要本领域所属技术人员实施本申请实施例中的方法所采用的设备,都属于本申请所欲保护的范围。

基于同一发明构思,本申请提供了实施例一对应的存储介质,详见实施例四。

实施例四

本实施例提供一种计算机可读存储介质,如图6所示,其上存储有计算机程序,该计算机程序被处理器执行时,可以实现实施例一中任一实施方式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1