锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

Linux进程以及计划任务

时间:2022-10-18 22:00:00 74aup2g126gf二极管74aup2g125gd二极管

Linux过程和计划任务

文章目录

  • Linux过程和计划任务
    • 1程序 介绍流程线程
      • 1.1程序
      • 1.2进程
      • 1.3线程
      • 1.僵尸和孤儿的过程介绍
    • 2查看进程统计信息
      • 2.查询过程中的静态信息-ps
      • 2.查询过程动态信息-top
        • 2.2.1top命令介绍
      • 2.3pgrep查看过程信息
      • 2.4pstree查看进程树
    • 3控制进程
      • 3.1进程前后台调度
      • 3.一次性计划任务at
      • image-20220712093549456
      • 3.三周期性计划任务-crontab
        • 3.3.1 管理crontab计划任务
        • 3.3.2 crontab 任务配置格式
        • 3.3.3使用 crontab 命令管理用户的计划任务
    • 4进程的终止
      • 4.1Kill命令 和 Killall命令
      • 4.2pkill命令
    • 5总结
    • 5总结

1程序 介绍流程线程

1.1程序

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

1.2进程

  • 在CPU程序代码在内存中运行
  • 动态执行代码
  • 每个程序可以创建一个或多个进程

1.3线程

  • 负责功能的运行
  • 多线程可以运行多个任务
  • 有三种状态

就绪:创建线程后等待cpu过来执行的时间称为就绪状态
运行:当cpu来执行的时候会变成运行状态,当cpu当执行其他线程时,它会回到就绪状态
堵塞:如果线程正在运行,需要向硬盘发送访问请求和一系列需要时间输入输出的操作,线程将进入阻塞状态,西部将转向执行其他线程。当耗时操作结束时,以前的阻塞状态线程将再次成为准备状态,单核单线程cpu一次只能执行一个线程,需要轮流执行每个线程。

1.僵尸和孤儿的过程介绍

僵尸进程 子过程退出,父过程不回收子过程,释放子过程占用的资源,子过程将成为僵尸过程。

孤儿过程一个父亲过程退出,一个或多个子过程仍在运行,因此这些子过程将成为孤儿过程,孤儿过程将被退出init并由过程收养init完成状态收集工作。

查看过程统计信息

2.查询过程中的静态信息-ps

查看静态过程统计信息

a∶ 包括其他用户在内的所有显示终端的过程。

u∶ 表示列出过程的用户。

x∶ 显示所有终端的过程。

image-20220711185127214

介绍每个单词的意思

USER 启动此过程的用户账户名称
PID 该进程在系统中的数字ID数字是当前系统中唯一的
%CPU CPU占百分比
%MEM 内存占百分比
VSZ 虚拟内存(单位:KB)
RSS 物理内存(单位:KB)
TTY 注明该过程在哪个终端上运行。
pts远程登录终端,tty1.图像界面,tty2和tty6:字符界面,?:系统本身执行的过程
STAT 过程状态
START 启动过程的时间(何时启动)
TIME 该进程占用CPU时间(启动需要多长时间)
COMMAND 启动过程命令的名称
其中STAT过程的过程状态如下

D:系统保护过程(daemon)

R:正在运行(running)

S:睡眠状态(sleep)

Z:僵尸状态(zombie)

T:停止状态

优先级符号:

<:表示过程运行在高优先级上

N:表示过程运行在低优先级上

L:表示进程有页面定在内存中

s:表示过程是控制

l:表示过程是多线程的

:表示当前流程在前台运行

2.查询过程动态信息-top

2.2.1top命令介绍

  • 默认情况下,每3秒刷新一次,按s键修改刷新时间,按空间:立即刷新。

第一行介绍

19:02:20系统时间

up 32 min系统已经运行了很长时间

2usres目前登录用户数

load average:0.02 0.02 0.05系统负载,即单位时间内系统处理的任务数,后三个值分别为1分钟、5分钟和15分钟前的平均值

第二行介绍

  • Tasks 总进程数
  • running 正在运行的过程数
  • sleeping 休眠过程数
  • stopped 中止过程数
  • zombie 僵硬的过程数

第三行介绍

  • us——用户占用
  • sy——内核占用
  • ni——占用优先级调度
  • id——空闲CPU,了解空闲 CPU 百分比主要取决于%id 部分
  • wa—— I/O 等待占用
  • hi——中断占用硬件
  • si——中断占用软件
  • st——虚拟化占用

第四行介绍

total 总交换空间

free 空闲内存

used 已用内存

buff/cache 物理内存和交换内存缓冲区的总和

2.2.2top常用命令

P 键∶ 根据CPU用百分比大小排序
M 键∶ 根据驻留内存的大小进行排序
N 键∶ 根据启动时间进行排序
c 键∶ 切换显示命令名称和完整命令
h 键∶ 可以获得 top在线帮助信息的程序
k 键∶根据提示输入指定的过程 PID 号并按 Enter 键终止对应的进程
q 键∶退出 top 程序
数字1 键∶ 显示CPU个数和状态

2.3pgrep查看过程信息

2.4pstree查看进程树

过程信息以树形结构列出
pstree默认情况下,命令只显示每个过程的名称,
结合以下常用参数:

执行pstree-aup"命令可以查看当前系统的过程树,包括每个过程对应的过程树PID编号、用户名、完整命令等信息。从输出结果中可以看出,systemd进程确实是Linux操作系统中所有流程的始祖

3控制进程

在服务器维护工作中,通常需要执行一些耗时和占用资源的任务(如数据备份),这些任务更适合在相对空闲时间(如夜间)进行。此时,用户需要提前安排调度,并在系统到达设定时间时自动启动和完成指定任务时指定任务。调度启动的计划任务运行,不占用用户的命令终端。
可以通过调度启动过程at、crontab设置命令at命令用于设置一次性计划任务,crontab设置周期性运行的计划任务。

3.1进程前后台调度

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

jobs命令: 查看当前终端处于后台的任务列表

  • -l:显示进程对应的id号

fg命令: 将后台进程恢复到前台运行,可指定任务序号

bg命令: 将后台程序继续在后台运行。

3.2一次性计计划任务at

具体实例

ctrl +D : 提交任务

atq: 查看一次性任务管理

atrm + 序号 : 删除一次性任务

3.3周期性计划任务-crontab

  • 按照预先设置的时间周期(分钟、小时、天…)重复执行用户指定的命令操作
  • 属于周期性计划任务
  • 主要设置文件
    • 全局配置文件,位于文件:/etc/crontab
    • 系统默认的设置,位于目录:/etc/cron.*/
    • 用户定义的设置,位于文件:/var/spool/cron/用户名

3.3.1 管理crontab计划任务

默认情况下不使用-u是针对root用户,只有root用户才能对其它用户使用-u选项

  • 编辑计划任务格式:crontab -e [-u 用户名
  • 查案计划任务(不加-u就是查看自己的计划任务表,加-u就是指定查看某用户的计划任务表)格式:crontab -l [-u 用户名
  • 删除计划任务(删除全部,若要删除某一个,需要进入到crontab -e 内部进行删除)

格式:crontab -r [-u 用户名

3.3.2 crontab 任务配置格式

字段 分钟 小时 日期 月份 星期 命令
范围 0-59 0-23 1-31 1-12 0-7(0或7代表周日) 要执行的命令或程序脚本

时间数值的特殊表示方法

  • *: 表示该方位内的任意时间
  • ,:表示间隔的多个不连续时间点
  • -:表示一个连续的时间范围
  • /:指定间隔的时间频率

应用实例
$$
0 17 * * 1-5 周一到周五每天17:00

30 8 * * 1,3,5 每周一、三、五的8点30分

0 8-18/2 * * * 8点到18点之间每2个小时

0 * * /3 * * 每3天
$$

3.3.3使用 crontab 命令管理用户的计划任务

设置用户的周期性计划任务列表主要通过 crontab 命令进行,结合不同的选项可以完成不同的计划任务管理操作。常用的选项如下。
-e:编辑计划任务列表。
-u:指定所管理的计划任务属于哪个用户,默认是针对当前用户(自己),一般只有 root 用户有权限使用此选项(用于编辑、删除其他用户的计划任务)。
-l:列表显示计划任务。
-r:删除计划任务列表。

设置每天早上7点50分开启sshd服务

查看计划进程

4进程的终止

Ctrl+C 组合键:结束终端正在执行的命令

4.1Kill命令 和 Killall命令

Kill 用来终止指定PID号的进程

  • kill -l :查看所有选项发出的信号
  • 默认不加的选项是 -15

Killall 用来终止指定名称的所有进程

选项信号 作用
-1(HUP) 重新加载进程
-9(KILL) 终止进程
-15(TERM) 正常停止进程

4.2pkill命令

根据特定条件终止相应的进程

常用命令选项

5总结

1、程序和进程的关系
程序时静态的,进程是动态的、是程序的运行过程

2、查看进程统计信息
静态查询 :ps -aux 、 pgrep 、pstree

动态查询:top

3、进程的启动方式

一次性计划任务----at

周期性计划任务----crontab

4、终止进程的运行
终止单个进程:kill

终止多个进程:killall

根据特定条件终止相应的进程:pkill
ll命令

根据特定条件终止相应的进程

常用命令选项

[外链图片转存中…(img-f63Y0Cqz-1657610385368)]

5总结

1、程序和进程的关系
程序时静态的,进程是动态的、是程序的运行过程

2、查看进程统计信息
静态查询 :ps -aux 、 pgrep 、pstree

动态查询:top

3、进程的启动方式

一次性计划任务----at

周期性计划任务----crontab

4、终止进程的运行
终止单个进程:kill

终止多个进程:killall

根据特定条件终止相应的进程:pkill

锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章