Windows性能计数器配置应用

2.4 CategoryName:流程

每个过程都需要提供执行程序所需的资源。进程具有虚拟地址空间,可执行代码,系统对象的打开句柄,安全上下文,唯一的进程标识符,环境变量,优先级类别,最小和最大工作集大小以及至少一个执行线程。每个进程都从单个线程(通常称为主线程)开始,但是可以从其任何线程中创建其他线程。

线程是流程中可以安排执行的实体。进程的所有线程共享其虚拟地址空间和系统资源。另外,每个线程维护异常处理程序,调度优先级,线程本地存储,唯一的线程标识符以及系统将用于保存线程上下文直到被调度的一组结构。线程上下文包括线程进程的地址空间中的线程的计算机寄存器集,内核堆栈,线程环境块和用户堆栈。线程也可以具有自己的安全上下文,可用于模拟客户端。(有关更多信息,请参见“关于进程和线程” http://msdn.microsoft.com/zh-cn/library/windows/desktop/ms681917%28v=vs.85%29.aspx

PerformanceCounter(“ Process”,“ Thread Count”,“ _Total”);

进程创建的线程数。此计数器不指示哪些线程繁忙和哪些线程空闲。它显示最后观察到的值,而不是平均值。

PerformanceCounter(“ Process”,“ Handle Count”,“ _Total”);

该值报告进程为它们创建的对象打开的句柄数。程序使用句柄来标识它们必须访问的资源。在发生内存泄漏时,此计数器的值趋于增加。

PerformanceCounter(“ Process”,“ Thread Count”,“ _Total”);

该值随时间报告进程创建多少线程。

2.5 CategoryName:System

PerformanceCounter(“ System”,“ Context Switches / sec”,null);

当内核将处理器从一个线程切换到另一个线程时,就会发生上下文切换。当具有比正在运行的线程高的优先级的线程准备就绪或正在运行的线程必须出于某种原因(例如I / O操作)而等待时,也可能发生上下文切换。当线程获得或失去处理器时间时,“线程\上下文切换/秒”计数器值将增加。

PerformanceCounter(“ System”,“ System Calls / sec”,null);

这是CPU每秒处理的系统调用数。通过将处理器的中断/秒与系统调用/秒进行比较,我们可以了解系统对连接的硬件做出响应需要付出多少努力。在健康的系统上,与每秒的系统调用数相比,每秒的中断数应该可以忽略不计。当系统不得不反复调用中断进行服务时,则表明存在硬件故障。

PerformanceCounter(“ System”,“ Processor Queue Length”,null);

系统\处理器队列长度计数器是每个处理器正在服务的线程数的粗略指示器。

3跟踪性能计数器的应用程序的结构

跟踪一组PerfomanceCounter()的应用程序的基本结构如图所示:

图1:应用程序的主要结构

应用程序的主要目的是捕获特定的采样间隔和性能计数器列表。

当主程序启动时,第一个操作是读取两个XML文件:SysField.XML文件和app.config文件。应用程序的行为取决于这两个文件中存储的参数值。

SysField.XML的结构如下所示:

C:\SysParamsLog2
   Log.txt

   true

   30

   1

Windows性能计数器应用(PART1)

Windows性能计数器应用(PART2)

原文地址:https://www.cnblogs.com/Aldj/p/12411992.html

时间: 2024-08-01 02:12:05

Windows性能计数器配置应用的相关文章

Ant学习-001-ant 基础知识及windows环境配置

一.Ant 概要基础知识 Apache Ant 是一个将软件编译.测试.部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发,用以构建应用,或结合其他开源测试工具例如 git.TestNG等搭建持续集成测试开发环境,从而高效.高质量的构建产品. Ant 有以下一些优点: 跨平台,可移植.Ant 是 Java 语言编写的,所以有很好的跨平台性和可移植性,无论是在 windows.Linux,还是 mac. 操作简单. Ant 是由一个内置任务和可选任务组成的,运行时需要一个构

四、基于Windows 2012配置SQL Server 2014 AlwaysOn

SQLserver 2014 AlwaysOn增强了原有的数据库镜像功能,使得先前的单一数据库故障转移变成以组(多个数据)为单位的故障转移.同时可以支持多达9个复制伙伴,可读性辅助副本服务器等多个特性.对于以组为单位的数据库,主要是解决应用对于多个数据库之间存在的依赖性,从而进行整体转移.其次,可以将那些报表或者只读需求转移到只读辅助副本,从而大大减少主副本的负载,使得主副本更加容易扩展,更好地支持生产负载,以及对请求提供更快的响应. 本文描述了基于虚拟环境Windows 2012 + SQLs

Windows下配置QT OpenCV

OpenCV-Study:Windows下配置OpenCV 本文博客链接:http://blog.csdn.net/jdh99,作者:jdh,转载请注明. 环境: 主机:XP OpenCV版本:2.4.0 说明: 配置参考链接: http://blog.csdn.net/youhaipeng/article/details/7452972 http://blog.csdn.NET/youhaipeng/article/details/7453034 测试代码: .pro文件 [plain] vi

windows下配置nginx+php环境

windows下配置nginx+php环境 刚看到nginx这个词,我很好奇它的读法(engine x),我的直译是“引擎x”,一般引“擎代”表了性能,而“x”大多出现是表示“xtras(额外的效果)”,那么整个词的意思就是类似“极致效果”,“额外性能”.当然这里不是要来唠嗑,以上是题外话. nginx相较于我们熟悉的apache.IIS的优势,就我浅入浅出的了解,在于“反向代理”和“负载均衡”.因此考虑到能够为Web服务器节省资源,它可以代替apache来提供Web服务.那么上正题了,ngin

Windows gagent 配置

不知道到大家使用什么搜索引擎, 近日发现google 搜索用不了了, 网上找了一些解决方法, 什么"没有抗争就自由", 那都不是有效的解决方式, 后来就知道了一个翻墙的用了,发现还挺好用, 不过在配置的过程中遇到了一些问题, 在这里跟大家分享一下. 第一步:需要有一个谷歌账号,到下面连接地址,创建一个应用: https://www.appengine.google.com/ 如果还没有用过GAE,先研究下怎么开通GAE,这个应该不麻烦. https://code.google.com/

Ubuntu安装SSH + Windows上配置Putty

1. Ubuntu安装SSH 命令: # sudo apt-get install openssh-server 2. 启动SSH Server 命令: # sudo /etc/init.d/ssh start 3. 在控制端(安装putty的一侧,Windows或其他Linux OS)安装和配置putty 3.1 下载安装putty 官方主页: http://www.putty.org/ 下载页面: http://www.chiark.greenend.org.uk/~sgtatham/put

windows下配置android-NDK环境

第一步,下载安装cygwin,(模拟Linux 的编译环境),我们可以到Cygwin的官方网站下载Cygwin的安装程序,地址是:  http://www.cygwin.com/; 开始安装Cygwin,安装教程http://jingyan.baidu.com/article/48a42057accae3a92525045a.html 第二部,下载ndk,http://developer.android.com/tools/sdk/ndk/index.html:下载完成,解压: 第三步,在Cyg

基于Windows 2012配置SQL Server 2014 AlwaysOn

SQLserver 2014 AlwaysOn增强了原有的数据库镜像功能,使得先前的单一数据库故障转移变成以组(多个数据)为单位的故障转移.同时可以支持多达9个复制伙伴,可读性辅助副本服务器等多个特性.对于以组为单位的数据库,主要是解决应用对于多个数据库之间存在的依赖性,从而进行整体转移.其次,可以将那些报表或者只读需求转移到只读辅助副本,从而大大减少主副本的负载,使得主副本更加容易扩展,更好地支持生产负载,以及对请求提供更快的响应. 本文描述了基于虚拟环境Windows 2012 + SQLs

windows VPS 配置PPTP VPN后DNS无法解析

操作系统为Windows 2003 配置了PPTP协议的VPN 客户端连接后可以ping通外网IP但是无法解析域名,NSLOOKUP查询域名超时 解决办法,本地安全设置-IP 安全策略,在 本地计算机-云主机安全策略(或者星外虚拟主机管理平台之类的项目)修改为不指派