第9章、进程与管理.doc

上传人:夏** 文档编号:562209020 上传时间:2023-02-03 格式:DOC 页数:11 大小:126.50KB
返回 下载 相关 举报
第9章、进程与管理.doc_第1页
第1页 / 共11页
第9章、进程与管理.doc_第2页
第2页 / 共11页
第9章、进程与管理.doc_第3页
第3页 / 共11页
第9章、进程与管理.doc_第4页
第4页 / 共11页
第9章、进程与管理.doc_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《第9章、进程与管理.doc》由会员分享,可在线阅读,更多相关《第9章、进程与管理.doc(11页珍藏版)》请在金锄头文库上搜索。

1、 第九章、进程与日志管理一、进程管理 基本概念 、进程的概念进程是处于活动状态的计算机程序。进程是一个随执行过程不断变化的实体。 、进程与程序之间的关系进程是程序的一次运行活动,属于一种动态概念。一个进程可以执行一个多个程序。几个进程也可以同时使用一个程序的副本。程序可以作为一种软件资源长期保持着,而进程则是一次性过程。 、进程的分类交互式进程 (如:vi、less等等)批处理进程 (如:不加-i选项的cp、cat等一些敲击完命令后,回到“#”的状态)守护进程 (如:vsftpd、httpd等一些服务) 、前台与后台前台是指一个程序控制着标准输出和标准输入。后台就是指一个程序不从标准输入接受输

2、入,也不将结果输出到标准输出上。 1、进程管理 、查看进程(ps)(top)、ps获得当前进程数据。ps 选项常用选项:(这里的选项不带“-”也可以。有的地方加上“-”不行。 -a列出带有控制终端的全部进程,不仅仅是当前用户的进程。 -r只列出正在运行的进程。 -x列出没有控制终端的那些进程。 -u列出进程的所有者。 -f给出进程之间的父/子关系。 -l按长格式显示清单。 w显示进程的命令行参数。 -o用户自定义每行所显示的内容。ps命令最常用的选项组合是“-aux”,每个进程的信息为一行,每行11个字段:每段定义如下: USER:进程的所有者。 PID:进程的标识号码。 %CPU:进程占用C

3、PU的百分比。对于一个多处理器系统来说,这一个数字相加的结果可能会大于%100。 %MEM:进程占用内存的百分比。 VSZ:进程占用虚拟内存的数量。 RSS:进程占用真实(驻留)内存的总量。 TTY:进程的控制端。在这一列中出现“?”意味着这个进程不与某个控制终端相关联。 STAT:进程的状态。主要包括以下参数S指进程休眠中。所有准备运行的进程(即那些被安排为多任务的进程,但是CPU当前正在处理其他事情)都是休眠状态的。RCPU正在处理的进程。D指不可中断休眠状态(通常与输入输出有关)。T指正在被纠错程序跟踪或者已经被终止的进程。Z指“僵死”的进程。它的意思是:(1)父进程没有使用wait系统

4、使用调用通知它的子进程的终止;(2)父进程被非正常终止:但是在该父进程完全终止前,init进程无法管理其子进程本身。一个“僵死”的进程通常都一位着软件编写的不好。另外每个进程的STAT进程数据选项还有如下的说明符:W=内存中没有驻留页面(它已经全部交换出内存);=高优先权进程;N=第优先权进程;L=内存页面被锁定在那里(通常就表示需要实时操作功能)。 START:进程开始的时间。 TIME:进程已经使用CPU的时间。 COMMAND:进程名称和它的命令行参数。例1:如果打算获得进程之间的父子关系,可以加如f选项的ps命令,也可以在后面跟上只是自己希望了解看到的参数,也直接跟上,多个之间用逗号隔

5、开。#ps fo user,pid,tty,command2、(top)动态显示当前进程和其他状况。#top 选项 常用选项: -d指定每次屏幕信息刷新之间的时间间隔。 -c显示整个命令行,而不是显示命令名。例1:top命令执行后会产生交互的绘画状态,默认值是每3秒刷新一次。# top解释l 在进程的表单上有5行: 第一行的项目依次为:(当前时间)、(系统从启动到现在的时间)、(当前系统用户登录数目)、(平均负载,最近一秒、5秒、15秒的负载值)。 第二行为进程情况,依次为:(进程总数)、(正在运行进程数)、(休眠进程数)、(终止进程数)、(僵死进程数)。 第三行为CPU状态,依次为:(用户占

6、用)、(系统占用)、(优先进程占用)、(闲置等各种情况占用CPU时间的百分比)。 第四行为内存状态,依次为:(总的可用内存)、(已用内存)、(空闲内存)、(缓存使用内存)。 第五行为交换状态,依次为:(总的可用交换容量)、(已用容量)、(闲置容量)、缓存容量)。l 接下来就是与ps相仿的个进程情况了: PID:每个进程的ID。 USER:每个进程所有者的用户名。 PR:该进程的优先级别,用正整数表示。数值越低,优先级越高。 NI:nice值。nice值是进程的一个属性,PR是根据nice值排序的,规则是nice值越小PR值越低,其取值范围在(-2019)之间。 VIRT:一个进程的虚拟大小,指

7、的是该进程总共的内存使用量。这包含有:被指定给它的内存;它使用的档案所用的内存(例如共享的函数库);与其他进程共享的内存。 RES:代表该进程实际使用的内存大小。这通常会少于VIRT里显示的大小。 SHR:指的是VIRT里有多少的空间是可以分享的(内存或是函数库)。以函数库为例,它并非指该进程使用的整个函数库,换句话说,如果一个进程只使用函数库里几个函数,则该函数将被会被计算至VIRT和SHR中,但是在RES里它只会计算当前已使用函数的大小。 S:该进程的状态。 %CPU:该进程最近一次刷新以来所占用的CPU时间和总时间的百分比。 %MEM:该进程占用的实体内存占总内存的百分比。 TIME:该

8、进程自启动以来所占用的总CPU时间。 COMMAND:该进程的命令名称,如果一行显示不下,则会进行截取。l 进入到会话模式后,就需要使用top的交互命令操作其状态。这些命令都是单字母的,键入h将会得到帮助屏幕。其它的常用的交互命令如下: i忽略闲置的僵死进程。这是一个开关式命令。 q退出top命令的交互模式。 r重新安排一个进程的优先级别。该命令提示用户输入需要改变的进程PID以及需要设置的进程优先级值。输入的值越大优先级越低,反之则可以是该进程拥有更高的优先权。默认值 是10. S切换到累计模式。 F或者f从当前显示中添加或者删除项目。 O或o改变显示项目的顺序。 l切换显示平均负载和启动时

9、间信息。 m切换显示内存信息。 t切换显示进程和CPU状态信息。 c切换显示命令名称和完整命令行。 M根据驻留内存大小进行排序。 P根据CPU使用百分比大小进行排序。 T根据时间/累计时间进行排序。 2、终止进程 (kill)# kill -n 进程的PID (n)代表信号的编号。我们经常用到的编号有:-1挂起信号(或称是SIGHUP或HUP)-9强制关闭,杀无赦。-15终端进程运行。默认kill不加任何参数选项直接跟着进程的PID,就是-15选项。 3、控制进程的运行方式对于前台执行的程序,可以用“Ctrl+Z”转入后台,但并不会在后台执行,而是停止状态。 、用命令jobs 显示后台运行的哪

10、些程序。# jobs 、如果想让 # restore -tf /dev/hda1 这条命令在后台运行。可以输上 # bg 程序编号 如下:# bg 1 、# fg 进程编号此命令可以让程序切换到前台执行。二、任务管理(at、cron) 1、(at)安排一次性任务# at 选项 时间可以指定在一天的某时间执行,如果时间已经过去了,就认为是第二天的这个时间执行。还可以指定在哪一天执行程序,时间格式为:MMDDYY(月日年)、MM/DD/YY、DD.MM.YY常用选项: -f从文件而不是标准输入输出中读取作业信息。例1:在今晚18点25分运行一项任务,在根下建立一个名为123的目录.# at 18:

11、25 具体如下图:键入mkdir命令语句后,“Ctrl+D”退出.即OK。例2:在2009年12月30日上午10点对系统中的/boot分区,做完全备份,之后重启系统。# at 10:00 12/29/2009 例3:at 交互界面中无法修改已输入过的命令语句,用户可以写一个文本文件,再用 f 选项调用它。目前根目录下有一个名为123的目录,我们要让系统自动在2009年7月20日晚上8点整,在根目录下创键一个名为234的目录,同时把原来的123目录删掉。我们在根下编辑好1.txt文件,其内容是“mkdir /234”和“rm -rf /123”,两行内容。# at 20:00 07/20/200

12、9 -f /1(文件名最好加上路径) 、(atq)列出用户未执行的任务,超级用户能列出所有使用者已创建的任务。# atqRoot用户进入/var/spool/at 目录中可以查看相关的文件,获得具体操作内容。 、(atrm)放弃 at 任务。用 # atq查出所有的at任务。然后 # atrm 要终止的任务编号 2、(cron)定期完成固定任务。 、(cron)是一个可以用来根据时间、日期、月份、星期的组合来调度执行重复任务的守护进程。可以定时地、周期地执行任务。 Cron在执行时需要读取配置文件 /etc/crontab来决定什么时候执行什么任务。下图:l 前四行用来配置cron任务运行环境

13、的变量: SHELL:告诉系统要使用哪个shell环境。 PATH:定义用来执行命令的路径。 MAILTO:cron任务的输出被邮寄给MAILTO变量定义的用户名,为空电子邮件就邮不出去了。 HOME:HOME变量用来设置在执行命令或脚本时使用的主目录。l 余下的每一行代表一项任务:分 小时 天 月 星期 用户 命令 分钟。从0到59之间的任何整数。 小时。从0到23之间的任何整数。 日期。从1到31之间的任何整数(如果指定了月份,必须是该月份的有效日期)。 月份。从1到12之间的任何整数。 星期。从0到7之间的任何整数,这里的0和7都代表星期日。 用户。命令的执行者,这通常是需要指定的,用来

14、描述使用哪个用户执行后面的命令。 命令。命令可以是如:df -h /123/1.txt 随便之类的命令脚本。l 在以上的任何值中: “*”星号。代表所有有效的值。 “-”指定的一个整数范围。例如:14,代表1、2、3、4。 “,”隔开一系列值指定一个列表。例如:3、4、6、8表明这四个指定的整数。 “/”指定间隔频率。例如:059/2 可以用来在分钟字段定义每2分钟;还可以跟“*”一起使、用,如:*/3 的值可用在月份字段中表示每3个月运行一次。例1:用root用户身份,编辑/etc/crontab文件每年的1月21日22点24分在根目录下创建一个名为cronshiyan的目录。 (crontab)命令Root用户控制着/etc/crontab 文件,普通用户要配置自己的任务,就要使用$ crontab -e 命令,注意的是,用户自己配置自己的文件时,就不用输入(用户)那一项了。用crontab -l 命令列出自己创建的任务。三、守护进程管理

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号