CN105808297B - 一种程序运行管理方法及终端 - Google Patents

一种程序运行管理方法及终端 Download PDF

Info

Publication number
CN105808297B
CN105808297B CN201610131634.XA CN201610131634A CN105808297B CN 105808297 B CN105808297 B CN 105808297B CN 201610131634 A CN201610131634 A CN 201610131634A CN 105808297 B CN105808297 B CN 105808297B
Authority
CN
China
Prior art keywords
program
starting
frequency
operation information
terminal
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.)
Active
Application number
CN201610131634.XA
Other languages
English (en)
Other versions
CN105808297A (zh
Inventor
张强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangdong Oppo Mobile Telecommunications Corp Ltd
Original Assignee
Guangdong Oppo Mobile Telecommunications Corp Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guangdong Oppo Mobile Telecommunications Corp Ltd filed Critical Guangdong Oppo Mobile Telecommunications Corp Ltd
Priority to CN201610131634.XA priority Critical patent/CN105808297B/zh
Publication of CN105808297A publication Critical patent/CN105808297A/zh
Application granted granted Critical
Publication of CN105808297B publication Critical patent/CN105808297B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken

Abstract

本发明公开了一种程序运行管理方法及设备,该方法包括:获取操作系统中的程序运行信息;根据所述程序运行信息,从正在运行的程序中,筛选出与第一程序的运行时长差小于预设值,并且与所述第一程序关联的第二程序;所述正在运行的程序包括:所述第一程序和所述第二程序,其中,所述第一程序是被设置为自动启动的程序,所述第二程序是未被设置为自动启动的程序;停止运行筛选出的所述第二程序。采用上述方案,可避免被设置为自动启动的程序关联启动未被设置为自动启动的程序,提高了操作系统的运行速度,节约了功耗。

Description

一种程序运行管理方法及终端
技术领域
本发明涉及计算机技术领域,尤其涉及一种程序运行管理方法及终端。
背景技术
当电脑或手机等计算机设备使用一段时间之后,由于开机自动启动的软件越来越多,操作系统的启动速度会变得越来越慢,这样导致用户需要等待很长的系统启动时间。
为了减少自动启动的软件,用户往往会定期对系统配置进行整理,以达到节省功耗、加长待机时间、加快操作系统运行的目的。例如,Windows的用户可以通过命令msconfig来编辑Windows操作系统的启动项,仅仅勾选允许开机自动启动的软件,对不希望开机自动启动的软件撤消勾选。
但是,目前很多被设置为自动启动的程序在自动启动后,往往会关联启动另一个没有被设置为自动启动的程序。例如,手机开机后,按照启动项设置,程序A自动启动,虽然程序B未被设置为自动启动,但是,程序A主动激活程序B并使程序B启动。这种情况往往发生在程序A和程序B是同一个公司开发的,或者程序A需要与程序B频繁交互而提前激活程序B的场景下,这样就导致未设置为自动启动的程序也可以暗地里在后台启动,增加了操作系统的运行负载。
发明内容
本发明实施例提供了一种程序运行管理方法及设备,可避免被设置为自动启动的程序关联启动未被设置为自动启动的程序,提高了操作系统的运行速度,节约了功耗。
第一方面,本发明实施例提供了一种程序运行管理方法,包括:
获取操作系统中的程序运行信息;
根据所述程序运行信息,从正在运行的程序中,筛选出与第一程序的运行时长差小于预设值,并且与所述第一程序关联的第二程序;所述正在运行的程序包括:所述第一程序和所述第二程序,其中,所述第一程序是被设置为自动启动的程序,所述第二程序是未被设置为自动启动的程序;
停止运行筛选出的所述第二程序。
结合第一方面,在第一种可能的实现方式中,所述第二程序不包括:未被设置为自动启动的预设系统程序。
结合第一方面,在第二种可能的实现方式中,所述第二程序不包括:未被设置为自动启动的预设安全防护程序。
结合第一方面,或者结合第一方面的第一种可能的实现方式,或者结合第一方面的第二种可能的实现方式,在第三种可能的实现方式中,所述方法还包括:
监测所述第二程序与所述第一程序之间的通信;
将与所述第一程序的交互频率高于预设频率阈值的所述第二程序,确定为所述与所述第一程序关联的第二程序。
结合第一方面的第三种可能的实现方式,在第四种可能的实现方式中,所述监测筛选出的所述第二程序与所述第一程序之间的通信,包括:
通过监测筛选出的所述第二程序与所述第一程序之间的套接字通信管道来获取二者之间的交互频率;
或者,将筛选出的所述第二程序与所述第一程序访问共同的共享内存的频率作为二者之间的交互频率。
第二方面,本发明实施例提供了一种终端,包括:
获取单元,用于获取操作系统中的程序运行信息;
筛选单元,用于根据所述程序运行信息,从正在运行的程序中,筛选出与第一程序的运行时长差小于预设值,并且与所述第一程序关联的第二程序;所述正在运行的程序包括:所述第一程序和所述第二程序,其中,所述第一程序是被设置为自动启动的程序,所述第二程序是未被设置为自动启动的程序;
停止运行单元,用于停止运行筛选出的所述第二程序。
结合第二方面,在第一种可能的实现方式中,所述第二程序不包括:未被设置为自动启动的预设系统程序。
结合第二方面,在第二种可能的实现方式中,所述第二程序不包括:未被设置为自动启动的预设安全防护程序。
结合第二方面,或者结合第二方面的第一种可能的实现方式,或者结合第二方面的第二种可能的实现方式,在第三种可能的实现方式中,还包括:监测单元和确定单元,其中:
所述监测单元,用于监测所述第二程序与所述第一程序之间的通信;
所述确定单元,用于将与所述第一程序的交互频率高于预设频率阈值的所述第二程序,确定为与所述第一程序关联的第二程序。
结合第二方面的第三种可能的实现方式,在第四种可能的实现方式中,所述监测单元,具体用于:通过监测筛选出的所述第二程序与所述第一程序之间的套接字通信管道来获取二者之间的交互频率;
或者,将筛选出的所述第二程序与所述第一程序访问共同的共享内存的频率作为二者之间的交互频率。
本发明实施例中,通过获取操作系统中的程序运行信息,根据所述程序运行信息,从正在运行的程序中,筛选出与第一程序的运行时长差小于预设值,并且与所述第一程序关联的第二程序;所述正在运行的程序包括:所述第一程序和所述第二程序,最后停止运行筛选出的所述第二程序;其中,所述第一程序是被设置为自动启动的程序,所述第二程序是未被设置为自动启动的程序。上述方案可避免被设置为自动启动的程序关联启动未被设置为自动启动的程序,提高了操作系统的运行速度,节约了功耗。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的程序运行管理方法的流程示意图;
图2是本发明实施例提供的终端的第一实施例的结构示意图;
图3是本发明实施例提供的终端的第二实施例的结构示意图;
图4是本发明实施例提供的终端的第三实施例的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例公开了一种程序运行管理方法及设备,可避免被设置为自动启动的程序关联启动未被设置为自动启动的程序,提高了操作系统的运行速度,节约了功耗。
本发明可以由移动终端实现,还可以由个人电脑、网络设备等计算设备来实现。下面以移动终端为例来进行说明。
优选地,本发明的方案可以由一种安装并运行于移动终端中的应用程序来实现。例如,本发明的方案可以由一个始终后台运行的应用程序来实现。另外,本发明的方案还可以作为一个子功能模块集成在应用程序管理模块中。
在此,移动终端包括但不限于任何一种基于智能操作系统的手持式电子产品,其可与用户通过键盘、虚拟键盘、触摸板、触摸屏以及声控设备等输入设备来进行人机交互,诸如智能手机、平板电脑等。其中,智能操作系统包括但不限于任何通过向移动设备提供各种移动应用来丰富设备功能的操作系统,诸如安卓(Android)、IOS、Windows Phone等。
参见图1,是本发明实施例提供的程序运行管理方法的流程示意图。如图1所示,该方法可包括以下步骤:
S101,获取操作系统中的程序运行信息。
本发明实施例中,所述程序运行信息可包括:程序的类型、程序的标识信息(如Application ID)、运行时间、占用的系统资源(如堆栈)等。通常,在操作系统中运行的程序会将程序运行信息保存在程序运行日志中,并且,保存程序运行日志的路径一般会在该程序被安装的时候指定。本发明实施例中,可以首先获取正在运行的各个程序的安装路径,然后在各自的安装路径下面查找到用于保存程序运行信息的日志文件,从而获取到各个程序的运行信息。
S103,根据所述程序运行信息,从正在运行的程序中,筛选出与第一程序的运行时长差小于预设值,并且与所述第一程序关联的第二程序;所述正在运行的程序包括:所述第一程序和所述第二程序,其中,所述第一程序是被设置为自动启动的程序,所述第二程序是未被设置为自动启动的程序;
S105,停止运行筛选出的所述第二程序。
本发明实施例中,被设置为自动启动的程序可以是指被用户通过开机启动项设置命令或者编辑开机启动项来指定的开机自动启动程序,即本发明实施例涉及的所述第一程序。可以理解的,所述第一程序会在操作系统启动并初始化后自动启动运行,并不需要用户触发启动。通常,用户会将常用的程序设置为所述第一程序,例如工作邮箱。实际应用中,某些应用程序也可以在被安装的时候主动在自动启动项配置文件中添加自身为自动启动程序,例如杀毒防护程序。
实际应用中,关联启动是指其中一个程序被另一个程序关联启动。例如,程序A和程序B相关联,程序A在启动后会激活程序B启动。涉及这种关联启动的程序A和程序B通常是同一个公司开发的产品;或者,由于提供的功能,程序A需要与程序B进行频繁的交互,往往为了后续能迅速切换到程序B的某个功能,程序A会提前将程序B启动,用以向用户提供快速的响应感受。需要说明的,本发明实施例涉及的关联启动不包括由于实际的功能调用而产生的关联启动。例如,程序A是购票应用,程序B是支付应用,用户在程序A中需要支付某一购票业务而触发程序A激活程序B的这一种关联启动不属于本发明实施例涉及的关联启动。示例仅仅用于解释本发明实施例,不构成限定。
本发明实施例中,如果所述第一程序关联有所述第二程序,那么,所述第一程序在按照开机启动项配置自动启动之后,可激活相关联的所述第二程序启动。这样导致第二程序未经用户配置或用户授意触发而被第一程序暗地里关联启动,增加了操作系统的运行负载。
实际应用中,关联启动的时间很短,通常在毫秒级或以下。也即是说,前述程序A在启动后会立即(如几个毫秒内)激活前述程序B启动,前述程序A和前述程序B的启动时间接近。可以理解的,在指定时刻,如果正在运行的两个程序的运行时长接近,则可推断出这两个程序的启动时间也接近。这里,在指定时刻,程序的运行时长是指从该程序的启动时间到所述指定时刻所经过的总时间。
本发明实施例中,可以通过步骤S101获得的程序运行信息来分析出运行在操作系统中的所述第一程序和所述第二程序的运行时长,将与所述第一程序的运行时长差小于预设值的第二程序筛选出来。这里,所述预设值可以是根据经验选定的用于区分关联启动和非关联启动的时间阈值(如5毫秒),具体量不作特别限制。可以理解的,筛选出来的所述第二程序的启动时间与所述第一程序的启动时间接近。
本发明实施例中,筛选出来的与所述第一程序的启动时间接近并且与所述第一程序关联的第二程序即是被所述第一程序关联启动的程序,也是本发明方案最终需要终止运行的程序。
具体实现中,可以监测所述第二程序与所述第一程序之间的通信,并将与所述第一程序的交互频率高于预设频率阈值的所述第二程序确定为所述第一程序关联的所述第二程序。这里,预设频率阈值可以是根据试验或经验选定的值。
具体的,可以通过下述方式监测所述第二程序与所述第一程序之间的通信:方式一、通过监测所述第二程序与所述第一程序之间的套接字(Socket)通信管道来获取二者之间的交互频率;方式二、将所述第二程序与所述第一程序访问共同的共享内存的频率作为二者之间的交互频率。需要说明的,前述两种方式可以结合应用。
在一些可能的实施场景中,为了保证所述第一程序能够正常对外提供功能,所述第一程序需要关联启动预设的系统程序,例如辅助所述第一程序运行的硬件驱动程序。示例仅仅是本发明实施例的一种实现方式,实际应用中还可以不同,不应构成限定。
具体的,为了避免将所述第一程序关联启动的所述预设的系统程序终止运行,实现所述第一程序能够正常对外提供功能,本发明实施例涉及的所述第二程序可不包括:未被设置为自动启动的预设系统程序。
在一些可能的实施场景中,为了保证所述第一程序的安全运行环境,所述第一程序需要关联启动预设的安全防护程序。例如,所述第一程序是支付应用,则该支付程序可关联启动支付环境安全扫描程序,用以保证该支付应用能够对外提供安全的支付环境。示例仅仅是本发明实施例的一种实现方式,实际应用中还可以不同,不应构成限定。
具体的,为了避免将所述第一程序关联启动的所述预设的安全防护程序终止运行,保证所述第一程序的安全运行环境。本发明实施例涉及的所述第二程序可不包括:未被设置为自动启动的预设安全防护程序。
实际应用中,在筛选出与第一程序的运行时长差小于预设值,并且与所述第一程序关联的第二程序之后,可以将被关联启动的第二程序以及该第二程序关联的第一程序输出给用户,并提供用户相应的操作界面,使得用户可以有选择性的终止运行哪一个或哪些被关联启动的第二程序。
实施本发明实施例,通过获取操作系统中的程序运行信息,根据所述程序运行信息,从正在运行的程序中,筛选出与第一程序的运行时长差小于预设值,并且与所述第一程序关联的第二程序;所述正在运行的程序包括:所述第一程序和所述第二程序,最后停止运行筛选出的所述第二程序;其中,所述第一程序是被设置为自动启动的程序,所述第二程序是未被设置为自动启动的程序。上述方案可避免被设置为自动启动的程序关联启动未被设置为自动启动的程序,提高了操作系统的运行速度,节约了功耗。
参见图2,是本发明实施例提供的网络设备的第一实施例的结构示意图。如图2所示,终端20可包括:获取单元201、筛选单元203和停止运行单元205。其中:
获取单元201,用于获取操作系统中的程序运行信息;
筛选单元203,用于根据所述程序运行信息,从正在运行的程序中,筛选出与第一程序的运行时长差小于预设值,并且与所述第一程序关联的第二程序;所述正在运行的程序包括:所述第一程序和所述第二程序,其中,所述第一程序是被设置为自动启动的程序,所述第二程序是未被设置为自动启动的程序;停止运行单元205,用于停止运行筛选出的所述第二程序。
本发明实施例中,被设置为自动启动的程序可以是指被用户通过开机启动项设置命令或者编辑开机启动项来指定的开机自动启动程序,即本发明实施例涉及的所述第一程序。可以理解的,所述第一程序会在操作系统启动并初始化后自动启动运行,并不需要用户触发启动。通常,用户会将常用的程序设置为所述第一程序,例如工作邮箱。实际应用中,某些应用程序也可以在被安装的时候主动在自动启动项配置文件中添加自身为自动启动程序,例如杀毒防护程序。
实际应用中,关联启动是指其中一个程序被另一个程序关联启动。例如,程序A和程序B相关联,程序A在启动后会激活程序B启动。涉及这种关联启动的程序A和程序B通常是同一个公司开发的产品;或者,由于提供的功能,程序A需要与程序B进行频繁的交互,往往为了后续能迅速切换到程序B的某个功能,程序A会提前将程序B启动,用以向用户提供快速的响应感受。需要说明的,本发明实施例涉及的关联启动不包括由于实际的功能调用而产生的关联启动。例如,程序A是购票应用,程序B是支付应用,用户在程序A中需要支付某一购票业务而触发程序A激活程序B的这一种关联启动不属于本发明实施例涉及的关联启动。示例仅仅用于解释本发明实施例,不构成限定。
实际应用中,关联启动的时间很短,通常在毫秒级或以下。也即是说,前述程序A在启动后会立即(如几个毫秒内)激活前述程序B启动,前述程序A和前述程序B的启动时间接近。可以理解的,在指定时刻,如果正在运行的两个程序的运行时长接近,则可推断出这两个程序的启动时间也接近。这里,在指定时刻,程序的运行时长是指从该程序的启动时间到所述指定时刻所经过的总时间。
本发明实施例中,所述预设值可以是根据经验选定的用于区分关联启动和非关联启动的时间阈值(如5毫秒),具体量不作特别限制。可以理解的,筛选出来的所述第二程序的启动时间与所述第一程序的启动时间接近。
本发明实施例中,筛选单元203筛选出来的与所述第一程序的启动时间接近并且与所述第一程序关联的第二程序即是被所述第一程序关联启动的程序,也是本发明方案最终需要终止运行的程序。
进一步的,如图3所示,终端20在包括:获取单元201、筛选单元203和停止运行单元205外,还可包括:监测单元207和确定单元209,其中:
监测单元207,可用于监测所述第二程序与所述第一程序之间的通信;
确定单元209,可用于从所述第二程序中,将与所述第一程序的交互频率高于预设频率阈值的所述第二程序,确定为所述第一程序关联的所述第二程序。
具体的,监测单元207可具体用于:通过监测所述第二程序与所述第一程序之间的套接字通信管道来获取二者之间的交互频率;或者,将所述第二程序与所述第一程序访问共同的共享内存的频率作为二者之间的交互频率。
在一些可能的实施场景中,为了保证所述第一程序能够正常对外提供功能,所述第一程序需要关联启动预设的系统程序,例如辅助所述第一程序运行的硬件驱动程序。示例仅仅是本发明实施例的一种实现方式,实际应用中还可以不同,不应构成限定。
具体的,为了避免将所述第一程序关联启动的所述预设的系统程序终止运行,实现所述第一程序能够正常对外提供功能,本发明实施例涉及的所述第二程序可不包括:未被设置为自动启动的预设系统程序。
在一些可能的实施场景中,为了保证所述第一程序的安全运行环境,所述第一程序需要关联启动预设的安全防护程序。例如,所述第一程序是支付应用,则该支付程序可关联启动支付环境安全扫描程序,用以保证该支付应用能够对外提供安全的支付环境。示例仅仅是本发明实施例的一种实现方式,实际应用中还可以不同,不应构成限定。
具体的,为了避免将所述第一程序关联启动的所述预设的安全防护程序终止运行,保证所述第一程序的安全运行环境。本发明实施例涉及的所述第二程序可不包括:未被设置为自动启动的预设安全防护程序。
可理解的是,终端20中各功能单元的具体实现方式可参考图1方法实施例中的详细内容,这里不再赘述。
为了便于实施本发明实施例,本发明提供了一种终端,用于实现图1实施例所述的方法。
参见图4,终端100可包括:基带芯片100、存储器105(可包括一个或多个计算机可读存储介质)、射频(RF)模块106、外围系统107、显示器(LCD)113、摄像头114、音频电路115、触摸屏116以及传感器117(可包括一个或多个传感器)。其中,基带芯片100可集成包括:一个或多个处理器101、时钟模块102以及电源管理模块103。这些部件可在一个或多个通信总线104上通信。
应当理解,终端100仅为本发明的一个例子,并且,终端100可具有比示出的部件更多或更少的部件,可以组合两个或更多个部件,或者可具有部件的不同配置实现。
存储器105与处理器101耦合,用于存储各种软件程序和/或多组指令。具体实现中,存储器105可包括高速随机存取的存储器,并且也可包括非易失性存储器,例如一个或多个磁盘存储设备、闪存设备或其他非易失性固态存储设备。
射频(RF)模块106用于接收和发送射频信号。射频(RF)模块106通过射频信号与通信网络和其他通信设备通信。具体实现中,射频(RF)模块106可包括但不限于:天线系统、RF收发器、一个或多个放大器、调谐器、一个或多个振荡器、数字信号处理器、CODEC芯片、SIM卡和存储介质等。在一些实施例中,可在单独的芯片上实现射频(RF)模块106。
外围系统107主要用于实现终端100和用户/外部环境之间的交互功能。具体实现中,外围系统107可包括:显示器(LCD)控制器108、摄像头控制器109、音频控制器110、触摸屏控制器111以及传感器管理模块112。其中,各个控制器可与各自对应的外围设备耦合。在一些实施例中,外围系统107还可以包括其他I/O外设的控制器。
集成于基带芯片100中的时钟模块102主要用于为处理器101产生数据传输和时序控制所需要的时钟。集成于基带芯片100中的电源管理模块103主要用于为处理器101、射频模块106以及外围系统提供稳定的、高精确度的电压。集成于基带芯片100中的处理器101主要用于调用存储于存储器105中的运行管理程序,并执行如下步骤:
获取操作系统中的程序运行信息;
根据所述程序运行信息,从正在运行的程序中,筛选出与第一程序的运行时长差小于预设值,并且与所述第一程序关联的第二程序;所述正在运行的程序包括:所述第一程序和所述第二程序,其中,所述第一程序是被设置为自动启动的程序,所述第二程序是未被设置为自动启动的程序;
停止运行筛选出的所述第二程序。
本发明实施例中,被设置为自动启动的程序可以是指被用户通过开机启动项设置命令或者编辑开机启动项来指定的开机自动启动程序,即本发明实施例涉及的所述第一程序。可以理解的,所述第一程序会在操作系统启动并初始化后自动启动运行,并不需要用户触发启动。通常,用户会将常用的程序设置为所述第一程序,例如工作邮箱。实际应用中,某些应用程序也可以在被安装的时候主动在自动启动项配置文件中添加自身为自动启动程序,例如杀毒防护程序。
实际应用中,关联启动是指其中一个程序被另一个程序关联启动。例如,程序A和程序B相关联,程序A在启动后会激活程序B启动。涉及这种关联启动的程序A和程序B通常是同一个公司开发的产品;或者,由于提供的功能,程序A需要与程序B进行频繁的交互,往往为了后续能迅速切换到程序B的某个功能,程序A会提前将程序B启动,用以向用户提供快速的响应感受。需要说明的,本发明实施例涉及的关联启动不包括由于实际的功能调用而产生的关联启动。例如,程序A是购票应用,程序B是支付应用,用户在程序A中需要支付某一购票业务而触发程序A激活程序B的这一种关联启动不属于本发明实施例涉及的关联启动。示例仅仅用于解释本发明实施例,不构成限定。
实际应用中,关联启动的时间很短,通常在毫秒级或以下。也即是说,前述程序A在启动后会立即(如几个毫秒内)激活前述程序B启动,前述程序A和前述程序B的启动时间接近。可以理解的,在指定时刻,如果正在运行的两个程序的运行时长接近,则可推断出这两个程序的启动时间也接近。这里,在指定时刻,程序的运行时长是指从该程序的启动时间到所述指定时刻所经过的总时间。
本发明实施例中,所述预设值可以是根据经验选定的用于区分关联启动和非关联启动的时间阈值(如5毫秒),具体量不作特别限制。可以理解的,筛选出来的所述第二程序的启动时间与所述第一程序的启动时间接近。
本发明实施例中,筛选出来的与所述第一程序的启动时间接近并且与所述第一程序关联的第二程序即是被所述第一程序关联启动的程序,也是本发明方案最终需要终止运行的程序。
具体实现中,处理器101以监测所述第二程序与所述第一程序之间的通信,并将与所述第一程序的交互频率高于预设频率阈值的所述第二程序确定为所述第一程序关联的所述第二程序。这里,预设频率阈值可以是根据试验或经验选定的值。
具体的,处理器101可以通过下述方式监测筛选出的所述第二程序与所述第一程序之间的通信:方式一、通过监测所述第二程序与所述第一程序之间的套接字(Socket)通信管道来获取二者之间的交互频率;方式二、将所述第二程序与所述第一程序访问共同的共享内存的频率作为二者之间的交互频率。需要说明的,前述两种方式可以结合应用。
在一些可能的实施场景中,为了保证所述第一程序能够正常对外提供功能,所述第一程序需要关联启动预设的系统程序,例如辅助所述第一程序运行的硬件驱动程序。示例仅仅是本发明实施例的一种实现方式,实际应用中还可以不同,不应构成限定。
具体的,为了避免将所述第一程序关联启动的所述预设的系统程序终止运行,实现所述第一程序能够正常对外提供功能,本发明实施例涉及的所述第二程序可不包括:未被设置为自动启动的预设系统程序。
在一些可能的实施场景中,为了保证所述第一程序的安全运行环境,所述第一程序需要关联启动预设的安全防护程序。例如,所述第一程序是支付应用,则该支付程序可关联启动支付环境安全扫描程序,用以保证该支付应用能够对外提供安全的支付环境。示例仅仅是本发明实施例的一种实现方式,实际应用中还可以不同,不应构成限定。
具体的,为了避免将所述第一程序关联启动的所述预设的安全防护程序终止运行,保证所述第一程序的安全运行环境。本发明实施例涉及的所述第二程序可不包括:未被设置为自动启动的预设安全防护程序。
需要说明的,处理器101执行的具体步骤可参见图1所述的方法,这里不再赘述。
综上所述,本发明实施例中,通过获取操作系统中的程序运行信息,根据所述程序运行信息,从正在运行的程序中,筛选出与第一程序的运行时长差小于预设值,并且与所述第一程序关联的第二程序;所述正在运行的程序包括:所述第一程序和所述第二程序,最后停止运行筛选出的所述第二程序;其中,所述第一程序是被设置为自动启动的程序,所述第二程序是未被设置为自动启动的程序。上述方案可避免被设置为自动启动的程序关联启动未被设置为自动启动的程序,提高了操作系统的运行速度,节约了功耗。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本发明一种较佳实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。

Claims (10)

1.一种程序运行管理方法,其特征在于,包括:
获取操作系统中的程序运行信息,其中,所述程序运行信息包括程序运行时间;
根据所述程序运行信息,从正在运行的程序中,筛选出与第一程序的运行时长差小于预设值,并且与所述第一程序关联的第二程序;所述正在运行的程序包括:所述第一程序和所述第二程序,其中,所述第一程序是被设置为自动启动的程序,所述第二程序是未被设置为自动启动的程序;
停止运行筛选出的所述第二程序。
2.如权利要求1所述的方法,其特征在于,所述第二程序不包括:未被设置为自动启动的预设系统程序。
3.如权利要求1所述的方法,其特征在于,所述第二程序不包括:未被设置为自动启动的预设安全防护程序。
4.如权利要求1-3中任一项所述的方法,其特征在于,还包括:
监测所述第二程序与所述第一程序之间的通信;
将与所述第一程序的交互频率高于预设频率阈值的所述第二程序,确定为所述与所述第一程序关联的第二程序。
5.如权利要求4所述的方法,其特征在于,所述监测筛选出的所述第二程序与所述第一程序之间的通信,包括:
通过监测所述第二程序与所述第一程序之间的套接字通信管道来获取二者之间的交互频率;
或者,将所述第二程序与所述第一程序访问共同的共享内存的频率作为二者之间的交互频率。
6.一种终端,其特征在于,包括:
获取单元,用于获取操作系统中的程序运行信息,其中,所述程序运行信息包括程序运行时间;
筛选单元,用于根据所述程序运行信息,从正在运行的程序中,筛选出与第一程序的运行时长差小于预设值,并且与所述第一程序关联的第二程序;所述正在运行的程序包括:所述第一程序和所述第二程序,其中,所述第一程序是被设置为自动启动的程序,所述第二程序是未被设置为自动启动的程序;
停止运行单元,用于停止运行筛选出的所述第二程序。
7.如权利要求6所述的终端,其特征在于,所述第二程序不包括:未被设置为自动启动的预设系统程序。
8.如权利要求6所述的终端,其特征在于,所述第二程序不包括:未被设置为自动启动的预设安全防护程序。
9.如权利要求6-8中任一项所述的终端,其特征在于,还包括:监测单元和确定单元,其中:
所述监测单元,用于监测所述第二程序与所述第一程序之间的通信;
所述确定单元,用于将与所述第一程序的交互频率高于预设频率阈值的所述第二程序,确定为与所述第一程序关联的第二程序。
10.如权利要求9所述的终端,其特征在于,所述监测单元,具体用于:通过监测所述第二程序与所述第一程序之间的套接字通信管道来获取二者之间的交互频率;或者,将所述第二程序与所述第一程序访问共同的共享内存的频率作为二者之间的交互频率。
CN201610131634.XA 2016-03-08 2016-03-08 一种程序运行管理方法及终端 Active CN105808297B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610131634.XA CN105808297B (zh) 2016-03-08 2016-03-08 一种程序运行管理方法及终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610131634.XA CN105808297B (zh) 2016-03-08 2016-03-08 一种程序运行管理方法及终端

Publications (2)

Publication Number Publication Date
CN105808297A CN105808297A (zh) 2016-07-27
CN105808297B true CN105808297B (zh) 2019-04-02

Family

ID=56467842

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610131634.XA Active CN105808297B (zh) 2016-03-08 2016-03-08 一种程序运行管理方法及终端

Country Status (1)

Country Link
CN (1) CN105808297B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106406495A (zh) * 2016-08-30 2017-02-15 宇龙计算机通信科技(深圳)有限公司 应用程序的管理方法、应用程序的管理装置和终端
CN107734616B (zh) * 2017-10-31 2021-01-15 Oppo广东移动通信有限公司 应用程序关闭方法、装置、存储介质和电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104239139A (zh) * 2014-08-25 2014-12-24 北京金山安全软件有限公司 一种处理开机自启动项目的方法、装置及终端
CN104503807A (zh) * 2014-12-31 2015-04-08 北京奇虎科技有限公司 启动项的管理方法及装置
CN105094279A (zh) * 2015-07-07 2015-11-25 北京奇虎科技有限公司 一种改善智能终端待机性能的方法、装置和系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104239139A (zh) * 2014-08-25 2014-12-24 北京金山安全软件有限公司 一种处理开机自启动项目的方法、装置及终端
CN104503807A (zh) * 2014-12-31 2015-04-08 北京奇虎科技有限公司 启动项的管理方法及装置
CN105094279A (zh) * 2015-07-07 2015-11-25 北京奇虎科技有限公司 一种改善智能终端待机性能的方法、装置和系统

Also Published As

Publication number Publication date
CN105808297A (zh) 2016-07-27

Similar Documents

Publication Publication Date Title
US11127398B2 (en) Method for voice controlling, terminal device, cloud server and system
CN104268019A (zh) 一种软件运行方法、装置及终端
CN107734616B (zh) 应用程序关闭方法、装置、存储介质和电子设备
EP2945058A1 (en) Processing method and device for application program
CN108153647B (zh) 日志处理方法、装置、终端设备及存储介质
CN108038231B (zh) 日志处理方法、装置、终端设备及存储介质
CN111512286B (zh) 编排程序的方法及电子设备
CN106062763A (zh) 一种显示应用、图片的方法、装置及电子设备
CN106528158B (zh) 挂载存储卡的方法、装置及移动终端
CN103412793A (zh) 一种优化系统资源的方法、装置及系统
CN109542744A (zh) 检测终端开机异常问题的方法、装置、存储介质及终端
CN106528163B (zh) 一种页面切换方法和装置
CN111581994A (zh) 近场通信nfc通信方法、装置及电子设备
CN107743164A (zh) 一种异常掉卡的处理方法及终端
CN105808297B (zh) 一种程序运行管理方法及终端
CN110837317B (zh) 一种显示界面上用户防误触的方法、装置和设备
CN111694490A (zh) 设置方法、装置及电子设备
CN105488678A (zh) 支付行为信息采集方法及系统
CN107291531A (zh) 数组处理方法、装置、移动终端及计算机可读存储介质
CN105025320B (zh) 一种混合构架的可运营桌面系统及其实现方法
CN106383637A (zh) 屏幕锁屏方法及装置、终端设备
CN110088719B (zh) 移动设备的显示方法和移动设备
CN110856196B (zh) Wlan服务优化方法、终端设备和存储介质
CN110515662B (zh) 双系统设备的远程控制方法、系统、设备及可读存储介质
CN105549809B (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
CB02 Change of applicant information

Address after: 523860 No. 18, Wu Sha Beach Road, Changan Town, Dongguan, Guangdong

Applicant after: OPPO Guangdong Mobile Communications Co., Ltd.

Address before: 523860 No. 18, Wu Sha Beach Road, Changan Town, Dongguan, Guangdong

Applicant before: Guangdong OPPO Mobile Communications Co., Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant