进程管理及计划任务

一、定义

程序:硬盘上躺着。执行特定任务的一串代码

进程:加载到内存中运行。进程是程序的副本,进程是有生命周期

           进程的控制:每开启一个进程会消耗相应的硬件资源,内存,CPU,磁盘io

        内存不足?关闭没有用的进程,问开发

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

二、进程

PID:进程号,用来标记各个进程

UID、GID语境决定对文件系统的存取和访问权限,通常从执行进程的用户来继承

                进程启动失败---当前用户权限问题

存在生命周期

都由其父进程创建

2.进程特征

动态性:进程是程序的一次执行过程,是临时的,有生命期的,是动态产生,动态消亡的;

并发性:任何进程都可以同其他进程一起并发执行;

独立性:进程是系统进行资源分配和调度的一个独立单位;硬件资源分配的最小单位

结构性:进程由程序、数据(需要调用的文件)和进程控制块(开发)三部分组成。

三、进程命令

        1.查看系统资源的命令

        CPU:top   w    vmstat

        内存:top   free   vmstat

        磁盘分区:lsblk

        硬盘剩余:df

        硬盘读写性能:iostat    vmstat

        网络宽带:iftop

        2.  ps:静态显示进程信息

        1.进程状态

        2.主要用途

                查看进程有没有启动
                查看进程的pid并使用kill命令杀掉
                查看哪些进程占用的cpu高
                查看哪些进程占用内存高
                查看进程的状态

         3.   ps    aux    查看系统中所有进程 

                a:显示一个终端的所有进程,除了会话引线

                u:显示进程的归属用户及内存的使用情况

                x:显示没有控制终端的进程

# 查看系统中所有进程

        ps    -le

        选项: -l:长格式显示。显示更加详细的信息

                    -e:显示所有进程,和-a作用一致

ps -ef 和ps -aux使用

        如果想跟踪cpu占用率和内存占用率, 用aux;如果想跟踪父进程和完整的启动命令,那么使用ef.

        

        #查看指定进程pid(sshd)

                ps  -aux | grep sshd

                ps  -ef | grep 进程名/PID

        3.  top:动态显示进程信息

        4.  pgrep:查看指定的进程

        5. pidof:查看进程的pid号

        6. pstree:命令进程树

        7. lsof:根据文件找到对应的进程信息

 

        8. vmstat:监控系统资源

        9. free:内存

        10. iostat:可以提供更丰富的IO性能状态数据

        11. iotop:监视磁盘I/O

        12. mpstat:显示CPU相关统计

        13. dstat:系统资源统计

        14. webadin:根据文件找到对应的进程信息

  

四、进程管理

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

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

        2.inux 命令放入后台的方法有两种

            1."命令 &",把命令放入后台执行

        

        把命令放入后台的方法是在命令后面加入 `空格 &`。使用这种方法放入后台的命令,在后台处于执行状态。注意,放入后台执行的命令不能与前台有交互,否则这个命令是不能在后台执行的。

            2. jobs  查看后台运行的命令列表

            3.fg    调出后台任务 

            4.bg    继续任务

            5.并行执行任务

            6.结束进程

                1.kill----kill 命令只是用来向进程发送一个信号,至于这个信号是什么,是用户指定的

                2.killall

                3.pkill

五、计划任务

        1.at    一次性的计划任务

        2. crontab    周期性的计划任务

 

六、面试题目

1.想知道当前系统lisi一共运行了多少个程序

        pgrep  -U   lisi  |   wc  -l

2.找到cpu利用率最高的进程

        ps  aux  k  -%cpu

        ps  aux  k  -%mem

3.cpu利用率高你怎么排查

        top

        ps  aux 

        查找cpu利用率高的进程

4.如何确定一个程序是多线程还是单线程

        grep  -i   threads   /proc/进程PID/status

        prtstat    进程PID号

5.如何过滤僵尸进程?如何结束僵尸进程?

        (1)ps   aux  | grep  Z   

        (2)重启最快

6.

7.可以对系统有哪些优化:

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

        2.禁止使用超级管理员

        3.使用国内的yum源

        4.内核调优

                1.开启路由转发功能

                2.tcp连接数

        5.关闭核心防护 selinux

  • 14
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值