linux 下取进程占用 cpu/内存 最高的前10个进程

1. linux 下 取进程占用 cpu 最高的前10个进程
ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head

ps auxw|head -1;ps auxw|sort -rn -k3|head -10

2.linux 下 取进程占用内存(MEM)最高的前10个进程
ps aux|head -1;ps aux|grep -v PID|sort -rn -k +4|head

ps auxw|head -1;ps auxw|sort -rn -k4|head -10

3.虚拟内存使用最多的前10个进程

ps auxw|head -1;ps auxw|sort -rn -k5|head -10

4.也可以试试

ps auxw --sort=rss

ps auxw --sort=%cpu

5.看看几个参数含义

%MEM 进程的内存占用率

MAJFL is the major page fault count,

VSZ 进程所使用的虚存的大小

RSS 进程使用的驻留集大小或者是实际内存的大小(RSS is the "resident set size" meaning physical memory used)

TTY 与进程关联的终端(tty)

串行端口终端(/dev/ttySn)

伪终端(/dev/pty/)

控制终端(/dev/tty)

控制台终端(/dev/ttyn,   /dev/console)

虚拟终端(/dev/pts/n)

STAT 检查的状态:进程状态使用字符表示的,如R(running正在运行或准备运行)、S(sleeping睡眠)、I(idle空闲)、Z (僵死)、D(不可中断的睡眠,通常是I/O)、P(等待交换页)、W(换出,表示当前页面不在内存)、N(低优先级任务)T(terminate终止)、W has no resident pages

D不可中断 Uninterruptible sleep (usually IO)

R正在运行,或在队列中的进程

S处于休眠状态

T停止或被追踪

Z僵尸进程

W进入内存交换(从内核2.6开始无效)

X死掉的进程

<高优先级

N低优先级

L有些页被锁进内存

s包含子进程

+位于后台的进程组;

l多线程,克隆线程  multi-threaded (using CLONE_THREAD, like NPTL pthreads do)

时间: 2024-11-06 15:34:22

linux 下取进程占用 cpu/内存 最高的前10个进程的相关文章

【转】Linux 下取进程占用 cpu/内存 最高的前10个进程

# Linux 下 取进程占用 cpu 最高的前10个进程ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head # linux 下 取进程占用内存(MEM)最高的前10个进程ps aux|head -1;ps aux|grep -v PID|sort -rn -k +4|head 转自:http://blog.csdn.net/namesliu/article/details/6037972

Linux下java获取CPU、内存、磁盘IO、网络带宽使用率

一.CPU 使用proc文件系统,"proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间.它以文件系统的方式为访问系统内核数据的操作提供接口.用户和应用程序可以通过proc得到系统的信息,并可以改变内核的某些参数." 从/proc文件系统获取cpu使用情况:    cat /proc/stat 在Linux的内核中,有一个全 局变量:Jiffies. Jiffies代表时间.它的单位随硬件平台的不同而不同.系统里定义了一个常数HZ,代表每秒种最小时间间隔的数目.这样ji

Linux下程序运行时内存状态及相应查看工具

最近在解决一个编译问题时,一直在考虑一个问题,那就是Linux下可执行程序运行时内存是什么状态,是按照什么方式分配内存并运行的.查看了一下资料,就此总结一下,众所周知,linux下内存管理是通过虚存管理的,在分配内存是并非在物理内存开辟了一段空间,而是在使用时才分配的,而且是通过段页式管理.以上比较废话,开始看看程序运行时内存会是什么状态. 在linux下内存分配是以页为单位的,而页是通过段管理,各个段之间是独立的,方便管理.linux程序运行时,可以分为以下几个内存段: 一.BSS段 (bss

linux下磁盘占用达到100%了,找不到哪些大文件耗尽了磁盘。

Linux下的根分区使用率100%,但是查看/分区下的目录都不大,没有占用满,这该怎么处理? 重启是肯定有效的,目前处理情况:重新restart应用后,空间释放出来 1.lsof | grep deletd 2.reboot 重启 linux下磁盘占用达到100%了,找不到哪些大文件耗尽了磁盘. Linux下使用df -lh 查看磁盘时: /dev/sda1 130G 123G 353M 100% / 磁盘快用尽了, 但我这边就是查找不到具体是哪些大文件占用的. 1.如果是大文件占用了,那么查询

在Linux下,在网络没有配置好前,怎样查看网卡的MAC地址?

在Linux下,在网络没有配置好前,怎样查看网卡的MAC地址? 使用 dmesg 与 grep 命令来实际,例如以下: [[email protected] ~]# dmesg | grep eth e1000 0000:02:01.0: eth0: (PCI:66MHz:32-bit) 00:0c:29:5b:f7:c2 e1000 0000:02:01.0: eth0: Intel(R) PRO/1000 Network Connection

排查linux下java应用cpu占用过高

用于快速排查Java的CPU性能问题(top us值过高),自动查出运行的Java进程中消耗CPU多的线程,并打印出其线程栈,从而确定导致性能问题的方法调用.目前只支持Linux.原因是Mac.Windows的ps命令不支持列出进程的线程id,更多信息参见#33,欢迎提供解法. PS,如何操作可以参见@bluedavy的<分布式Java应用>的[5.1.1 CPU消耗分析]一节,说得很详细: top命令找出消耗CPU高的Java进程及其线程id: 开启线程显示模式(top -H,或是打开top

查看Linux下系统资源占用常用命令(top、free、uptime)

本文介绍下,在linux中查看系统资源占用的三个命令:top.free.uptime,通过实例学习下它们的用法,有需要的朋友参考下 一,top命令 1.作用top命令用来显示执行中的程序进程,使用权限是所有用户. 2.格式top [-] [d delay] [q] [c] [S] [s] [i] [n] 3.主要参数d:指定更新的间隔,以秒计算.q:没有任何延迟的更新.如果使用者有超级用户,则top命令将会以最高的优先序执行.c:显示进程完整的路径与名称.S:累积模式,会将己完成或消失的子行程的

linux如何获取占用CPU最高的线程id?(java项目)

1.可以登上机器,确认下是什么线程使 CPU 飙高.先ps查看 Java 进程的 PID: ps -ef | grep  xx项目 2.拿到进程 pid 后,可以使用 top 命令,来看是什么线程占用了 CPU.top -p 12309 -H -p 用于指定进程,-H 用于获取每个线程的信息,从 top 输出的内容,可以看到有四个线程占用了非常高的 CPU: 到这里可以拿到12313.12312.12311.12314这四个线程id.为了确定这些是什么线程,需要使用 jstack 命令来查看这几

Linux下直接读写物理地址内存

虚拟 转 物理地址  virt_to_phys( *addr );物理 转 虚拟地址  phys_to_virt( *addr ); 如: unsigned long pProtectVA; phys_addr_t ProtectPA; gM4U_ProtectVA = pProtectVA; ProtectPA = virt_to_phys((void *)pProtectVA); -------------------------------------------------Linux内核