linux一天一个脚印:进程的管理

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux一天一个脚印:进程的管理相关的知识,希望对你有一定的参考价值。

进程
进程: 运行在内存中程序实例 , 进程是程序运行的一种状态 , 是内存中的概念,进程与进程之间无法访问对方私有的内存区域。
线程: 程序运行的最小单元,一个进程可以派生出多个线程,同一个进程内的线程之间可以相互访问彼此内存区域,并且可以共享同一进程的共享内存区域。
进程编号:pid
父进程编号:ppid

pstree 命令

pstree 命令用以查看进程的结构

-a

显示每个程序的完成指令,包含路径,参数或是常驻服务的标识。

-c
不使用精简标示法
-G
使用VT100终端机的列绘图字符
-h
列出树状图,特别标明执行的程序
-l
采用长列格式显示树状图
-p
显示程序识别码
-u
显示用户名称
-U
使用UTF-8列绘图字符
-V
显示版本信息
-n
用程序识别码排序

[[email protected] ~]# pstree
init─┬─auditd───{auditd}
     ├─crond
     ├─2*[dhclient]
     ├─master─┬─pickup
     │        └─qmgr
     ├─6*[mingetty]
     ├─rsyslogd───3*[{rsyslogd}]
     ├─sshd───sshd───bash───pstree
     ├─udevd───2*[udevd]
     └─xinetd

静态查看进程信息
ps
ps 查看当前标签页上的进程信息
ps aux 系统进程快照
ps -ef e 所有进程 f 全格式罗列

pgrep 用来过滤进程号

动态查看进程信息

top终端

【 d 】修改默认刷新频率 , 默认 3s
【 P 】以 cup 占用百分比进行排序
【 M 】以内存的占用情况排序
【 h 】显示帮助信息
【 <> 】翻页
【 k 】杀掉进程 kill

停止进程

Linux中的 kill 命令用来停止指定的进程( terminate a process )的运行,是 Linux下进程管理的常用命令。
通常情况下停止一个前台进程可以使用 Ctrl+C 组合键,但是对于一个运行在后台进程需要用 kill命令来终止,我们
就需要先使用 ps、pidof、pstree和top 等工具获取进程 PID ,然后使用 kill 命令来杀掉该进程。
kill 命令是通过向进程发送指定的信号来结束相应进程的。在默认情况下,采用编号为15 的 TERM 信号。 TERM 信
号将终止所有不能捕获该信号的进程。
对于那些可以捕获该信号的进程就要用编号为 9 的 kill 信号,强行 “ 杀掉 ” 该进程。

命令格式
kill [参数][进程号]
命令功能:

发送指定的信号到相应进程。不指定型号将发送 SIGTERM ( 15 )终止指定进程。如果任无法终止该程序可用 “ KILL”
参数,其发送的信号为 SIGKILL(9) ,将强制结束进程,使用 ps 命令或者 jobs 命令可以查看进程号。 root 用
户将影响用户的进程,非 root 用户只能影响自己的进程。

参数说明

-l  信号,若果不加信号的编号参数,则使用 “ l”参数会列出全部的信号名称
-a  当处理当前进程时,不限制命令名和进程号的对应关系
-p  指定 kill 命令只打印相关进程的进程号,而不发送任何信号
-s   指定发送信号
-u  指定用户

xkill 哪里关不掉点哪里,主要用于停止图形化(GUI)程序

进程优先级

NI nice

数字表示: -20-19 数字越小,等级越高。

ps -le | grep ping     <==查看ping优先级

指定优先级

nice -n 3 ping ipxxxxx

调整优先级

renice -n [-20-19] [pid]

----------------------------------------------------

小白的渣排版- -技术分享

以上是关于linux一天一个脚印:进程的管理的主要内容,如果未能解决你的问题,请参考以下文章

Linux系统管理-进程管理

22. Linux的进程管理

Linux 进程管理 进程优先级管理

LINUX系统工程师技术(Engineer)-------第一天

Linux性能及调优指南(翻译)之Linux进程管理

Linux进程管理及作业控制的启动进程