unit 7

################
####第七单元####
################

####1.进程定义####
进程就是cpu未完成的工作
ps aux
ps -ef(两个都是显示进程,aux比-ef详细)

####2.ps命令####
ps
    a    ##关于当前环境的所有进程  举例:ps a
    x或者-A    ##所有进程 举例:ps x  或者 ps -A
    f    ##显示进程从属关系
    e    ##显示进程调用环境工具的详细信息
    l    ##长列表显示进程的详细信
    
ps ax -o %cpu,%mem,user,group,comm,nice,pid,stat    ##指定显示进程的某些信息
%cpu    ##显示进程cpu负载
%mem    ##显示进程内存负载
user    ##进程用户
group    ##进程组
comm    ##进程名称
nice    ##进程优先级
pid    ##进程的id
stat    ##进程状态

####stat中显示的信息
S    ##进程状态
l    ##内存中有锁定空间
N    ##优先级低
<    ##优先级高
+    ##前台运行
s    ##顶级进程


ps ax -o %cpu,comm --sort <+|-%cpu > <+|-%mem>    ##按照进程信息排序
+    ##正序(从小到大) 举例:ps ax -o %cpu,comm -- sort +%cpu (显示进程名称,并将cpu负载从小到达排列)
-    ##倒序(从大到小)
%cpu    ##cpu负载排序
%mem    ##内存负载
举例:ps ax -o %cpu,%mem,comm -- sort +%cpu,-%mem (显示cpu,mem,comm.并将cpu负载正序排列,内存负载倒序排列)

####3.进程优先级####
1.进程的优先级范围
-20~19 (优先级越小越优先)

2.优先级查看
ps ax -o pid,nice,comm

3.指定某个优先级开启进程
nice -n 优先级数字    进程名称
nice -n -5 vim &    ##开启vim并且指定程序优先级为-5  &(在后台运行)

举例:
nice -n -5 vim  (创建一个名叫vim的进程)
ps ax -o pid,nice,comm (再开一个终端窗口输入此命令) (可以查看pid,优先级,进程名称,在这里可以找到vim)

nice -n -5 vim &     (指定vim的优先级为-5,将vim进程放在后台执行)
ps ax -o pid,nice,comm  (可以查看pid,优先级,进程名称,在这里可以找到vim)

renice -n 15 4733 (找到vim的pid,改变vim的优先级为15)

4.改变进程优先级
renice -n 优先级数字    进程pid
renice -n -5 1806    ##改变1806进程的优先级为-5
root@desktop0 ~]# ps a -o pid,nice,comm
  PID  NI COMMAND
  614   0 Xorg
 1128   0 agetty
 1625   0 bash
 1785   0 vim
 1806  -5 vim
 1824  -5 vim
 1835   0 ps

####4.环境中进程的前后台调用####
jobs            ##查看被打入环境后台的进程
ctrl+z            ##把占用终端的进程打入后台,不运行
fg jobsnum(后台程序序号)        ##把后台进程调回前台
bg jobsnum        ##让进程在后台运行,不占用终端
comm &            ##让命令直接在后台运行
举例:
jobs 查看被打入环境后台的进程

gedit qq (编辑文件名为qq的文件)
ctrl +z  (gedit qq这个编辑操作,在终端显示,执行ctrl +z,放入后台,且不运行,此时编辑不了qq)

jobs  (查看此时被打入后台的进程)
fg 2   (打入后台的程序中,把编号为2的程序调回前台) 2为后台运行程序的编号 在最前面显示 【2】

bg 1   (把编号为1的后台程序在后台运行,不占用终端)

gedit qq
gedit & (打开另一个终端窗口,输入此命令,让gedit qq 再后台运行)


####5.进程信号####
1.常用信号等级
1        ##进程重新加载配置
2        ##删除进程在内存中的数据
3        ##删除鼠标在内存中的数据
9        ##强行结束单个进程(不能被阻塞)
15        ##正常关闭进程     (可能会被阻塞)    
18        ##运行暂停的进程
19        ##暂停某个进程     (不能被阻塞)
20        ##把进程打入后台    (可以被阻塞)
man 7 signal    ##查看信号详细信息

主要记 9/15/20

kill -信号 进程pid
killall -信号    进程名字
pkill    -u student -信号    

举例:kill -9 919  (强制结束进程id为919的进程)
     kill -9 gedit (强制结束进程名字为 gidit的进程)

####6.用户登陆审记####

1
w        ##查看使用系统的当前用户有那些
w -f        ##-f查看使用地点

2
last        ##查看用户登陆成功历史
3.
lastb        ##查看用户登陆未成功历史

####7.top命令####
top        ##监控系统负载工具
m    : 根据内存占有率进行排序
c    : 根据 cpu 占有率进行排序
u    : 后面输入用户名 , 用来查看该用户发起的所有进程
k    : 后面跟要作用的进程 pid, 和发起的信号 (eg:9,15,20) 用来
给某个进程发起一信号
q    : 退出进程查看界面
h    : 显示 top 命令的帮助

猜你喜欢

转载自blog.csdn.net/hetoto/article/details/83142606