进程管理

一.进程的含义

   进程:一段内存空间中的运行的一个或多个线程,它是用户的代理。

   可以通过ls /proc 查看当前系统的进程,如果要进一步了解某一进程的详细信息cd /proc/PID   然后ls查看.

     我们还可以通过pstree查看所有进程之间的树形关系。

  二。进程数据的结构

       image

1. PID:进程号,是1-32767的数。

2. PID 1是init的进程号,init是所有其他进程的父进程,系统启用时首先调用的就是init,在通过init调用其他的进程

3. 进程分为:用户进程和守护进程。

     用户进程--->terminal ---->shell

     守护进程---->daemon--->shell

三。查看进程信息常用命令

1。ps

ps风格有(1)UNIX  (2)BSD (3)GNU

 

BSD风格:

所有选项都不需要加横线。

a:  跟终端相关的所有进程(即用户进程)。

x:跟终端不相关的所有进程(即守护进程)。

u:以用户为导向显示ps信息,即用户相关的信息。

image

例如:

image

USER:属主,即进程的发起者。

PID:进程号。

%CPU:此进程获得的cpu时间和cpu总时间的比。

%MEN:此进程获得的内存占整个物理内存的%。

VSZ:占用虚拟内存的大小(k)。

RSS:占用非虚拟内存的大小(k)。

TTY:登陆端。 ?:守护进程。

STAT:进程状态。选项有:D,R,S,T,W,X,Z.

         D:不可中断的睡眠。

         R:正在运行或等待运行。

         S:可中断的睡眠。

         T:进程停止。

         X:死掉的进程。

         Z: 僵尸进程。

    附加修饰选项:

       <:高优先级的进程。

          N:低优先级的进程。

         L:有些页面被锁定 在内存里。

         s:回话头

          l:多线程的.

         +:在前台运行的

euser:此程序一谁的权限运行的。

ruser:此进程的发起人。

ATART:此进程发起的时间。

TIME:累积获得

cpu时间。

COMMAND: 哪一个命令发起的进程。

 

o:用户指定格式,可以指定显示进程信息中的某一段。

例如:

image image

2.ps 的-e -f选项

    -e:显示所有进程,相当于ax

    -F:额外的完全格式的进程。

    -f:完整格式的所有信息。

     -l:长格式的信息。

     -L:线程信息

例如:以完整格式显示进程信息

image

UID:当前进程的属主。

PID:进程号。

PPID:父进程号。

STIME:进程启用时间。

TTY:登陆终端,?:守护进程。

TIME:累积占用cpu时间。

CMD:那个命令发起的进程。

例如:查找于x server相关的进程信息

image

注:选行用grep,选列用o选项

3.pgrep

以支持正则表达式的方式来实现进程写去的。

-U:某个用户启动的线程。

例如:

image 显示关于root用户的所有进程号。

-G;有关某一组的进程信息。

-l

例如:显示行中pid或commend中包含了1的进程行

image

-v:取反。

例如:显示非root用户的进程PID。

image

4.pidof sshd =ps axo pid,command |grep ssh

选择某一进程(ssh)的进程号

5.kill

kill –l  进程信息列表

kill –9  立刻终止

kill –15 保存后终止

killall –U uid 关闭某一主的所有进程

killall  -G gid  关闭某一组的所有进程

pkill –U uid    -G gid

6。top

动态显示进程(q退出)

us:用户   sy:系统   ni:优先级改动  id : 空闲

wa:等待时长(硬盘---缓存)

hi:硬链接

ri:软连接

st:被虚拟机用走的时间

huffer:缓冲

cashed:缓存

7.top

top –b  自动一次刷一屏

-n:指定批次

top –b –n 2 

-d:指定延迟多长时间刷一次

8.jobs

查看后台

Ctrl +z送往后台并停止

fg %n:将后台的n调往前台

bg%n:后台停止的作业后台运行

9。at

写完后用Ctrl+d 提交

at –l :查看计划列表=atq

at –d n =atrm:取消第n个作业

at –f +文件+时间

例如:at /root/at.text 04:00

10.crond

/etc/crontab :存放着系统的周期作业

crontab –e :查看

作业结构:min hour day month weekday command

*:通配

,:同一位给两值是分割用

*?/:每什么

crontab –u 用户 –e :提别的用户建作业

crontab –U 用户 –l :查看某一用户的作业

11,。anacron

系统启动后自动查看cron有无没做的作业,如果有,现在执行作业

默认是它并不开机启用此服务

你可能感兴趣的:(管理,职场,进程,休闲)