本发明属于计算机技术领域,尤其涉及一种交互式升级的方法及系统。
背景技术:
随着计算机技术的不断发展,智能终端,如:智能手机。智能电视以及平板电脑等,软件操作系统更新迭代的速度也不断加快,因此,常常需要对其软件操作系统进行升级。
现有智能终端软件操作系统的升级方式主要是通过智能终端的当前软件操作系统从网上下载获取从其他存储设备上获取新版本的软件操作系统,并将新版本的软件操作系统存储在智能终端的启动介质中,然后重新启动智能终端,使智能终端自动从启动介质中加载新版本系统文件,从而达到系统升级的目的。这种升级方式需要当前系统和新版本的系统保持完全兼容,若两者无法完全兼容,则需要人为进行一些操作,例如:人为删除当前系统文件中与新版本系统不兼容的部分文件,导致系统升级过程繁琐,并且效率较低。
技术实现要素:
本发明实施例的目的在于提供一种交互式升级的方法及系统,旨在解决上述现有的智能终端软件操作系统的升级方式需要当前系统和新版本的系统保持完全兼容,若两者无法完全兼容,则需要人为进行一些操作,导致系统升级过程繁琐,并且效率较低的问题。
本发明实施例是这样实现的,一种交互式升级的方法,包括:
获取新版本系统文件,并将所述新版本系统文件存储至智能终端的CPU的内置缓存或者所述CPU的外接存储设备中;
在进行系统升级时,所述智能终端的当前系统使用自身集成的提取可执行文件的方法提取所述新版本系统文件中的可执行文件;
通过所述当前系统执行从所述新版本系统文件中提取出的可执行文件,为所述新版本系统文件的运行搭建适配环境;
通过所述当前系统将所述新版本系统文件存储到所述智能终端的启动介质中,并重启所述智能终端,完成本次系统升级。
在上述技术方案的基础上,所述新版本系统文件和所述当前系统文件均为bin格式的二进制文件,并且由head头、内核文件、可执行文件以及尾标识四部分组成,其中所述内核文件中集成有提取可执行文件的方法。
在上述技术方案的基础上,所述可执行文件为可执行的shell脚本文件或者可执行的二进制文件。
在上述技术方案的基础上,所述获取新版本系统文件,并将所述新版本系统文件存储至智能终端的CPU的内置缓存或者所述CPU的外接存储设备中具体包括:
通过编译软件按照所述bin格式的二进制文件所对应的结构编译生成所述新版本系统文件,并将所述新版本系统文件存储至智能终端的CPU的内置缓存或者所述CPU的外接存储设备中。
在上述技术方案的基础上,所述获取新版本系统文件,并将所述新版本系统文件存储至智能终端的CPU的内置缓存或者所述CPU的外接存储设备中具体包括:
通过网络、串口或者SD卡从其他设备上下载所述新版本系统文件,并将所述新版本系统文件存储至智能终端的CPU的内置缓存或者所述CPU的外接存储设备。
另一方面,本发明实施例提供的一种交互式升级的系统,包括:
升级文件获取单元,用于获取新版本系统文件,并将所述新版本系统文件存储至智能终端的CPU的内置缓存或者所述CPU的外接存储设备中;
可执行文件提取单元,用于在进行系统升级时,所述智能终端的当前系统使用自身集成的提取可执行文件的方法提取所述新版本系统文件中的可执行文件;
系统环境搭建单元,用于通过所述当前系统执行从所述新版本系统文件中提取出的可执行文件,为所述新版本系统文件的运行搭建适配环境;
系统升级处理单元,用于通过所述当前系统将所述新版本系统文件存储到所述智能终端的启动介质中,并重启所述智能终端,完成本次系统升级。
在上述技术方案的基础上,所述新版本系统文件和所述当前系统文件均为bin格式的二进制文件,并且由head头、内核文件、可执行文件以及尾标识四部分组成,其中所述内核文件中集成有提取可执行文件的方法。
在上述技术方案的基础上,所述可执行文件为可执行的shell脚本文件或者可执行的二进制文件。
在上述技术方案的基础上,所述升级文件获取单元具体用于:
通过编译软件按照所述bin格式的二进制文件所对应的结构编译生成所述新版本系统文件,并将所述新版本系统文件存储至智能终端的CPU的内置缓存或者所述CPU的外接存储设备中。
在上述技术方案的基础上,所述升级文件获取单元具体用于:
通过网络、串口或者SD卡从其他设备上下载所述新版本系统文件,并将所述新版本系统文件存储至智能终端的CPU的内置缓存或者所述CPU的外接存储设备。
实施本发明实施例提供的一种交互式升级的方法及系统具有以下有益效果:
本发明实施例通过获取新版本系统文件,并将所述新版本系统文件存储至智能终端的CPU的内置缓存或者所述CPU的外接存储设备中;在进行系统升级时,所述智能终端的当前系统使用自身集成的提取可执行文件的方法提取所述新版本系统文件中的可执行文件;通过所述当前系统执行从所述新版本系统文件中提取出的可执行文件,为所述新版本系统文件的运行搭建适配环境;通过所述当前系统将所述新版本系统文件存储到所述智能终端的启动介质中,并重启所述智能终端,完成本次系统升级,从而可以实现在升级当前系统之前,通过当前系统预先为新版本的系统搭建适配的环境,避免出现由于当前系统和新版本的系统不完全兼容所导致的升级失败的情况,并且无需人为干预调整不兼容的问题,简化了系统升级过程,并且提高了系统升级的效率。
附图说明
图1是本发明实施例提供的一种交互式升级的方法的示意流程图;
图2是本发明实施例提供的一种交互式升级的中bin格式的二进制文件的结构示意图;
图3是本发明实施例提供的一种交互式升级的系统的示意性框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
图1是本发明实施例提供的一种交互式升级的方法的示意流程图。参见图1所示,该方法可以包括以下步骤:
在S101中,获取新版本系统文件,并将所述新版本系统文件存储至智能终端的CPU的内置缓存或者所述CPU的外接存储设备中。
在本实施例中,所述新版本系统文件和所述当前系统文件均为bin格式的二进制文件,并且由head头、内核文件、可执行文件以及尾标识四部分组成,其中所述内核文件中集成有提取可执行文件的方法。另外,当所述bin格式的二进制文件为压缩后的文件时,所述内核文件中还集成有解压所述bin格式的二进制文件的方法。
进一步的,在本实施例中,所述可执行文件为可执行的shell脚本文件。需要说明的是,在其他实现示例中,所述可执行文件也可以为其他格式的文件,只要是所述智能终端的当前CPU可运行的格式文件即可,例如:可执行的二进制文件。
进一步的,在本实施例中,步骤S101具体包括:
通过编译软件按照所述bin格式的二进制文件所对应的结构编译生成所述新版本系统文件,并将所述新版本系统文件存储至智能终端的CPU的内置缓存或者所述CPU的外接存储设备中;或者,
通过网络、串口或者SD卡从其他设备上下载所述新版本系统文件,并将所述新版本系统文件存储至智能终端的CPU的内置缓存或者所述CPU的外接存储设备。
在本实施例中,编译人员可以在智能终端侧利用编译软件按照图2所示bin格式的二进制文件所对应的结构编译新版本系统文件;也可以在其他设备上利用编译软件按照图2所示bin格式的二进制文件的结构编译生成新版本系统文件,然后再由所述智能终端通过网口、串口或者SD卡从所述其他设备上下载得到新版本系统文件。
在S102中,在进行系统升级时,所述智能终端的当前系统使用自身集成的提取可执行文件的方法提取所述新版本系统文件中的可执行文件。
在本实施例中,在进行系统升级时,所述智能终端的当前系统的引导程序uboot可以识别出新版本系统文件,并可以通过自身内核文件中集成的提取可执行文件的方法提取出所述新版本系统文件中的可执行文件,所述可执行文件可以为所述新版本系统文件的运行搭建适配的环境。
在S103中,通过所述当前系统执行从所述新版本系统文件中提取出的可执行文件,为所述新版本系统文件的运行搭建适配环境。
在本实施例中,所述可执行文件包含了一系列指令的集合,所述智能终端的当前系统在获取到所述新版本系统文件中的可执行文件后,即会执行该可执行文件,以便为所述新版本系统文件的运行搭建适配的环境,例如:格式化智能终端的存储设备,以删掉智能终端中存储的当前系统文件,避免后续在加载新版本系统文件的过程中出现不兼容的问题。
优选的,在其他实施例中,所述可执行文件中包含的指令还可以为将当前系统文件从智能终启动介质中备份到其他存储设备,然后在删除启动介质中的当前系统文件,这样可以在利用新版本系统文件升级失败后,重新使用当前系统文件恢复智能终端的软件应用功能。
在S104中,通过所述当前系统将所述新版本系统文件存储到所述智能终端的启动介质中,并重启所述智能终端,完成本次系统升级。
在本实施例中,由于在加载启动介质内新版本系统文件之前,预先为其搭建了适配的环境,因此在升级过程中不会出现由于新版本系统文件与当前系统文件本兼容所导致的升级失败,甚至是出现系统死机的问题,并且整个过程中无需人为干预调整,简化了升级过程,提高了升级效率。
因此,可以看出,本实施例提供的一种交互式升级的方法通过获取新版本系统文件,并将所述新版本系统文件存储至智能终端的CPU的内置缓存或者所述CPU的外接存储设备中;在进行系统升级时,所述智能终端的当前系统使用自身集成的提取可执行文件的方法提取所述新版本系统文件中的可执行文件;通过所述当前系统执行从所述新版本系统文件中提取出的可执行文件,为所述新版本系统文件的运行搭建适配环境;通过所述当前系统将所述新版本系统文件存储到所述智能终端的启动介质中,并重启所述智能终端,完成本次系统升级,从而可以实现在升级当前系统之前,通过当前系统预先为新版本的系统搭建适配的环境,避免出现由于当前系统和新版本的系统不完全兼容所导致的升级失败的情况,并且无需人为干预调整不兼容的问题,简化了系统升级过程,并且提高了系统升级的效率。
图3是本发明实施例提供的一种交互式升级的系统的示意性框图,该系统位于本发明实施例所述的智能终端中,用于运行图1所示实施例提供的方法。为了便于说明仅仅示出了与本实施例相关的部分。
参见图3所示,本实施例提供的一种交互式升级的系统,包括:
升级文件获取单元,用于获取新版本系统文件,并将所述新版本系统文件存储至智能终端的CPU的内置缓存或者所述CPU的外接存储设备中;
可执行文件提取单元,用于在进行系统升级时,所述智能终端的当前系统使用自身集成的提取可执行文件的方法提取所述新版本系统文件中的可执行文件;
系统环境搭建单元,用于通过所述当前系统执行从所述新版本系统文件中提取出的可执行文件,为所述新版本系统文件的运行搭建适配环境;
系统升级处理单元,用于通过所述当前系统将所述新版本系统文件存储到所述智能终端的启动介质中,并重启所述智能终端,完成本次系统升级。
可选的,所述新版本系统文件和所述当前系统文件均为bin格式的二进制文件,并且由head头、内核文件、可执行文件以及尾标识四部分组成,其中所述内核文件中集成有提取可执行文件的方法。
可选的,所述可执行文件为shell脚本文件。
可选的,所述升级文件获取单元具体用于:
通过编译软件按照所述bin格式的二进制文件所对应的结构编译生成所述新版本系统文件。
可选的,所述升级文件获取单元具体用于:
通过网络、串口或者SD卡从其他设备上下载所述新版本系统文件,并将所述新版本系统文件存储至智能终端的CPU的内置缓存或者所述CPU的外接存储设备。
需要说明的是,本实施例提供的系统中的各个单元由于本发明方法实施例基于同一构思,其带来的技术效果与本发明方法实施例相同,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
以上可以看出,本实施例提供的一种交互式升级的系统同样可以实现在升级当前系统之前,通过当前系统预先为新版本的系统搭建适配的环境,避免出现由于当前系统和新版本的系统不完全兼容所导致的升级失败的情况,并且无需人为干预调整不兼容的问题,简化了系统升级过程,并且提高了系统升级的效率。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。