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

智能推荐

servlet项目里,通过getParameter方法获取内容是为null的一个原因_servlet数据库this.stmt is null-程序员宅基地

文章浏览阅读1.7k次。就是你在jsp代码的第一行没有加上Encoding=UTF-8这句话导致服务器无法解析你传入的数据,就不会有返回值啦,在这里卡了好久,把方法写出来推荐给大家,大佬勿喷啊..._servlet数据库this.stmt is null

Java项目:ERP管理系统(java+SpringBoot+EasyUI+maven+mysql)_java erp项目-程序员宅基地

文章浏览阅读7.3k次,点赞15次,收藏114次。源码获取:博客首页 "资源" 里下载!项目介绍系统主要功能包括:首页零售管理:零售出库、零售退货;采购管理:采购订单、采购入库、采购退货;销售管理:销售订单、销售出库、销售退货;仓库管理:其它入库、其它出库、调拨出库、组装单、拆卸单;财务管理:收入单、支出单、收款单、付款单、转账单、收预付款;报表查询:库存状况、结算账户、进货统计、销售统计、入库明细、出库明细、入库汇总、出库汇总、客户对账、供应商对账、库存预警;商品管理:商品类别、商品信息、计量单位、序列号;基本资料:供应商信._java erp项目

11月13日任务-程序员宅基地

文章浏览阅读233次。11.10/11.11/11.12 安装PHP5 PHP官网 www.php.net 当前主流版本为5.6/7.1 cd /usr/local/src/ wget http://cn2.php.net/distributions/php-5.6.30...._my_bool

「The Monthly Echo」十月社区成长回顾-程序员宅基地

文章浏览阅读88次。前言为了能让大家及时了解到社区的最新动态以及 Apache ShardingSphere 的最新技术进展,我们全新开启了 Apache ShardingSphere 月度回顾栏目。在内...

【Pyecharts50例】主题设置/所有内置主题/配色方案_pyecharts 内置主题颜色-程序员宅基地

文章浏览阅读3.1k次。所有主题Pyecharts中预制了10+种主题方案,具体代码以及主题效果如下:# 虚假数据x_data = ['Apple', 'Huawei', 'Xiaomi', 'Oppo', 'Vivo', 'Meizu']y_data_1 = [123, 153, 89, 107, 98, 23]y_data_2 = [231, 321, 135, 341, 245, 167]# 所有内置主题theme_list = ['chalk', 'dark', _pyecharts 内置主题颜色

微服务和SOA有什么区别?读完你就懂了!_soa和微服务的区别-程序员宅基地

文章浏览阅读7.2k次,点赞2次,收藏33次。微服务是新的SOA吗?人们还在谈论SOA吗?让我们来研究一下这两个架构之间的区别。在深入探讨微服务和SOA之间的区别之前,让我先告诉您单片体系结构、SOA和微服务之间的基本区别:用外行的话说,一个整体类似于一个大容器,其中应用程序的所有软件组件都被组装在一起并紧密打包。面向服务的体系结构本质上是服务的集合。这些服务相互通信。通信可以涉及简单的数据传递,也可以涉及协调某些活动的两个或多个服务。需要一些将服务相互连接的方法。微服务,又名微服务架构,是一种架构风格,它将应用程序构造为围..._soa和微服务的区别

随便推点

第五周翻译(Stairway to T-SQL DML Level 3: Implementing a Relational Model in SQL Server)_stairway to t-sql dml level 1: the basic select st-程序员宅基地

文章浏览阅读349次。Tip:参考前人翻译本文是阶梯系列的一部分:T-SQL DML的阶梯。 这个阶梯将会为你提供一个最基本的理解,即如何使用SQL Server的翻译 SQL(T- SQL)的方言并且对SQL Server表格中的数据进行更深度地处理。DML是数据操纵语言,针对的是处理数据的语言的方面。所以它包括语句的选择、插入、更新和删除。而这个阶梯也将会提供一些SQL语言的历史和一些关于集合理论的一般概念和理..._stairway to t-sql dml level 1: the basic select statement

visual studio 2019 community试用期过了解决方法_vs2019试用期到了怎么办-程序员宅基地

文章浏览阅读3.3w次,点赞40次,收藏99次。今天打开了visual studio 2019,正准备开始从零学习C#,突然,给我弹出来一个提示框。他说,我的visual studio不能用了,我说我这个可以用,又没有干坏事犯法。他一说我不能用了,只能让我退出,我“啪”就退出去了,很快啊!然后上来就是点开CSDN,搜索解决办法。噔噔,给我弹出来好多朋友们的方法,我全部都试了啊,但是没有用,我生气了啊,正准备关电脑的时候,我说再试最后一次,如果这一次成功,一下就能白嫖这个软件很长的试用期。吭!果然,最后一次成了,结合了大家提供的方法,我解决了这个问题啊!谢_vs2019试用期到了怎么办

抽屉组件SlidingDrawer的实现,自定义View的配置和实用_slidingdraw github-程序员宅基地

文章浏览阅读1.3k次。SlidingDrawer可以实现抽屉组件的功能,但有局限性,只支持从右向左打开或从下向上打开抽屉 这个抽屉组件在使用时,需要由两部分组成:1) 抽屉内容(Content)2) 抽屉把手(Handle):一般使用一张图片来处理。 编写一个布局,完成抽屉组件的显示。_slidingdraw github

通过nmap扫描完之后,查看arp缓存表即可查看IP-MAC表_nmap识别有缓存么-程序员宅基地

文章浏览阅读1.9k次。进行ping扫描,输出所有响应的主机IP:nmap -sP 172.17.148.0/24&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&am..._nmap识别有缓存么

【计算机组成原理】 “计算机运算方法”典型例题_-13/64的原码-程序员宅基地

文章浏览阅读2k次,点赞2次,收藏14次。一、前言近期在学习计算机组成原理这门课,教材是使用的唐朔飞老师的计算机组成原理第二版,这次和大家分享一下第六章中“计算机运算方法”部分的典型例题。二、题目6.4. 设机器字长为8位(含1位符号位), 写出对应下列各真值的原码、补码和反码。-13/64, 29/128, 100, -87解答:真值 | 原码 | 补码 | 反码-13/64 | -0. 001101 | 1.0..._-13/64的原码

kali Linux的设置和优化(双系统)_kailyouhua-程序员宅基地

文章浏览阅读1.5w次,点赞10次,收藏81次。Kali Linux的安装(双系统)目录Kali Linux的安装(双系统)写在前面一:从官网下载系统映像二:利用U盘安装三:开机用户名为root四:kali系统设置1.更新源2.vim使用说明五:软件更新和安装六:常见问题1.chorm浏览器的下载2.安装软件包3.更改桌面文件(.desktop)写在前面萌新出行,大佬们看看就行了,欢迎指正!!!文件位置:文件夹->其他位置-> 计算机 当你不想用vim打开,可以按照路径进行查找和打开。一:从官网下载系统映像[官方下载地址](htt_kailyouhua