CN102981863B - 一种开机启动项目的管理方法和装置 - Google Patents

一种开机启动项目的管理方法和装置 Download PDF

Info

Publication number
CN102981863B
CN102981863B CN201110264318.7A CN201110264318A CN102981863B CN 102981863 B CN102981863 B CN 102981863B CN 201110264318 A CN201110264318 A CN 201110264318A CN 102981863 B CN102981863 B CN 102981863B
Authority
CN
China
Prior art keywords
starting
project
time
cpu
available machine
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
CN201110264318.7A
Other languages
English (en)
Other versions
CN102981863A (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.)
Beijing Qihoo Technology Co Ltd
Original Assignee
Beijing Qihoo Technology Co 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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=47855927&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=CN102981863(B) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Beijing Qihoo Technology Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201110264318.7A priority Critical patent/CN102981863B/zh
Publication of CN102981863A publication Critical patent/CN102981863A/zh
Application granted granted Critical
Publication of CN102981863B publication Critical patent/CN102981863B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Stored Programmes (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明提供了一种开机启动项目的管理方法和装置,其中的方法具体包括:获取操作系统的总启动时间;分别获取每个开机启动项目在开机过程中的CPU占用时间,并计算开机过程中的所有开机启动项目的CPU累计占用时间;根据每个开机启动项目的CPU占用时间在所有开机启动项目的CPU累计占用时间中所占比例,计算得到每个开机启动项目所占用的系统开机时间;依据开机启动项目的开机时间,对所述开机启动项目进行管理。本发明能够根据每个开机启动项目的开机时间管理开机,减少开机时间,从而提高计算机系统的内部性能。

Description

一种开机启动项目的管理方法和装置
技术领域
本发明涉及资源管理技术领域,特别是涉及一种开机启动项目的管理方法和装置。
背景技术
当今世界是一个信息科技化、电子产业蓬勃发展的时代,各种由微电脑所衍生的高科技产品、电子设备发展迅速,着实地替人们的日常生活带来了莫大的便利性。随着当前各种电子科技的不断研发与精进,人们对于各类电子消费产品的使用要求也相对地提高,如今消费者对于电子产品的要求已不止于高品质的标准,更以是否具有便利性、人性化及多功能等因素作为选购时的考量。
然而,功能上的多样性,虽使各类型电子消费产品的用途更加广泛,但对于操作上的便利性则未必有益。以计算机为例,现今销售于市面上的计算机,除可执行一般操作系统、软件程序、上网或计算机游戏外,尚可观看激光视盘等,因此,即便是功能最简易的计算机,所具有的各项功能林林总总绝不会少于10项。
这样,在开机上电后,计算机会先检测并初始化硬件设备成功后启动加载操作系统,一个一个应用程序依次启动。也即,功能愈多,即意味着计算机内的操作系统需花费更多时间加载各种软件及程序。如此一来,在使用者使用计算机之前,即已花费了许多时间在等待上,特别是开机所需耗费的时间更长,着实令使用者感到不方便与繁琐。
总之,需要本领域技术人员迫切解决的一个技术问题就是:如何能够减少开机时间。
发明内容
本发明所要解决的技术问题是提供一种开机启动项目的管理方法和装置,能够根据每个开机启动项目的开机时间管理开机,减少开机时间,从而提高计算机系统的内部性能。
为了解决上述问题,本发明公开一种开机启动项目的管理方法,包括:
获取操作系统的总启动时间;
分别获取每个开机启动项目在开机过程中的CPU占用时间,并计算开机过程中的所有开机启动项目的CPU累计占用时间;
根据每个开机启动项目的CPU占用时间在所有开机启动项目的CPU累计占用时间中所占比例,计算得到每个开机启动项目所占用的系统开机时间;
依据开机启动项目的开机时间,对所述开机启动项目进行管理。
优选的,所述分别获取每个开机启动项目在开机过程中的CPU占用时间的步骤,包括:
获取每个开机启动项目的进程;
分别获取该进程自创建到开机完成时在内核态和用户态占用的CPU时间;
将该进程在内核态和用户态占用的CPU时间相加,得到相应启动项在开机过程中的CPU占用时间。
优选的,所述获取操作系统的总启动时间的步骤,包括:
获取操作系统启动到开机完成时所经过的时间,作为操作系统的总启动时间。
优选的,所述依据开机启动项目的开机时间,对所述开机启动项目进行管理的步骤,包括:
将各开机启动项目的开机时间展示给用户;
依据用户指令,执行所述开机启动项目的相应管理工作,所述管理工作包括:延迟启动、暂停启动或者选择性启动。
优选的,所述依据开机启动项目的开机时间,对所述开机启动项目进行管理的步骤,包括:
针对开机启动项目,通过统计该开机启动项目在当前客户端多次启动所分别占用的系统开机时间,得到该开机启动项目所占用的系统开机时间的正常值范围;
在该开机启动项目所占用的系统开机时间不在正常值范围内时,对该开机启动项目进行特殊处理。
优选的,所述对该开机启动项目进行特殊处理的步骤,包括:
针对该开机启动项目,发出所占用的系统开机时间不在正常值范围内的提示;或者
暂停该开机启动项目的开机启动;或者
控制该开机启动项目在系统开机完成之后启动。
优选的,所述依据开机启动项目的开机时间,对所述开机启动项目进行管理的步骤,包括:
客户端在展现每个开机启动项目的开机时间的过程中,提供相应的操作,其中,所述操作包括禁止项目、开启项目和删除项目;
服务器端针对每个开机启动项目,对其在众多客户端的开机时间和用户选择的操作进行抽样统计,得到相应的抽样统计结果;
服务器端在接收客户端关于开机启动项目的查询时,返回相应的抽样统计结果;
客户端在展现开机启动项目的开机时间的同时,展现相应的抽样统计结果。
优选的,所述依据开机启动项目的开机时间,对所述开机启动项目进行管理的步骤,包括:
在展现开机启动项目的开机时间的过程中,提供时间维度的操作按钮,该时间维度的操作按钮用于将相应的开机启动项目延迟启动。
优选的,所述依据开机启动项目的开机时间,对所述开机启动项目进行管理的步骤,包括:
采用界面、图表或曲线形式中的一种或几种方式展现所述开机启动项目的开机时间。
优选的,通过如下步骤判断开机是否完成:
检测CPU占用率,如果CPU占用率呈下降趋势,且当前时刻的CPU占用率在第一阈值范围内,则认为当前时刻开机完成;或者,
检测磁盘IO口读写量,如果磁盘IO口读写量呈下降趋势,且当前时刻的磁盘IO口读写量在第二阈值范围内,则认为当前时刻开机完成;或者,
检测磁盘IO口读写量,如果磁盘IO口读写量呈下降趋势,且当前时刻的磁盘IO口读写量在第二阈值范围内,则认为当前时刻开机完成;或者,
获取系统启动程序列表,通过遍历所述系统启动程序列表中的进程是否加载完成,来判断开机是否完成;或者,
检测进程数的变动情况,如果进程数的变动情况呈下降趋势,且当前时刻的进程数在第三阈值范围内,则认为当前时刻开机完成。
另一方面,本发明还公开了一种开机启动项目的管理装置,包括:
第一时间获取模块,用于获取操作系统的总启动时间;
第二时间获取模块,用于分别获取每个开机启动项目在开机过程中的CPU占用时间,并计算开机过程中的所有开机启动项目的CPU累计占用时间;
第三时间获取模块,用于根据每个开机启动项目的CPU占用时间在所有开机启动项目的CPU累计占用时间中所占比例,计算得到每个开机启动项目所占用的系统开机时间;及
管理模块,用于依据开机启动项目的开机时间,对所述开机启动项目进行管理。
优选的,所述第二时间获取模块包括:
进程获取子模块,用于获取每个开机启动项目的进程;
进程时间获取子模块,用于分别获取该进程自创建到开机完成时在内核态和用户态占用的CPU时间;及
相加子模块,用于将该进程在内核态和用户态占用的CPU时间相加,得到相应启动项在开机过程中的CPU占用时间。
优选的,所述第一时间获取模块,具体用于获取操作系统启动到开机完成时所经过的时间,作为操作系统的总启动时间。
优选的,所述管理模块包括:
第一展现子模块,用于将各开机启动项目的开机时间展示给用户;
交互管理子模块,用于依据用户指令,执行所述开机启动项目的相应管理工作,所述管理工作包括:延迟启动、暂停启动或者选择性启动。
优选的,所述管理模块包括:
统计子模块,用于针对开机启动项目,通过统计该开机启动项目在当前客户端多次启动所分别占用的系统开机时间,得到该开机启动项目所占用的系统开机时间的正常值范围;及
特殊处理子模块,用于在该开机启动项目所占用的系统开机时间不在正常值范围内时,对该开机启动项目进行特殊处理。
优选的,所述特殊处理子模块,具体用于针对该开机启动项目,发出所占用的系统开机时间不在正常值范围内的提示;或者暂停该开机启动项目的开机启动;或者控制该开机启动项目在系统开机完成之后启动。
优选的,所述管理模块包括:
操作提供子模块,位于客户端,用于在展现每个开机启动项目的开机时间的过程中,提供相应的操作,其中,所述操作包括禁止项目、开启项目和删除项目;
抽样统计子模块,位于服务器端,用于针对每个开机启动项目,对其在众多客户端的开机时间和用户选择的操作进行抽样统计,得到相应的抽样统计结果;
查询处理子模块,位于服务器端,用于在接收客户端关于开机启动项目的查询时,返回相应的抽样统计结果;及
第二展现子模块,位于客户端,用于在展现每个开机启动项目的开机时间的同时,展现相应的抽样统计结果。
优选的,所述管理模块包括:
第三展现子模块,用于在展现每个开机启动项目的开机时间的过程中,提供时间维度的操作按钮,该时间维度的操作按钮用于将相应的开机启动项目延迟启动。
优选的,所述管理模块包括:
第四展现子模块,用于采用界面、图表或曲线形式中的一种或几种方式展现每个开机启动项目的开机时间。
优选的,所述装置还包括:
开机完成判断模块,用于检测CPU占用率,如果CPU占用率呈下降趋势,且当前时刻的CPU占用率在第一阈值范围内,则认为当前时刻开机完成;或者,
检测磁盘IO口读写量,如果磁盘IO口读写量呈下降趋势,且当前时刻的磁盘IO口读写量在第二阈值范围内,则认为当前时刻开机完成;或者,
检测磁盘IO口读写量,如果磁盘IO口读写量呈下降趋势,且当前时刻的磁盘IO口读写量在第二阈值范围内,则认为当前时刻开机完成;或者,
获取系统启动程序列表,通过遍历所述系统启动程序列表中的进程是否加载完成,来判断开机是否完成;或者,
检测进程数的变动情况,如果进程数的变动情况呈下降趋势,且当前时刻的进程数在第三阈值范围内,则认为当前时刻开机完成。
与现有技术相比,本发明具有以下优点:
本发明根据每个开机启动项目的CPU占用时间在所有开机启动项目的CPU累计占用时间中所占比例,得到每个开机启动项目所占用的系统开机时间,并依据开机启动项目的开机时间,对所述开机启动项目进行管理;所述管理在展现开机启动项目的开机时间的同时,能够提供各种操作,能够通过调整计算机内部的系统资源,达到提升计算机内部性能的目的。例如,在开机速度不够快时,由于能够知晓是众多开机启动项目中的哪个拖慢了开机,此时,可以提示用户删除、禁止或延迟这个拖慢开机的开机启动项目,减少开机时间。
附图说明
图1是本发明一种开机启动项目的管理方法实施例的流程图;
图2是本发明一种获取每个开机启动项目的开机时间的示意图;
图3是本发明一种开机启动项目的管理装置实施例的结构图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
本发明实施例的核心构思之一在于,获取每个开机启动项目的开机时间,并依据开机启动项目的开机时间,对所述开机启动项目进行管理;这样,在开机速度不够快时,由于能够知晓是众多开机启动项目中的哪个拖慢了开机,因而能够更加容易地管理开机启动项。
参照图1,示出了本发明一种开机启动项目的管理方法实施例的流程图,具体可以包括:
步骤101、获取操作系统的总启动时间;
本发明可以用于计算机、PDA(个人数字助理,Personal Digital Assistant)、智能手机等各种使用操作系统的电子设备,这里的操作系统可以包括:Windows、Linux等,下面主要以计算机和Windows为例进行说明,实际上本发明对具体的电子设备和操作系统并不加以限制。
随着计算机的普及,越来越多的人开始了解计算机,关注自己计算机的开机时间。其中,操作系统的总启动时间主要是指操作系统启动整个开机过程所需要的时间,开机过程通常包括加载系统文件、启动核心服务,显示欢迎界面、等待用户输入账号密码、根据个人配置加载非关键服务,加载自启动程序等一系列过程。总之,从操作系统开机启动到所有开机启动项目加载完毕,这段时间都应算到操作系统的总启动时间中。
在本发明的一种优选实施例中,所述获取操作系统的总启动时间的步骤,具体可以包括:
获取操作系统启动到开机完成时所经过的时间,作为操作系统的总启动时间。
例如,在Windows系统下,可以调用系统标准API(应用程序编程接口,ApplicationProgramming Interface)函数GetTickCount(),该函数从Windows模块载入内存开始就开始计数,其能够返回从操作系统启动到现在所经过的毫秒数,它的返回值类型是DWORD。
在本发明的一种优选实施例中,可以通过如下步骤判断开机是否完成:
检测CPU占用率,如果CPU占用率呈下降趋势,且当前时刻的CPU占用率在第一阈值范围内,则认为当前时刻开机完成;或者,
检测磁盘IO口读写量,如果磁盘IO口读写量呈下降趋势,且当前时刻的磁盘IO口读写量在第二阈值范围内,则认为当前时刻开机完成;或者,
检测磁盘IO口读写量,如果磁盘IO口读写量呈下降趋势,且当前时刻的磁盘IO口读写量在第二阈值范围内,则认为当前时刻开机完成;或者,
获取系统启动程序列表,通过遍历所述系统启动程序列表中的进程是否加载完成,来判断开机是否完成;或者,
检测进程数的变动情况,如果进程数的变动情况呈下降趋势,且当前时刻的进程数在第三阈值范围内,则认为当前时刻开机完成。
由于开机过程是不断加载开机启动项目的过程,所以,在开机未完成时,CPU占用率一般非常高,IO口读写量一般比较大,且会有新进程不断出现,所以,本发明可以依据CPU占用率、磁盘IO口读写量、进程数的变动情况等量化参数中的一个或者几个来判断开机是否完成。在实际中,可以实时监控这三个量化参数的变化,如果三个量化参数均处于下降趋势,则可以认为开机完成,此时,可以进行操作系统的总启动时间的获取。
步骤102、分别获取每个开机启动项目在开机过程中的CPU占用时间,并计算开机过程中的所有开机启动项目的CPU累计占用时间;
开机过程是不断加载开机启动项目的过程,这些开机启动项目不仅包括加载系统文件、启动核心服务,显示欢迎界面、等待用户输入账号密码、根据个人配置加载非关键服务等一些后台开机启动项目,还包括输入法、杀毒软件等一些前台开机启动项目。
在本发明的一种优选实施例中,所述分别获取每个开机启动项目在开机过程中的CPU占用时间的步骤,具体可以包括:
获取每个开机启动项目的进程;
分别获取该进程自创建到开机完成时在内核态和用户态占用的CPU时间;
将该进程在内核态和用户态占用的CPU时间相加,得到相应启动项在开机过程中的CPU占用时间。
在具体实现中,可通过Windows标准API函数
BOOL GetProcessTimes(HANDLE hProcess,//hProcess为一个开机启动项目的进程句柄LPFILETIME lpCreationTime,//lpCreationTime为进程的创建时间LPFILETIMElpExitTime,//lpExitTime为进程的退出时间,如果线程仍然在运行,退出时间则未定义LPFILETIME lpKernelTime, //lpKemelTime为进程在内核态的时间,指明线程执行操作系统代码已经经过了多少个100ns的CPU时间LPFILETIME lpUserTime //lpUserTime为选程在用户态的时间,指明进程执行应用程序代码已经经过了多少个100ns的CPU时间)获取一个进程自创建到当前时刻在内核态和用户态占用的CPU时间,其输出参数lpKernelTime和lpUserTime分别是该进程在内核态和用户态占用的CPU时间,相加后就可以得到该进程自创建到当前时刻占用的总CPU时间。
需要说明的是,由于步骤101和102在执行次序上没有联系和依赖。
步骤103、根据每个开机启动项目的CPU占用时间在所有开机启动项目的CPU累计占用时间中所占比例,计算得到每个开机启动项目所占用的系统开机时间;
CPU占用时间,是程序占用CPU的时间,包括系统内核程序对CPU的占用和运行在windows平台上的一般程序对CPU时间的占用,以及“空闲进程”(这个名字是个概念,代表没有程序在占用CPU)对CPU时间的占用。程序的CPU占用时间代表的是使用了多长时间的CPU。开机时间是指操作系统在开机过程中耗费了多长时间。虽然对于一个开机启动项目而言,CPU占用时间其数值上不等于其耗费的开机时间,但是其在总体中所占的比例是相等的,理由如下:
计算机所有的指令都是通过CPU执行的,执行一条指令,需要CPU的一个振荡周期(CPU时钟的一次上电过程),程序需要执行多少条指令,就决定了需要CPU多少个振荡周期,所以,具体到每个开机启动项目执行多少条条指令,就决定了占用多少CPU时间。而每个开机启动项目执行多少条指令能够决定需要耗费多少开机时间,因此,对于一个开机启动项目而言,其占用的开机时间和CPU时间都表示其在所有开机启动项目中的比例,只是度量单位不一样。所以,每个开机启动项目CPU占用时间和总CPU占用时间的比例等于每个开机启动项目占用的开机时间和总开机时间的比例,这是符合自然规律的。
因此,本发明根据总的开机时间和每个开机启动项目特定的属性值(这里是CPU占用时间),获取其在总体上所占的比例,从而推算出每个开机启动项目其他特定的属性值所占的比例,进而就可以获取到每个开机启动项目特定属性值的大小。
参照图2,示出了本发明一种获取每个开机启动项目的开机时间的示意图,具体可以包括:
步骤201、获取操作系统的总启动时间T;
步骤202、获取每个开机启动项目在开机过程中的CPU占用时间;例如,
项目X1的CPU占用时间为tcpu1
项目X2的CPU占用时间为tcpu2
项目X3的CPU占用时间为tcpu3
……
项目Xn的CPU占用时间为tcpun
步骤203、计算所有开机启动项目在开机过程中的总CPU占用时间;
TCPU=tcpu1+tcpu2+tcpu3+......+tcpun
步骤204、分别计算每个开机启动项目在开机过程中所占的比例;
KX1=tcpu1/TCPU
KX2=tcpu2/TCPU
KX3=tcpu3/TCPU
……
KXn=tcpun/TCPU
步骤205、基于每个开机启动项目的CPU占用时间在总CPU占用时间中所占比例等于每个开机启动项目的开机时间在总开机时间中所占比例的原理,得到每个开机启动项目的开机时间。
t1=T KX1
t2=T KX2
t3=T KX3
……
tn=T KXn
步骤104、依据开机启动项目的开机时间,对所述开机启动项目进行管理。
在获取每个开机启动项目的开机时间后,本发明就可以对某个或某些开机启动项目进行管理,所述管理能够通过调整计算机内部的系统资源,达到改进计算机内部性能的目的。例如,在开机速度不够快时,可以知晓是众多开机启动项目中的哪个拖慢了开机,从而能够更加容易地管理开机启动项。
本发明可以提供如下开机启动项目的管理方案:
管理方案一、
所述依据开机启动项目的开机时间,对所述开机启动项目进行管理的步骤,具体可以包括:
将各开机启动项目的开机时间展示给用户;
依据用户指令,执行所述开机启动项目的相应管理工作,所述管理工作具体可以包括:延迟启动、暂停启动或者选择性启动。
其中,所述延迟启动可以是将某开机启动项目的启动项目推迟至Ns后启动等,所述暂停开机启动可以是在暂时不启动某开机启动项目,所述选择性启动可以包括针对不同的日期进行不同的启动选择,如周一至周五启动MSN等办公通讯工具,而周六日启动QQ等娱乐通讯工具。
管理方案二、
所述依据开机启动项目的开机时间,对所述开机启动项目进行管理的步骤,具体可以包括:
针对开机启动项目,通过统计该开机启动项目在当前客户端多次启动所分别占用的系统开机时间,得到该开机启动项目所占用的系统开机时间的正常值范围;
在该开机启动项目所占用的系统开机时间不在正常值范围内时,对该开机启动项目进行特殊处理。
在本发明的一种优选实施例中,所述对该开机启动项目进行特殊处理的步骤,可以进一步包括:
针对该开机启动项目,发出所占用的系统开机时间不在正常值范围内的提示;或者
暂停该开机启动项目的开机启动;或者
控制该开机启动项目在系统开机完成之后启动。
例如,当前客户端安装了“暴风影音”,且对“暴风影音”在一个月内的开机时间进行统计,得到其开机时间的正常值范围为0.09s-0.11s;则一旦发现“暴风影音”的开机时间超出了这个正常值范围,则可以通过特殊标记对其进行提示。这里的特殊标记可以是亮颜色标记,以提示“暴风影音”存在异常,以实现便捷快速的对开机性能、瓶颈、开机问题进行测试、分析和定位。当然,所述特殊标记还可以是针对“暴风影音”采用与其它正常开机启动项目不同的标记,本发明并不对具体的特殊标记加以限制。
管理方案三、
所述依据开机启动项目的开机时间,对所述开机启动项目进行管理的步骤,具体可以包括:
客户端在展现每个开机启动项目的开机时间的过程中,提供相应的操作,其中,所述操作具体可以包括禁止项目、开启项目和删除项目;
服务器端针对每个开机启动项目,对其在众多客户端的开机时间和用户选择的操作进行抽样统计,得到相应的抽样统计结果;
服务器端在接收客户端关于开机启动项目的查询时,返回相应的抽样统计结果;
客户端在展现每个开机启动项目的开机时间的同时,展现相应的抽样统计结果。
本管理方案在展现每个开机启动项目的开机时间的同时,提供相应的操作,其中,“删除项目”可以直接将相应的开机启动项目从开机启动项中去掉,“禁止项目”和“开启项目”则可以暂时关闭和开启相应的开机启动项目。
在有些情况下,用户往往不知道如何从所述三个操作中选择,为此,服务器端可以在众多客户端中开展抽样统计,例如,可以在同意参加抽样统计的客户端中,随机抽样一部分客户端,并且,在服务器上对每个开机启动项目的开机时间和用户选择的操作进行统计,得到相应的抽样统计结果。这里的抽样统计结果中可以包括禁止比例,例如92%的用户选择了禁止某开机启动项目。该抽样统计结果可以作为借鉴,此时,用户可以随大流,也选择禁止此开机启动项目。
所述抽样统计还可以统计客户端在某个开机启动项目上花费的开机时间,并计算出平均值,这样,在当前客户端展现每个开机启动项目的开机时间时,如果这个开机启动项目的开机时间大于平均值,则还可以展现一个预计值,该预计值为当前开机时间与平均值的差,能够预计可以提升多少秒开机速度。
所述抽样统计结果还可以包括:各操作可能带来什么问题等。总之,本方案的抽样统计结果可以实现对此开机启动项目的全面了解,以便评估要采取的操作。全面的抽样统计结果,可以让用户更合理的根据自己的需求管理开机过程,从而最终实现开机性能的提升。
需要说明的是,由于上述抽样统计过程不带客户端标识,无法知道具体是哪一个客户端参加了抽样统计,也不会知道开机启动项目的开机时间和用户选择的操作是来自哪个客户端的,因此,本方案并不会泄露用户隐私,最大程度地保证用户隐私信息的安全性。
管理方案四、
所述依据开机启动项目的开机时间,对所述开机启动项目进行管理的步骤,具体可以包括:
在展现每个开机启动项目的开机时间的过程中,提供时间维度的操作按钮,该时间维度的操作按钮用于将相应的开机启动项目延迟启动。
本管理方案将每个项目耗费的开机时间和进程启动、退出的时间相结合,方便用户在时间维度上对开机启动项目进行管理,比如,将具体项目延迟到某个时间点再启动,或者延迟到系统空闲时等条件下再启动。
以上对四种管理方案进行了详细介绍,可以理解,本领域技术人员可以根据需要联合使用所述四种管理方案,或者,使用其中任一种,本发明对此不加以限制。
在使用所述四种管理方案时,本发明可以优选采用界面、图表或曲线形式中的一种或几种方式展现每个开机启动项目的开机时间。例如,在采用曲线形式展现每个开机启动项目的开机时间时,横轴可以表示启动时间,0代表操作系统的启动时间,纵轴可以表示某开机启动项目的开机时间值,其在坐标轴内表现为一条曲线,曲线起始点的横坐标为该开机启动项目的启动开始时间,曲线起始点的横坐标为该开机启动项目的启动结束时间;假设横轴的单位为分钟,如果想将“暴风影音”延迟启动,则可以将整个曲线沿着横轴往后拖若干个单位,以达到延迟启动的目的。
总之,本发明能够对开机启动项目的开机时间进行展现,同时提供各式各样的管理对开机启动项目进行管理,所述管理能够通过调整计算机内部的系统资源,达到改进计算机内部性能的目的。例如,在开机速度不够快时,可以知晓是众多开机启动项目中的哪个拖慢了开机,此时,可以提示用户删除、禁止或延迟这个拖慢开机的开机启动项目,减少开机时间,从而提高计算机系统的内部性能。
另外,本发明在对每个开机启动项目的开机时间进行展现的过程中,还会将每个启动项按照开机时间的多少进行排序展现,以方便用户寻找最耗费开机时间的开机启动项目,可以让用户更直观的根据自己的需求管理开机过程,从而最终实现开机性能的提升。
与前述方法实施例相应,本发明还公开了一种开机启动项目的管理装置,参照图3,具体可以包括:
第一时间获取模块301,用于获取操作系统的总启动时间;
第二时间获取模块302,用于分别获取每个开机启动项目在开机过程中的CPU占用时间,并计算开机过程中的所有开机启动项目的CPU累计占用时间;
第三时间获取模块303,用于根据每个开机启动项目的CPU占用时间在所有开机启动项目的CPU累计占用时间中所占比例,计算得到每个开机启动项目所占用的系统开机时间;及
管理模块304,用于依据开机启动项目的开机时间,对所述开机启动项目进行管理。
在本发明的一种优选实施例中,所述第二时间获取模块302可以进一步包括:
进程获取子模块,用于获取每个开机启动项目的进程;
进程时间获取子模块,用于分别获取该进程自创建到开机完成时在内核态和用户态占用的CPU时间;及
相加子模块,用于将该进程在内核态和用户态占用的CPU时间相加,得到相应启动项在开机过程中的CPU占用时间。
在本发明的另一种优选实施例中,所述第一时间获取模块301,可具体用于获取操作系统启动到开机完成时所经过的时间,作为操作系统的总启动时间。
本发明可以给出如下管理模块304的设计方案:
设计方案一、所述管理模块304具体可以包括:
第一展现子模块,用于将各开机启动项目的开机时间展示给用户;
交互管理子模块,用于依据用户指令,执行所述开机启动项目的相应管理工作,所述管理工作包括:延迟启动、暂停启动或者选择性启动。
设计方案二、所述管理模块304可以进一步包括:
统计子模块,用于针对开机启动项目,通过统计该开机启动项目在当前客户端多次启动所分别占用的系统开机时间,得到该开机启动项目所占用的系统开机时间的正常值范围;及
特殊处理子模块,用于在该开机启动项目所占用的系统开机时间不在正常值范围内时,对该开机启动项目进行特殊处理。
在本发明实施例中,优选的是,所述特殊处理子模块,可具体用于针对该开机启动项目,发出所占用的系统开机时间不在正常值范围内的提示;或者暂停该开机启动项目的开机启动;或者控制该开机启动项目在系统开机完成之后启动。
设计方案三、所述管理模块304具体可以包括:
操作提供子模块,位于客户端,用于在展现每个开机启动项目的开机时间的过程中,提供相应的操作,其中,所述操作包括禁止项目、开启项目和删除项目;
抽样统计子模块,位于服务器端,用于针对每个开机启动项目,对其在众多客户端的开机时间和用户选择的操作进行抽样统计,得到相应的抽样统计结果;
查询处理子模块,位于服务器端,用于在接收客户端关于开机启动项目的查询时,返回相应的抽样统计结果;及
第二展现子模块,位于客户端,用于在展现每个开机启动项目的开机时间的同时,展现相应的抽样统计结果。
设计方案四、所述管理模块304可以进一步包括:
第三展现子模块,用于在展现每个开机启动项目的开机时间的过程中,提供时间维度的操作按钮,该时间维度的操作按钮用于将相应的开机启动项目延迟启动。
在本发明实施例中,优选的是,所述管理模块304可以包括:
第四展现子模块,用于采用界面、图表或曲线形式中的一种或几种方式展现每个开机启动项目的开机时间。
在本发明的再一种优选实施例中,所述装置还可以包括:
开机完成判断模块,用于检测CPU占用率,如果CPU占用率呈下降趋势,且当前时刻的CPU占用率在第一阈值范围内,则认为当前时刻开机完成;或者,
检测磁盘IO口读写量,如果磁盘IO口读写量呈下降趋势,且当前时刻的磁盘IO口读写量在第二阈值范围内,则认为当前时刻开机完成;或者,
检测磁盘IO口读写量,如果磁盘IO口读写量呈下降趋势,且当前时刻的磁盘IO口读写量在第二阈值范围内,则认为当前时刻开机完成;或者,
获取系统启动程序列表,通过遍历所述系统启动程序列表中的进程是否加载完成,来判断开机是否完成;或者,
检测进程数的变动情况,如果进程数的变动情况呈下降趋势,且当前时刻的进程数在第三阈值范围内,则认为当前时刻开机完成。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
以上对本发明所提供的一种开机启动项目的管理方法和装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (20)

1.一种开机启动项目的管理方法,其特征在于,包括:
获取操作系统的总启动时间;
分别获取每个开机启动项目在开机过程中的CPU占用时间,并计算开机过程中的所有开机启动项目的CPU累计占用时间;
根据每个开机启动项目的CPU占用时间在所有开机启动项目的CPU累计占用时间中所占比例,计算得到每个开机启动项目所占用的系统开机时间;
依据开机启动项目的开机时间,对所述开机启动项目进行管理。
2.如权利要求1所述的方法,其特征在于,所述分别获取每个开机启动项目在开机过程中的CPU占用时间的步骤,包括:
获取每个开机启动项目的进程;
分别获取该进程自创建到开机完成时在内核态和用户态占用的CPU时间;
将该进程在内核态和用户态占用的CPU时间相加,得到相应启动项在开机过程中的CPU占用时间。
3.如权利要求1所述的方法,其特征在于,所述获取操作系统的总启动时间的步骤,包括:
获取操作系统启动到开机完成时所经过的时间,作为操作系统的总启动时间。
4.如权利要求1所述的方法,其特征在于,所述依据开机启动项目的开机时间,对所述开机启动项目进行管理的步骤,包括:
将各开机启动项目的开机时间展示给用户;
依据用户指令,执行所述开机启动项目的相应管理工作,所述管理工作包括:延迟启动、暂停启动或者选择性启动。
5.如权利要求1所述的方法,其特征在于,所述依据开机启动项目的开机时间,对所述开机启动项目进行管理的步骤,包括:
针对开机启动项目,通过统计该开机启动项目在当前客户端多次启动所分别占用的系统开机时间,得到该开机启动项目所占用的系统开机时间的正常值范围;
在该开机启动项目所占用的系统开机时间不在正常值范围内时,对该开机启动项目进行特殊处理。
6.如权利要求5所述的方法,其特征在于,所述对该开机启动项目进行特殊处理的步骤,包括:
针对该开机启动项目,发出所占用的系统开机时间不在正常值范围内的提示;或者
暂停该开机启动项目的开机启动;或者
控制该开机启动项目在系统开机完成之后启动。
7.如权利要求1所述的方法,其特征在于,所述依据开机启动项目的开机时间,对所述开机启动项目进行管理的步骤,包括:
客户端在展现每个开机启动项目的开机时间的过程中,提供相应的操作,其中,所述操作包括禁止项目、开启项目和删除项目;
服务器端针对每个开机启动项目,对其在众多客户端的开机时间和用户选择的操作进行抽样统计,得到相应的抽样统计结果;
服务器端在接收客户端关于开机启动项目的查询时,返回相应的抽样统计结果;
客户端在展现开机启动项目的开机时间的同时,展现相应的抽样统计结果。
8.如权利要求1所述的方法,其特征在于,所述依据开机启动项目的开机时间,对所述开机启动项目进行管理的步骤,包括:
在展现开机启动项目的开机时间的过程中,提供时间维度的操作按钮,该时间维度的操作按钮用于将相应的开机启动项目延迟启动。
9.如权利要求1至8中任一项所述的方法,其特征在于,所述依据开机启动项目的开机时间,对所述开机启动项目进行管理的步骤,包括:
采用界面、图表或曲线形式中的一种或几种方式展现所述开机启动项目的开机时间。
10.如权利要求2或3所述的方法,其特征在于,通过如下步骤判断开机是否完成:
检测CPU占用率,如果CPU占用率呈下降趋势,且当前时刻的CPU占用率在第一阈值范围内,则认为当前时刻开机完成;或者,
检测磁盘IO口读写量,如果磁盘IO口读写量呈下降趋势,且当前时刻的磁盘IO口读写量在第二阈值范围内,则认为当前时刻开机完成;或者,
检测磁盘IO口读写量,如果磁盘IO口读写量呈下降趋势,且当前时刻的磁盘IO口读写量在第二阈值范围内,则认为当前时刻开机完成;或者,
获取系统启动程序列表,通过遍历所述系统启动程序列表中的进程是否加载完成,来判断开机是否完成;或者,
检测进程数的变动情况,如果进程数的变动情况呈下降趋势,且当前时刻的进程数在第三阈值范围内,则认为当前时刻开机完成。
11.一种开机启动项目的管理装置,其特征在于,包括:
第一时间获取模块,用于获取操作系统的总启动时间;
第二时间获取模块,用于分别获取每个开机启动项目在开机过程中的CPU占用时间,并计算开机过程中的所有开机启动项目的CPU累计占用时间;
第三时间获取模块,用于根据每个开机启动项目的CPU占用时间在所有开机启动项目的CPU累计占用时间中所占比例,计算得到每个开机启动项目所占用的系统开机时间;及
管理模块,用于依据开机启动项目的开机时间,对所述开机启动项目进行管理。
12.如权利要求11所述的装置,其特征在于,所述第二时间获取模块包括:
进程获取子模块,用于获取每个开机启动项目的进程;
进程时间获取子模块,用于分别获取该进程自创建到开机完成时在内核态和用户态占用的CPU时间;及
相加子模块,用于将该进程在内核态和用户态占用的CPU时间相加,得到相应启动项在开机过程中的CPU占用时间。
13.如权利要求11所述的装置,其特征在于,所述第一时间获取模块,具体用于获取操作系统启动到开机完成时所经过的时间,作为操作系统的总启动时间。
14.如权利要求11所述的装置,其特征在于,所述管理模块包括:
第一展现子模块,用于将各开机启动项目的开机时间展示给用户;
交互管理子模块,用于依据用户指令,执行所述开机启动项目的相应管理工作,所述管理工作包括:延迟启动、暂停启动或者选择性启动。
15.如权利要求11所述的装置,其特征在于,所述管理模块包括:
统计子模块,用于针对开机启动项目,通过统计该开机启动项目在当前客户端多次启动所分别占用的系统开机时间,得到该开机启动项目所占用的系统开机时间的正常值范围;及
特殊处理子模块,用于在该开机启动项目所占用的系统开机时间不在正常值范围内时,对该开机启动项目进行特殊处理。
16.如权利要求15所述的装置,其特征在于,所述特殊处理子模块,具体用于针对该开机启动项目,发出所占用的系统开机时间不在正常值范围内的提示;或者暂停该开机启动项目的开机启动;或者控制该开机启动项目在系统开机完成之后启动。
17.如权利要求11所述的装置,其特征在于,所述管理模块包括:
操作提供子模块,位于客户端,用于在展现每个开机启动项目的开机时间的过程中,提供相应的操作,其中,所述操作包括禁止项目、开启项目和删除项目;
抽样统计子模块,位于服务器端,用于针对每个开机启动项目,对其在众多客户端的开机时间和用户选择的操作进行抽样统计,得到相应的抽样统计结果;
查询处理子模块,位于服务器端,用于在接收客户端关于开机启动项目的查询时,返回相应的抽样统计结果;及
第二展现子模块,位于客户端,用于在展现每个开机启动项目的开机时间的同时,展现相应的抽样统计结果。
18.如权利要求11所述的装置,其特征在于,所述管理模块包括:
第三展现子模块,用于在展现每个开机启动项目的开机时间的过程中,提供时间维度的操作按钮,该时间维度的操作按钮用于将相应的开机启动项目延迟启动。
19.如权利要求11至18中任一项所述的装置,其特征在于,所述管理模块包括:
第四展现子模块,用于采用界面、图表或曲线形式中的一种或几种方式展现每个开机启动项目的开机时间。
20.如权利要求12或13所述的装置,其特征在于,还包括:
开机完成判断模块,用于检测CPU占用率,如果CPU占用率呈下降趋势,且当前时刻的CPU占用率在第一阈值范围内,则认为当前时刻开机完成;或者,
检测磁盘IO口读写量,如果磁盘IO口读写量呈下降趋势,且当前时刻的磁盘IO口读写量在第二阈值范围内,则认为当前时刻开机完成;或者,
检测磁盘IO口读写量,如果磁盘IO口读写量呈下降趋势,且当前时刻的磁盘IO口读写量在第二阈值范围内,则认为当前时刻开机完成;或者,
获取系统启动程序列表,通过遍历所述系统启动程序列表中的进程是否加载完成,来判断开机是否完成;或者,
检测进程数的变动情况,如果进程数的变动情况呈下降趋势,且当前时刻的进程数在第三阈值范围内,则认为当前时刻开机完成。
CN201110264318.7A 2011-09-07 2011-09-07 一种开机启动项目的管理方法和装置 Active CN102981863B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110264318.7A CN102981863B (zh) 2011-09-07 2011-09-07 一种开机启动项目的管理方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110264318.7A CN102981863B (zh) 2011-09-07 2011-09-07 一种开机启动项目的管理方法和装置

Publications (2)

Publication Number Publication Date
CN102981863A CN102981863A (zh) 2013-03-20
CN102981863B true CN102981863B (zh) 2017-05-31

Family

ID=47855927

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110264318.7A Active CN102981863B (zh) 2011-09-07 2011-09-07 一种开机启动项目的管理方法和装置

Country Status (1)

Country Link
CN (1) CN102981863B (zh)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103150248B (zh) * 2013-03-22 2015-03-18 腾讯科技(深圳)有限公司 一种启动项耗时的测算方法和装置
CN103455407A (zh) * 2013-09-03 2013-12-18 小米科技有限责任公司 一种移动终端cpu占用率监测方法、装置及移动终端
CN104519091A (zh) * 2013-09-27 2015-04-15 珠海市君天电子科技有限公司 系统开机优化方法及装置
CN106095866B (zh) * 2013-12-16 2019-07-30 百度在线网络技术(北京)有限公司 应用程序推荐方法、程序启动速度的优化方法和装置
CN104021017B (zh) * 2014-06-17 2017-12-26 北京奇虎科技有限公司 启动项的处理方法和装置
CN104021019B (zh) * 2014-06-18 2016-09-14 腾讯科技(深圳)有限公司 一种应用自启动的控制方法、终端及服务器
CN105468480B (zh) * 2014-08-13 2020-08-14 腾讯科技(深圳)有限公司 一种开机启动管理方法和装置
CN104199692B (zh) * 2014-08-25 2017-08-04 北京金山安全软件有限公司 一种获取应用程序的启动时间的方法、装置及终端
CN104239139B (zh) * 2014-08-25 2018-01-23 北京金山安全软件有限公司 一种处理开机自启动项目的方法、装置及终端
CN104363292A (zh) * 2014-11-20 2015-02-18 普华基础软件股份有限公司 实时综合监控系统及实时综合监控方法
CN104461556A (zh) * 2014-12-19 2015-03-25 北京奇虎科技有限公司 插件处理方法、客户端及云服务器
CN104572197B (zh) * 2014-12-31 2018-09-04 北京奇虎科技有限公司 一种启动项的处理方法和装置
CN106201819A (zh) * 2016-06-28 2016-12-07 乐视控股(北京)有限公司 应用容器引擎的系统资源占用量监控方法和装置
CN107992334B (zh) * 2016-10-27 2021-06-01 腾讯科技(深圳)有限公司 一种开机优化的方法以及终端
CN106775712B (zh) * 2016-12-14 2021-02-05 深圳Tcl数字技术有限公司 安卓系统启动过程的响应方法及装置
CN106850947A (zh) * 2016-12-15 2017-06-13 广州视源电子科技股份有限公司 一种开机动画的控制方法及装置
CN110312995B (zh) * 2017-04-19 2022-12-16 Oppo广东移动通信有限公司 应用程序加速启动方法、装置及终端
CN108681506B (zh) * 2018-04-27 2021-11-05 无锡睿勤科技有限公司 一种压力测试方法及装置
CN109726058B (zh) * 2018-12-30 2021-02-19 联想(北京)有限公司 检测方法、装置及计算机设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101000549A (zh) * 2006-01-11 2007-07-18 英特维数位科技股份有限公司 加速开机程序的电子装置及其方法
CN101408861A (zh) * 2007-10-11 2009-04-15 鸿富锦精密工业(深圳)有限公司 应用程序实时监控系统及方法
CN101984404A (zh) * 2010-11-04 2011-03-09 东莞宇龙通信科技有限公司 控制应用程序并行运行的方法、装置及具有该装置的终端
CN101996101A (zh) * 2009-08-13 2011-03-30 北京搜狗科技发展有限公司 应用程序性能优化方法及装置
CN102163150A (zh) * 2010-02-24 2011-08-24 腾讯科技(深圳)有限公司 一种系统启动方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7275150B2 (en) * 2004-03-15 2007-09-25 International Business Machines Corporation Method and system for adding frequently selected applications to a computer startup sequence

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101000549A (zh) * 2006-01-11 2007-07-18 英特维数位科技股份有限公司 加速开机程序的电子装置及其方法
CN101408861A (zh) * 2007-10-11 2009-04-15 鸿富锦精密工业(深圳)有限公司 应用程序实时监控系统及方法
CN101996101A (zh) * 2009-08-13 2011-03-30 北京搜狗科技发展有限公司 应用程序性能优化方法及装置
CN102163150A (zh) * 2010-02-24 2011-08-24 腾讯科技(深圳)有限公司 一种系统启动方法及装置
CN101984404A (zh) * 2010-11-04 2011-03-09 东莞宇龙通信科技有限公司 控制应用程序并行运行的方法、装置及具有该装置的终端

Also Published As

Publication number Publication date
CN102981863A (zh) 2013-03-20

Similar Documents

Publication Publication Date Title
CN102981863B (zh) 一种开机启动项目的管理方法和装置
EP2659341B1 (en) Touch event anticipation in a computing device
Xia et al. A stochastic approach to analysis of energy-aware DVS-enabled cloud datacenters
WO2018226301A1 (en) Scheduler for amp architecture with closed loop performance controller using static and dynamic thread grouping
US9239994B2 (en) Data centers task mapping
CN104838360A (zh) 基于配额的资源管理
CN105579964A (zh) 确定并且显示应用的电力效率的移动终端和方法
Qian et al. Reducing mobile device energy consumption with computation offloading
CN107491346A (zh) 一种应用的任务处理方法、装置及系统
Zhang et al. A comparison of energy bugs for smartphone platforms
Qian et al. An energy-saving task scheduler for mobile devices
EP2601563A1 (en) Systems and methods for apportioning power consumption
CN109983421A (zh) 动态能量存储设备充电
US8402080B2 (en) Clustered computer system
Chen et al. Anole: a case for energy-aware mobile application design
Obukhova et al. Diagnostics of power consumption of a mobile device multi-core processor with detail of each core utilization
Bruneo et al. Evaluating energy consumption in a cloud infrastructure
Creus et al. Optimizing mobile software with built-in power profiling
WO2022087581A1 (en) Quantifying usage of robotic processs automation related resources
Netto et al. Deciding when and how to move HPC jobs to the cloud
Li et al. Usage history-directed power management for smartphones
JP5459393B2 (ja) マルチコアプロセッサシステム、制御プログラム、および制御方法
Noguero et al. A model for system resources in flexible time-triggered middleware architectures
Nassiffe et al. Optimizing quality of service in real-time systems under energy constraints
Takouna et al. A robust optimization for proactive energy management in virtualized data centers

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20170309

Address after: 100088 Beijing city Xicheng District xinjiekouwai Street 28, block D room 112 (Desheng Park)

Applicant after: Beijing Qihu Technology Co., Ltd.

Address before: The 4 layer 100025 unit of Beijing city Chaoyang District Jiuxianqiao Road No. 14 Building C

Applicant before: Qizhi Software (Beijing) Co., Ltd.

GR01 Patent grant
GR01 Patent grant