(未获得作者本人同意,严禁转载)

Process Explorer出现的背景

Process Explorer可以看成是一个加强版的任务管理器。在较早的Windows版本中,任务管理器提供的功能是非常简单的(比如查看CPU、内存的使用情况,强制结束进程等),很难满足我们高级一些的需求。在这种情况下,Process Exploere就应运而生了,大大的方便了我们工作中监测进程和排除故障的工作。

下载地址

功能介绍

这里我会从实际应用的角度对Process Explorer的一些功能点进行介绍。

1. 替换任务管理器

Process Explorer提供了相对与任务管理器更加强大实用的功能,所以有的时候就会想着直接把任务管理器给替换掉得了。Process Explorer提供了这样一个功能,可以在用户触发打开任务管理器的操作的时候直接打开Process Explorer。

操作步骤:

Options -> Replace Task Manager

之后在我们运行Win+Esc、Ctrl+Shift+Del的时候打开的就是Process Explorer了。

2. 查看当前系统中运行的进程

Process Explorer对进程以树形图的形式进行展示,这样方便我们观察父子进程之间的关系。从这里我们可以看出来,绝大部分的窗体应用程序都是explorer.exe的子进程,大部分的后台进程都在services.exe下面:

Process Explorer会以不同的颜色标示不同状态的进程,比如:

  • 浅蓝色: 和Process Explorer属于同一个用户的进程。
  • 粉红色: 服务进程,通常会包含一个或多个Windows服务。
  • 黄色: .NET进程。
  • 深灰色: 挂起的进程。
  • 紫色: 标识包含压缩或者加密的可执行代码的进程。一些病毒软件经常会利用这种方式绕过杀毒软件。
  • 红色: 刚刚退出的进程。

我们还可以通过右键点击右侧列头选择显示我们感兴趣的属性:

3. 查看进程的详细信息

如果我们对某个进程的感兴趣,我们可以双击这个进程查看它的详细信息:
ProcessInfo.jpg

这里值得一提的是Command lineCurrent directory这两个属性。

Command line: 启动进程的时候调用的命令。从这里我们可以了解怎么样去调用这个进程,和有关当前进程启动的详细信息。

Current directory: 当前进程活动所在的文件夹。

4. 查看文件正在被什么进程占用

我们在操作文件(删除、重命名等)的时候遇到错误提示,说文件正在被其他进程占用,无法执行操作。这个时候可以打开Process Explorer对文件进行查找:

Ctrl + f

输入要查找的文件名就可以看到有那些进程正在使用这个文件了: Search File

双击搜到的进程Process Explorer会在下面高亮显示出对应的文件句柄。从这里我们可以强制关闭对应的句柄以达到不让文件被继续占用的目的。

5. 实时监控系统的性能

通过View -> System Info我们可以打开Performance窗口查看过去一段时间内系统的性能数据:

我们也可以通过设置把感兴趣的性能数据固定在任务栏里显示:

6. 获取Dump文件

借用百度百科的介绍,Dump文件是进程的内存镜像。通常在进程没有反应或者崩溃的时候我们需要借助Dump文件来分析进程里面发生了什么。 Process Explorer提供了一个快捷的方式来获取Dump文件:

右键点击进程 -> Create Dump

我们可以根据需要选择获取最小的dump还是完整的dump文件。

7. 进程操作

Process Explorer提供了很多进程级别的操作:

8. 安全验证

Process Explorer提供了强大的进程查看功能帮助我们对进程信息的合法性进行检验,包括:

  • 进程签名
  • 进程路径
  • 运行路径

9. 设置Symbols显示更详细的堆栈信息

设置Symbol之前:

设置Symbol之后:

详细操作步骤请参考:

Resolve Symbols in Process Explorer-Monitor Without Installing the Debugging Tools

Process Explorer常用操作介绍的更多相关文章

  1. 5.Project常用操作介绍

    Project常用操作介绍 1.项目浏览器 2.项目属性 Name:项目名称 Category:项目组织结构 Author:作者 Copyright:版权 Image:项目图标 Description ...

  2. Docker 基础概念科普 和 常用操作介绍

    Docker 基础概念 Docker是什么?         Docker的思想来自于集装箱,集装箱解决了:在一艘大船上,可以把货物规整的摆放起来.并且各种各样的货物被集装箱标准化了,集装箱和集装箱之 ...

  3. SVN常用操作介绍

    SVN:全称subversion,开源代码版本控制系统,也就是常说的“版本控制工具”,实现代码.文档等的历史版本保存.共享和权限管理.常用于软件开发项目中,开发将最新的代码放到svn,其他同事可在这个 ...

  4. go语言之进阶篇文件常用操作接口介绍和使用

    一.文件常用操作接口介绍 1.创建文件 法1: 推荐用法 func Create(name string) (file *File, err Error) 根据提供的文件名创建新的文件,返回一个文件对 ...

  5. go语言之进阶篇字符串操作常用函数介绍

    下面这些函数来自于strings包,这里介绍一些我平常经常用到的函数,更详细的请参考官方的文档. 一.字符串操作常用函数介绍 1.Contains func Contains(s, substr st ...

  6. redis入门:介绍、特点、安装、各类型常用操作

    一.redis介绍 Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库.缓存和消息中间件. Redis支持多种类型的数据结构,如 字符串(strings), 散列(ha ...

  7. git介绍-常用操作(一)

    Table of Contents 1  系列文章 2  git说明 3  git常用命令 3.1  基本操作 3.2  远程操作 4  查看git的配置 4.1  查看已配置项 4.2  其他配置 ...

  8. Stream流的基本介绍以及在工作中的常用操作(去重、排序以及数学运算等)

    平时工作中,我在处理集合的时候,总是会用到各种流操作,但是往往在处理一些较为复杂的集合时,还是会出现无法灵活运用api的场景,这篇文章的目的,主要是为介绍一些工作中使用流时的常用操作,例如去重.排序和 ...

  9. 学习游戏服务器开发必看,C++游戏服务器开发常用工具介绍

    C++游戏服务器开发常用工具介绍 在软件开发过程中需要使用的工具类型实属众多,从需求建模到软件测试,从代码编译到工程管理,这些工具都对项目有着不可替代的作用.庄子有云,"吾生也有涯,而知也无 ...

随机推荐

  1. [转] Linux下程序的加载、运行和终止流程

    TAG: linux, main, _start DATE: 2013-08-08 原文地址: http://blog.csdn.net/tigerscorpio/article/details/62 ...

  2. 【CodeForces】914 H. Ember and Storm's Tree Game 动态规划+排列组合

    [题目]H. Ember and Storm's Tree Game [题意]Zsnuoの博客 [算法]动态规划+排列组合 [题解]题目本身其实并不难,但是大量干扰因素让题目显得很神秘. 参考:Zsn ...

  3. js面向对象的几种常见写法

    下面是一个简单的js对象:定义Circle类,拥有成员变量r,常量PI和计算面积的成员函数area(),常用为第一种和第三种. 1.工厂方式 var Circle = function() { var ...

  4. 当月第一天、最后一天、下月第一天,时间date

    时间记录,不是时间戳 $thismonth = date('m'); $thisyear = date('Y'); $startDay = $thisyear . '-' . $thismonth . ...

  5. JS 检测客户端断网情况

    常用方法 1 navigator.onLine 2 window.addEventListener() 3 获取网络资源 4 ajax请求 1. navigator.onLine 只会在机器未连上路由 ...

  6. [004] last_k_node

    [Description] find the k-th node from the last node of single linked list. e.g. Linked-list: 1-2-3-4 ...

  7. Postgres中tuple的组装与插入

    1.相关的数据类型 我们先看相关的数据类型: HeapTupleData(src/include/access/htup.h) typedef struct HeapTupleData { uint3 ...

  8. 《深入理解Java虚拟机》笔记--第四章、虚拟机性能监控与故障处理工具

    主要学习并记录在命令行中操作服务器时使用的六大命令工具,可视化工具JConsole和VisualVM在开发过程中熟悉. 一.jps:虚拟机进程状况工具(JVM Process Status Tool) ...

  9. PHP中的魔术方法和关键字

    PHP中的魔术方法总结 :__construct, __destruct , __call, __callStatic,__get, __set, __isset, __unset , __sleep ...

  10. 创建文件和修改时间戳——touch

    linux的touch命令不常用,一般在使用make的时候可能会用到,用来修改文件时间戳,或者新建一个不存在的文件. 1.命令格式: touch [选项]... 文件... 2.命令参数: -a    ...