码迷,mamicode.com
首页 > 系统相关 > 详细

Linux10 ----------------进程 定时任务 僵尸进程

时间:2018-10-24 19:53:20      阅读:218      评论:0      收藏:0      [点我收藏+]

标签:启动方式   建立   调度   僵尸   emma   系统   处理   前台   lsof   

一什么是程序,什么是进程

 1程序:

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

          `静态保存的代码

2进程:

           ·在CPU中级内存中运行的代码

           ·动态执行的代码

           ·每个进程可以创建多个子进程

  二,静态查看进程统计信息的命令        PS命令

1,ps aux 

          (a).以简单的列表形式显示进程信息

          (b).技术分享图片

实例主要需要了解的进程内容:

 

技术分享图片

 

 2.ps -elf

解释:以长格式显示系统中的进程信息,并且包含更丰富的内容

 

技术分享图片

 

   3直接PS命令

     解释:指显示当前用户会话当中打开的进程技术分享图片

     

     4. 查看某个进程的详细信息

 

ps -elf | grep “进程名称”

 

技术分享图片

三.动态查看进程统计信息   top命令

解释:实时动态的显示进程统计情况默认以CPU占用率排序

常用参数:实例

 -d: 指定刷新的时间单位时秒

技术分享图片

 

-b:以批量处理模式操纵

技术分享图片

 

-n:指定循环的次数

技术分享图片

 

-u:指定用户名

技术分享图片

 

-p:指定进程号

技术分享图片

注意:当CPU占用率过高时,或者说在正常情况下都不应使用top这个命而是因该把top的结果重定向到某个文件里再到文件里去查看结果。以免cpu占用率过高导致崩溃

方法:top -b -n1 > /top.txt

top命令主要需要查看的关键点

技术分享图片

 僵尸进程:一个进程结束了,但是他的父进程没有等待(调用wait / waitpid)他, 那么他将变成一个僵尸进程

危害

编辑
由于子进程的结束和父进程的运行是一个异步过程,即父进程永远无法预测子进程 到底什么时候结束. 那么会不会因为父进程太忙来不及wait子进程,或者说不知道 子进程什么时候结束,而丢失子进程结束时的状态信息呢? 不会。因为UNⅨ提供了一种机制可以保证只要父进程想知道子进程结束时的状态信息, 就可以得到。这种机制就是: 在每个进程退出的时候,内核释放该进程所有的资源,包括打开的文件,占用的内存等。但是仍然为其保留一定的信息(包括进程号the process ID,退出状态the termination status of the process,运行时间the amount of CPU time taken by the process等)。直到父进程通过wait / waitpid来取时才释放. 但这样就导致了问题,如果进程不调用wait / waitpid的话,那么保留的那段信息就不会释放,其进程号就会一直被占用,但是系统所能使用的进程号是有限的,如果大量的产生僵死进程,将因为没有可用的进程号而导致系统不能产生新的进程. 此即为僵尸进程的危害,应当避免。
僵尸进程的避免

查看方法

编辑
查看僵尸进程,利用命令ps,可以看到有标记为Z的进程就是僵尸进程

 

 技术分享图片

 

技术分享图片

 

 

 四。查看进程信息

pstree命令

以树形结果列出进程信息

技术分享图片

技术分享图片

 

 技术分享图片

过滤端口22是否被占用

netstat -antup | grep 22

技术分享图片

技术分享图片

 

ss -antup | grep 22

lsof -i:22 

 

 五。进程的启动方式

前台启动直接用户输入命令直接执行

技术分享图片

后台执行

技术分享图片

 

系统的后台调度命令进入vim后

ctrl+z  切换到前台

fg    切换到后台

六。终止进程的运行

kill 需要PID号终止进程   kill+pid号  -9强制终止 -kill等于-9

 

kill all 需要服务名终止进程,但是会把子进程也会终止掉所以一般不用

pkill  也是根据服务名终止进程不会吧子进程终止掉但是他能清楚用户还能把终端名杀掉

 技术分享图片

 

 定时任务

定时任务的路径必须是绝对路径

定时任务必须重定向到一个目录这个目录因为Linux的垃圾收集机制定时任务会有执行结果的输出所以必须定期清理

crond周期性定时任务需要开启crond服务

定时任务的配置文件

技术分享图片

/var/log  日志文件

/var/log/cron   定时任务的日志文件

定时任务的建立

命令格式:crontab -e 直接进入定时任务的vim模式

a)  crontab相关目录、文件及其作用

相关目录、文件

作用

/etc/crontab

定时任务的 配置文件

/etc/cron.*

系统默认的设置目录(/etc下所有以cron.开头目录)

/var/spool/cron/用户名

用户定义的设置文件(所有定时任务在文件内容里)

/var/log/cron

定时任务日志文件

/var/spool/mail/用户名

接收定时任务mail的文件

/var/spool/postfix/maildrop

没有开postfix服务时,定时任务产生输出,会生成小文件在这个目录下

 

Linux10 ----------------进程 定时任务 僵尸进程

标签:启动方式   建立   调度   僵尸   emma   系统   处理   前台   lsof   

原文地址:https://www.cnblogs.com/wanigna/p/9845209.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!