CN102819479A - 一种获取进程信息的方法及装置 - Google Patents

一种获取进程信息的方法及装置 Download PDF

Info

Publication number
CN102819479A
CN102819479A CN2011101506553A CN201110150655A CN102819479A CN 102819479 A CN102819479 A CN 102819479A CN 2011101506553 A CN2011101506553 A CN 2011101506553A CN 201110150655 A CN201110150655 A CN 201110150655A CN 102819479 A CN102819479 A CN 102819479A
Authority
CN
China
Prior art keywords
information
cpu resource
progress
consumption
active process
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
Application number
CN2011101506553A
Other languages
English (en)
Other versions
CN102819479B (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.)
Tencent Cloud Computing Beijing Co Ltd
Original Assignee
Tencent Technology Shenzhen 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
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201110150655.3A priority Critical patent/CN102819479B/zh
Publication of CN102819479A publication Critical patent/CN102819479A/zh
Application granted granted Critical
Publication of CN102819479B publication Critical patent/CN102819479B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • General Factory Administration (AREA)

Abstract

本发明公开了一种获取进程信息的方法,包括:获取至少一个时间点的活动进程信息,并根据所述获取的活动进程信息,最终获取至少一条耗占CPU资源多的进程信息,并可以将获取的耗占CPU资源多的进程信息提供给用户或根据耗占CPU资源多的进程信息对进程进行相应的操作。本发明还相应地公开了一种获取进程信息的装置。通过本发明,用户可以及时感知以及快速查看进程信息,从而提高了用户体验。

Description

一种获取进程信息的方法及装置
技术领域
本发明涉及性能检测技术,尤其涉及一种获取进程信息的方法及装置。
背景技术
多个进程同时运行的情况下,可能会出现系统处理速度较慢、影响用户体验的问题,在现有技术中,用户可以通过查询Windows任务管理器来了解活动进程信息,从而选择关闭那些目前不感兴趣的、耗占CPU资源较多的进程,从而改善体验效果。但是,由于Windows任务管理器是将所有的活动进程信息罗列在一个列表中,用户需要在罗列多个活动进程信息的列表中进行查看,才能获取感兴趣的进程信息,并且,现有技术中,用户在体验不佳的情况下才有可能去获取进程信息,并执行相应的操作来改善体验效果,换言之,系统不会主动向用户提供进程信息,也不会主动执行相应的操作来改善用户体验,所以,现有技术不便于用户及时感知及快速查看进程信息,从而影响用户体验。
发明内容
有鉴于此,本发明的主要目的在于提供一种获取进程信息的方法及装置,便于用户及时感知及快速查看进程信息,能够提高用户体验。
为达到上述目的,本发明的技术方案是这样实现的:
一种获取进程信息的方法,包括:
获取至少一个时间点的活动进程信息;
根据所述获取的活动进程信息,获取至少一条耗占CPU资源多的进程信息。
所述根据获取的活动进程信息,获取至少一条耗占CPU资源多的进程信息为:
分别获取各个时间点的活动进程信息中耗占CPU资源最多的进程信息,作为耗占CPU资源多的进程信息,
或者,先分别获取各个时间点的活动进程信息中耗占CPU资源最多的进程信息,再从所述各个时间点的活动进程信息中耗占CPU资源最多的进程信息中确定耗占CPU资源最多的进程信息,作为耗占CPU资源多的进程信息。
所述获取至少一条耗占CPU资源多的进程信息之后,该方法还包括:
将获取的进程信息通知给用户;
或者,在系统运行在非工作环境的情况下,将获取的进程信息通知给用户。
所述获取至少一条耗占CPU资源多的进程信息之后,该方法还包括:在系统运行在工作环境、且判定耗占CPU资源较多的进程并非工作进程或系统进程时,主动关闭至少一个耗占CPU资源较多的除系统进程之外的非工作进程。
所述获取时间点的活动进程信息为:
遍历所述时间点对应的进程信息数组链,除去空闲进程信息,将系统活动进程和用户活动进程信息存入到活动进程信息容器中。
所述获取至少一个时间点的活动进程信息为:根据预设时间间隔获取两个时间点的活动进程信息,分别存储到第一活动进程信息容器和第二活动进程信息容器,
所述根据获取的活动进程信息,获取至少一条耗占CPU资源多的进程信息为:
获取第一活动进程信息容器中耗占CPU资源最大的进程信息,并获取第二活动进程信息容器中耗占CPU资源最大的进程信息;
比对第一活动进程信息容器中耗占CPU资源最大的进程信息和第二活动进程信息容器中耗占CPU资源最大的进程信息,从中获取耗占CPU资源最大的进程信息。
一种获取进程信息的装置,包括第一获取模块和第二获取模块;其中,
所述第一获取模块,用于获取至少一个时间点的活动进程信息;
所述第二获取模块,用于根据所述第一获取模块获取的活动进程信息,获取至少一条耗占CPU资源多的进程信息。
所述第二获取模块根据第一获取模块获取的活动进程信息,获取至少一条耗占CPU资源多的进程信息为:
分别获取各个时间点的活动进程信息中耗占CPU资源最多的进程信息,作为耗占CPU资源多的进程信息,
或者,先分别获取各个时间点的活动进程信息中耗占CPU资源最多的进程信息,再从所述各个时间点的活动进程信息中耗占CPU资源最多的进程信息中确定耗占CPU资源最多的进程信息,作为耗占CPU资源多的进程信息。
所述第一获取模块获取至少一个时间点的活动进程信息为:根据预设时间间隔获取两个时间点的活动进程信息。
该装置还包括用户通知模块,用于将第二获取模块获取的进程信息通知给用户,或者,在所述装置所在的系统运行在非工作环境的情况下,将第二获取模块获取的进程信息通知给用户。
该装置还包括进程关闭模块,用于在该装置所在的系统运行在工作环境、且判定耗占CPU资源较多的进程并非工作进程或系统进程时,主动关闭至少一个耗占CPU资源较多的除系统进程之外的非工作进程。
本发明获取进程信息的方法及装置,获取至少一个时间点的活动进程信息,并根据所述获取的活动进程信息,最终获取至少一条耗占CPU资源多的进程信息,并可以将获取的耗占CPU资源多的进程信息提供给用户或根据耗占CPU资源多的进程信息对进程进行相应的操作,以提高用户体验。通过本发明,用户可以及时感知以及快速查看进程信息,从而提高了用户体验。
附图说明
图1为本发明获取进程信息的方法流程示意图;
图2为本发明实施例获取进程信息的原理示意图;
图3为本发明实施例获取活动进程信息的流程示意图;
图4为本发明实施例通过两点增量比对获取耗占CPU资源最大的进程信息的流程示意图。
具体实施方式
本发明的基本思想是:获取至少一个时间点的活动进程信息,并根据所述获取的活动进程信息,最终获取至少一条耗占CPU资源多的进程信息,从而可以将获取的耗占CPU资源多的进程信息提供给用户或根据耗占CPU资源多的进程信息对进程进行相应的操作,以提高用户体验。
图1为本发明获取进程信息的方法流程示意图,如图1所示,该方法包括:
步骤101:获取至少一个时间点的活动进程信息。
步骤102:根据所述获取的活动进程信息,获取至少一条耗占CPU资源多的进程信息。
步骤101中,时间点之间的时间间隔可以根据实际需求预先设置。
步骤102中,可以分别获取步骤101中各个时间点的活动进程信息中耗占CPU资源最多的进程信息,作为耗占CPU资源多的进程信息,也可以先分别获取步骤101中各个时间点的活动进程信息中耗占CPU资源最多的进程信息,再从设定时间段内,各个时间点的活动进程信息中耗占CPU资源最多的进程信息中确定耗占CPU资源最多的进程信息,作为耗占CPU资源多的进程信息。
优选的,步骤101获取两个时间点的活动进程信息,步骤102综合考虑两个时间点的活动进程信息,最终获取一条耗占CPU资源多的进程信息,具体的,步骤102中可以采用两点增量比对法获取耗占CPU资源多的进程信息,所谓两点增量比对,即对两个时间点获取的进程信息进行比对,获取耗占CPU资源最多的进程信息。
需要说明的是,通过本发明获取的一条或者多条耗占CPU资源最多的进程信息,可以将获取的进程信息通知给用户,例如通过配置显示界面,在显示界面中以提示信息的方式进行通知,从而使用户及时感知进程信息;也可以仅在系统运行在非工作环境的情况下,将获取的进程信息通知给用户,从而在不影响用户工作的情况下,使用户及时感知进程信息;还可以在系统运行在工作环境、且判定耗占CPU资源较多的进程并非工作进程或系统进程时,主动关闭至少一个耗占CPU资源较多的除系统进程之外的非工作进程,从而在不影响用户工作的情况下,提高用户体验。
一般的,用户执行处理文档、绘图或开发项目等操作时,对应系统处于工作环境,相应的,文档处理进程、绘图进程、开发项目等进程即为工作进程,如果系统中不存在活动的工作进程,则系统处于非工作环境。
需要说明的是,本发明中所述进程信息可以包括以下一项或多项:进程名称、进程ID、进程耗占CPU的资源数、进程类型。
本发明还提出一种获取进程信息的装置,该装置包括第一获取模块和第二获取模块;其中,
所述第一获取模块,用于获取至少一个时间点的活动进程信息;
所述第二获取模块,用于根据所述第一获取模块获取的活动进程信息,获取至少一条耗占CPU资源多的进程信息。
所述第二获取模块根据第一获取模块获取的活动进程信息,获取至少一条耗占CPU资源多的进程信息为:
分别获取各个时间点的活动进程信息中耗占CPU资源最多的进程信息,作为耗占CPU资源多的进程信息,
或者,先分别获取各个时间点的活动进程信息中耗占CPU资源最多的进程信息,再从所述各个时间点的活动进程信息中耗占CPU资源最多的进程信息中确定耗占CPU资源最多的进程信息,作为耗占CPU资源多的进程信息。
所述第一获取模块获取至少一个时间点的活动进程信息为:根据预设时间间隔获取两个时间点的活动进程信息。
该装置还可以包括用户通知模块,用于将第二获取模块获取的进程信息通知给用户,或者,在所述装置所在的系统运行在非工作环境的情况下,将第二获取模块获取的进程信息通知给用户。
该装置还可以包括进程关闭模块,用于在该装置所在的系统运行在工作环境、且判定耗占CPU资源较多的进程并非工作进程或系统进程时,主动关闭至少一个耗占CPU资源较多的除系统进程之外的非工作进程。
下面结合具体实施例对本发明的技术方案作进一步详细描述。
实施例
本实施例中,获取两个时间点的活动进程信息,综合考虑两个时间点的活动进程信息耗占CPU资源的情况,最终获取一条耗占CPU资源多的进程信息。
图2为本发明实施例获取进程信息的原理示意图,如图2所示,本实施例具体在时间点A,获取此时间点的所有活动进程信息,将其存入活动进程信息容器A;相隔1s后,获取时间点B的所有活动进程信息,将其存入活动进程信息容器B,并且,对活动进程信息容器A和活动进程信息容器B中存储的活动进程信息进行增量比对,获取耗占CPU资源最多的进程信息。
实际应用中,可以利用Native Api(注:Native Api是windows用户模式中为上层Win32api提供接口的本机的系统服务)的查询系统信息接口(NtQuerySystemInformation()),获取某时间点的所有活动进程信息,除去系统空闲进程,图3为本发明实施例获取活动进程信息的流程示意图,如图3所示,该流程包括:
1)加载ntdll.dll,获取函数NtQuerySystemInformation()原型;
2)设置SYSTEM_FNFORMATION_CLASS为SystemProcessInformation(注:获取当前活动进程信息),调用NtQuerySystemInformation()接口,通过SystemProcessInformation标识获取进程信息数组链的第一条进程信息地址,即获取进程信息数组链的起始地址;
3)遍历进程信息数组链,除去空闲进程信息,将系统活动进程和用户活动进程信息存入到活动进程信息容器中。这里,到达进程信息数组链的底端,已无下一条进程信息,则表明遍历完成。
图4为本发明实施例通过两点增量比对获取耗占CPU资源最大的进程信息的流程示意图,如图4所示,该流程包括:
1)获取活动进程信息容器A中耗占CPU资源最大的进程信息,获取活动进程信息容器B中耗占CPU资源最大的进程信息;
2)比对活动进程信息容器A中耗占CPU资源最大的进程信息和活动进程信息容器B中耗占CPU资源最大的进程信息,从中获取耗占CPU资源最大的进程信息。
需要说明的是,图4中,Pamax、Pbmax、Pmax均为预设的参数,初始值为空,其中,Pamax表示活动进程信息容器A中耗占CPU资源最大的进程所耗占的CPU资源数(一般以百分数表示),Pbmax表示活动进程信息容器B中耗占CPU资源最大的进程所耗占的CPU资源数,Pmax表示活动进程信息容器A和活动进程信息容器B中耗占CPU资源最大的进程所耗占的CPU资源数。另外,Pa[i]表示活动进程信息容器A中第i个节点对应的进程耗占CPU的资源数,Pb[j]表示活动进程信息容器A中第j个节点对应的进程耗占CPU的资源数,i和j的初始值一般为0。
可以看出,本发明有效的解决了耗占CPU资源多的活动进程不便于查看的盲区,为用户提供了良好的界面体验,同时为后续的针对耗占CPU资源多的进程作相应技术处理提供了辅助支持。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。

Claims (11)

1.一种获取进程信息的方法,其特征在于,该方法包括:
获取至少一个时间点的活动进程信息;
根据所述获取的活动进程信息,获取至少一条耗占CPU资源多的进程信息。
2.根据权利要求1所述的方法,其特征在于,所述根据获取的活动进程信息,获取至少一条耗占CPU资源多的进程信息为:
分别获取各个时间点的活动进程信息中耗占CPU资源最多的进程信息,作为耗占CPU资源多的进程信息,
或者,先分别获取各个时间点的活动进程信息中耗占CPU资源最多的进程信息,再从所述各个时间点的活动进程信息中耗占CPU资源最多的进程信息中确定耗占CPU资源最多的进程信息,作为耗占CPU资源多的进程信息。
3.根据权利要求1或2所述的方法,其特征在于,所述获取至少一条耗占CPU资源多的进程信息之后,该方法还包括:
将获取的进程信息通知给用户;
或者,在系统运行在非工作环境的情况下,将获取的进程信息通知给用户。
4.根据权利要求1或2所述的方法,其特征在于,所述获取至少一条耗占CPU资源多的进程信息之后,该方法还包括:在系统运行在工作环境、且判定耗占CPU资源较多的进程并非工作进程或系统进程时,主动关闭至少一个耗占CPU资源较多的除系统进程之外的非工作进程。
5.根据权利要求1所述的方法,其特征在于,所述获取时间点的活动进程信息为:
遍历所述时间点对应的进程信息数组链,除去空闲进程信息,将系统活动进程和用户活动进程信息存入到活动进程信息容器中。
6.根据权利要求1或2所述的方法,其特征在于,所述获取至少一个时间点的活动进程信息为:根据预设时间间隔获取两个时间点的活动进程信息,分别存储到第一活动进程信息容器和第二活动进程信息容器,
所述根据获取的活动进程信息,获取至少一条耗占CPU资源多的进程信息为:
获取第一活动进程信息容器中耗占CPU资源最大的进程信息,并获取第二活动进程信息容器中耗占CPU资源最大的进程信息;
比对第一活动进程信息容器中耗占CPU资源最大的进程信息和第二活动进程信息容器中耗占CPU资源最大的进程信息,从中获取耗占CPU资源最大的进程信息。
7.一种获取进程信息的装置,其特征在于,该装置包括第一获取模块和第二获取模块;其中,
所述第一获取模块,用于获取至少一个时间点的活动进程信息;
所述第二获取模块,用于根据所述第一获取模块获取的活动进程信息,获取至少一条耗占CPU资源多的进程信息。
8.根据权利要求7所述的装置,其特征在于,所述第二获取模块根据第一获取模块获取的活动进程信息,获取至少一条耗占CPU资源多的进程信息为:
分别获取各个时间点的活动进程信息中耗占CPU资源最多的进程信息,作为耗占CPU资源多的进程信息,
或者,先分别获取各个时间点的活动进程信息中耗占CPU资源最多的进程信息,再从所述各个时间点的活动进程信息中耗占CPU资源最多的进程信息中确定耗占CPU资源最多的进程信息,作为耗占CPU资源多的进程信息。
9.根据权利要求7或8所述的装置,其特征在于,所述第一获取模块获取至少一个时间点的活动进程信息为:根据预设时间间隔获取两个时间点的活动进程信息。
10.根据权利要求7或8所述的装置,其特征在于,该装置还包括用户通知模块,用于将第二获取模块获取的进程信息通知给用户,或者,在所述装置所在的系统运行在非工作环境的情况下,将第二获取模块获取的进程信息通知给用户。
11.根据权利要求7或8所述的装置,其特征在于,该装置还包括进程关闭模块,用于在该装置所在的系统运行在工作环境、且判定耗占CPU资源较多的进程并非工作进程或系统进程时,主动关闭至少一个耗占CPU资源较多的除系统进程之外的非工作进程。
CN201110150655.3A 2011-06-07 2011-06-07 一种获取进程信息的方法及装置 Active CN102819479B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110150655.3A CN102819479B (zh) 2011-06-07 2011-06-07 一种获取进程信息的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110150655.3A CN102819479B (zh) 2011-06-07 2011-06-07 一种获取进程信息的方法及装置

Publications (2)

Publication Number Publication Date
CN102819479A true CN102819479A (zh) 2012-12-12
CN102819479B CN102819479B (zh) 2015-10-28

Family

ID=47303602

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110150655.3A Active CN102819479B (zh) 2011-06-07 2011-06-07 一种获取进程信息的方法及装置

Country Status (1)

Country Link
CN (1) CN102819479B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104484285A (zh) * 2014-12-09 2015-04-01 杭州华为数字技术有限公司 一种存储管理方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1256878A2 (en) * 2001-02-27 2002-11-13 Sony Computer Entertainment Inc. Information processing system, integrated information processing system, method for calculating execution load, and computer program
CN101344865A (zh) * 2008-08-15 2009-01-14 中兴通讯股份有限公司 一种cpu占用率测量方法及装置
CN102063363A (zh) * 2010-01-26 2011-05-18 深圳市同洲电子股份有限公司 一种内存占用情况统计装置及内存占用情况统计方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1256878A2 (en) * 2001-02-27 2002-11-13 Sony Computer Entertainment Inc. Information processing system, integrated information processing system, method for calculating execution load, and computer program
CN101344865A (zh) * 2008-08-15 2009-01-14 中兴通讯股份有限公司 一种cpu占用率测量方法及装置
CN102063363A (zh) * 2010-01-26 2011-05-18 深圳市同洲电子股份有限公司 一种内存占用情况统计装置及内存占用情况统计方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104484285A (zh) * 2014-12-09 2015-04-01 杭州华为数字技术有限公司 一种存储管理方法和装置
CN104484285B (zh) * 2014-12-09 2017-11-17 杭州华为数字技术有限公司 一种存储管理方法和装置

Also Published As

Publication number Publication date
CN102819479B (zh) 2015-10-28

Similar Documents

Publication Publication Date Title
CN105159777A (zh) 进程的内存回收方法及装置
CN104007806A (zh) 一种安卓系统中的cpu频率的控制方法、装置和设备
CN103500191A (zh) 一种流表配置、查询、表项删除方法及装置
CN107306277A (zh) 一种服务器同步扩容的方法及装置
CN102629231B (zh) 一种检测任务堆栈的方法
CN105095523A (zh) 一种处理告警事件的方法及系统
CN104699529A (zh) 一种信息获取方法及装置
CN105591778A (zh) 一种分布式系统更新配置文件的方法及系统
CN106598508A (zh) 一种固态硬盘及其写入仲裁方法、系统
CN103701651A (zh) 一种国产环境下应用服务容灾装置和方法
CN103488538A (zh) 云计算系统中的应用扩展装置和应用扩展方法
CN104348653A (zh) 云管理平台的用户任务实现方法、系统与触发器
CN107797901A (zh) 一种堆栈分析以及邮件实时报警的实现方法
CN102819479A (zh) 一种获取进程信息的方法及装置
CN102682020A (zh) 文件管理系统及方法
CN102314631B (zh) 制造执行系统的事件处理装置
CN102736878A (zh) 一种实现web页面部分打印的方法和装置
CN104699513A (zh) 一种文件处理方法及装置
CN103034730A (zh) 一种基于安卓平台的数据处理方法和系统
CN103530239A (zh) 一种使用内存池提升通信服务器性能的方法
CN102799366A (zh) 移动终端切换多个文档的方法和系统
CN104699520B (zh) 一种基于虚拟机迁移调度的节能方法
CN103699831A (zh) 主机实时加固系统和方法
CN104679585A (zh) 浮点上下文切换方法
CN204557567U (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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20180914

Address after: 100190 Beijing Haidian District Zhichun Road 49 No. 3 West 309

Patentee after: Tencent cloud computing (Beijing) limited liability company

Address before: 518044 East 403 room, Sai Ge science and Technology Park, Futian District Zhenxing Road, Shenzhen, Guangdong, China, 2

Patentee before: Tencent Technology (Shenzhen) Co., Ltd.