查看进程
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了查看进程相关的知识,希望对你有一定的参考价值。
查看进程
- 所谓进程就是系统中正在运行的程序,每当我们执行一个程序时,对于操作系统来讲就是创建了一个进程,在这个过程中操作系统对进程资源的分配和释放,可以认为进程就是一个程序的一次执行过程,在Linux系统中执行的第一个进程是init,它是所有进程的祖先最终都会落到进程号为1的init进程身上。
ps命令,查看静态的进程统计信息
- Linux中的ps命令用来列出系统中当前运行的那些进程。ps命令列出的是当前那些进程的快照,就是执行ps命令的那个时刻的那些进程,如果想要动态的显示进程信息,就可以使用top命令。
- 执行如下的px aux命令后,将以简单列表的形式显示出进程信息
- USER:启动该进程的用户账号的名称 PID :该进程在系统中的ID号。 %CPU:该进程使用的 CPU 资源百分比; %MEM:该进程所占用的物理内存百分比; VSZ :该进程使用掉的虚拟内存大小,默认单位 (Kbytes) RSS :该进程占用常驻内存大小(物理内存),默认单位 (Kbytes) TTY :该进程是在那个终端上运行,若与终端无关,则显示 ?,另外, tty1-tty6 是本机上登录的终端,若为 pts/0 等等的,则表示为由网络远程连接到主机的。 STAT:该程序当前的状态,主要的状态有: R :该程序目前正在运行,或者是可被运行; S :该程序目前正在睡眠当中 (暂时没正在运行,后台挂着,通常是系统服务或网络服务); Z :该程序应该已经终止,但是其父程序却无法正常的终止他,造成 zombie (疆尸) 程序的状态 <:高优先级 N :低优先级 s:父进程 +:前台进程 START:该进程被启动的时间; TIME :该进程实际使用 CPU 的时间。 COMMAND:启动该进程的命令的名称
僵尸进程的产生:
- 进程在退出的过程中,进程占有的所有资源将被回收,但在进程表中存储的该进程的信息,包括进程号 PID,退出状态,运行时间等。于是进程就只剩下这个空壳,故称为僵尸。处于僵尸状态的进程会等待其父进程释放其所有的数据结构。
如何处理僵尸进程:
- 当系统中出现了僵尸进程时,我们是无法通过 kill 命令把它清除掉的(因为该进程已经被认为已经死掉了)。但是我们可以杀死它的父进程,让它变成孤儿进程,孤儿进程将被 init 进程所收养,并由 init 进程收集它们的完成状态。重启系统进程也可以解决僵尸进程。
- 执行ps -elf命令,则将以长格式显示系统中的进程信息,并包含更丰富的内容
top命令,查看进程的动态信息
- 直接运行top命令
- wa:CPU 等待磁盘 IO 操作的时间。
- hi & si:这两个值表示系统处理中断消耗的时间。
- 缓存(cache)是在读取硬盘中的数据时,把最常用的数据保存在内存的缓存区中,再次读取该数据时,就不去硬盘中读取了,而在缓存中读取。
- 缓冲(buffer)是在向硬盘写入数据时,先把数据放入缓冲区,然后再一起向硬盘写入,把分散的写操作集中进行,减少磁盘碎片和硬盘的反复寻道,从而提高系统性能。
对top命令查询妈的信息进行排序
- top 命令用于动态的监控进程活动与系统负载信息。在全屏的界面中直接按下面的按键。 P键根据CPU占用情况对进程列表进行排序, M键根据内存占用情况进行排序 N键根据启动时间进行排序 h键可以获得top程序的在线帮助 q键退出top程序
- 显示多个 CPU 核心的详细信息
无论系统中有多少个 CPU 核心,默认的 CPU 信息总是输出一行,即所有核心加起来的综合数据。能不能查看各个 CPU 核心单独的数据呢?答案是,可以的。按键盘上的数字 1 就可以在不同的视图之间切换了
- 显示进程执行的完整命令
默认 COMMAND 列只显示程序的名字,并不包含程序的路径。有时能够看到程序的完整路径是很方便的。你可以通过小写字母 c 来切换 COMMAND 列的显示模式
pgrep命令,查询进程信息
- 使用pgrep命令可以根据进程的名称、运行该进程的用户、进程所在的终端等多种属性查询特定进程的PID号。
pstree命令,查看进程树
- pstree命令安装一下,psmisc包。
- 查看
- 也可以查看指定用户的进程树,pstree -ap user1,登陆主机打开vim再在远程终端执行命令。
控制进程
启动进程
- 在linux系统中,可以由用户手工启动或者按预定计划调度启动新的进程
- 在前台运行的进程,用户必须等到该进程执行结束并退出以后,才能输入其他命令
- 后台运行的进程,用户可以在终端中输入其它命令,而无须等待后台进程结束,后台进程需要使用“&”操作符,将此符号放在要执行的命令的后面,进程启动后会直接放入后台运行
改变进程的运行方式
- 挂起当前进程
当linux操作系统中的命令正在前台执行时(运行尚未结束),按ctrl+z组合键可以将当前进程挂起(调入后台并停止执行)。
- 查看后台的进程
需要查看当前终端中在后台运行的进程任务时,可以使用jobs命令,结合-l选项可以同时显示进程对应的pid号。
- 将后台的进程恢复运行
使用bg命令,可以将后台中暂停执行(如ctrl+z组合键挂起)的任务恢复执行。继续在后台执行操作。而使用fg命令,可以将后台任务重新恢复到前台执行。指定后台任务进程的任务编号作为参数
终止进程执行
- 当按ctrl+c组合键无法终止程序或者需要结束在其他中断或后台运行的进程时,可以使用专用的进程终止命令kill、killall、pkill。
使用kill命令终止进程,kill后面只能跟进程号
- 远程终端执行ping 127.0.0.1 再开启一个终端查进程号执行kill命令,对于无法正常终止的系统进程,在必要时可以结合“-9”选项强制终止
- 终端1执行ping127.0.0.1
- 终端2执行命令
使用killall命令终止进程
使用pkill命令终止进程,根据进程的名称、运行该进程的用户、进程所在的终端等多种属性终止特定的进程
- 创建用户设密码,主机登录用户然后执行命令
- 执行后结果第一次执行 pkill -U user13 时没有杀死程序,继续执行命令加-9 执行后杀死程序。
linux 下查看进程用啥命令
参考技术A1、linux使用ps命令来查看进程 ,要查看某个程序的进程需要用管道符结合grep查看,比如查看tomcat就是“ps -ef |grep tomcat“:
2、当然tomcat是一个Java中的进程,所以查找Java进程也可查找出来,输入“ps -ef|grep java”的指令就可以查到java的进程及其子进程:
3、此时可以看到进程的用户和进程编号,如果要强制结束进程,可以使用kill -s 9 进程编号结束进程。以上就是linux中用ps命令查看进程的操作:
以上是关于查看进程的主要内容,如果未能解决你的问题,请参考以下文章