CN104023147A - 一种可使移动终端稳定休眠的方法及系统 - Google Patents
一种可使移动终端稳定休眠的方法及系统 Download PDFInfo
- Publication number
- CN104023147A CN104023147A CN201410301414.8A CN201410301414A CN104023147A CN 104023147 A CN104023147 A CN 104023147A CN 201410301414 A CN201410301414 A CN 201410301414A CN 104023147 A CN104023147 A CN 104023147A
- Authority
- CN
- China
- Prior art keywords
- application
- dormancy
- mobile terminal
- pid
- cpu
- 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
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Telephone Function (AREA)
Abstract
本发明公开了一种可使移动终端稳定休眠的方法及系统,方法包括下述步骤:S1、在手机准备进入休眠状态的时候,检测CPU锁是否被释放掉;S2、启动一个定时器,设置定时时间T,在达到该定时时间后,如果该CPU锁仍没有被释放,则说明该应用可能出现某种故障,就会导致系统无法休眠;S3、获取该应用的PID,即该应用的进程号,由于是该进程导致系统无法休眠,那么强制杀掉该应用。系统包括顺序连接的检测模块、定时模块以及应用关闭模块。运用本发明之后,在系统睡眠的时候,可以检测到哪些应用导致系统无法休眠,从而杀掉该应用,让系统正常休眠,减少不必要的功耗。
Description
技术领域
本发明涉及移动终端休眠的研究领域,特别涉及一种可使移动终端稳定休眠的方法及系统。
背景技术
在日常的使用过程中,我们偶尔会碰到手机过了一个晚上,电池电被消耗的差不多了的情况,本来以为手机休眠了,但是实际上,虽然屏幕熄灭了,但系统并没有真正地休眠。这样,就会导致电池耗电很快,给用户带来很大的困扰。某个应用获取到CPU锁,如果在睡眠的时候,没有释放掉该锁,或者在系统休眠的时候还在不断地申请该CPU锁,那么就会引起系统无法休眠,导致大量耗电。本发明通过检测CPU锁的释放情况,来检测是那个应用获取的CPU锁,从而解决掉无法休眠的问题。
中国发明专利公开了一种终端休眠方法及终端(公开号为CN101631337A)该技术方案是:对于终端内的每个业务,根据业务的业务信息确定对应的网络保持时间和中央处理器CPU保持时间;对于每个业务,启动所述业务对应的第一定时器和第二定时器,其中,所述第一定时器的时长为所述CPU保持时间,所述第二定时器的时长为所述网络保持时间;在所述每个业务的第一定时器都到时的情况下,使CPU的休眠功能使能;在所述每个业务的第二定时器都到时的情况下,使无线模块的休眠功能使能;其中,所述网络保持时间为所述业务需要连续使用网络的时长,所述CPU保持时间为所述业务需要CPU连续运行的时长。但是,上述技术方案仍然不能充分解决在手机休眠时完全关掉应用的问题。
发明内容
本发明的主要目的在于克服现有技术的缺点与不足,提供一种可使移动终端稳定休眠的方法。
本发明的另一目的在于,提供一种可使移动终端稳定休眠的系统。
为了达到上述第一目的,本发明采用以下技术方案:
一种可使移动终端稳定休眠的方法,包括下述步骤:
S1、在移动终端准备进入休眠状态的时候,检测CPU锁是否被释放掉;
S2、启动一个定时器,设置定时时间T,在达到该定时时间后,如果该CPU锁仍没有被释放,则说明该应用可能出现某种故障,就会导致系统无法休眠;
S3、获取该应用的PID,即该应用的进程号,由于是该进程导致系统无法休眠,那么强制杀掉该应用。
优选的,步骤S1中,检测CPU锁是否被释放掉的具体方法为:
S1.1、在系统休眠的时候,利用接口函数检测当前CPU锁是否被持有;
S1.2、同时检测是哪个应用持有该CPU锁,即如果某个应用调用这个接口函数,那么则说明该应用申请了这把CPU锁。
优选的,步骤S2中,定时时间T为60S-120S。
优选的,步骤S3中,关闭该进程的方法为:
S3.1、获取binder通信对端的PID;
S3.2、向问题PID发送sig9信号从而杀掉进程。
优选的,如果系统不断的申请CPU锁,则进行如下操作:
S4.1、在休眠后,如果系统被频繁唤醒,那系统也是无法休眠的,可以在每次唤醒时,记录下唤醒的应用与唤醒的时间,并维护一张表,记录近N次的记录;
S4.2、如果在表中查询到有某一个应用多次唤醒,并且时间间隔都较短;说明该应用处于异常状态;
S4.3、获取该应用的PID,即该应用的进程号,由于是该进程导致系统无法休眠,那么强制杀掉该应用。
优选的,步骤S4.1中,维护一张表的具体方法为:
通过数组的形式记录每个PID的申请cpu锁的次数,并保存到一个表格中;
如果PID在某个时间段内,申请cpu锁的次数超过设定次数,那么说明这个PID的应用异常了,则强制杀掉该应用。
优选的,所述移动终端为手机、电子书、掌上电脑或人机交互终端。
为了达到上述第二目的,本发明采用以下技术方案:
一种可使移动终端稳定休眠的系统,包括:
检测模块,用于在移动终端准备进入休眠状态的时候,检测CPU锁是否被释放掉;
定时模块,用于启动一个定时器,设置定时时间T,在达到该定时时间后,如果该CPU锁仍没有被释放,则说明该应用可能出现某种故障,就会导致系统无法休眠;
应用关闭模块,用于获取该应用的PID,由于是该进程导致系统无法休眠,那么强制杀掉该应用。
优选的,所述检测模块包括CPU锁检测模块,所述CPU锁检测模块用于在系统休眠的时候,利用接口函数检测当前CPU锁是否被持有,并同时检测是哪个应用持有该CPU锁,即如果某个应用调用这个接口函数,那么则说明该应用申请了这把CPU锁。
优选的,所述应用关闭模块包括PID获取模块和信号发送模块;
所述PID获取模块,用于获取binder通信对端的PID;
所述信号发送模块,用于向问题PID发送sig9信号,从而杀掉进程。
本发明与现有技术相比,具有如下优点和有益效果:
1、运用本发明之后,在系统睡眠的时候,可以检测到哪些应用导致系统无法休眠,从而杀掉该应用,让系统正常休眠,减少不必要的功耗。
2、本发明的方法应用广泛,可以在手机、平板电脑或者其他智能手持终端上运用,具有通用性。
3、本发明的方法在移动终端上使用时,可以减少手机的发烫,提升用户使用体验。
附图说明
图1是本发明实施例1的方法流程图;
图2是本发明实施例2的方法流程图。
具体实施方式
下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。
实施例1
如图1所示,本实施例一种可使移动终端稳定休眠的方法,包括下述步骤:
S1、在移动终端准备进入休眠状态的时候,检测CPU锁(PARTIAL_WAKE_LOCK)是否被释放掉;
S2、启动一个定时器,设置定时时间T,在达到该定时时间后,如果该CPU锁仍没有被释放,则说明该应用可能出现某种故障,就会导致系统无法休眠;
S3、获取该应用的PID,即该应用的进程号,由于是该进程导致系统无法休眠,那么强制杀掉该应用。
步骤S1中,检测CPU锁是否被释放掉的具体方法为:
S1.1、在系统休眠的时候,利用接口函数检测当前CPU锁是否被持有;
S1.2、同时检测是哪个应用持有该CPU锁,即如果某个应用调用这个接口函数,那么则说明该应用申请了这把CPU锁。
步骤S2中,定时时间T为60S-120S;以选定120S为例进行说明,在该定时时间到后,如果该锁仍没有被释放,即说明该应用可能出现某种故障(比如说没有收到某些返回值等等),这样,就一定会导致系统无法休眠;所以采取本发明的方法来解决上述问题。在通常情况下,应用持有该CPU锁的时间往往都不超过60S。
步骤S3中,关闭该进程的方法为:
S3.1、获取binder通信对端的PID;
S3.2、向问题PID发送sig9信号从而杀掉进程。
当然,本实施例中所述的移动终端可以是手机、电子书、个人数字助理(PDA)、掌上电脑、人机交互终端或其他具有显示功能的手持式终端设备。
本实施例一种可使移动终端稳定休眠的系统,包括:
检测模块,用于在移动终端准备进入休眠状态的时候,检测CPU锁是否被释放掉;
定时模块,用于启动一个定时器,设置定时时间T,在达到该定时时间后,如果该CPU锁仍没有被释放,则说明该应用可能出现某种故障,就会导致系统无法休眠;
应用关闭模块,用于获取该应用的PID,由于是该进程导致系统无法休眠,那么强制杀掉该应用。
所述检测模块包括CPU锁检测模块,所述CPU锁检测模块用于在系统休眠的时候,利用接口函数检测当前CPU锁是否被持有,并同时检测是哪个应用持有该CPU锁,即如果某个应用调用这个接口函数,那么则说明该应用申请了这把CPU锁。
所述应用关闭模块包括PID获取模块和信号发送模块;
所述PID获取模块,用于获取binder通信对端的PID;
所述信号发送模块,用于向问题PID发送sig9信号,从而杀掉进程。
实施例2
本实施例除了下述技术特征之外,其它技术特征与实施例1相同:
如图2所示,还存在这样一种情况,如果系统不断的申请CPU锁,则进行如下操作:
S4.1、在休眠后,如果系统被频繁唤醒(比如说2秒1次),那系统也是无法休眠的,可以在每次唤醒时,记录下唤醒的应用与唤醒的时间,并维护一张表,记录近N次的记录,其中N的取值可以根据实际的情况进行选定;
S4.2、如果在表中查询到有某一个应用多次唤醒(比如10次),并且时间间隔都较短;说明该应用处于异常状态;
S4.3、获取该应用的PID,即该应用的进程号,由于是该进程导致系统无法休眠,那么强制杀掉该应用。
步骤S4.1中,维护一张表的具体方法为:
通过数组的形式记录每个PID的申请cpu锁的次数,并保存到一个表格中;
如果PID在某个时间段内,申请cpu锁的次数超过设定次数,那么说明这个PID的应用异常了,则强制杀掉该应用。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
Claims (10)
1.一种可使移动终端稳定休眠的方法,其特征在于,包括下述步骤:
S1、在移动终端准备进入休眠状态的时候,检测CPU锁是否被释放掉;
S2、启动一个定时器,设置定时时间T,在达到该定时时间后,如果该CPU锁仍没有被释放,则说明该应用可能出现某种故障,就会导致系统无法休眠;
S3、获取该应用的PID,即该应用的进程号,由于是该进程导致系统无法休眠,那么强制杀掉该应用。
2.根据权利要求1所述的可使移动终端稳定休眠的方法,其特征在于,步骤S1中,检测CPU锁是否被释放掉的具体方法为:
S1.1、在系统休眠的时候,利用接口函数检测当前CPU锁是否被持有;
S1.2、同时检测是哪个应用持有该CPU锁,即如果某个应用调用这个接口函数,那么则说明该应用申请了这把CPU锁。
3.根据权利要求1所述的可使移动终端稳定休眠的方法,其特征在于,步骤S2中,定时时间T为60S-120S。
4.根据权利要求1所述的可使移动终端稳定休眠的方法,其特征在于,步骤S3中,关闭该进程的方法为:
S3.1、获取binder通信对端的PID;
S3.2、向问题PID发送sig9信号从而杀掉进程。
5.根据权利要求1所述的可使移动终端稳定休眠的方法,其特征在于,如果系统不断的申请CPU锁,则进行如下操作:
S4.1、在休眠后,如果系统被频繁唤醒,那系统也是无法休眠的,可以在每次唤醒时,记录下唤醒的应用与唤醒的时间,并维护一张表,记录近N次的记录;
S4.2、如果在表中查询到有某一个应用多次唤醒,并且时间间隔都较短;说明该应用处于异常状态;
S4.3、获取该应用的PID,即该应用的进程号,由于是该进程导致系统无法休眠,那么强制杀掉该应用。
6.根据权利要求5所述的可使移动终端稳定休眠的方法,其特征在于,步骤S4.1中,维护一张表的具体方法为:
通过数组的形式记录每个PID的申请cpu锁的次数,并保存到一个表格中;
如果PID在某个时间段内,申请cpu锁的次数超过设定次数,那么说明这个PID的应用异常了,则强制杀掉该应用。
7.根据权利要求1-6中任一项所述的可使移动终端稳定休眠的方法,其特征在于,所述移动终端为手机、电子书、掌上电脑或人机交互终端。
8.一种可使移动终端稳定休眠的系统,其特征在于,包括:
检测模块,用于在移动终端准备进入休眠状态的时候,检测CPU锁是否被释放掉;
定时模块,用于启动一个定时器,设置定时时间T,在达到该定时时间后,如果该CPU锁仍没有被释放,则说明该应用可能出现某种故障,就会导致系统无法休眠;
应用关闭模块,用于获取该应用的PID,由于是该进程导致系统无法休眠,那么强制杀掉该应用。
9.根据权利要求8所述的可使移动终端稳定休眠的系统,其特征在于,所述检测模块包括CPU锁检测模块,所述CPU锁检测模块用于在系统休眠的时候,利用接口函数检测当前CPU锁是否被持有,并同时检测是哪个应用持有该CPU锁,即如果某个应用调用这个接口函数,那么则说明该应用申请了这把CPU锁。
10.根据权利要求8所述的可使移动终端稳定休眠的系统,其特征在于,所述应用关闭模块包括PID获取模块和信号发送模块;
所述PID获取模块,用于获取binder通信对端的PID;
所述信号发送模块,用于向问题PID发送sig9信号,从而杀掉进程。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410301414.8A CN104023147B (zh) | 2014-06-27 | 2014-06-27 | 一种可使移动终端稳定休眠的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410301414.8A CN104023147B (zh) | 2014-06-27 | 2014-06-27 | 一种可使移动终端稳定休眠的方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104023147A true CN104023147A (zh) | 2014-09-03 |
CN104023147B CN104023147B (zh) | 2016-05-11 |
Family
ID=51439709
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410301414.8A Expired - Fee Related CN104023147B (zh) | 2014-06-27 | 2014-06-27 | 一种可使移动终端稳定休眠的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104023147B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106020962A (zh) * | 2016-05-31 | 2016-10-12 | 广东欧珀移动通信有限公司 | 一种进程控制方法及终端设备 |
CN106095645A (zh) * | 2016-06-21 | 2016-11-09 | 广东欧珀移动通信有限公司 | 一种应用程序查找方法和装置 |
CN106686633A (zh) * | 2017-02-20 | 2017-05-17 | 苏州蜗牛数字科技股份有限公司 | 一种阻止wifi恶意频繁唤醒的方法 |
CN107291212A (zh) * | 2017-06-16 | 2017-10-24 | 深圳天珑无线科技有限公司 | 电源锁处理方法及装置 |
CN109947484A (zh) * | 2019-02-25 | 2019-06-28 | 努比亚技术有限公司 | 一种唤醒锁的控制方法、终端及计算机可读存储介质 |
CN110572866A (zh) * | 2019-07-26 | 2019-12-13 | 华为技术有限公司 | 一种唤醒锁的管理方法及电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101408861A (zh) * | 2007-10-11 | 2009-04-15 | 鸿富锦精密工业(深圳)有限公司 | 应用程序实时监控系统及方法 |
US20120209413A1 (en) * | 2011-02-14 | 2012-08-16 | Microsoft Corporation | Background Audio on Mobile Devices |
CN102946486A (zh) * | 2012-11-20 | 2013-02-27 | 惠州Tcl移动通信有限公司 | 一种基于手机的后台应用自动清理方法及手机 |
CN103324519A (zh) * | 2013-06-17 | 2013-09-25 | 华为技术有限公司 | 一种恶意耗电应用的清理方法、装置及用户终端 |
JP5324340B2 (ja) * | 2009-06-29 | 2013-10-23 | ルネサスエレクトロニクス株式会社 | マイクロコンピュータ |
-
2014
- 2014-06-27 CN CN201410301414.8A patent/CN104023147B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101408861A (zh) * | 2007-10-11 | 2009-04-15 | 鸿富锦精密工业(深圳)有限公司 | 应用程序实时监控系统及方法 |
JP5324340B2 (ja) * | 2009-06-29 | 2013-10-23 | ルネサスエレクトロニクス株式会社 | マイクロコンピュータ |
US20120209413A1 (en) * | 2011-02-14 | 2012-08-16 | Microsoft Corporation | Background Audio on Mobile Devices |
CN102946486A (zh) * | 2012-11-20 | 2013-02-27 | 惠州Tcl移动通信有限公司 | 一种基于手机的后台应用自动清理方法及手机 |
CN103324519A (zh) * | 2013-06-17 | 2013-09-25 | 华为技术有限公司 | 一种恶意耗电应用的清理方法、装置及用户终端 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106020962A (zh) * | 2016-05-31 | 2016-10-12 | 广东欧珀移动通信有限公司 | 一种进程控制方法及终端设备 |
CN106020962B (zh) * | 2016-05-31 | 2019-05-21 | Oppo广东移动通信有限公司 | 一种进程控制方法及终端设备 |
US10719351B2 (en) | 2016-05-31 | 2020-07-21 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Method for controlling states of processes and related device |
US10754684B2 (en) | 2016-05-31 | 2020-08-25 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Method for controlling process and related device |
CN106095645A (zh) * | 2016-06-21 | 2016-11-09 | 广东欧珀移动通信有限公司 | 一种应用程序查找方法和装置 |
CN106686633A (zh) * | 2017-02-20 | 2017-05-17 | 苏州蜗牛数字科技股份有限公司 | 一种阻止wifi恶意频繁唤醒的方法 |
CN107291212A (zh) * | 2017-06-16 | 2017-10-24 | 深圳天珑无线科技有限公司 | 电源锁处理方法及装置 |
CN109947484A (zh) * | 2019-02-25 | 2019-06-28 | 努比亚技术有限公司 | 一种唤醒锁的控制方法、终端及计算机可读存储介质 |
CN110572866A (zh) * | 2019-07-26 | 2019-12-13 | 华为技术有限公司 | 一种唤醒锁的管理方法及电子设备 |
CN110572866B (zh) * | 2019-07-26 | 2021-03-30 | 华为技术有限公司 | 一种唤醒锁的管理方法及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN104023147B (zh) | 2016-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9970966B2 (en) | Method, device and computer storage medium for detecting power consumption of an application | |
CN104023147A (zh) | 一种可使移动终端稳定休眠的方法及系统 | |
KR101641174B1 (ko) | 셧다운 상태에서의 알람의 구현방법, 이동 단말기, 프로그램 및 기록매체 | |
US10057856B2 (en) | Wake-up control method and apparatus, and terminal device | |
WO2020224658A1 (zh) | 待机优化方法、装置、计算机设备和存储介质 | |
CN103402027A (zh) | 一种移动终端和使移动终端进入睡眠状态的方法 | |
EP3190771B1 (en) | Method and device for managing instant communication application program, and mobile terminal thereof | |
KR20100101652A (ko) | 모바일 네트워크 장치 배터리 보존 시스템 및 방법들 | |
CN103619056A (zh) | 一种上报传感器数据的方法和终端 | |
CN103546951A (zh) | 移动设备及其休眠管理方法 | |
CN104184907B (zh) | 终端应用软件在待机状态下的唤醒数据的检测方法及终端 | |
CN102779068A (zh) | 移动终端和应用程序联网控制方法 | |
CN105867579A (zh) | 终端控制方法、装置及终端 | |
CN109388225A (zh) | 按键触发节能控制方法、存储介质、控制装置及其终端 | |
CN110209428A (zh) | 一种终端屏幕唤醒方法、装置、终端及存储介质 | |
CN105824391A (zh) | 一种定时器唤醒控制方法及电子设备 | |
CN104375929A (zh) | 一种信息处理方法及电子设备 | |
CN105867577A (zh) | 一种终端唤醒方法及终端 | |
CN108616906A (zh) | 一种lte基站节能方法和装置 | |
CN106484075A (zh) | 调整应用程序唤醒时间的方法及装置 | |
CN105286867A (zh) | 一种采集声音信息的方法及装置 | |
CN104063316B (zh) | 一种应用的测试方法及装置 | |
CN105739686A (zh) | 一种移动终端的控制方法及装置 | |
CN104052861B (zh) | 一种终端及其唤醒方法 | |
CN103338300B (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder |
Address after: Changan town in Guangdong province Dongguan 523860 usha Beach Road No. 18 Patentee after: GUANGDONG OPPO MOBILE TELECOMMUNICATIONS Corp.,Ltd. Address before: Changan town in Guangdong province Dongguan 523860 usha Beach Road No. 18 Patentee before: GUANGDONG OPPO MOBILE TELECOMMUNICATIONS Corp.,Ltd. |
|
CP01 | Change in the name or title of a patent holder | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160511 |
|
CF01 | Termination of patent right due to non-payment of annual fee |