进程与计划任务

2024-01-08 01:29:53

一、进程

什么是进程:加载到内存中运行

进程是程序的副本,进程是有生命周期

目的:因为进程会消耗硬件资源,所以要去关注他的状态


开启进程:systemd

结束进程:kill


什么是程序:硬盘上躺着

程序:执行特定任务的一串代码


主要:进程的控制

每开启一个进程,会消耗相应的硬件资源,内存,cpu

内存不足时oom:关闭没有用的进程

硬件资源不足:对进程进行清理


进程生命周期的管理

进程--------线程------协程

进程:

1.硬件分配的最小单位

2.进程只接受任务,不处理任务

线程:

1.减少硬件资源消耗

进程切换

相同资源的存储


父进程出了纰漏,所以产生了僵尸进程


webmin 端口号:10000

前台运行:影响当前终端操作

后台运行:不影响当前终端操作

后台操作可以并行执行


把命令放入后台运行:命令后+&

jobs:可以看到后台运行的命令列表

&作用:并行执行可以提高效率

二、例题

1.怎么确定一个程序是多线程还是单线程?

去看改进程的详细状态

grep? ? -i? ? threads? ?/proc/? 该程序的pid号文件夹? ?/ststus

2.如何过滤僵尸进程?

ps? ?aux? | grep? -v? grep? |grep? Z

3.如何结束僵尸进程?

重启---reboot,最快

4.cpu利用率高怎么排查?

top

ps? ?aux

查找cpu利用率高的进程

5.?找到cpu或者mem利用率最高的进程?

ps? ?aux? ? k? ?-%cpu(- :从小到大排序)

ps? ?aux? ? k? ? ?-%mem

6.我想知道当前系统lisi一共运行了多少个进程?

pgrep? ?-U? lisi | wc? -l

7.电脑用了一周很卡?

内存买了,因为缓存太多

清理缓存:echo? ?3? >? /sys/proc/vm/drop_caches

加内存条

oom过高和cpu过高:清进程


现在你中病毒了,造成你的 cpu 利用率过高,ps aux 找到过高的进程

kill 杀掉他,过一段时间又起来了 pid号 去到 /proc/pid号文件夹 /exe

exe 是软连接指向真正的程序,把病毒程序文件删除

三、命令?

1.ps

作用:查看静态的进程状态

a:所有终端

u:以用户格式

x:所有进程

k:排序

-%cpu:倒序显示

ps? ? ? ? aux:显示和用户有关的详细信息

?

2.top?

作用:任务管理器,动态显示进程的状态

  • PID:进程的 ID。

  • USER:该进程所属的用户。

  • PR:优先级,数值越小优先级越高。

  • NI:优先级,数值越小、优先级越高。

  • VIRT:该进程使用的虚拟内存的大小,单位为 KB。

  • RES:该进程使用的物理内存的大小,单位为 KB。

  • SHR:共享内存大小,单位为 KB。

  • S:进程状态。

  • %CPU:该进程占用 CPU 的百分比。

  • %MEM:该进程占用内存的百分比。

  • TIME+:该进程共占用的 CPU 时间。

  • COMMAND:进程的命令名。

第一行内容说明
21:11:24系统当前时间
up ?3:48运行了3小时48分钟
1 ? user当前登录了1个用户
load ?average:0.00,0.02,0.05系统在之前1分钟、5分钟、15分钟的平均负载

3.pgrep

作用:查看指定的进程

pgrep? ?-U? ? ?xzq(查看xzq的进程)

4.free

作用:查看内存信息

echo? ?3? ?>? /proc/sys/vm/drop_caches? ? ? #清理缓存

5.iostat

作用:查看磁盘读写性能

6.pmap

作用:看到进程使用内存的情况

7.pstree

作用:以树形结构列出进程信息

pstree? ?xzq

-p:显示pid

8.vmstat

作用:查看cpu、内存等进程状态信息,相当于一个通用查看命令;磁盘分区和剩余看不了?

9.lsof

含义:列举系统中已经被打开的文件?

10.kill----发送信号

1.重新读取配置文件

3.退出

9:强制退出,杀死进程

15:正常结束进程,kill的默认信号

cpu ? ? top ? w ? ? ?vmstat

内存 ? ?top ? ?free ? vmstat

硬盘分区:lsblk

硬盘读写性能:vmstat ? iostat

硬盘剩余:df

四、计划任务

1.一次性的家伙任务 at

at? 时间

ctrl+d----提交


2.周期性的计划任务? crontab

cronta? -e? ?编辑计划任务

*****

这五个*必须要有,表示任意时间

第一个*:哪一分钟? ?0-59

第二个*:哪一个小时? ?0-23

第三个*:哪一天? ?1-31

第四个*:哪一个月? ?1-12

第五个*:星期几? ?0-7

不能精确到秒

补充:``:调用命令执行结果

系统的优化:

1.关闭不必要的开机自启动程序

2.禁止使用超级管理员

3.使用国内的yum源

4.内核调优:

1.开启路由转发功能

2.tcp链接数

5.关闭核心防护 selinux

文章来源:https://blog.csdn.net/YUEAwb/article/details/135362277
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。