浅谈Linux进程管理
一 查看系统进程
在linux中,查看系统进程的命令为ps,常用格式为如下两个:
(1)ps aux:unix格式查看系统进程
(2)ps -le:linux格式查看系统进程
一般地,ps aux更常用,下面主要讲解ps aux命令
(一)查看系统所有进程
ps aux,使用BSD(UNIX)系统格式查看系统所有进程

(二)参数注解
USER --进程使用用户
PID --进程ID
%CPU -- 进程占用的CPU
%MEM --进程占用内存
VSZ --进程占用虚拟内存,单位为KB
RSS --进程占用物理内存,单位为KB
TTY --该进程所运行终端
(1)tty1-tty7:本地控制台终端(tty1-tty6:本地字符界面终端;tty7:图形终端)
(2)pts/0-255:虚拟终端,即远程终端
(3)?:由linux内核直接调用,不由终端调用
STAT -- 进程状态
(1)R--运行状态
(2)S--休眠
(3)T--停止
(4)s--包含子进程
(5)+ --后台进程
START --进程启动时间
TIME --占用CPU运算时间
COMMAND -- 产生进程的命令
二 查看系统运行状态
在linux中,用top命令来查看系统运行性能及状态。

参数解释:
(一)第一行:top
该行表示系统性能相关

需要注意的是,系统负载参数中,对于单核CPU,当负载>时,表示系统压力比较大,如果是n核CPU,当负载>n时,表示
系统压力比较大。
(二)第二行:Tasks
该行表示线程相关

参数解释:
tatal:线程总数
running:正在运行的线程
sleeping:正在休眠进程
stopped:已经停止进程
zombie:僵死进程(正在终止,但未终止的进程
(三)第三行:%CPU
该行表示CPU相关

参数解释:
us:用户模式占用cpu百分比
sy:系统模式占用cpu百分比
ni:改变过优先级的用户进程占用的cpu百分比
id:空闲cpu百分比
wa:等待输入输出进程占用cpu百分比
hi:硬终端请求服务占用cpu百分比
si:软中断请求服务占用cpu百分比
st:虚拟时间百分比,即若存在虚拟机,虚拟cpu等待cpu响应时间百分比
(四)第四行:%KiB Mem
该行表示系统内存情况

参数解析:
total:当前系统总内存
free:空闲内存
used:已用内存
buff/cache:缓存缓存内存
需要注意的是,当内存不够时,根据linux管理内存机制,会将buff/cache内存作为内存来使用。
(五)第五行:KiB Swap
该行表示系统交换分区

参数解析:
total:总分区大小
free:空闲分区大小
used:已使用分区大小
(六)第六行:系统进程状态行
该行表示当前系统进程运行状态,默认是按照cpu占用比例从大到小排列的,常见快捷操作:
M- 内存排序
P-CPU排序
N-PID排序

参数解析:
PID:进程ID,在系统中,唯一标识进程
USER:进程所有者
PR:优先级
NI:负值表示高优先级,正值表示低优先级
VIRT:进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
RES:进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
SHR:共享内存大小,单位kb
S:进程状态(D=不可中断的睡眠状态,R=运行,S=睡眠,T=跟踪/停止,Z=僵尸进程)
%CPU:进程占用cpu百分比
%MEM:进程占用内存百分比
TIME+:进程使用的CPU时间总计
COMMAND:进程命令
(七)top命令常用快捷键
1.ctr+z 停止
2.ctr+c 强制退出
3.q 退出
4.m 按内存排序查找
5.p 按PID排序
三 进程常用操作
(一)查看进程树
linux中查看进程树命令是pstree,要使用它,首先在linux上安装
yum install psmisc -y
1.查看默认进程树
pstree

2.带有PID的进程树
pstree -p

3.通过进程名查找
pstree -p | grep java

4.通过进程PID查找
pstree -ps 被查看进程PID

(二)终止进程
kill命令用来终止进程
1.查看进程信号
kill -l

列举几个常用信号:

2.强制杀死进程
kill -9 PID
(三)查看进程工作状态
在Linux中,从交互角度,我们习惯将进程分为前台进程和后台进程,所谓前台进程,即与用户交互的
进程,如top,vim命令,后台进程,即不需要与用户交互的进程。
1.查看后台工作进程
linux中,jobs -l 查看后台工作的进程

参数解释:
第一列:数字表示该进程倒数第几放入工作进程
第二列:只有倒数第一(+),倒数第二(-)放入的进程才有符号
第三列:进程PID
第四列:进程状态
第五列:进程信号标识
第六列:进程名
2.将后台进程恢复到前台
fg %工作号
需要注意的是,%可省略
3.将后台进程恢复后台
bg %工作号
需要注意的是,%可省略
四 系统资源查看
1.系统资源监控
vmstat [刷新延时(秒为单位) 刷新次数]

2.开机内核检测
dmesg用来检测开机时,linux内核情况,如检测 dmesg |grep cpu

3.查看内存使用
free 用来查看内存使用

4.查看cpu信息
cat /proc/cpuinfo

5.uptime查看系统启动时间和平均负载

6.查看系统与内核信息
uname 命令查看系统与内核信息

参数解释:
-a :查看系统相关信息
-s:查看内核名称
-r:查看内核版本
7.查看进程使用文件
lsof命令查看进程使用文件

参数:
-p :查看某个PID进程使用的文件
-u:查看某个用户使用的文件
-c:列出以字符串开头的进程打开的文件
版权区
- 转载博客,必须注明博客出处
- 博客园:http://www.cnblogs.com/wangjiming/ (侧重.NET)
- CSDN:https://blog.csdn.net/u010228798 (侧重JAVA)
- 如您有新想法,欢迎提出,邮箱:2098469527@qq.com
- 专业.NET之家技术QQ群:490539956
- 专业化Java之家QQ群:924412846
- 有问必答QQ群:2098469527
- 一对一技术辅导QQ:2098469527
浅谈Linux进程管理的更多相关文章
- 浅谈Linux内存管理机制
经常遇到一些刚接触Linux的新手会问内存占用怎么那么多?在Linux中经常发现空闲内存很少,似乎所有的内存都被系统占用了,表面感觉是内存不够用了,其实不然.这是Linux内存管理的一个优秀特性,在这 ...
- 【转载】浅谈Linux内存管理机制
经常遇到一些刚接触Linux的新手会问内存占用怎么那么多? 在Linux中经常发现空闲内存很少,似乎所有的内存都被系统占用了,表面感觉是内存不够用了,其实不然.这是Linux内存管理的一个优秀特性,在 ...
- 浅谈Linux下/etc/passwd文件
浅谈Linux 下/etc/passwd文件 看过了很多渗透测试的文章,发现在很多文章中都会有/etc/passwd这个文件,那么,这个文件中到底有些什么内容呢?下面我们来详细的介绍一下. 在Linu ...
- 浅谈Linux中的信号处理机制(二)
首先谢谢 @小尧弟 这位朋友对我昨天夜里写的一篇<浅谈Linux中的信号处理机制(一)>的指正,之前的题目我用的“浅析”一词,给人一种要剖析内核的感觉.本人自知功力不够,尚且不能对着Lin ...
- 浅谈 Linux 内核无线子系统
浅谈 Linux 内核无线子系统 本文目录 1. 全局概览 2. 模块间接口 3. 数据路径与管理路径 4. 数据包是如何被发送? 5. 谈谈管理路径 6. 数据包又是如何被接收? 7. 总结一下 L ...
- []转帖] 浅谈Linux下的五种I/O模型
浅谈Linux下的五种I/O模型 https://www.cnblogs.com/chy2055/p/5220793.html 一.关于I/O模型的引出 我们都知道,为了OS的安全性等的考虑,进程是 ...
- Java网络编程和NIO详解7:浅谈 Linux 中NIO Selector 的实现原理
Java网络编程和NIO详解7:浅谈 Linux 中NIO Selector 的实现原理 转自:https://www.jianshu.com/p/2b71ea919d49 本系列文章首发于我的个人博 ...
- (转)浅谈 Linux 内核无线子系统
前言 Linux 内核是如何实现无线网络接口呢?数据包是通过怎样的方式被发送和接收呢? 刚开始工作接触 Linux 无线网络时,我曾迷失在浩瀚的基础代码中,寻找具有介绍性的材料来回答如上面提到的那些高 ...
- Linux进程管理子系统分析【转】
本文转载自:http://blog.csdn.net/coding__madman/article/details/51298732 Linux进程管理: 进程与程序: 程序:存放在磁盘上的一系列代码 ...
随机推荐
- 企查查app新增企业数据抓取
企查查每日新增企业数据抓取尚未完成的工作: 需要自行抓包获取设备id,appid,sign等等 sign和时间戳保持一致即可 把所有的数据库.redis配置 无法自动登录,账号需要独立 redis数据 ...
- 阿里分布式事务seata入门(采坑)
1. 阿里分布式事务seata入门(采坑) 1.1. 前言 seata是feascar改名而来,这是阿里在19年年初开源出来的分布式事务框架,当初刚出来的时候就想研究下了,一直拖到了现在,目前是0.8 ...
- Leetcode之二分法专题-287. 寻找重复数(Find the Duplicate Number)
Leetcode之二分法专题-287. 寻找重复数(Find the Duplicate Number) 给定一个包含 n + 1 个整数的数组 nums,其数字都在 1 到 n 之间(包括 1 和 ...
- TextCNN 代码详解(附测试数据集以及GitHub 地址)
前言:本篇是TextCNN系列的第三篇,分享TextCNN的优化经验 前两篇可见: 文本分类算法TextCNN原理详解(一) 一.textCNN 整体框架 1. 模型架构 图一:textCNN 模型结 ...
- NLP(五) 词性标注和文法
NLTK内置词性标注器 用nltk.pos_tag()函数进行词性标注 import nltk nltk.download('averaged_perceptron_tagger') simpleSe ...
- Python MySQL 数据库
python DB API python访问数据库的统一接口规范,完成不同数据库的访问 包含的内容: connection cursor exceptions 访问数据库流程: 1.创建connect ...
- 2018宁夏邀请赛 Continuous Intervals(单调栈 线段树
https://vjudge.net/problem/Gym-102222L 题意:给你n个数的序列,让判断有几个区间满足排完序后相邻两数差都不大于1. 题解:对于一个区间 [L,R],记最大值为 m ...
- CodeForces 507E Breaking Good 2维权重dij
Breaking Good 题解: 2维权重dij, 先距离最短, 后改变最小. 在这个题中, 如果要改变最小, 则让更多的可用边放进来. 然后可以用pre存下关键边. 代码: ...
- R:ggplot2数据可视化——基础知识
1 安装 # 获取ggplot2 最容易的就是下载整个tidyverse: install.packages("tidyverse") # 也可以选择只下载ggplot2: ins ...
- Vue源码中compiler部分逻辑梳理(内有彩蛋)
目录 一. 简述 二. 编译流程 三. 彩蛋环节 示例代码托管在:http://www.github.com/dashnowords/blogs 博客园地址:<大史住在大前端>原创博文目录 ...