我想实时监控一个进程的内存/cpu 使用情况。类似于top但仅针对一个过程,最好带有某种历史图表。
有时,当您有几场 RAM 时,以千字节为单位查看 meminfo 并不舒服。在 Linux 中,它看起来像:

这是它在 Mac OS X 中的样子:

有没有办法在 Linux top 中以 TB、GB 和 MB 显示 meminfo?
在 ps xf
26395 pts/78 Ss 0:00 \_ bash
27016 pts/78 Sl+ 0:04 | \_ unicorn_rails master -c config/unicorn.rb
27042 pts/78 Sl+ 0:00 | \_ unicorn_rails worker[0] -c config/unicorn.rb
Run Code Online (Sandbox Code Playgroud)
在 中htop,它显示为:

为什么 htop 显示的进程比 ps 多?
当我top在 Linux 中发出时,我得到类似这样的结果:

其中一行具有 CPU 使用率信息,如下所示:
Cpu(s): 87.3%us, 1.2%sy, 0.0%ni, 27.6%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Run Code Online (Sandbox Code Playgroud)
虽然我知道每个任务的定义(远在下面),但我不明白这些任务的确切含义。
hi - 服务硬件中断是什么意思?si - 服务软件中断是什么意思?st - 他们说这是“当管理程序为另一个处理器提供服务时,虚拟 CPU 非自愿等待的 CPU 时间(或从虚拟机窃取的 CPU 时间百分比”)。但它实际上意味着什么?有人可以更清楚吗?
我列出的所有的us,sy,ni,等,因为它可以帮助别人寻找相同。此信息不在手册页中。
us: user cpu time (or) % CPU time spent in user space
sy: system cpu time (or) % CPU time spent in kernel space
ni: user nice cpu time (or) % CPU time spent on low priority processes
id: …Run Code Online (Sandbox Code Playgroud) 是否可以选择top以人类可读的格式显示内存大小?
例子:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
3960 phil 20 0 1347280 383112 30316 S 0.0 9.5 6:59.45 firefox
Run Code Online (Sandbox Code Playgroud)
将 RES 显示为 374m(而不是 383112)会更好。
我目前正在使用 Arch Linux。Ubuntu 似乎默认使用人类可读的表示。
(我试过了,man top但找不到选项。也许我错过了。)
我正在寻找像 top 之类的东西对 CPU 使用率。是否有用于执行此操作的 top 命令行参数?目前,我的记忆太满了,即使是 'man top' 也因内存不足而失败:)
我试图了解%CPU运行时的含义top。
我看到%CPU我的应用程序400或500大部分时间。
有谁知道这是什么意思?
什么数字是高数?
19080 大卫 20 0 27.9g 24g 12m S 400 19.7 382:31.81 paper_client
lscpu 给我以下输出:
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 32
On-line CPU(s) list: 0-31
Thread(s) per core: 2
Core(s) per socket: 8
Socket(s): 2
NUMA node(s): 2
Vendor ID: GenuineIntel
CPU family: 6
Model: 45
Stepping: 7
CPU MHz: 2599.928
BogoMIPS: 5199.94
Virtualization: VT-x
L1d cache: 32K
L1i cache: 32K …Run Code Online (Sandbox Code Playgroud) top 是否有任何相对直接的选项来跟踪特定流程?
理想情况下,通过人类可读的值来识别过程?例如chrome或java。
换句话说,我想查看 top 提供的所有典型信息,但要将结果过滤为提供的参数,即。'chrome' 或 'java'
top每当以 root 身份运行时,前同事都会对此进行处理,数据按 MEM 使用情况而不是默认 CPU 使用情况排序。根据多次搜索,手册页甚至顶部控制台本身 (O) 中的选项,只需按下k它就应该按 CPU 排序,但是当我点击k它时,它会要求我提供一个 pid 来杀死。
那么我怎样才能恢复对 CPU 的默认排序呢?