Linux云计算——进程和任务管理

简介: Linux云计算——进程和任务管理

前言

本章将会讲解Linux云计算中的进程和任务管理


本章架构

2cfd9ac06bc74b0187d771fd723fbf87.png

一.程序和进程的关系

①程序

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

②进程

  1. 在 CPU 及内存中运行的程序代码
  2. 动态执行的代码
  3. 父、子进程
  4. 每个进程可以创建一个或多个进程

二.查看进程信息

1.ps:查看静态的进程统计信息

[root@localhost ~]# ps  -elf

395747d2ba7b41b3b6d954b56a899544.png

2.top:查看动态的进程排名信息

[root@localhost ~]# top

dcf26bd31a0346a3a9ab79ac4134455f.png

3.pgrep命令

根据特定条件查询进程 PID 信息

[root@localhost ~]#  pgrep -l "log"
2538 rsyslogd
2113 mcelog 
[root@localhost ~]# pgrep -l -U teacher -t tty1
27483 bash
27584 vim


l:显示进程名                                 -U:指定特定用户                                          -t:指定终端

4.pstree命令

以树形结构列出进程信息


6c5a724659174004a8fd0bce0b0eb526.png

三.进程的前后台调度

1.进程的前后台调度

  • 1>Ctrl+Z 组合键:将当前进程挂起,即调入后台并停止执行
  • 2>jobs 命令:查看处于后台的任务列表
  • 3>fg 命令:将后台进程恢复到前台运行,可指定任务序号

2.终止进程的运行

(1)kill、killall 命令

  • 1>kill用于终止指定PID号的进程
  • 2>killall用于终止指定名称的所有进程
  • 3>-9 选项用于强制终止

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


(-U:根据进程所属的用户名终止相应进程 -t:根据进程所在的终端终止相应进程)

[root@localhost ~]# pgrep –l -U "hackli"           
3045 bash
[root@localhost ~]# pkill -9  -U   "hackli”
[root@localhost ~]# pgrep -l  -U "hackli”


四.计划任务管理

1.at命令:一次性计划任务

at  [HH:MM]  [yyyy-mm-dd]

ctrl+D提交任务)(atq:查看     atrm:删除)

(1)案例

在当天的 21:30 时自动关闭当前系统

[root@localhost ~]# at 21:30
at> shutdown -h now
at> <EOT>
job 2 at Sun May  7 21:30:00 2017


[root@localhost ~]# atq #查看未执行的任务列表
2 Sun May  7 21:30:00 2017 a root


[root@localhost ~]# atrm 2  #删除第2条任务
[root@localhost ~]# atq

2.crontab命令:周期性计划任务

按照预先设置的时间周期(分钟、小时、天……)重复执行用户指定的命令操作

(1)主要设置文件

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

(2)管理cron计划任务

(-e:编辑计划任务    -l:查看    -r:删除)


crontab  -e  [-u  用户名]   #编辑计划任务
crontab  -I  [-u  用户名]   #查看计划任务
crontab  -r  [-u  用户名]   #删除计划任务

(3)crontab 任务配置的格式

0ba247068a624346aec9a8aa968d1051.png

分钟+小时+日期+月份+星期+命令

(*:表示该范围内的任意时间

   ,:表示间隔的多个不连续时间点

   -:表示一个连续的时间范围

   /:指定间隔的时间频率)



e6164d61ec644a68ab8e8d6c7599b49d.png

(4)应用示例:            

  0  17  *  *  1-5    周一到周五每天17:00        

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

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

  0  *  */3  *  *    每3天    

本章总结


知识梳理

  1. 查看进程的命令(ps、top、pgrep、pstree)
  2. 进程控制
  3. 启动进程
  4. 调度进程(Ctrl+Z组合键、jobs、bg、fg)
  5. 终止进程(kill、killall、pkill)
  6. at命令设置计划任务
  7. crontab计划任务的配置字段





目录
相关文章
|
1天前
|
Linux Shell C语言
Linux进程控制——Linux进程程序替换
Linux进程控制——Linux进程程序替换
|
1天前
|
Linux 调度
Linux进程控制——Linux进程等待
Linux进程控制——Linux进程等待
|
1天前
|
存储 缓存 Linux
Linux进程控制——Linux进程终止
Linux进程控制——Linux进程终止
|
1天前
|
安全 Linux 编译器
Linux进程——进程地址空间
Linux进程——进程地址空间
|
1天前
|
Linux Shell 编译器
Linux进程——Linux环境变量
Linux进程——Linux环境变量
|
1天前
|
Linux 调度
Linux进程——Linux进程间切换与命令行参数
Linux进程——Linux进程间切换与命令行参数
|
1天前
|
Linux 调度
Linux进程——Linux进程与进程优先级
Linux进程——Linux进程与进程优先级
|
1天前
|
Linux Shell 调度
Linux进程——Linux下常见的进程状态
Linux进程——Linux下常见的进程状态
|
8天前
|
消息中间件 存储 缓存
【嵌入式软件工程师面经】Linux系统编程(线程进程)
【嵌入式软件工程师面经】Linux系统编程(线程进程)
20 1
|
24天前
|
存储 缓存 Linux
【Linux】进程概念(冯诺依曼体系结构、操作系统、进程)-- 详解
【Linux】进程概念(冯诺依曼体系结构、操作系统、进程)-- 详解