进程和计划任务管理

程序 : 没有运行的代码

进程 :正在运行的代码

线程 :是进程的真正执行者

服务 :在操作系统内部或者依赖网络环境运行的一种软件组件,提供特定的功能或者服务,一般在后台运行接受请求,处理数据,执行操作

服务可以是系统自带的 --firewalld

也可以是第三方基于linux系统开发的应用程序 :httdp nginx mysql,长期运行

服务可以通过端口号进行通信

服务之间可以互相访问

服务是以进程的方式运行的,服务可以自行分配资源,也可以通过管理员限制资源的使用

进程:是操作系统分配给运行程序的资源单位,在代码中限制了资源的使用

1、写死了进程所占用的系统资源

2、系统自动分配

3、进程之间是相互隔离的 ,彼此之间不能访问内存空间

服务与进程相同点 :

都是特定的功能的软件,服务也是以进程的方式在系统运行,都可以对系统资源的使用

不同点 :

进程之间一般不能相互访问,也就是说不能通过传统的ip端口进行通信,只能通过系统提供的机制:共享内存、信号等等

服务可以通过定义的端口和协议与其他组件进行通信

进程和计划任务管理_第1张图片

父进程和子进程 :

父进程 :systemd 和 init

子进程 :基于父进程创建的进程

父进程先启动------>启动子进程,子进程运行的资源由父进程提供分配资源

结束运行: 子进程先结束------>父进程要回收了子进程的资源之后,父进程才会终止

ps :查看进程命令,静态的统计进程信息

常用选项
  a 表示显示所有终端上的进程,包括其他用户的进程
  u 列出进程的用户
  x 显示进程的信息
  e 显示系统内的所有进程信息
  l 长格式显示进程信息
  f 显示完整进程信息

 user :进程的用户

PID :进程的ID 

%CPU:占用cpu的百分比

%MEM:占内存的百分比

STAT :进程的状态

           包含 D:不可中断的休眠状态

                   R:正在运行

                   S:处于休眠状态,可被唤醒

                   T:停止状态,后台暂停 或者 处于调试状态

                   Z:僵尸进程,指的是父进程已经终止,但子进程还在运行(无法杀死,只能重启)

                         僵尸进程特点 :所占cpu和内存都很小

kill :终止进程

kill -9 强制终止进程

kill什么都不带,默认-15 告诉cpu这个进程需要被终止

注:kill命令只是传递一个信号,由cpu来处理

tty:表示运行终端的运行级别

1 :表示图形化,2-6 :文字界面

 

 pts :表示使用远程连接工具连接到系统的, xhsell 、moba ;越早登录远程工具,数字越小

TOP:查看进程命令,动态查看信息会不断更新

id :空闲的cpu百分比

us :用户占用cpu百分比

sy :内核占用百分比

常用选项:

c :根据使用cpu的大小进行排序,大的在前,小的在后

数字键1 :显示cpu的个数以及运行状态

q 或者 ctrl+c / z 退出

top -b -n 1 :表示只运行一次就退出 

pstree :查看线程

-p :显示进程id

-u :显示进程的用户

进程和计划任务管理_第2张图片

pgrep:根据进程名查找 pid,一般和kill命令配合使用

-a :显示进程名和pid号

格式:pgrep -a +进程名称

进程和计划任务管理_第3张图片

jobs:查看后台进程的状态信息

常用选项
    -l 显示所有后台进程的pid
    -p 显示所有后台进程的进程组id
    -n 仅显示最近的后台进程
    -r 仅显示正在运行的后台进程
    -s 仅显示 已停止的后台进程

后台运行的两种方式:

1、vim 编辑   ctrl+z 组合键  表示   放到后台并停止运行

2、cp -a /mnt /opt & 放到后台运行            &:后台运行符

定时任务:格式   *  *  *  *  *

从左到右分别表示为:分 、时 、日 、月 、周

表示范围 :

分 :0-59

时 :0-23

日 :1-31

月 :1-12

周 :0-7        注:0 和 7 都是星期天

“  ,”   :表示间隔的不连续的时间点      

        例 : 30  3  10,20   *   *       表示每月10号及20号的3:30执行命令

“  -  ”   :表示连续的时间范围 

       例 :  25   8-11   *   *   *         表示每天8-11点的第25分钟执行命令

“  /  ”   :表示间隔的时间频率                 

       例 :  */15   *   *   *   *          表示每15分钟执行一次命令

5   *  *  *  *                  指定每小时的第5分钟执行命令
30   5   *   *   *            指定每天的 5:30 执行命令
30   7   8   *   *         指定每月8号的7点30分执行命令
30   5   8   6   *        指定每年的6月8日5点30分执行命令

命令 :

crontab -e -u 用户名 :指定用户创建定时任务

crontab -l -u 用户名 :查看指定用户的定时任务

crontab -r -u 用户名 :删除指定用户定时任务,不推荐

删除一般crontab -e 进入创建界面进行单个操作

你可能感兴趣的:(linux,运维,服务器)