第九章、进程计划和任务管理

目录

一、查看进程

1、程序和进程的关系

2、如何查看进程信息?

       ps -elf     (e显示系统所有进程 l使用长格式显示进程信息,f使用完整的格式显示进程信息)

top命令查看动态的进程排名信息

二、控制进程

kill  killall命令


一、查看进程

1、程序和进程的关系

程序:

        保存在硬盘,光盘等介质中的可执行代码和数据

        文件中静态保存的代码

进程:

        在cpu及内存中运行的程序代码

        动态执行的代码

        父、子进程(每个程序可以创建一个或多个进程

2、如何查看进程信息?

        PS命令 

            ps aux 查看静态的进程统计信息     (a表示当前终端下面所有用户进程,u显示进程用户名 内存资源使用情况,x显示其他终端的所有信息) 

        user:代表进程用什么用户运行的

        PID:进程号

        cpu:代表进程占用CPU的百分比 如果越高代表进程越费CPU

        MEN:代表占用内存的百分比

        VSZ:代表进程占用的虚拟内存

        RSS:代表进程占用的实际内存

        TTY:代表运行终端 ?代表系统本身自己的

        SATA:指定进程的状态 (D:不可中断的休眠状态,R:正在运行状态,S:处于休眠状态可被唤醒,T:停止状态,Z:僵尸状态,进程已经停止,但是部分进程还在内存当中,会占用资源

        START:该进程启动时间

        TTME:进程在CPU中实际运行的时间

        COMMAND:代表进程名称或者进程命令      

        ps auxh 和ps aux基本一样  只不过不显示标题

        ps aux | grep wc 查看多少行

       ps -elf     (e显示系统所有进程 l使用长格式显示进程信息,f使用完整的格式显示进程信息)

        s:表示进程状态

        uid: 表示那个用户在运行进程

        pid:进程号

        ppid:代表父进程号

        c:cpu使用率

        pri:进程的优先级 数值越高优先级越高

        ni:进程的谦让度

        addr:进程所使用的内存地址

        sz:在交换分区中占用空间大小

        stime:进程开始时间

        time:累计运行时间

        ps -p 进程号  查看进程信息  

           

top命令查看动态的进程排名信息

注:cpu使用率 和 cpu负载是两个概念   

cpu使用率:代表进程在cpu中实际使用时间

cpu负载:cpu处理的任务数量

查看load average的命令有三个  w     uptime      top    高于cpu数量的百分之70时候 处于异常

第二行 指定当前系统的进程数处于各个状态的数量

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

第三行代表cpu信息 s表示cpu平均使用情况 

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

第四行为内存的信息

  • total        总内存空间
  • free        空闲内存
  • used        已用内存
  • buff/cache    物理内存和交换内存的缓冲区总和

        ps -ef | grep 进程过滤 查看指定的进程

二、控制进程

 进程的启动方式:

手工启动:(前台启动  后台启动)直接用命令启动进程  比如 复制一个很大的文件  这时候终端不能使用 必须要等进程执行完  要想在后台执行 不影响我使用终端 在命令后面加一个“&”符号即可后台运行  但是终端关闭 进程也关闭    要先在后台运行进程且终端关闭也继续运行  在前面加nohup即可

调度启动:使用at命令 设置一次性计划任务 

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

举例子:每年11月12号 上午8点到10点的 30分钟 执行 ls-l /root

分   时   日   月   周

30 8-10 11.12 * ls -l /root

每个月8号 9点半 执行

30 9 8 * * 

每个月每隔5天的晚上8点一刻执行

15 20 */5 * *

强后台切换进程  Ctrl+Z 将当前进程暂停保存 查看其他需要看的信息

jobs -l 列出当前系统被暂停的进程 

fg +序号 恢复被暂停的进程  想恢复哪个进程就把输入哪个进程的序号 

终止进程

ctrl+c 中断正在执行的命令

比如我终止PING命令

kill  killall命令

kill是如何杀掉进程的?  向进程发送信号的方式杀掉进程

kill 默认选项为 -15 ,发送信号 SIGTERM,表示告诉进程自行停止运行并退出,进程可以忽略
kill -9 ,发送信号 SIGKILL,表示进程要立即退出,且不能被捕捉或忽略
kill -3 ,发送信号 SIGQUIT,表示进程自行退出,并打印进程各个线程的堆栈信息,保存路径为 /proc/${pid}/cwd,文件名为 antBuilderOutput.log
kill -1 ,发送信号 SIGHUP,表示进程重新加载配置文件,不退出

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值