Linux命令之进程的管理-程序员宅基地

技术标签: 运维  操作系统  

1.进程介绍

进程的分类:

进程一般分为交互进程、批处理进程和守护进程三类。

守护进程总是活跃的,一般是后台运行,守护进程一般是由系统在开机时通过脚本自动激活启动或由超级管理用户root来启动。比如在Redhat中,我们可以定义httpd服务器的启动脚本的运行级别,此文件位于/etc/init.d目录下,文件名是httpd,/etc/init.d/httpd就是httpd服务器的守护程序,当把它的运行级别设置为3和5时,当系统启动时,它会跟着启动。

由于守护进程是一直运行的,所以它所处于的状态是等待请求处理任务。

进程的属性:

进程ID(PID):是唯一的数值,用来区分进程;

父进程和父进程的ID(PPID);

启动进程的用户ID(UID)和所属的组(GID);

进程状态:状态分为运行R、休眠S、僵尸Z;

进程执行的优先级;

进程所连接的终端名;

进程资源占用:比如占用资源大小(内存、CPU占用量);

父进程和子进程:

它们的关系是管理和被管理的关系,当父进程终止时,子进程也随之而终止。但子进程终止,父进程并不一定终止。

2.进程管理

ps监视进程工具

ps为我们提供了进程的一次性查看,它所提供的查看结果并不动态连续的;如果想对进程时间监控,应该使用top工具;

ps的参数说明

l 长格式输出

u 按用户名和启动时间的顺序来显示进程

j 用任务格式来显示进程

f 用树形格式来显示进程

a 显示所有用户的所有进程(包括其他用户)

x 显示无控制终端的进程

r 显示运行中的进程

ww 避免详细参数被截断

常用的选项组合是aux和lax,还有参数f

ps aux或lax输出的解释:

USER 进程的属主

PID 进程的ID

PPID 父进程

%CPU 进程占用的CPU百分比

%MEN 占用内存的百分比

PRI 代表这个程序(可被执行的优先级)

NI 进程的NICE值,数值大,表示较少占用CPU时间

VSZ 进程虚拟大小

RSS 驻留中页的数量

TTY 终端ID

STAT 进程状态

 

 

D 不间断的睡眠(usually IO)

R 正在运行中在队列中可过行的

S 处于休眠状态

T 停止或被追踪

W 进入内存交换(从内核2.6开始无效)

X 杀掉的进程

Z 僵尸进程

 

< 优先级高的进程

N 优先级较低的进程

L 有些页被锁进内存

s 进程的领导者(在它之下有子进程)

l is multi-threaded (using CLONE_THREAD,like NPTL pthreads do)

+ 位于后台的进程组

 

 

WCHAN 正在等待的进程资源

START 启动进程的时间

TIME 进程消耗CPU时间

COMMAND 命令的名称和参数

ps的应用

  使用管道和more结合分页查看

  ps -aux|more

  输出进程信息到文件并查看

  ps -aux >ps001.txt

  more ps001.txt

  结合grep提取指定程序的进程

  ps aux|grep httpd

父进程和子进程的关系友好判断的例子

ps auxf|grep httpd

pgrep 是通过程序的名字来查询进程的工具,一般是用来判断程序是否正在运行。在服务器的配置和管理中,这个工具常被使用。

用法:pgrep 参数选项 程序名

参数:-l 列出程序名和进程id

-o 进程的起始id

-n 进程终止的id

终止进程的工具 kill killall pkill

kill

语法:kill [信号代码] 进程id

(信号代码可以省略,常用的是-9,表示强制终止)

对于僵尸进程,可以使用kill -9 加强信号强制退出

killall

语法:通过程序的名字,杀死所有的进程

top 连续的监视系统任务

语法:top 参数

参数:

-b 以批量模式运行,但不能接受命令行输入

-c 显示命令行,而不仅仅是命令名

-d N 显示两次刷新时间的间隔,如:-d 5,表示两次刷新时间为5秒

-i 禁止显示空闲进程或僵尸进程

-n NUM  显示更新次数,然后退出。

-p PID 仅监视指定进程的id

-q 不经任何延时就刷新

-s 安全模式运行,禁用一些交互指令

-S 累积模式,输出每个进程的总的CPU时间,包括已死的子进程

交互模式命令键位

space 立即更新

c 切换到命令名显示,

f,F 增加显示字段,或删除显示字段

h,? 显示有关安全模式及累积模式的帮助信息

k 提示输入要杀死的进程的id,目的是杀死该进程(默认信号为15)

i 禁止空闲进程和僵尸进程

l 切换到显法负载平均值和正常运行的时间等信息

m 切换到内存信息,并以内存占用大小排序

n 提示显示的进程数,如3就显示3个进程

o,0 改变显示字段的顺序

r 把renice 应用到一个进程,提示输入PID和renice的值

s 改变两次刷新时间间隔,以秒为单位

t 切换到显示进程和CPU状态的信息

A 按进程生命大小进行排序,最新进程显示在最前

M 按内存占用大小排序,由大到小

N 以进程ID大小排序,由大到小

P 按CPU占用情况排序,由大到小

S 切换到累积时间模式

T 按时间/累积时间对任务排序

W 把当前的配置写到/.toprc中

【来自 乐智的菜园子:www.cnblogs.com/AIThink 亲们,码字不容易,转载请注明出处。】

转载于:https://www.cnblogs.com/AIThink/p/4987226.html

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_30535843/article/details/95821896

智能推荐

x722网卡支持百兆吗_英特尔(Intel)X722-DA2以太网网络适配器万兆服务器网卡X722DA2...-程序员宅基地

文章浏览阅读1.4k次。英特尔 以太网网络适配器 X722-DA2基本要素产品集700 系列网络适配器(高达 40GbE)状态Launched发行日期:Q4'18垂直市场:Server中等电缆:Copper布线类型:SFP+ Direct Attached Twinaxial Cabling up to 10m支架高度:Low Profile and Full Height支持的操作系统订购与规格信息Intel Et..._塔式服务器中的intel(r) ethernet connection x722 for 1gbe是网线接口吗

Docker容器下Redis/ES/RabbitMQ/MongoDB/FastDFS启动命令总结_bitnami etcd镜像地址-程序员宅基地

文章浏览阅读1k次。1.Docker启动命令介绍例:docker run -d --name myredis -p 6379:6379 redis 命令解析: run:运行容器 -d:表示后台运行,守护进程 --name [myredis]:自定义一个名称 //[中括号内的是自己写,且命令里面没有中括号] -p 6379:6379 容器里面的端口映射到外部电脑的端口2.Docker中..._bitnami etcd镜像地址

git 使用场景 本地分支 关联 远程分支-程序员宅基地

文章浏览阅读796次,点赞8次,收藏7次。【代码】git 使用场景 本地分支 关联 远程分支。

【IDE 小程序】小程序控制台 不打印 console.log问题_微信小游戏 真机调试 无法打印任何log-程序员宅基地

文章浏览阅读1.2k次。全局搜索compress.drop_console(一般在config文件中),设置为false,再重新打开小程序即可。_微信小游戏 真机调试 无法打印任何log

整合ssm使用Vue实现前后端数据交互(详细版)_ssmvue前后端怎么连接-程序员宅基地

文章浏览阅读9.2k次,点赞19次,收藏83次。使用vue 实现前后端数据的交互创建vue工程创建ssm项目结果创建vue工程一.创建webpack骨架类型的vue项目格式参考如下:二.npm操作:安装vue-router:npm install vue-router --save-dev安装element-ui:npm i element-ui -S安装SAss加载器:npm install sass-loader node-sass --save-dev安装axios:npm install --save axios vu_ssmvue前后端怎么连接

windows安装kafka配置SASL-PLAIN安全认证_windows 安装 sasl-程序员宅基地

文章浏览阅读924次。confluent是平台化的工具,封装了kafka,让我们可以更方便的安装和使用监控kafka,作用类似于CDH对于Hadoop。confluent是由LinkedIn开发出的团队成员,基于这项技术创立了新公司ConfluentConfluent的产品也是围绕着Kafka做的。_windows 安装 sasl

随便推点

python图形化界面pyqt_python pyqt5 图形化界面编程-程序员宅基地

文章浏览阅读116次。库的成功融合。Qt库是目前最强大的库之一。PyQt是由Phil Thompson开发。#说到PyQt,我们不妨了解一下什么是Qt# Qt是一个1991年由Qt Company开发的跨平台C++图形用户界面应用程序开发框架。它既可以开发GUI程序,也可用于开发非GUI程序,比如控制台工具和服务器。Qt是面向对象的框架,使用特殊的代码生成扩展(称为元对象编译器(Meta ObjectCompiler,...

html 如何给图片打标签,图文详解HTML页面中添加图片的三种方法-程序员宅基地

文章浏览阅读6k次。在页面布局时,经常需要在页面中插入图片,那你知道如何在HTML中添加图片吗?这篇文章就给大家介绍HTML页面中插入图片的三种方法,感兴趣的朋友可以参考一下,希望对你有所帮助。方法一、用HTML中的img标签添加图片最简单,最常用的就是直接使用img标签,并且可以根据需要设置图片的大小,代码如下: 效果图:方法二、用JavaScript创建一个img元素来导入图片先创建一个img元素,再设置这个i..._html图片插入标签

oracle内核+相克军Oracle视频 看懂绝对是高级DBA了-程序员宅基地

文章浏览阅读1.3k次。1.行删除后回滚中间表exchange partition这种按月分区吧2.system的buffer cache2.索引读取次数i/o出问题指标等待事件oracle知道的,主动登记的 i./o network等待事件表gdbkslwtbctx kslwait 等待任务利用sid 找错误 spid..._相克军

【NOIP2015模拟11.2晚】舳舻牌-程序员宅基地

文章浏览阅读908次。DescriptionAlice和Bob,哦不,CZL和YYY在玩一个游戏。桌上有n张牌,每张牌对两人各有一个诱惑值,和它自己的价值。CZL先手,每次操作方喊出一个值X,然后把桌上剩下的对他诱惑值<=X的牌全部收走(至少一张),并获得其的价值。 求CZL的最大得分。Solution博弈,倒着DP。 首先把诱惑值离散化。 设Fi,j表示CZL喊到i,YYY喊道j,CZL的最大收益;Gi,j表示Y

十四、 jeecgboot路由缓存,切换Tab不刷新页面内容,保持用户选择_jeecgboot 页面切换不要刷新数据-程序员宅基地

文章浏览阅读725次,点赞9次,收藏9次。页面缓存保留用户输入数据不丢失_jeecgboot 页面切换不要刷新数据

springboot配置两个parent的方法_pom多个parent-程序员宅基地

文章浏览阅读6.4k次,点赞3次,收藏8次。在向pom.xml 文件中添加依赖之前需要先添加spring-boot-starter-parent。springboot-starter- parent主要提供了如下默认配置: .Java版本默认使用1.8.编码格式默认使用 UTF-8.提供Dependency Management进行项目依赖的版本管理。默认的资源过滤与插件配置。spring-boot-starter-paren..._pom多个parent

推荐文章

热门文章

相关标签