进程和计划服务管理

一、程序和进程的关系及概述

1.1程序和进程的关系
程序

①保存在硬盘、光盘等介质中的可执行代码和数据
②静态保存的代码

进程

①在CPU及内存中运行的程序代码
②动态执行的代码
③父、子进程
④每个程序可以创建一个或多个进程

1.2程序的概述

程序是保存在外部存储介质中的可执行的机器代码和数据的静态集合。就是具有可执行代码和执行权限的文本文件,它只是被保存在硬盘,不占用其他的系统资源。比如passwd,它就是一个程序,它可以更改用户密码,它也是一个文件,一个可执行的文件。

1.3进程的概述

①进程就是运行起来的程序,它占用系统各方面的资源,如cpu、内存、网络、磁盘等。每个程序启动后可以创建一个或多个的进程,每个进程都有一个自己的PID,这是个随机产生的并且不是固定的。又有自己的进程状态。
②进程是个动态的概念,他是随着程序运行而开启,程序不运行来了他也就不存在了,进程是程序执行的过程。

1.4进程的五大状态

1.运行状态/正在运行的状态
2.可中断睡眠状态
3.不可中断睡眠状态
4.僵尸进程
5.停止状态/暂停状态
6.已死状态

1.5僵尸进程
1.5.1僵尸进程的含义

僵尸进程是处于僵死状态每个的进程(只要子进程退出,父进程还在运行,但父进程没有读取子进程状态,子进程便进入Z状态)

1.5.2产生原因:

子进程先于父进程退出,父进程(使用wait()系统调用)没有读取到子进程退出的返回代码,这时候子进程为了保存退出原因,因此进入僵死态不会释放所有资源。僵死进程会以终止状态保持在进程表中,并且会⼀直在等待父进程读取其退出状态代码。

1.5.3危害:

维护退出状态本身就是要用数据维护,也属于进程基本信息,所以保存在task_struct(PCB)中,假如⼀个父进程创建了很多子进程,但是不回收,就会造成内存资源的浪费,资源泄露。

1.5.4孤儿进程(可了解)

相对于僵尸进程,那么必须提到的就是孤儿进程,同僵尸进程相反,假如父进程先于子进程退出,子进程便进入后台运行,成为孤儿进程,孤儿进程随后会被 1号init进程领养并回收,也就是将其父进程变为init进程。

二、查看进程信息

2.1查看系统中的进程
[root@localhost ~]# ps aux  
或
[root@localhost ~]# ps -ef

在这里插入图片描述
%CPU 占用cpu的百分比
%MEM 占用内存的百分比
VSZ 分配总虚拟内存
RSS 实际用到的物理内存
TTY 进程运行在那个终端
tty1 本机终端运行的状态
pts 通过远程终端连接
STAT 状态 一个S可中断睡眠状态
START 进程触发的时间
TIME 占用CPU的时间
COMMAND 执行这个进程的命令。没带括号的是用户态,【】 带括号内核态产生的
D 不可中断的
Z 僵死状态
T 停止状态
R 正常运行的状态
s 可控制性的进程
< 具有高优先级
N 具有低优先级
l 是多线程

  • 当前进程运行在前台
    在这里插入图片描述
    Ctrl+Alt+F2-F6(字符性界面) F1图形化界面
2.2查看父进程
[root@localhost ~]# ps -ef | head

在这里插入图片描述

2.3 更详细查看父进程
[root@localhost ~]# ps -elf | head

在这里插入图片描述
PRI:优先级,值越小越优先;不能人为更改,内核自己计算
NI:可以调整影响优先级PRI的大小;只能root可以修改值
这两个成对出现,若PID=80,NI=0,想要更改优先级,就把NI=-20,PRI就变成60

2.4top命令

[root@localhost ~]# top

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

cpu排序默认3s更新一次,“s”键更改排序秒数,会出现 change delay from 3.0 to
在这里插入图片描述

设置刷新时间
[root@localhost ~]# top -d 5

在这里插入图片描述

指定输出的内容
[root@localhost ~]# ps -o user,pid

在这里插入图片描述

查看系统平均负载均衡
[root@localhost ~]# top | head -1
[root@localhost ~]# uptime
[root@localhost ~]# cat  /proc/loadavg

在这里插入图片描述

2.5pstree命令
查看进程树
[root@localhost ~]# pstree

在这里插入图片描述
查看进程树是由谁产生的 pstree -u
显示进程的PID pstree -p

2.6pgrep命令

在这里插入图片描述

查看运行的进程号
[root@localhost ~]# pgrep -u shaole

在这里插入图片描述

查看运行的进程号和进程名
[root@localhost ~]# pgrep -u shaole -l

在这里插入图片描述

三、杀死进程-kill

3.1kill命令

kill 进程号:指终止程序友好的杀死进程,;进程工作做完之后终止
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.2、killall 命令

命令用于终止某个指定名称的服务所对应的全部进程
killall 进程:批量结束服务程序带有的全部进程
在这里插入图片描述

3.3pkill命令

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

四、进程相关配置操作

进程后面+d,表示是daemon守护进程
图形化界面:
ctrl+alt+f1键:图形界面
ctrl+alt+f2-6键:字符界面
starts:返回图形界面(打开新的图形界面)

4.1命令模式:ctrl+z:调到后台

比如vim tom:编辑内容到一半需要做别的事情,就可以把编辑一半的资料放在后台
在这里插入图片描述

4.2命令写到一半想要存放后台 直接在命令后面加上“&”

在这里插入图片描述

4.3jobs:查看后台进程

在这里插入图片描述

4.4 fg 后台进程号:调出到前台

在这里插入图片描述

4.5 若命令后面不加&,中间摁键:ctrl+z:暂停放在后台;bg:取消暂停后台继续运行

在这里插入图片描述

4.6直接中断进程:ctrl+c
4.7kill -9 %1:杀死后台进程号1
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值