linux进程管理 ps,Linux进程管理

查看进程:ps

ps是将某个时间点的进程状态显示出来

ps aux 将系统全部进程列出来

ps -lA 也是能够查看系统所有进程

ps -l 只查看自己bash的进程

字段含义

Awei@localhost ~]$ ps aux

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

root 1 2.0 0.3 128252 6972 ? Ss 14:24 0:04 /usr/lib/syste

user 用户

pid 进程pid

cpu cpu用量

mem 占用物理内存百分比

vsz 虚拟内存用量

rss 该进程占用的固定内存

tty 在哪个终端运行 ?为系统进程

stat s为休眠可唤醒  r 运行中 d 不可被唤醒的休眠状态 通常是i/o情况 z 僵尸进程

time 占用cpu时间

command 哪个命令触发的

动态查看进程状态:top

相对于ps针对某个时间点而言,top可以动态的了解进程情况

top -d 数字 | top -bnp

-d 后面接刷新的秒数 默认五秒

-b 批量的方式执行top 通常配合数据重定向

-n 与-b搭配 批量几次的意思

-p 指定某个pid检测

top里的命令

? 输出目前可以输入的命令

P 以cpu使用排序

M 以内存使用排序

N pid排序

T 以cpu使用时间排序

k 给某个进程一个信号

r 重定义某个进程nice值

q 退出top

top - 14:40:10 up 15 min, 2 users, load average: 0.10, 0.10, 0.15

Tasks: 240 total, 1 running, 239 sleeping, 0 stopped, 0 zombie

%Cpu(s): 0.3 us, 1.3 sy, 0.0 ni, 98.4 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st

KiB Mem : 1863104 total, 278660 free, 764660 used, 819784 buff/cache

KiB Swap: 2097148 total, 2097148 free, 0 used. 916580 avail Mem

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND

2509 Awei 20 0 3866660 200924 75284 S 4.0 10.8 0:15.42 gnome-shell

pid 每个进程pid

user 所属用户

pr 优先级 越小越优先

ni nice值 与优先级有关

后面的与ps基本相同

进程树状图:pstree

pstree -A|U -up

-A 各个进程用ASCII连接

-U 各个进程用Unicode连接

-p 显示pid

-u 列出所属账号名

[Awei@localhost ~]$ pstree -A -up

systemd(1)-+-ModemManager(904)-+-{ModemManager}(932)

| `-{ModemManager}(934)

|-NetworkManager(988)-+-{NetworkManager}(997)

| `-{NetworkManager}(1000)

|-VGAuthService(850)

|-abrt-watch-log(900)

|-abrt-watch-log(905)

|-abrtd(898)

|-accounts-daemon(855)-+-{accounts-daemon}(870)

| `-{accounts-daemon}(892)

|-alsactl(849)

|-at-spi-bus-laun(2472,Awei)-+-dbus-daemon(2477)---{dbus-daemon}(2478)

| |-{at-spi-bus-laun}(2473)

| |-{at-spi-bus-laun}(2474)

| `-{at-spi-bus-laun}(2476)

|-at-spi2-registr(2480,Awei)-+-{at-spi2-registr}(2483)

| `-{at-spi2-registr}(2484)

|-atd(1251)

这样可以方便我们追根溯源

()里面的就是pid和user 一般来说所有者如果与父进程一样,就只显示pid

通过pid结束进程:kill

kill -1|9|15 pid

1 重载配置

9 强行终止

15 正常终止

通过command结束一系列服务:killall

kill结束进程需要pid 找起来很麻烦 例如一个服务有好多进程

所以killall可以一键结束服务

killall 【-iIe】 -1|9|15 command name

-i 人机互动

-e exact意思 后面接的命令名要一致 不能超过15字符

-I 忽略命令名称大小写

进程的执行顺序

首先要明白 pri是系统内核自己定义的无法修改

需要修改nice值来决定优先顺序

直接运行赋予优先值

nice -n数字 command

修改运行中的优先值

renice number pid

注意

nice值范围 -20-19

root可以随意在-20-19之间调整

一般用户只可以调整自己的进程,且优先级是0-19 防止抢占系统资源

一般用户只可以将nice值越调越高

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值