本发明实施例涉及通讯技术领域,尤其涉及一种开机时间优化方法和装置。
背景技术:
操作系统(operatingsystem,os)是用户和计算机的接口,同时也是计算机硬件和其他软件的接口。操作系统的功能包括管理计算机系统的硬件、软件及数据资源,控制程序运行,改善人机界面,为其它应用软件提供支持,提供各种形式的用户界面,使用户有一个好的工作环境,为其它软件的开发提供必要的服务和相应的接口等。
操作系统在智能终端中的作用至关重要,以手机为例,手机系统是运行在手机上面的操作系统,手机的系统主要有android、ios和windowsphone等。手机系统是直接运行在“裸机”上的最基本的系统软件,任何其他软件都必须在操作系统的支持下才能运行。
在第一次开机之前,要对手机预置的应用程序进行优化,现有技术中,通过单进程一个一个单独的优化应用程序,只有等所有的应用程序优化完成后,手机的主界面才能启动。现有技术中,手机第一次开机时间较长,根据手机预置的安装包的多少,开机时间从5分钟到7分钟不等,影响用户体验。
技术实现要素:
本发明提供一种开机时间优化方法和装置,以实现对智能终端的第一次开机时间进行优化。
第一方面,本发明实施例提供了一种开机时间优化方法,所述方法包括:
检测到智能终端的开机信号后,按照各系统进程和/或应用程序的优化优先级别,启动所述智能终端的多线程服务,对各系统进程和/或应用程序依次进行优化。
进一步的,所述检测到智能终端的开机信号后,按照各系统进程和/或应用程序的优化优先级别,启动所述智能终端的多线程服务,对各系统进程和/或应用程序依次进行优化包括:
检测到智能终端的开机信号后,启动所述智能终端的多线程服务优化第一系统进程;
在空闲cpu核上启动所述多线程服务优化第二应用程序,并在优化完成后生成开机控制指令;
根据所述开机控制指令控制所述智能终端开机,控制终端设备后台优化第三应用程序,所述第一系统进程的优化优先级高于第二应用程序,所述第二应用程序的优化优先级高于第三应用程序。
进一步的,所述在空闲cpu核上启动所述多线程服务优化第二应用程序,并在优化完成后生成开机控制指令包括:
在空闲cpu核上启动所述多线程服务,对第二应用程序中的各应用程序依次进行优化,并在优化完成后生成开机控制指令。
进一步的,所述第一系统进程至少包括所述智能终端开机过程中的核心进程,所述第二应用程序至少包括所述智能终端开机过程中的核心服务以及前台应用程序,所述第三应用程序至少包括其他应用程序。
进一步的,所述空闲cpu核为cpu占用率小于第一预设阈值的cpu核。
进一步的,所述优化第一系统化进程包括:将所述第一系统进程优化生成.dex的可运行文件;
所述优化第二应用程序包括:将所述第二应用程序优化成.dex的可运行文件;
所述优化第三应用程序包括:将所述第三应用程序优化成.dex的可运行文件。
第二方面,本发明实施例提供了一种开机时间优化装置,所述装置包括:
优化模块,用于检测到智能终端的开机信号后,按照各系统进程和/或应用程序的优化优先级别,启动所述智能终端的多线程服务,对各系统进程和/或应用程序依次进行优化。
进一步的,所述优化模块包括:
检测子模块,用于检测到智能终端的开机信号后,启动所述智能终端的多线程服务优化第一系统进程;
指令生成子模块,用于在空闲cpu核上启动所述多线程服务优化第二应用程序,并在优化完成后生成开机控制指令;
控制子模块,用于根据所述开机控制指令控制所述智能终端开机,控制终端设备后台优化第三应用程序,所述第一系统进程的优化优先级高于第二应用程序,所述第二应用程序的优化优先级高于第三应用程序。
进一步的,所述指令生成子模块具体用于:
在空闲cpu核上启动所述多线程服务,对第二应用程序中的各应用程序依次进行优化,并在优化完成后生成开机控制指令。
进一步的,所述第一系统进程至少包括所述智能终端开机过程中的核心进程,所述第二应用程序至少包括所述智能终端开机过程中的核心服务以及前台应用程序,所述第三应用程序至少包括其他应用程序。
进一步的,所述空闲cpu核为cpu占用率小于第一预设阈值的cpu核。
进一步的,所述检测子模块还用于:将所述第一系统进程优化生成.dex的可运行文件;
所述指令生成子模块还用于:将所述第二应用程序优化成.dex的可运行文件;
所述控制子模块还用于:将所述第三应用程序优化成.dex的可运行文件。
本发明实施例中,通过在检测到智能终端的开机信号后,按照各系统进程和/或应用程序的优化优先级别,启动所述智能终端的多线程服务,对各系统进程和/或应用程序依次进行优化。实现了对智能终端的第一次开机时间进行优化。
附图说明
图1是本发明实施例一中的一种开机时间优化方法的流程图;
图2是本发明实施例二中的一种开机时间优化方法的流程图;
图3是本发明实施例三中的一种开机时间优化装置的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1是本发明实施例一提供的一种开机时间优化方法的流程图,本实施例可适用于对开机时间进行优化的情况,该方法可以由本发明实施例提供的开机时间优化方法来执行,该装置可采用软件和/或硬件的方式来实现,该装置可集成于具有优化开机时间功能的智能终端中,例如可以是手机或平板电脑等。参考图1,该方法具体可以包括如下步骤:
s110、检测到智能终端的开机信号后,按照各系统进程和/或应用程序的优化优先级别,启动所述智能终端的多线程服务,对各系统进程和/或应用程序依次进行优化。
具体的,智能终端在开机过程中包括多个阶段,各个阶段都需要耗费相应的时间。对于开机时间的优化需要根据开机流程来进行分析,通常开机过程可以包括以下三个阶段,zygote阶段、system_server阶段、ams阶段,可选的,优化功能是通过程序包管理((packagemanagerservice,pms)实现。其中,智能终端的开机信号可以是通过长按开机键获得。进程是程序在计算机上的一次执行活动,当运行一个程序时,就启动了一个进程,程序是静态的,进程是动态的,进程可以分为系统进程和用户进程,用于完成操作系统的各种功能的进程为系统进程,是处于运行状态下的操作系统本身,用户进程是用户启动的进程。应用程序(application,app)是指为完成某项或多项特定工作的计算机程序,运行在用户模式,可以和用户进行交互,具有可视的用户界面。
检测到智能终端的开机信号后,按照各系统进程和/或应用程序的优先级别,启动智能终端的多线程服务,其中,优先级别是指各系统进程和/或应用程序的对于开机过程的重要程度划分。启动多线程服务是指,实现多个线程并发执行,其中,单线程模型中,一个进程中只能有一个线程,剩下的进程必须等待当前的线程执行完;多线程模型中,一个进程中可以同时有多个线程而不是单个线程。多线程服务是指应用多线程模型下的服务,启动所述智能终端的多线程服务,对各系统进程和/或应用程序依次进行优化。
实施例二
图2是本发明实施例二提供的一种开机时间优化方法的流程图,本实施例在上述实施例的基础上,对“检测到智能终端的开机信号后,按照各系统进程和/或应用程序的优化优先级别,启动所述智能终端的多线程服务,对各系统进程和/或应用程序依次进行优化”进行了优化。参考图2,该方法具体可以包括如下步骤:
s210、检测到智能终端的开机信号后,启动所述智能终端的多线程服务优化第一系统进程。
具体的,检测到智能终端的开机信号后,启动所述智能终端的多线程服务优化第一系统进程,其中,第一系统进程可以是一个或多个。
可选的,所述第一系统进程至少包括所述智能终端开机过程中的核心进程。
其中,核心进程对于系统的运行至关重要,没有核心进程,系统不能运行。第一系统进程至少包括所述智能终端开机过程中的核心进程。当核心进程启动后,才能保证其他进程或应用程序正常运行。
s220、在空闲cpu核上启动所述多线程服务优化第二应用程序,并在优化完成后生成开机控制指令。
其中,中央处理器(centralprocessingunit,cpu)用来解释计算机指令以及处理计算机软件中的数据。系统获取各cpu核的使用情况,该使用情况包括cpu的占用率等,选取空闲的cpu核,在空闲的cpu核上启动多线程服务优化第二应用程序。并在优化完成后生成开机控制指令,其中,该开机控制指令用于控制智能终端启动各项服务和功能。
可选的,所述空闲cpu核为cpu占用率小于第一预设阈值的cpu核。
其中,第一预设阈值可以是30%,空闲cpu核是指cpu核占用率小于30%的cpu核。需要说明的是,第一预设阈值的大小为开发人员根据试验获得,不局限于该数值,在这里不做具体限定。
可选的,所述第二应用程序至少包括所述智能终端开机过程中的核心服务以及前台应用程序。
其中,以android系统为例,核心服务可以是熵服务(entropyservice)、电源管理器(powermanager)、activity管理器(activitymanager)、通话寄存器(telephonyregistry)、包管理器(packagemanager)、账户管理器(accountmanager)、内容管理器(contentmanager)、内容提供器(systemcontentproviders)、电池服务(batteryservice)、光线服务(lightsservice)、振动服务(vibratorservice)、闹钟管理器(alarmmanager)、看门狗(initwatchdog)、窗口管理器(windowmanager)、蓝牙服务(bluetoothservice)等;前台应用程序可以是锁屏、主桌面、状态栏或通知栏等。核心服务和前台应用程序密切相关。前台应用程序是用户可见的,具有可视化的特点,核心服务是前台应用程序运行的前提。
s230、根据所述开机控制指令控制所述智能终端开机,控制终端设备后台优化第三应用程序,所述第一系统进程的优化优先级高于第二应用程序,所述第二应用程序的优化优先级高于第三应用程序。
具体的,根据所述开机控制指令控制所述智能终端开机,智能终端开机后,呈现给用户的是一个可操作界面,该操作界面可以是智能终端的主屏幕显示,也可以是用户根据自己的需求预设的动画或其他显示界面。智能终端开机后,控制终端设备后台优化第三应用程序。
根据优先级的划分,第一系统进程的优化优先级高于第二应用程序,第二应用程序的优化优先级高于第三应用程序。可选的,该优化优先级的划分,可以按照第一系统进程、第二应用程序和第三应用程序在智能终端开机过程中的所起到的作用的重要性进行划分。
可选的,所述第三应用程序至少包括其他应用程序。
其中,其他应用程序可以是,为完成某项或多项特定工作的计算机程序,它运行在用户模式,可以和用户进行交互,具有可视的用户界面。示例性的,第三应用程序可以是,智能终端中的音乐、相册、备忘录或日历等。
在上述技术方案的基础上,“在空闲cpu核上启动所述多线程服务优化第二应用程序,并在优化完成后生成开机控制指令”具体为:在空闲cpu核上启动所述多线程服务,对第二应用程序中的各应用程序依次进行优化,并在优化完成后生成开机控制指令。
具体的,第二应用程序中包括多个应用程序,多个应用程序一次进行优化,其中,优化顺序可以是按照各应用程序的优先级进行优化,各应用程序的优先级可以是按照各应用程序的优先级进行划分。
可选的,所述优化第一系统化进程包括:将所述第一系统进程优化生成.dex的可运行文件;所述优化第二应用程序包括:将所述第二应用程序优化成.dex的可运行文件;所述优化第三应用程序包括:将所述第三应用程序优化成.dex的可运行文件。
其中,.dex文件是应用程序安装包中提取出来的可运行文件,即在系统进程和应用程序优化的过程中,将系统进程和应用程序优化成.dex的文件单独存放,原系统进程和应用程序中的文件会保留。加快了启动速度。
实施例三
图3是本发明实施例三中的一种开机时间优化装置的结构示意图,该装置适用于执行本发明实施例提供的开机时间优化方法。参考图3,该装置具体可以包括:
优化模块310,用于检测到智能终端的开机信号后,按照各系统进程和/或应用程序的优化优先级别,启动所述智能终端的多线程服务,对各系统进程和/或应用程序依次进行优化。
进一步的,优化模块310包括:
检测子模块311,用于检测到智能终端的开机信号后,启动所述智能终端的多线程服务优化第一系统进程;
指令生成子模块312,用于在空闲cpu核上启动所述多线程服务优化第二应用程序,并在优化完成后生成开机控制指令;
控制子模块313,用于根据所述开机控制指令控制所述智能终端开机,控制终端设备后台优化第三应用程序,所述第一系统进程的优化优先级高于第二应用程序,所述第二应用程序的优化优先级高于第三应用程序。
进一步的,指令生成子模块312具体用于:
在空闲cpu核上启动所述多线程服务,对第二应用程序中的各应用程序依次进行优化,并在优化完成后生成开机控制指令。
进一步的,所述第一系统进程至少包括所述智能终端开机过程中的核心进程,所述第二应用程序至少包括所述智能终端开机过程中的核心服务以及前台应用程序,所述第三应用程序至少包括其他应用程序。
进一步的,所述空闲cpu核为cpu占用率小于第一预设阈值的cpu核。
进一步的,检测子模块311还用于:将所述第一系统进程优化生成.dex的可运行文件;
指令生成子模块312还用于:将所述第二应用程序优化成.dex的可运行文件;
控制子模块313还用于:将所述第三应用程序优化成.dex的可运行文件。
本发明实施例提供的开机时间优化装置可执行本发明任意实施例所提供的开机时间优化方法,具备执行方法相应的功能模块和有益效果。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。