linux系统进程的查看与控制
一、什么是进程?
进程就是系统未完成并且正在进行的工作。
二、查看系统进程
1、图形方式查看
gnome-system-monitor

2、进程查看命令
ps -A ##所有进程
-a ##在当前环境中运行的进程,不包含环境信息
-u ##显示进程用户信息
a ##在当前环境中运行的进程
x ##列出系统中所有运行包含tty输出设备
f ##显示进程的父子关系
e ##显示进程的详细信息(系统资源的调用)




ps常用组合:
ps aux ##显示系统中所有进程并显示进程用户

ps ef ##显示进程详细信息并显示进程父子关系

ps ax ##显示当前系统中的所有进程

pstree ##显示当前系统的进程树

如何根据自己的需要让每个进程显示指定的信息
ps -o xxx ##显示进程的指定信息
comm ##进程名称
user ##进程所有人
group ##进程所有组
%cpu ##进程cpu使用率
%mem ##进程内存使用率
pid ##进程id
nice ##进程优先级
示例:
ps -o comm,user,pid,%cpu

3、进程排序
ps ax --sort=
+%cpu|-%cpu ##按cpu占用率从小到大|从大到小排序

+%mem|-%mem ##按内存使用率 从小到大排序|从大到小排序

4、在stat进程状态中显示的信息
S ##进程状态
l ##内存中有锁定空间
N ##优先级低
< ##优先级高
- ##前台运行
s ##顶级进程



有锁定空间的进程可以理解为该进程进入后台后,其他进程不能占用该进程使用的内存。
5、进程优先级
优先级概念:
CPU资源分配的先后顺序,就是进程的优先权
优先权高的进程有优先执行的权利。配置进程优先权对多任务环境的Linux很有用,可以改善系统性能。
还可以把进程运行到指定的CPU上,这样一来,把不重要的进程安排到某个CPU,可以大大改善系统的整体性能。
(1)进程的优先级范围
-20~19
数字越小,进程优先级越高。
(2)优先级的查看
ps ax -o pid,nice,comm

(3)指定某个优先级开启进程
nice -n 优先级数字 进程名称

**注意:**nice指定优先级只对设定后新开启的进程有效,对设定前开启的进程无效。
(4)改变进程优先级
renice -n 优先级数字 进程pid

注意:nice与renice不同在于前者只对新产生的进程有效,而后者也可以改变已存在进程的优先级。
(6)环境中进程的前后台调用
jobs ##查看被打入环境后台的进程
ctrl+z ##把占用终端的进程打入暂停打入后台
fg jobsnum ##把后台进程调回前台
bg jobsnum ##把后台暂停的进程运行
comm & ##让命令直接在后台运行

(7)进程信号
1、常用的信号等级
1 ##进程重新加载配置
进程重新加载配置,指的是在进程不停止的情况下重新加载进程的配置文件信息,类似于游戏里面的“不停服更新“
2 ##删除进程在内存中的数据
3 ##删除鼠标在内存中的数据
解释:
对于删除进程在内存中的数据,如果该进程有锁定空间,那么删除进程在内存中的数据,相当于关掉这个进程。如果进程没有锁定空间,那么只是释放了该进程原占有的内存。
9 ##强行结束单个进程(不能被阻塞)
15 ##正常关闭进程 (可能会被阻塞)
分析:kill -9 为强行结束单个进程,不管该进程的优先级高不高。而kill -15 是正常关闭进程,一般对第三方软件可以正常关闭,但是对于优先级较高的进程,则可能被阻塞,不能关闭。



18 ##运行暂停的进程
19 ##暂停某个进程 (不能被阻塞)
20 ##把进程打入后台 (打入后台同时会暂停) (可以被阻塞)


更多的进程信号等级可以查看:
man 7 signal ##查看信号详细信息
killall -信号 进程名字

pkill -u student -信号

(8)进程的动态监控
top
1 ##显示cpu每个核的负载
s ##调整刷新频率
c ##cpu负载排序
m ##内存使用量排序
h ##查看帮助
u ##查看指定用户进程
k ##对指定进程发起信号
q ##退出

linux系统进程的查看与控制的更多相关文章
- [转帖]Linux系统进程的知识总结,进程与线程之间的纠葛...
Linux系统进程的知识总结,进程与线程之间的纠葛... https://cloud.tencent.com/developer/article/1500509 当一个程序开始执行后,在开始执行到执行 ...
- 【Linux程序设计】之进程控制&守护进程
这个系列的博客贴的都是我大二的时候学习Linux系统高级编程时的一些实验程序,都挺简单的. 实验题目:Linux环境下的进程控制 实验目的:熟悉并掌握Linux环境下进程的相关函数的应用:守护进程的概 ...
- Linux服务器性能查看分析调优
一 linux服务器性能查看 1.1 cpu性能查看 1.查看物理cpu个数: cat /proc/cpuinfo |grep "physical id"|sort|uniq|wc ...
- Linux下内存查看命令
在Linux下面,我们常用top命令来查看系统进程,top也能显示系统内存.我们常用的Linux下查看内容的专用工具是free命令. Linux下内存查看命令free详解: 在Linux下查看内存我们 ...
- linux top命令查看内存及多核CPU的使用讲述【转】
转载一下top使用后详细的参数,之前做的笔记找不见了,转载一下,作为以后的使用参考: 原文地址:http://blog.csdn.net/linghao00/article/details/80592 ...
- Linux系统进程管理
Linux系统进程管理 什么是进程 进程是已启动的可执行程序的运行实例,进程有以下组成部分: 分配内存, 已分配内存的地址空间 安全属性, 进程的运行身份和权限 进程代码, 运行一个或多个的线程 进程 ...
- Linux下内存查看及详解
在Linux下面,我们常用top命令来查看系统进程,top也能显示系统内存.我们常用的Linux下查看内容的专用工具是free命令. Linux下内存查看命令free详解: 在Linux下查看内存我们 ...
- Linux下如何查看版本信息
Linux下如何查看版本信息, 包括位数.版本信息以及CPU内核信息.CPU具体型号等等,整个CPU信息一目了然. 1.# uname -a (Linux查看版本当前操作系统内核信息) L ...
- Linux下怎么查看当前系统的版本
Linux下怎么查看当前系统的版本: uname -r 功能说明:uname用来获取电脑和操作系统的相关信息. 语 法:uname [-amnrsvpio][--help][--version] ...
随机推荐
- Kinect 开发 —— 进阶指引 (下)
运动识别 利用运动识别(motion detection)来进行近景识别是最有意思的一种方式.实现运动识别的基本原理是设置一个起始的基准RGB图像,然后将从摄像头获取的每一帧影像和这个基准图像进行比较 ...
- django第三方库
1. django_celery_beat 作用:网页端配置定时任务 注意:1,需要迁移表格 2.需要注册app python3 manage.py makemigrations python3 ma ...
- AES与RAS结合加解密方案
import java.io.IOException; import java.security.InvalidKeyException; import java.security.KeyFactor ...
- Perl OOP
1. 模块/类(包) 创建一个名为Apple.pm的包文件(扩展名pm是包的缺省扩展名.意为Perl Module). 一个模块就是一个类(包). 2. new方法 new()方法是创建对象时必须被调 ...
- PHP GD 生成图片验证码+session获取储存验证码
以下分享一个PHP制作的图片验证码案例:案比例如以下图: 运用PHP GD具体请看:http://www.php.net/manual/zh/book.image.php 后台图片代码例如以下: &l ...
- Linux下进程终止过程
不管是在什么系统中,当进程终止之后.系统都须要释放进程占有的资源. 否则.系统资源会被耗尽. 以下将具体说明Linux系统中,进程终止的过程. 进程终止方式 linux的进程终止方式有8种,当中5种是 ...
- UML中的用例图
用例图构成:參与者(actor).用例(use case).子系统(subsystem) 关联(Association) 泛化(Inheritance) 就是通常理解的继承关系,子用例和父用例类似,但 ...
- 【原创】k8s源代码分析-----EndpointController
转自本人空间 http://user.qzone.qq.com/29185807/blog/1459325937 一.controller manager创建endpointController 代码 ...
- less中混合
@charset "UTF-8"; //1 普通混合 //2 不带输出的混合:加() .font_hx(){ font-size: 28px; color: red; } h1{ ...
- RecyclerView 展示多种类型Item数据
一.多Item布局实现(MultipleItem) 如果之前你用过ListView实现过此功能,那么你一定对下面这两个方法并不陌生 @Override public int getItemViewTy ...