占用Linux下查看进程CPU占用情况(linux查看进程cpu)
Linux是一个多用户、多任务的操作系统,使用进程来管理应用程序。在Linux服务器上,可以查看每个进程占用系统CPU的情况。这有助于分析出系统瓶颈所在,从而找到优化资源的最佳方案。
在Linux下查看进程CPU占用情况的一种有效的方法是使用top命令。top命令可以查看系统资源的实时使用情况。输入top命令,系统会将进程的 CPU 占用率、内存占用率、进程pid和进程名称等信息显示出来:
top – 15:51:11 up 2 days, 6:28, 2 users, load average: 0.06, 0.09, 0.06
Tasks: 149 total, 2 running, 146 sleeping, 0 stopped, 1 zombie
Cpu(s): 0.3%us, 0.1%sy, 0.0%ni, 99.6%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 1048524k total, 904272k used, 144252k free, 4740k buffers
Swap: 1048572k total, 7976k used, 1040596k free, 500976k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1572 root 15 0 516m 174m 2556 S 13.3 17.3 8522:06 tmp
可以看出,进程PID为1572的.tmp程序正在占用系统CPU的13.3% 。
另一个用于查看进程CPU占用情况的工具是pidstat命令 。 pidstat命令用于收集系统上特定进程的资源使用情况。输入如下pidstat命令:
$ pidstat –h -u process_name
系统会返回以下输出:
# pidstat -h -u process_name
Linux 4.5.5-200.fc23.x86_64 (localhost.localdomain) 05/22/2016 _x86_64_ (4 CPU)
00:01:12 UID PID minflt/s majflt/s VSZ RSS %usr %system %guest %CPU CPU process name
00:01:12 0 1572 0.00 0.00 470472 183003 0.00 0.00 0.00 13.39 3 process_name
可以看出,进程PID为1572的process_name程序正在占用系统CPU的13.39% 。
此外,还可以使用top和ps结合使用,查看进程的CPU占用情况。首先,使用 top 命令查看系统当前进程,然后使用 ps 命令查看系统具体进程:
$ top
$ ps aux | grep process_name
系统会返回以下输出:
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1572 13.3 17.3 470472 183003 pts/0 Sl May22 8522:06 process_name
可以看到,process_name进程正在占用系统CPU的13.3% 。
综上所述,通过top、pidstat和ps命令可以查看Linux下的每个进程的CPU占用情况,从而帮助我们找出系统瓶颈,优化系统资源。