linux中的进程和计划任务

目录

一.程序

二. 进程概述

三. 进程的特征

四. 进程管理命令

五.查看进程

5.1 查看静态进程----ps命令

5.2  动态持续监听运行状态------top命令

5.3 以树形结构列出进程信息——pstree

 六. 进程启动方式

6.1.1 手动启动

6.1.2 查看后台任务列表  jobs

 6.2 调度启动

6.2.1 使用at命令,设置一次性计划任务

 6.2.2使用crontab命令,设置周期性计划任务

 6.3 进程的前台后调度

 七. 结束进程

7.1 kill

​7.2killall


一.程序

是一组计算机能识别和执行的指令,运行于电子计算机上,满足人们某种需求的信息化工具

用于描述进程要完成的功能,是控制进程执行的指令集

 二. 进程概述

运行中的程序的一个副本,是被载入内存的一个指令集合,是资源分配的单位

  • 进程ID(Process ID,PID)号码被用来标记各个进程

  • UID、GID、和SELinux语境决定对文件系统的存取和访问权限

  • 通常从执行进程的用户来继承

  • 存在生命周期

  • 都由其父进程创建,可以有一个或多个子进程

三. 进程的特征

  • 动态性:进程是程序的一次执行过程,是临时的,有生命期的,是动态产生,动态消亡的;

  • 并发性:任何进程都可以同其他进程一起并发执行;

  • 独立性:进程是系统进行资源分配和调度的一个独立单位;

  • 结构性:进程由程序、数据和进程控

    僵尸进程

    僵尸进程是当子进程比父进程先结束,而父进程又没有回收子进程,释放子进程占用的资源,此时子进程将成为一个僵尸进程。如果父进程先退出 ,子进程被init接管,子进程退出后init会回收其占用的相关资源。

四. 进程管理命令

进程的管理主要是指进程的关闭与重启。我们一般关闭或重启软件,都是关闭或重启它的程序,而

不是直接操作进程的。比如,要重启 apache 服务,一般使用命令"service httpd restart"重启

apache的程序。还可以通过直接管理进程来关闭或重启 这时就要依赖进程的信号(Signal)了。

我们需要给予该进程 信号,告诉进程我们想要让它做什么。
系统中可以识别的信号较多,可以使用命令"kill -l"或"man 7 signal"来查询。

五.查看进程

5.1 查看静态进程----ps命令

ps 即 process state,可以查看进程当前状态的快照,默认显示当前终端中的进程,Linux系统各进程的相关信息均保存在/proc/数字 目录/status 下的各文件中

ps aux

 格式:ps-le 命令输出信息                   查看看到所有的进程

            ps-l                                             查看当前登录产生的进程

.ps-le

.   ps-l

 

 注:CPU 在运算数据时,不是把一个集成运算完成,再进行下一个进程的运算,而是先运算进程

1,再运算进程 2,接下来运算进程 3,然后再运算进程 1,直到进程任务结束。不仅如此,由于进

程优先级的存在,进程并不是依次运算的,而是哪个进程的优先级高,哪个进程会在一次运算循环

中被更多次地运算。

在 Linux 系统中,表示进程优先级的有两个参数:Priority 和 Nice

其中,PRI 代表 Priority,NI 代表 Nice。这两个值都表示优先级,数值越小代表该进程越优先被

CPU 处理。不过,PRI值是由内核动态调整的,用户不能直接修改。所以我们只能通过修改 NI 值

来影响 PRI 值,间接地调整进程优先级。

PRI 和 NI 的关系:PRI(最终值)=PRI(原始值)+NI

NI 值越小,进程的 PRI 就会降低,该进程就越优先被 CPU 处理;反之,NI 值越大,进程的 PRI

值就会増加,该进程就越靠后被 CPU 处理。

修改 NI 值时有几个注意事项:

NI 范围是 -20~19。

普通用户调整 NI 值的范围是 0~19,而且只能调整自己的进程。

普通用户只能调高 NI 值,而不能降低。如原本 NI 值为 0,则只能调整为大于 0。

只有 root 用户才能设定进程 NI 值为负值,而且可以调整任何用户的进程。


5.2  动态持续监听运行状态------top命令

top 命令可以动态地持续监听进程地运行状态,与此同时,该命令还提供了一个交互界面,用户可以根据需要,人性化地定制自己的输出,进而更清楚地了进程的运行状态。

以根据需要,人性化地定制自己的输出,进而更清楚地了进程的运行状态。

 top 命令的输出内容是动态的,默认每隔 3 秒刷新一次。命令的输出主要分为两部分:

 .  第一部分是前五行,显示的是整个系统的资源使用状况,我们就是通过这些输出来判断服务器的资源使用状态的

 第一行为任务队列信息

第二行为进程信息,具体内容如表 

 第三行为 CPU 信息,具体内容如表

第四行为物理内存信息

 第五行为交换分区(swap)信息

 通过 top 命令的第一部分就可以判断服务器的健康状态。如果 1 分钟、5 分钟、15 分钟的平均负载高于 1,则证明系统压力较大。如果 CPU 的使用率过高或空闲率过低,则证明系统压力较大。如果物理内存的空闲内存过小,则也证明系统压力较大。

第二部分从第六行开始,显示的是系统中进程的信息;

常用选项

 在 top 命令的显示窗口中,可以使用如下按键,进行一下交互操作:

 5.3 查看指定进程----pgrep

pgrep  -l 进程名

 显示含有worker进程的进程号和进程名

pgrep -U  用户名                       

不加-l不显示进程名 只显示进程号

  . pgrep  -a 进程名

5.4  以树形结构列出进程信息——pstree

图例: 

  . pstree -a

 .  pstree  -u

 六. 进程启动方式

6.1.1 手动启动

  • 前台启动:用户输入命令,直接执行程序
  • 后台启动:在命令行尾加入“&”符号

6.1.2 查看后台任务列表  jobs

 6.2 调度启动

6.2.1 使用at命令,设置一次性计划任务

 创建at任务

 

 查看at任务——atq

 删除at任务

 6.2.2使用crontab命令,设置周期性计划任务


按照预先设置的时间周期(分钟、小时、天、月、周)重复执行指定的命令操作
属于周期性计划任务
主要设置文件:

全局配置文件,位于文件: /etc/crontab
系统默认的设置,位于目录: /etc/cron.*/
用户定义的设置,位于文件: /var/spool/cron/用户名
 

 特殊符号表示的时间 

 常用选项,使用时应该使用绝对路径

 6.3 进程的前台后调度

ctrl+z组合键:将当前进程挂起,即调入后台并停止执行

jobs命令:查看处于后台的任务表、

fg命令:将后台进程恢复到前台运行

 七. 结束进程

7.1 kill

kill 命令会向操作系统内核发送一个信号(多是终止信号)和目标进程的 PID,然后系统内核根据

收到的信号类型,对指定进程进行相应的操作。

 7.2killall

killall 命令不再依靠 PID 来杀死单个进程,而是通过程序的进程名来杀死一类进程,也正是由于这

一点,该命令常与 ps、pstree 等命令配合使用

 killall -i -9 dd

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值