安卓平台上进程的cpu占用率确定方法和装置的制造方法

文档序号:9304492阅读:596来源:国知局
安卓平台上进程的cpu占用率确定方法和装置的制造方法
【技术领域】
[0001]本发明涉及计算机技术领域,特别涉及一种安卓平台上进程的CPU占用率确定方法和装置。
【背景技术】
[0002]为了测试电子设备中的进程的性能,测试人员通常需要确定该进程的CPU (Central Processing Unit,中央处理器)占用率。
[0003]现有的CPU占用率确定方法可以包括:电子设备从系统文件中读取进程在预定时长内占用CPU的占用时长,以及在该预定时长内CPU的运行时长;将占用时长与运行时长的比值作为进程占用CPU的占用率。
[0004]在实现本发明的过程中,发明人发现现有技术至少存在以下问题:当电子设备是使用安卓平台的设备时,由于电子设备的CPU的工作频率在工作过程中会不断变化,且不同工作频率下CPU的处理能力有所差异,所以现有的确定方法确定的CPU占用率并不能真实的反映进程的性能。

【发明内容】

[0005]为了解决现有技术中存在的问题,本发明实施例提供了一种安卓平台上进程的CPU占用率确定方法和装置。所述技术方案如下:
[0006]第一方面,提供了一种安卓平台上进程的CPU占用率确定方法,包括:
[0007]开启所述CPU的预定工作模式,在所述预定工作模式下调整所述CPU以预设的恒定频率工作;
[0008]获取进程在预定时长内占用所述CPU的占用时长;
[0009]获取所述CPU在所述预定时长内的总工作时长;
[0010]根据所述占用时长与所述总工作时长的比值确定所述进程的CPU占用率。
[0011]可选地,所述获取所述CPU在所述预定时长内的总工作时长,包括:
[0012]根据所述预设的恒定频率获取所述CPU在单位时长内的工作时长;
[0013]根据所述工作时长以及所述预定时长计算所述总工作时长。
[0014]可选地,所述方法还包括:
[0015]获取所述CPU的个数;
[0016]所述根据所述工作时长以及所述预定时长计算所述总工作时长,包括:
[0017]根据每个CPU在所述单位时长内的工作时长、所述预定时长以及所述CPU的个数计算所述总工作时长。
[0018]可选地,所述预设的恒定频率为电子设备的CPU的最大工作频率。
[0019]可选地,所述获取进程在预定时长内占用所述CPU的占用时长,包括:
[0020]从系统文件中读取所述占用时长。
[0021]第二方面,提供了一种安卓平台上进程的CPU占用率确定装置,包括:
[0022]模式开启模块,用于开启所述CPU的预定工作模式,在所述预定工作模式下调整所述CPU以预设的恒定频率工作;
[0023]第一获取模块,用于获取进程在预定时长内占用所述CPU的占用时长;
[0024]第二获取模块,用于获取所述CPU在所述预定时长内的总工作时长;
[0025]确定模块,用于根据所述占用时长与所述总工作时长的比值确定所述进程的CPU
占用率。
[0026]可选地,所述第二获取模块,包括:
[0027]第一获取单元,用于根据所述预设的恒定频率获取所述CPU在单位时长内的工作时长;
[0028]计算单元,用于根据所述工作时长以及所述预定时长计算所述总工作时长。
[0029]可选地,所述第二获取模块,还包括:
[0030]第二获取单元,用于获取所述CPU的个数;
[0031]所述计算单元,还用于根据每个CPU在所述单位时长内的工作时长、所述预定时长以及所述CPU的个数计算所述总工作时长。
[0032]可选地,所述预设的恒定频率为电子设备的CPU的最大工作频率。
[0033]可选地,所述第一获取模块,还用于从系统文件中读取所述占用时长。
[0034]本发明实施例提供的技术方案的有益效果是:
[0035]通过开启CPU的预定工作模式,在预定工作模式下调整CPU以预设的恒定频率工作,之后再根据进程在预定时长内占用CPU的占用时长以及CPU在预定时长内的总工作时长确定CPU占用率;解决了现有技术中当电子设备为使用安卓平台的设备时,电子设备确定的CPU占用率不准确,进而不能准确反映进程的性能的问题;达到了可以提高计算得到的CPU占用率的准确度并正确反映进程的性能的效果。
【附图说明】
[0036]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0037]图1是本发明一个实施例提供的安卓平台上进程的CPU占用率确定方法的方法流程图;
[0038]图2是本发明另一个实施例提供的安卓平台上进程的CPU占用率确定方法的方法流程图;
[0039]图3是本发明一个实施例提供的安卓平台上进程的CPU占用率确定装置的结构方框图;
[0040]图4是本发明另一个实施例提供的安卓平台上进程的CPU占用率确定装置的结构方框图。
【具体实施方式】
[0041]为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
[0042]请参考图1,其示出了本发明一个实施例提供的安卓平台上进程的CPU占用率确定方法的方法流程图。如图1所示,该CPU占用率确定方法可以包括:
[0043]步骤101,开启CPU的预定工作模式,在预定工作模式下调整CPU以预设的恒定频率工作。
[0044]步骤102,获取进程在预定时长内占用CPU的占用时长。
[0045]步骤103,获取CPU在预定时长内的总工作时长。
[0046]步骤104,根据占用时长与总工作时长的比值确定进程的CPU占用率。
[0047]综上所述,本实施例提供的安卓平台上进程的CPU占用率确定方法,通过开启CPU的预定工作模式,在预定工作模式下调整CPU以预设的恒定频率工作,之后再根据进程在预定时长内占用CPU的占用时长以及CPU在预定时长内的总工作时长确定CPU占用率;解决了现有技术中当电子设备为使用安卓平台的设备时,电子设备确定的CPU占用率不准确,进而不能准确反映进程的性能的问题;达到了可以提高计算得到的CPU占用率的准确度并正确反映进程的性能的效果。
[0048]请参考图2,其示出了本发明另一个实施例提供的安卓平台上进程的CPU占用率确定方法的方法流程图。如图2所示,该CPU占用率确定方法可以包括:
[0049]步骤201,开启CPU的预定工作模式,在预定工作模式下调整CPU以预设的恒定频率工作。
[0050]电子设备中包括CPU,且电子设备中的CPU可以为单核,也可以为至少两个核,比如为双核或者四核,本实施例对CPU核心的个数并不做限定。其中,电子设备可以为使用安卓平台的设备,且该电子设备的CPU的工作频率在工作过程中会发生变化。
[0051]电子设备可以将CPU的工作模式设置为预定工作模式,在该预定工作模式下调整CPU以预设的恒定频率工作。其中,预设的恒定频率可以为电子设备的CPU的最大工作频率。
[0052]步骤202,从系统文件中读取进程在预定时长内占用CPU的占用时长。
[0053]电子设备可以获取进程在预定时长内占用CPU的占用时长。可选地,电子设备可以从系统文件中读取该进程的占用时长。
[0054]比如,以电子设备为使用安卓平台的电子设备为例,电子设备可以读取系统文件中的/proc/ {pid}/stat文件,从该文件中读取该占用时长。
[0055]当然,电子设备还可以通过其他获取方式来获取该占用时长,本实施例对此并不做限定。
[0056]步骤203,根据预设的恒定频率获取CPU在单位时长内的工作时长。
[0057]电子设备可以获取CPU的系统时钟频率,也即获取CPU在一秒内所具有的总的时间片数,将获取到的总的时间片数作为CPU在单位时长内的工作时长。
[0058]可选地,电子设备可以从系统文件中读取CPU的系统时钟频率,将该系统时钟频率确定为CPU在单位时长内的工作时长。其中,CPU的系统时钟频率Hz = sysconf(_SC_CLK_TCK)ο
[0059]可选地,当CPU有至少两个核心时,电子设备可以获取CPU中的每个核心在单位时长内的工作时长。其获取方法与上述获取方法类似,本实施例在此不再赘述。
[0060]步骤204,根据工作时长以及预定时长计算总工作时长。
[0061]在电子设备获取到CPU在单位时长内的工作时长之后,电子设备可以根据该工作时长以及预定时长计算CPU的总工作时长。可选地,该总工作时长=单位时长内的工作时长*预定时长。比如,T = Hz*Uft2)。其中,ti为预定时长的开始时间戳,12为预定时长的结束时间戳。
[0062]可选地,当CPU的核心有至少两个时,在步骤204之前,电子设备还可以执行如下步骤:获取CPU的个数。其中,本实施例中的CPU的个数即为CPU的核心的个数。
[0063]相应的,步骤204可以实现为:根据每个CPU在单位时长内的工作时长、预定时长以及CPU的个数计算总工作时长。
[0064]可选地,该总工作时长=单位时长内的工作时长*预定时长*η。η为CPU的核心的个数。比如,T =可选地,若不同的CPU核心在单位时长内的工作时长不同,则电子设备还可以分别计算每个CPU核心在预定时
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1