Linux——进程管理

author:XiaoGua
进程是linux系统中的重要概念。各种服务都是以进程的形式存在于系统中的,有效的进程管理可以发现系统中的耗时较多的进程。把重要的业务进程的优先级调高以及终止无效的进程。

一、查询进程

进程,就是linux系统中处于运行状态的程序。
进程管理是linux系统的一个重要组成部分,负责管理和控制所有的动态过程和资源
linux进程分为系统进程和用户进程两大类。

系统进程:主要负责Linux系统的生成、管理、维护和控制,包括init进程。
用户进程是指用户通过Shell命令行执行的进程
Linux系统中的进程都是由初始化程序直接或者间接启动的。初始化程序是所有进程的直接或者间接的父进程

每个进程都有一个系统赋予的进程标识,进程ID。进程还与启动进程的用户相关联。每个进程还会拥有自己的父进程。

1、ps命令

ps [options] 查看当前系统中所有活动进程的状态

-e :显示系统中当前所有进程的状态
-a:显示系统中所有活动进程的当前状态。与终端无关的进程除外。
-A:等同于-e,显示系统的所有进程的状态。
-f:显示每个进程的完整信息
-l:显示每个进程的详细信息。起始时间除外
-g:显示与指定的用户组ID
-p:显示指定的进程ID
-u:显示与指定的用户ID或者用户名失联的进程

Linux——进程管理_第1张图片
by XiaoGua

ps -p pid


by XiaoGua

ps -g


by XiaoGua

ps -u 0
Linux——进程管理_第2张图片
by XiaoGua

ps -ef
Linux——进程管理_第3张图片
by XiaoGua

ps -af


Linux——进程管理_第4张图片
by XiaoGua

2、pstree 命令

pstree以树状的形式显示进程之间的调用关系。
pstree 从systemd进程开始显示


Linux——进程管理_第5张图片
by XiaoGua

pstree 进程id
pstree 4150


by XiaoGua

pstree -p 显示进程id
Linux——进程管理_第6张图片
by XiaoGua

二、监控进程及系统资源

1、top命令
动态地监控进程以及其他的系统资源


Linux——进程管理_第7张图片
by XiaoGua

键盘输入:q退出

top的主界面如上所示,默认情况下,top命令会根据CPU的占用情况,列出前面的几个进程,然后每3秒刷新一次界面。
-d选项:更改刷新的时间间隔,时间单位是秒

在top中,字段S表示进程的状态,S字段的值

D:dead,进程处于不可中断的休眠状态
R:run,进程已经运行,或者已经处于运行队列,一旦调度即可运行
S:stop,进程因等待外部事件的完成而处于休眠状态
T:terminal,进程因跟踪调试或者因收到某个信号而暂时停止运行。
Z:进程已经终止,但是其父进程未完成善后工作
进入top命令后,按x键,可以反相显示排序字段
2、终止进程
kill向某一个进程发送一个信号。
kill [options]
kill -l
-l:罗列所有的信号

Linux——进程管理_第8张图片
by XiaoGua

获取当前正在运行的进程id


by XiaoGua

3、调整进程优先级
nice [options] [command]
通常情况下,进程的优先级是由系统的进程调度程序决定的。但用户可以根据自己的实际需求来调整进程的优先级
在linux系统中,用户可以通过2个命令来调整进程的优先级,分别为nice和renice.
前者用于以指定的优先级来启动某个程序。
后者调整已经存在的进程的优先级
nice -12 tar -cvf doc.tar.


by XiaoGua

renice 修改正在运行的进程的优先级
renice -n priority [-g|-p|-u] identifier
by XiaoGua

-n :指定新的优先级
priority :新的nice值
-p:指定进程的id
-g:指定进程的id组
-u:指定进行的拥有者

你可能感兴趣的:(Linux——进程管理)