CN104050001A - 基于Android系统的资源处理方法、装置和设备 - Google Patents
基于Android系统的资源处理方法、装置和设备 Download PDFInfo
- Publication number
- CN104050001A CN104050001A CN201410287681.4A CN201410287681A CN104050001A CN 104050001 A CN104050001 A CN 104050001A CN 201410287681 A CN201410287681 A CN 201410287681A CN 104050001 A CN104050001 A CN 104050001A
- Authority
- CN
- China
- Prior art keywords
- resource
- android system
- customization
- startup
- load
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Stored Programmes (AREA)
Abstract
本发明提供了一种基于Android系统的资源处理方法、装置及设备,该方法包括:响应于Android系统的用户级进程init进程的启动,将Android系统的部分资源加载到内核缓冲区;响应于Android系统的zygote进程及其孵化的子进程的启动,从内核缓冲区中加载所述Android系统的部分资源。该装置包括:第一加载模块,用于将所述Android系统的部分资源加载到内核缓冲区;第二加载模块,用于从所述内核缓冲区中加载所述Android系统的部分资源。采用本发明的方法、装置或设备,可以提升Android系统的开机启动速度,从而也能够提升用户的使用体验。
Description
技术领域
本申请涉及智能移动终端领域,特别涉及一种基于Android系统的资源处理方法、装置及设备。
背景技术
Android(安卓)系统是Google(谷歌)公司开发的基于Linux的开源移动操作平台,该平台由操作系统、中间件、用户界面和应用软件组成。目前Android系统主要应用在手机、平板电脑、电视机等智能设备上。
随着科技的发展,Android在移动设备上的应用日趋广泛,用户对其要求也越来越高。但是发明人在研究过程中发现,作为目前最为流行的移动设备操作系统之一,Android系统相对比较慢的开机速度一直困扰着用户。!
发明内容
发明人在研究过程中通过bootchart(一个用于linux启动过程性能分析的开源软件工具)等进行分析发现,现有技术中的Android系统在开机过程中启动的i/o(输入/输出,Input/Output)负载非常不均衡,在Android系统启动过程的中后期,大量时间被浪费在文件以及程序资源(程序运行需要的资源文件,包括S0程序动态库、图片和多媒体资源等)的读取上,但是在Android系统启动的前期i/o负载又很低。因此有必要针对这一问题进行解决,从而加快Android系统的开机启动速度。!
因此,本申请提供一种基于Android系统的资源处理方法,用以解决现有技术中Android系统的开机速度相对比较慢的技术问题。
本申请还提供了一种基于Android系统的资源处理装置和设备,用以保证上述方法在实际中的实现及应用。
为了解决上述问题,本申请公开了一种基于Android系统的资源处理方法,包括:
响应于Android系统的用户级进程init进程的启动,将所述Android系统的部分资源加载到内核缓冲区;
响应于Android系统的zygote进程及其孵化的子进程的启动,从所述内核缓冲区中加载所述Android系统的部分资源。
可选的,所述部分资源包括:用户定制资源或默认资源。
可选的,在所述部分资源为用户定制资源的情况下,所述将所述Android系统的部分资源加载到内核缓冲区,包括:
参考所述用户定制资源的文件存储路径获取到定制文件列表;
从所述定制文件列表中获取Android系统的用户定制资源。
本申请还提供了一种基于Android系统的资源处理装置,包括:
第一加载模块,用于响应于Android系统的用户级进程init进程的启动,将所述Android系统的部分资源加载到内核缓冲区;
第二加载模块,用于响应于Android系统的zygote进程及其孵化的子进程的启动,从所述内核缓冲区中加载所述Android系统的部分资源。
可选的,所述部分资源包括:用户定制资源或默认资源.
可选的,在所述部分资源为用户定制资源的情况下,所述第一加载模块,包括:
第一获取子模块,用于参考所述用户定制资源的文件存储路径获取到定制文件列表;
第二获取子模块,用于从所述定制文件列表中获取Android系统的用户定制资源。
本申请还提供了一种设备,包括:前述的任一项基于Android系统的资源处理装置。
与现有技术相比,本申请包括以下优点:
在本申请中,利用Android系统启动时前期和中后期负载不均衡的特点,在Android系统启动前期即启动init进程的时候就将部分资源先加载到内核缓冲区,并在Android系统启动中后期即zygote进程及其孵化的子进程启动时,再直接从内核缓冲区加在这部分资源,相对于现有技术来讲,不仅平衡了Android系统的前期和中后期的负载,同时也因为从内核缓冲区直接加在了一部分资源而使得Android系统的启动速度更快,进而也能够提升用户使用Android系统的体验。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请的一种基于Android系统的资源处理方法实施例的流程图;
图2是是本申请的一种基于Android系统的资源处理装置实施例的结构框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请可用于众多通用或专用的计算装置环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器装置、包括以上任何装置或设备的计算环境等等。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
参考图1,示出了本申请一种基于Android系统的资源处理方法实施例1的流程图,可以包括以下步骤:
步骤101:响应于Android系统的用户级进程init进程的启动,将所述Android系统的部分资源加载到内核缓冲区。
在本实施例中,当Android系统的init进程启动的时候,就会开始将Android系统的一部分资源先加载到内核缓冲区。其中,init进程是用户级进程,是操作系统内核进入文件系统后第一个运行的进程。
在不同的实施方式中,该部分资源可以是用户定制资源,也可以是默认资源。例如,当用户已经采用本实施例的方法对资源进行处理后,下一次再启动Android系统时,则默认加载上一次Android系统启动时加载到内核缓冲区(kernel cache)的系统资源,因此,默认资源可以为上一次Android系统启动时加载到内核缓冲区的系统资源。
用户定制资源则是用户设置的需要加载到内核缓冲区的那些资源。例如,在生产Android系统的智能手机时,就将步骤101中的部分资源设置好并集成在智能手机中。而在所述部分资源为用户定制资源的情况下,将所述Android系统的部分资源加载到内核缓冲区的步骤,具体可以包括:
步骤A1:参考所述用户定制资源的文件存储路径获取到定制文件列表。
在本实施例中,用户定制资源存储在定制文件列表中,因此首先需要获取到用户定制资源的文件存储路径并找到定制文件列表。其中,用户定制资源的存储路径一般为系统(system)分区下的目录和data(数据)分区目录,但是不同的设备可能存在差异,因此,需要依据设备的文件存储路径来获取到定制文件列表。
可以理解的是,具体用户在定制资源的时候,可以由设备厂商分析android定制系统所需I/O block的资源(包含so、apk安装包等),并根据分析结果确定用户定制资源都有哪些,并将其存放在定制文件列表中,以及将定制文件列表存储在预留的磁盘空间中。一般情况下,用户定制资源例如可以包括:android dalvik动态链接库、android framework安卓框架相关jar包以及dex文件、各个设备厂商预置的APK包以及dex文件。当然,用户定制资源也可以包括程序资源,例如开机启动程序运行所需要的资源文件等。
步骤A2:从所述定制文件列表中获取Android系统的用户定制资源。
再从定制文件列表中获取到用户定制资源的内容。
接着返回步骤102:响应于Android系统的zygote进程及其孵化的子进程的启动,从所述内核缓冲区中加载所述Android系统的部分资源。
在Android系统的zygote进程及其孵化的子进程的启动时,再从内核缓冲区中直接加载Android系统的部分资源,因为这部分资源已经在init进程启动的时候加载到内核缓冲区了,因此现在直接从内核缓冲区中加在这部分资源就会速度更快的实现。
采用本发明实施例,利用Android系统启动时前期和中后期负载不均衡的特点,在Android系统启动前期即启动init进程的时候就将部分资源先加载到内核缓冲区,并在Android系统启动中后期即zygote进程及其孵化的子进程启动时,再直接从内核缓冲区加在这部分资源,相对于现有技术来讲,不仅平衡了Android系统的前期和中后期的负载,同时也因为从内核缓冲区直接加在了一部分资源而使得Android系统的启动速度更快,进而也能够提升用户使用Android系统的体验。
对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
与上述本申请一种基于Android系统的资源处理方法实施例所提供的方法相对应,参见图2,本申请还提供了一种基于Android系统的资源处理装置实施例,在本实施例中,可以包括:
第一加载模块201,用于响应于Android系统的用户级进程init进程的启动,将所述Android系统的部分资源加载到内核缓冲区。
所述部分资源包括:用户定制资源或默认资源。所述默认资源为:上一次Android系统启动时加载到内核缓冲区的系统资源。
在所述部分资源为用户定制资源的情况下,所述第一加载模块201,具体可以包括:
第一获取子模块,用于参考所述用户定制资源的文件存储路径获取到定制文件列表;以及,第二获取子模块,用于从所述定制文件列表中获取Android系统的用户定制资源。
第二加载模块202,用于响应于Android系统的zygote进程及其孵化的子进程的启动,从所述内核缓冲区中加载所述Android系统的部分资源。
可以理解的是,基于Android系统的资源处理装置的实现代码可以在android系统init脚本中加入。
采用本发明实施例,利用Android系统启动时前期和中后期负载不均衡的特点,在Android系统启动前期即启动init进程的时候就由第一加载模块201将部分资源先加载到内核缓冲区,并在Android系统启动中后期即zygote进程及其孵化的子进程启动时,再由第二加载模块202直接从内核缓冲区加在这部分资源.相对于现有技术来讲,不仅平衡了Android系统的前期和中后期的负载,同时也因为从内核缓冲区直接加在了一部分资源而使得Android系统的启动速度更快,进而也能够提升用户使用Android系统的体验。
基于图1和图2的实施例,本申请还提供了一种设备,例如智能手机或者平板电脑等,在该设备的CPU上可以集成本申请中的基于Android系统的资源处理装置。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本申请所提供的一种基于Android系统的资源处理方法、装置和设备进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (7)
1.一种基于Android系统的资源处理方法,其特征在于,包括:
响应于Android系统的用户级进程init进程的启动,将所述Android系统的部分资源加载到内核缓冲区;
响应于Android系统的zygote进程及其孵化的子进程的启动,从所述内核缓冲区中加载所述Android系统的部分资源。
2.根据权利要求1所述的方法,其特征在于,所述部分资源包括:用户定制资源或默认资源。
3.根据权利要求2所述的方法,其特征在于,在所述部分资源为用户定制资源的情况下,所述将所述Android系统的部分资源加载到内核缓冲区,包括:
参考所述用户定制资源的文件存储路径获取到定制文件列表;
从所述定制文件列表中获取Android系统的用户定制资源。
4.一种基于Android系统的资源处理装置,其特征在于,包括:
第一加载模块,用于响应于Android系统的用户级进程init进程的启动,将所述Android系统的部分资源加载到内核缓冲区;
第二加载模块,用于响应于Android系统的zygote进程及其孵化的子进程的启动,从所述内核缓冲区中加载所述Android系统的部分资源。
5.根据权利要求4所述的装置,其特征在于,所述部分资源包括:用户定制资源或默认资源。
6.根据权利要求4所述的装置,其特征在于,在所述部分资源为用户定制资源的情况下,所述第一加载模块,包括:
第一获取子模块,用于参考所述用户定制资源的文件存储路径获取到定制文件列表;第二获取子模块,用于从所述定制文件列表中获取Android系统的用户定制资源。
7.一种设备,其特征在于,包括:如权利要求4~6任一项所述的基于Android系统的资源处理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410287681.4A CN104050001B (zh) | 2014-06-24 | 2014-06-24 | 基于Android系统的资源处理方法、装置和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410287681.4A CN104050001B (zh) | 2014-06-24 | 2014-06-24 | 基于Android系统的资源处理方法、装置和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104050001A true CN104050001A (zh) | 2014-09-17 |
CN104050001B CN104050001B (zh) | 2018-05-18 |
Family
ID=51502907
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410287681.4A Active CN104050001B (zh) | 2014-06-24 | 2014-06-24 | 基于Android系统的资源处理方法、装置和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104050001B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104376256A (zh) * | 2014-12-02 | 2015-02-25 | 北京奇虎科技有限公司 | 应用程序进程孵化控制方法及装置 |
CN104461643A (zh) * | 2014-12-16 | 2015-03-25 | 中科创达软件股份有限公司 | 电子设备的控制方法、控制装置及电子设备 |
CN105302579A (zh) * | 2015-11-27 | 2016-02-03 | 北京奇虎科技有限公司 | 一种系统内存的占用方法和装置 |
CN105487845A (zh) * | 2014-09-18 | 2016-04-13 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
CN106648773A (zh) * | 2016-12-16 | 2017-05-10 | 四川长虹电器股份有限公司 | 一种基于Android系统实现快速开机的方法 |
CN112313620A (zh) * | 2019-11-19 | 2021-02-02 | 深圳市大疆创新科技有限公司 | 安卓系统启动的方法、装置、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102830996A (zh) * | 2012-08-08 | 2012-12-19 | 广东欧珀移动通信有限公司 | 一种手持设备的快速开机方法 |
CN102012832B (zh) * | 2010-12-14 | 2013-06-19 | Tcl集团股份有限公司 | 一种加速Android系统启动的方法及装置 |
CN103810009A (zh) * | 2014-02-20 | 2014-05-21 | 北京奇虎科技有限公司 | 一种计算机操作系统启动加速的方法和装置 |
-
2014
- 2014-06-24 CN CN201410287681.4A patent/CN104050001B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102012832B (zh) * | 2010-12-14 | 2013-06-19 | Tcl集团股份有限公司 | 一种加速Android系统启动的方法及装置 |
CN102830996A (zh) * | 2012-08-08 | 2012-12-19 | 广东欧珀移动通信有限公司 | 一种手持设备的快速开机方法 |
CN103810009A (zh) * | 2014-02-20 | 2014-05-21 | 北京奇虎科技有限公司 | 一种计算机操作系统启动加速的方法和装置 |
Non-Patent Citations (2)
Title |
---|
金智义等: ""嵌入式Android系统的启动研究"", 《佳木斯大学学报(自然科学版)》 * |
高毅等: ""基于Android的智能电视开机速度优化方案"", 《广播与电视技术》 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105487845A (zh) * | 2014-09-18 | 2016-04-13 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
CN105487845B (zh) * | 2014-09-18 | 2018-08-31 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
CN104376256A (zh) * | 2014-12-02 | 2015-02-25 | 北京奇虎科技有限公司 | 应用程序进程孵化控制方法及装置 |
CN104376256B (zh) * | 2014-12-02 | 2017-04-05 | 北京奇虎科技有限公司 | 应用程序进程孵化控制方法及装置 |
CN104461643A (zh) * | 2014-12-16 | 2015-03-25 | 中科创达软件股份有限公司 | 电子设备的控制方法、控制装置及电子设备 |
CN104461643B (zh) * | 2014-12-16 | 2017-12-19 | 中科创达软件股份有限公司 | 电子设备的控制方法、控制装置及电子设备 |
CN105302579A (zh) * | 2015-11-27 | 2016-02-03 | 北京奇虎科技有限公司 | 一种系统内存的占用方法和装置 |
CN105302579B (zh) * | 2015-11-27 | 2019-05-21 | 北京奇虎科技有限公司 | 一种系统内存的占用方法和装置 |
CN106648773A (zh) * | 2016-12-16 | 2017-05-10 | 四川长虹电器股份有限公司 | 一种基于Android系统实现快速开机的方法 |
CN112313620A (zh) * | 2019-11-19 | 2021-02-02 | 深圳市大疆创新科技有限公司 | 安卓系统启动的方法、装置、设备及存储介质 |
WO2021097683A1 (zh) * | 2019-11-19 | 2021-05-27 | 深圳市大疆创新科技有限公司 | 安卓系统启动的方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN104050001B (zh) | 2018-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9307342B2 (en) | Dynamic rendering for software applications | |
CN110086877B (zh) | 应用程序分享、分享信息显示方法、装置、设备及介质 | |
CN104050001A (zh) | 基于Android系统的资源处理方法、装置和设备 | |
WO2017166447A1 (zh) | 内核模块加载方法和装置 | |
CN111666497B (zh) | 应用程序的加载方法、装置、电子设备及可读存储介质 | |
US8589862B2 (en) | Application loading | |
CN103189853B (zh) | 用于提供高效情境分类的方法和装置 | |
CN103443763B (zh) | 包含对重写虚拟函数的调用的支持的isa桥接 | |
CN103365644A (zh) | 一种扩展软件功能的方法及装置 | |
KR20200037602A (ko) | 인공 신경망 선택 장치 및 방법 | |
CN104750492A (zh) | 基于嵌入式操作系统的移动设备的开机控制方法及装置 | |
CN116257320B (zh) | 一种基于dpu虚拟化配置管理方法、装置、设备及介质 | |
CN107479868B (zh) | 一种界面加载方法、装置及设备 | |
RU2616164C9 (ru) | Способы и устройство для работы браузерного движка | |
CN111580883B (zh) | 应用程序启动方法、装置、计算机系统和介质 | |
US11438403B2 (en) | Page presentation method and system, computer system, and computer readable medium | |
US10872347B2 (en) | Transmitting application data for on-device demos | |
US8615744B2 (en) | Methods and system for managing assets in programming code translation | |
CN111382076B (zh) | 应用程序的测试方法、装置、电子设备及计算机存储介质 | |
CN111142972B (zh) | 用于扩展应用程序的功能的方法、装置、系统及介质 | |
US9189633B2 (en) | Download management method and device based on android browser | |
CN109657179B (zh) | 一种业务处理方法、系统及存储介质 | |
KR20100122431A (ko) | 다수 개의 컴퓨팅 시스템 및/또는 환경들에서의 입출력 자원들의 공유 | |
CN112068814A (zh) | 可执行文件的生成方法、装置、系统及介质 | |
CN116737254A (zh) | 类加载方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP02 | Change in the address of a patent holder | ||
CP02 | Change in the address of a patent holder |
Address after: Room 101-105, floor 1, Chuangda building, No. 9, Qinghua East Road, Haidian District, Beijing 100083 (Dongsheng District) Patentee after: Thunder Software Technology Co., Ltd. Address before: 100191 Beijing Haidian District Lung Cheung Road No. 1 Tai Xiang business building 4 layer 401-409 Patentee before: Thunder Software Technology Co., Ltd. |