🚀 更多关于 Windows Internals、调试、逆向和出海相关内容请访问我的个人博客: FrendGuo's Blog
背景
在各种软件中(任务管理器、ProcessExplorer等)中经常能看到各种关于 CPU、内存和网络部分的各个字段。
这里就做一个统一的汇总和解释:
CPU 部分
| 字段 | 解释 |
|---|---|
| CPU | 当前 CPU 使用率 |
| CPU (user) | 用户模式下的 CPU 使用率 |
| CPU (kernel) | 内核模式下的 CPU 使用率 |
| CPU (average) | 平均 CPU 使用率 |
| CPU (relative) | 相对 CPU 使用率 |
| Cycles | CPU 周期数 |
| Cycles delta | CPU 周期变化量 |
| Context switches | 上下文切换次数 |
| Context switches delta | 上下文切换变化量 |
| Kernel time | 内核模式下的 CPU 时间 |
| Kernel delta | 内核模式下的 CPU 时间变化量 |
| User time | 用户模式下的 CPU 时间 |
| User delta | 用户模式下的 CPU 时间变化量 |
| Total time | 总的 CPU 时间 |
| Total delta | 总的 CPU 时间变化量 |
| Priority | CPU 优先级 |
特别地:
- CPU 周期数
- 指 CPU 时钟信号的周期数,即 CPU 在某段时间内进行的时钟脉冲数。
- CPU 周期代表一次时钟脉冲,CPU 在每个时钟周期内可以执行一部分指令(例如,取指令、解码、执行、写回等)。
- 在性能分析中,较高的 CPU 周期数可能表示 CPU 正在执行大量的计算任务,而较低的周期数则可能表示 CPU 处于空闲状态或工作负载较轻
内存部分
| 字段 | 解释 |
|---|---|
| Private bytes | 该进程私有的内存量,即该进程独占使用的内存,不与其他进程共享 |
| Private bytes delta | 自上次采样以来,该进程私有字节数的变化量 |
| Peak private bytes | 该进程自启动以来,私有字节的峰值 |
| Virtual size | 该进程已分配的虚拟内存总量 |
| Peak virtual size | 该进程自启动以来,虚拟内存的峰值 |
| Page faults | 该进程自启动以来发生的页错误总次数 |
| Page faults delta | 自上次采样以来发生的页错误数变化量 |
| Hard faults | 该进程自启动以来发生的硬页错误总次数 |
| Hard faults delta | 自上次采样以来发生的硬页错误数变化量 |
| Working set | 当前在物理内存中驻留的该进程的内存量 |
| Peak working set | 该进程自启动以来,工作集的峰值 |
| Private WS | 当前在物理内存中驻留的该进程私有的工作集内存量 |
| Shareable WS | 当前在物理内存中驻留的可共享的工作集内存量 |
| Shared WS | 当前在物理内存中驻留的已共享的工作集内存量 |
| Paged pool bytes | 该进程使用的分页池内存量 |
| Peak paged pool bytes | 该进程自启动以来,分页池内存的峰值 |
| Nonpaged pool bytes | 该进程使用的非分页池内存量 |
| Peak nonpaged pool bytes | 该进程自启动以来,非分页池内存的峰值 |
| Shared commit | 当前在物理内存中驻留的已提交的共享内存量 |
| Private commit | 当前在物理内存中驻留的已提交的私有内存量 |
| Peak private commit | 该进程自启动以来,私有提交内存的峰值 |
| Page priority | 该进程的页面优先级 |
特别地:
- Page faults 和 Hard faults:
- Page faults 包含 Soft Page Fault 和 Hard Page Fault
- Hard Page Fault 是指在应用程序尝试访问一个不在物理内存中的内存页面时发生的页错误。此错误会触发磁盘 I/O。
- Soft Page Fault 是指在应用程序尝试访问一个不在当前工作集中,但在物理内存中的页面的时候的也错误。此错误不会触发磁盘 I/O,只会更新页面表。
I/O 部分
| 字段 | 解释 |
|---|---|
| Reads | 读取操作的次数 |
| Reads delta | 读取操作次数的变化量 |
| Read bytes | 读取的字节数 |
| Read bytes delta | 读取字节数的变化量 |
| Writes | 写入操作的次数 |
| Writes delta | 写入操作次数的变化量 |
| Write bytes | 写入的字节数 |
| Write bytes delta | 写入字节数的变化量 |
| Other | 其他 I/O 操作的次数(如控制命令) |
| Other delta | 其他 I/O 操作次数的变化量 |
| Other bytes | 其他 I/O 操作的字节数 |
| Other bytes delta | 其他 I/O 操作字节数的变化量 |
| Total bytes | 总的 I/O 操作字节数 |
| Total bytes delta | 总的 I/O 操作字节数的变化量 |
| Total bytes (average) | 平均 I/O 操作字节数 |
| I/O priority | I/O 操作的优先级 |
IO 主要分 磁盘 I/O 和 网络 I/O
在网络 I/O 中可能用 Receives 和 Sends 来表示 读写。
GPU 部分
| 字段 | 解释 |
|---|---|
| Dedicated memory | GPU 专用内存的使用量 |
| Shared memory | GPU 共享内存的使用量 |
| Commit memory | 提交给 GPU 使用的内存量 |
| Total memory | GPU 使用的总内存量 |
其他
| 字段 | 解释 |
|---|---|
| Handles | 当前进程打开的句柄数 |
| Peak handles | 当前进程在其生命周期中打开的最大句柄数 |
| GDI handles | 图形设备接口(GDI)对象的句柄数 |
| Peak GDI handles | 图形设备接口(GDI)对象的最大句柄数 |
| USER handles | 用户对象(如窗口、菜单等)的句柄数 |
| Peak USER handles | 用户对象的最大句柄数 |
| Running time | 进程的总运行时间 |
| Suspended time | 进程的暂停时间 |
| Hang count | 进程挂起的次数 |
| Ghost count | 进程成为幽灵进程的次数 |
| NetworkTxRxBytes | 网络传输和接收的字节数 |
后续更新关注:Windows 应用性能关键字段解析
本文详细解析了Windows应用性能的关键字段,包括CPU周期数、内存的Page faults与Hard faults、I/O操作以及GPU部分,旨在帮助理解不同部分的性能表现。通过对CPU周期的解释,表明其与计算任务负载的关系;内存部分探讨了Page faults的类型及其对磁盘I/O的影响;I/O部分提到了读写操作;最后预告将对GPU和其他性能字段进行进一步解析。
3270

被折叠的 条评论
为什么被折叠?



