linux把作业号3的进程转为,Linux进程及作业管理

Linux进程管理:

Linux内核:抢占式多任务

进程类型:

守护进程:daemon,跟终端无关,在系统引导中启动进程

用户进程(前台进程):通过终端启动的进程;

注:也可把在前台启动的进程送往后台,以守护模式运行;

进程状态:

运行态:running

就绪态:ready

睡眠态:可中断:interruptable,不可中断:uninterruptable

停止态:暂停于内存中,但不会被调度,除非手动启动

僵死态:zombie

进程的分类:

CPU-Bound

IO-Bound

/proc/:内核中的状态信息;

内核参数:可设置其值从而调整内核运行特性的参数;/proc/sys/

状态变量:其用于输出内核中统计信息或状态信息,仅用于查看;

参数:模拟成文件系统类型

进程:/proc/#

#:PID

进程的所有信息和状态都存放在该文件中,所以有很多进程查看工具帮我们把进程的相关信息数据直观的抽取出来

Linux系统上的进程查看及管理工具

ps命令

ps [OPTIONS]:

选型的风格:1、UNIX options

2、BSD  options

3、GNU  options

启动进程的方式:

系统启动过程中自动启动,与终端无关的进程;

用户通过终端启动;BSD风格选项

a所有与终端相关的进程

x所有与终端无关的进程

u以用户为中心组织进程状态信息

aux组合选项之一

与终端相关的进程;

spacer.gif

edff6c05146473732617b71128dce7f5.png

spacer.gif显示结果各字段意义:

VSZ:虚拟内存集

RSS:常驻内存集

STAT:进程状态STAT含义

Rrunning

Sinterruptable sleeping

Duninterruptable sleeping

Tstoped

Zzombie

+前台进程

l多线程进程

n低优先级进程

ssession leader

UNIX风格选项

-e显示所有进程

-f显示完整格式的进程信息

-F显示更加完整格式的进程信息

-H以层级结构显示进程的

-ef组合选项之二

spacer.gife748294d262439f84b2452938dae268d.png

-eFH组合选项之三

1ef96089c65efedb25f09499caf9253e.png

c表示cpu占用比,PSR表示运行于那颗cpu上

常用选项组合之四:-eo , axo

o filed1,filed2,,,自定义要显示的字段列表,以逗号分隔;

常用的filed:pid,ni,pri,psr,pcpu,stat,comm,tty,ppid,rtprio

pid:显示进程号

ni:显示Nice值

pri:显示优先级数字

psr:运行在那颗cpu上

pcpu:cpu占用比

stat:状态

comm:运行的命令

tty:运行的终端

ppid:父进程号

rtprio:实时优先级

pgrep,pkill命令:进程过滤专用工具

pgrep [options] PATTERN

选项

-u uid起作用的用户

-U uid显示指定用户的进程

-t  TERMINAL与指定的终端相关的进程

-l显示进程名

-a显示完整格式的进程名

-p  pid显示此进程的子进程

pkill命令选项与pgrep选项相同,表示杀死匹配到的进程

pidof命令:根据进程名取其pid

pidof 后跟进程名

ebfcaada0495c0e49194c0b42966d018.png

top命令:动态显示系统进程信息。

键入top命令,会出现动态显示的一个进程信息界面

c7d3b4233c4a074039b9d40463992ebb.png

界面首部显示信息:

第一行:top-显示当前时间,  up 显示运行时长 , user表示登录到当前系统上的用户数 ,load average表示过去1分钟,5分钟,15分钟内的平均负载(等待运行的进程队列长度)

第二行:Tasks:进程任务

第三行:%Cpu(s):us表示运行在用户空间的进程所占用的cpu百分比,sy表示运行在系统内核空间的进程所占用的百分比,ni表示用于nice值调整所占用的cpu百分比,id表示空闲cpu百分比,wa等待io完成所占用的cpu百分比,hi表示硬中断所占用的cpu百分比,si表示软中断所占用的cpu百分比,st表示被虚拟化程序偷走的cpu百分比。

第四行:物理分区内存空间占用情况;

第五行:交换分区内存空间占用情况;

aa12f661ea08747380eafe4408cc49cc.png

(注:uptime命令显示top命令显示的第一行的信息:)

75b716c2eb068b735b910de37b710c90.png

内建交互式命令:

首部信息显示选项:

可键入l命令显示第一行uptime信息;

可键入t命令显示tasks和cpu的信息;

可键入m命令显示第四行和第五行的内存信息;

可键入1命令显示所有cpu的信息;

81a9b3f91b8d2de620f556f60facd2d5.png

进程的状态信息默认以cpu占用比进行排序

e9fba3b8d7fc278f4b1edcef4fc4b038.png

键入M表示以内存占用百分比进行排序:

e93c277d704fd7442beea5f693b1512e.png

键入T表示以运行时间进行排序

d5924feaa993c5d8de178de0b84df186.png

键入P表示以cpu占用百分比进行排序;

a8fb011bd4458be6a6201187a9359165.png

键入s表示修改刷新时间间隔,输入刷新隔时间,以秒为单位:

101bde5f2e5a1c8eb2e6bf31bf91931b.png

键入k后面跟上进程号表示杀死该进程:

dcd4c61c74aa67159b38918c86e0ddc8.png

键入q表示退出命令;

top命令选项:

-d#:设定刷新间隔

0ed3096866657d65bc71207b0ada0744.png

-b:以批次方式显示

-n#:显示多少批次(类似于ps命令)

940318fcd7e2cdf27d4472c3943cb66f.png

htop命令:

htop是top的升级版。

使用方法大同小异;

b6fb859f8f548e24d59761b784992888.png

默认显示所有cpu的占用信息,并且支持鼠标操作。

相比htop改进之处:界面更优化,操作更简单,支持鼠标操作。

内部交互式命令:

可键入t或F5命令以层级关系显示进程关系

2f665d036c3b2f4ed823709b0c2b9e52.png

可用上下按键或鼠标选定进程,键入l命令显示该进程所打开的所有文件:

378a205063bfe599bfd6ed228f6f74f0.png

选定进程后键入s命令,可以显示该进程的所有系统调用,而且能追踪新的系统调用:

5f2a17cfafb023708cd3abca8fdde163.png可键入a将选定的进程绑定至某指定的CPU核心

b97544fdeaf783cd777de113f060b4a5.png

可键入F2键设置显示需要的信息和显示格式:

c85516b9e091013195c9127c77915d06.png

htop命令选项:

-d#:指定刷新间隔

-u username :仅显示指定用户的进程

-s COLUME:以指定字段进行排序

vmstat命令:报告虚拟内存的统计数据

vmstat [options][delay[count]]

delay:设置刷新时间

count:设置显示次数

7906774bc075a5fbf2f219c20387aed8.png

procs表示的含义:r:等待运行的进程个数,cpu上等待运行的任务的队列长度

b:处于不可终端睡态的进程个数,被阻塞的任务队列的长度

memory:swpd:交换内存使用总量

free:空闲的物理内存总量

buffer:用于buffer(缓冲)的内存总量

cache:用于cache(缓存)的内存总量

swap:si:数据进入swap中的数据速率(kb/s),换进

so:数据离开swap的数据速率,换出

io: bi:从块设备读入数据到内存的速度(kb/s)

bo:保存数据至块设备的速率

system:in:interrupts,中断速率,平均每秒

cs:context switch,上下文切换的速率

cpu:us:用户空间所占用的cpu百分比

sy:系统空间所占用的cpu百分比

id:空闲cpu

wa:等待IO完成的所占用的百分比

st:被虚拟化基础所偷走的cpu时间

vmstat选项:

-s:显示内存统计数据

1bfc1161cc300bebcd50264b3b13bb1d.png

pmap命令:指定显示进程内存映射表

pmap [options]pid...

a2237952f7ee35156669f46f8d4ae638.png

另一种查看方式: cat  /proc/PID/maps

b85a611b61a0a170a4869cc370f4ef66.png

dstat命令

dstat [-afv][options..][delay[count]]

aa7f8d3d794f371230a6e9916452b780.png

默认会刷新时间间隔为2秒,并会一直动态显示下去

可以设置delay时间间隔,和count次数

c50bdda9e13cad461eefd7ca3086d011.png

选项

-c显示指定cpu相关信息,也可指定特定的cpu,-C# #,

71fb271d204c7cfb5832ec6ba157cbec.png

-d显示磁盘的相关信息,也可指定特定磁盘,-D#,#

67a280d2425eabbb1fa369a1edd5ded4.png

-g显示page相关的速率数据

1947e11b14c03f16a7ae3428e0cc3b76.png

-mMemory的相关统计数据

6ab7d1fcbfa3b5badae563c6d81d6801.png

-nInterface的相关统计数据

53fc8023746ab8f767b2f55c5bf28c04.png

-p显示Process相关统计数据

ddc738039ad204a1064d2624cbaac65a.png

-r显示lo请求的相关统计数据

4f6f34141b5c646b32352a94be39a594.png

-i显示中断的信息

6b2901bb4c14eb00e3180f77877f6f78.png

--tcp显示tcp协议的连接

10dbaabf29a3eafe636fe52d121e4504.png

--udp显示udp协议的连接

2b54a5119b1e6e7395b804e2d85577f0.png

--raw显示raw连接

8457e24a4a87c79f66f25b8d865b480c.png

--socket显示socket连接

33f1f50dccf6c42bbf9178073836df59.png

--top-cpu显示最占用cpu的进程

f28fcf07d9b887836a579316725abc46.png

--top-io显示最占用io的进程

40dd4438e641835ac0bfe3be8a679d5a.png

--top-mem显示最占用内存的进程

70ec38c9114e6f85002ec6a83ef14883.png

kill命令:用于向进程发送信号,以实现对进程的管理

只有管理员有权限向进程发送信号

kill -l :显示当前系统的可用信号

a8920343bb7c6a97a5eedb70d44e4064.png

也可在-l后跟上信号名称显示指定信号

信号的表示方法:

信号的数字标识

信号的完整名称

信号的简写名称

向进程发送信号:

kill [-s signal | -signal]pid...

常用信号:

1)SIGHUP:无需关闭进程

2)SIGINT:中止正在运行的进程,相当于Ctrl+c

9)SIGKILL:杀死运行中的进程,强制杀死

15)SIGTERM:终止运行

18)SIGCONT:=fg:进行停止中的进程

19)SIGSTOP:=Ctrl+z:停止进程并送往后台

killall[-SIGNAL]program

Linux系统作业控制:

job:

前台作业(foregroud):通过终端启动,且启动后会一直占据终端

后台作业(backgroud):可以通过终端启动,也可以不通过终端启动,但启动后即转入后台运行(释放终端)

如何让让作业运行于后台:

(1)运行中的作业:Ctrl+z送往后台后,作业会转为停止态。

(2)尚未启动的作业:#COMMAND&,此类作业虽被送完后台也依然与终端相关。

( 此类作业虽被送完后台也依然与终端相关,使用#nohup COMMAND &命令可以把送往后台的作业剥离与终端的关系)

4cd8640a4dc53713820b68e67adde055.png

查看所有作业:#jobs

98078ddf2d13ec72b0fdc1e3b87900fc.png

可实现作业控制的常用命令:

# fg  [[%]JOB_NUM]:把指定的作业调回前台;

# bg  [[%]JOB_NUM]:让送往后台的作业在后台继续运行;

# kill  %JOB_NUM:终止指定的作业;

08eaf1ab293eb6f23caf0a1d895f2fcb.png作业号后的+号表示优先级,如果使用控制作业命令后不加作业号,默认执行有加号的作业,之后执行有减号的作业最后执行没有符号的作业。

调整进程优先级:

可通过nice值调整的优先级范围:100-139,分别对应nice值:-20,19

进程启动时:其nice值默认为0,优先级是120

nice命令:以指定的nice值启动并运行命令

nice[options][command [ARGUEMENTS]..]

选项:-n NICE

注意:只有管理员可以调低nice值

renice命令:调整正在运行进程的优先级

renice[-n]NICE PID....

总结

进程管理是Linux系统运维中机器重要的一部分,所以熟练使用各种工具查看噶管理进程在生产环环境中起到了重要作用,也是不可或缺的一环,在进程管理工具中top使用时间比较长,是前期Linux系统中最广泛的一款进程查看工具,如今而言,htop逐渐取代了他的地位,相比较而言,htop拥有更好看的界面和更快捷的操作,更是支持用鼠标操作,在未来的操作系统中将会占据主导地位,dstat工具是一个可以查看各种进程状态的工具,也是非常强大,甚至可以查看网络状态。

原文:http://tz666.blog.51cto.com/10990100/1728907

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值