当前位置: 首页 > >

Linux系统第6章_进程管理

发布时间:

Linux 进程管理

基础内容介绍
案例一及其相关内容 案例二及其相关内容 课程总结与操作实训 课后*题

进 程 管 理

第 六 章

Linux 进程管理

本章教学目标:
?掌握进程管理的命令、cron的使用 ?熟悉进程的启动方式 ?了解进程定义、分类

Linux 进程管理

难点:
?Linux进程管理

重点:
?掌握如何使用进程管理命令及任务自动化操作。

关键词:
?进程 cron

Linux 进程管理

7-1 进程的基本概念
1、进程的定义
? 是指一个具有独立功能的程序在一个数据 集合上的一次运行活动。 即每个程序模块和它执行时所处理的数据 组成了进程。

?

Linux 进程管理

2、进程和程序的区别
? ? ? ? 进程是动态的,而程序是静态的 进程是有生命的,而程序是永久的 一个程序可以包含若干个进程 一个进程可以包含若干个程序(例:调用 别的程序)

Linux 进程管理

3、进程的基本状态及其转换 (1)进程的基本状态
? 运行态(running):在CPU上运行 ? 就绪态(ready):获得了CPU外的一切资源, 可以随时被CPU调用 ? 阻塞态(blocked):也叫等待态,正在等待某 一事件的发生

Linux 进程管理

(2)进程间的转换

Linux 进程管理

4、进程的类型
? ? ? 交互进程:由shell启动,可以工作在前/后台 批处理进程:不需要与终端相关,提交在 等待队列的作业 守护进程:shell/linux系统自动启动,工作 在后台,用于监视特定服务

Linux 进程管理

5、进程启动方法 进程的启动是由于执行一个程序而启动 的,在Red Hat Enterprise Linux AS 5.0系统 中启动进程的方式有两种 : (1)手工启动 ? 前台:直接输入程序名(如:#vi) ? 后台:程序名后加&(如:#vi&) (2)调度启动 ? 系统在指定时间运行指定的程序

Linux 进程管理

Linux 进程管理

给出案例
案例一
1. 利用VI手工启动两个进程在后台运行;

2.
3. 4. 5.

用VI编辑一个文件,并转入到后台运行;
把在后台运行中最前面的VI进程调入到前台运行; 杀死中间的一个VI进程; 一次性全部杀死所有的VI进程;

Linux 进程管理

与案例有关的内容分析

7-2 进程管理的常用命令
1、ps ? 功能:静态显示系统进程信息 ? 格式:ps [参数] ? 参数: ? -a //显示所有进程(不包括没有终端的进程) ? -u //显示用户名和启动时间 ? -x //显示没有终端的进程 ? -e //显示所有进程(不显示进程状态)

Linux 进程管理

? 实例:
? # ps //显示当前用户进程 ? # ps –aux //显示所有进程信息

Linux 进程管理
# ps –aux USER PID %cpu %mem vsz rss tty stat start time command root 1 0.0 0.3 1096 476 ? s 18:20 0:04 init ………………….. 说明:以上输出的信息包括 USER 进程的启动用户 PID 进程号(进程的唯一标识) %CPU 占CPU的百分比 %MEM 占用内存百分比 VSZ 占用的虚拟内存大小 RSS 占用的物理内存大小 TTY 进程的工作终端(?表示没有终端) STAT 进程的状态: R: 正在执行中 S: 静止状态 T: 暂停执行 Time 占用的cpu的时间 Command 运行的程序

Linux 进程管理

2、top
? ? ? 功能:动态显示系统进程信息 格式:top 实例:
? ? # top (默认每5秒钟刷新一次) top的操作命令:

? help ? k PID ? q

//获取top的帮助 //终止指定的进程 //退出top

Linux 进程管理

3、kill
? ? ? 功能:终止进程 格式:kill -9 PID 实例:
? ? # kill -9 3 # kill -9 3 5 8
//一次杀死3,5,8多个进程

Linux 进程管理

4、killall
? 功能:终止指定程序名的所有进程 ? 格式: killall -9 程序名 ? 实例:
? #killall -9 vsftpd //杀死所有对应vsftpd程序的进程

Linux 进程管理

5、作业的前后台操作 (1)jobs
? ? ? 功能:查看后台作业 格式:jobs 实例:
? # jobs

Linux 进程管理

(2)fg
? 功能:把后台的作业调入前台运行 ? 格式:# fg [作业编号] ? 实例:
? # fg ? # fg 2 //队首的作业调入前台运行 //将队列中的2号作业调入前台运行

Linux 进程管理

(3)bg
? 功能:恢复后台挂起的进程在后台运行 ? 格式:bg [作业编号] ? ctrl+z 将前台程序转入后台停止运行 ? ctrl+c 将终止前台程序的运行 ? 实例: ? #bg //将队首的作业调入后台运行 ? #bg 3 //将3号作业调入后台运行

Linux 进程管理

6、pstree
功能:显示系统中已经运行的服务进程/显示守护进程树
# pstree
#pstree|grep dhcpd

Linux 进程管理

分组操作
…………………………

点评、操作演示:
………………………………………..

Linux 进程管理

Linux 进程管理

案例二
1.
2.

把当前时间改为2008年8月8日16点30分30秒;
利用at设置一个任务自动化,在当天17:00钟,在根目录 下自动创建一个abc目录,并进入到abc目录中,建立一个 空的文件test,同时对该文件进行打包成test.tar; 让该系统在每周的1、3、5下午17:30自动关闭该系统;

3.

4.

在该系统在每月的16号自动启动smb服务;

Linux 进程管理

与案例有关的内容分析

7-3 任务的自动化
1、at (后台运行一次)
? ? ? 功能:安排系统在指定时间运行程序 格式:at [参数] 时间 参数:
? ? ? -m -f 文件名 -q [a-z] //任务结束后会发送mail通知用户 //从指定文件中读取执行的命令 //指定使用的队列

Linux 进程管理

? 时间的表示方法:
? 绝对表示方法:

midnight //当天午夜 moon //当天中午 teatime //当天下午4点 hh:mm mm/dd/yy

Linux 进程管理

? 相对表示方法:

now+n minutes now+n days now+n hours now+n weeks

//从现在起向后n分钟 //从现在起向后n天 //从现在起向后n小时 //从现在起向后n周

Linux 进程管理

? 实例:
? # at 21:00 3/11/2005 >cd /back/ >tar -cvf tmp.tar /tmp >init 0 ctrl+d //结束作业

Linux 进程管理

与at相关的还有atq显示队列中的作业信息命令 和atrm删除队列作业的命令,如下例所示。 //显示at等待队列的作业信息 #atq 1 2007-01-25 23:00 a root 2 2007-01-25 00:00 a root //删除at等待队列中序号为1的作业 [root@RHEL4 /]#atrm 1

Linux 进程管理

2、cron
? ? 功能:安排作业让系统在指定时间周期运行 原理:cron进程,每隔一分钟,检查 /var/spool/cron目录下用户提交的作业文件中有 无任务需要运行 配置:

?

Linux 进程管理

(1)建立crontab文件
? # vi /root/root.cron ? 格式:分 时 日 月 星期 要运行的程序 ? 实例:0 12 1 1 * /sbin/shutdown –r now ? 说明:数字表示具体时间; *表示任何时间;
0-23/2表示每隔2小时,即:0:25,2:25,4:25; 1,3,5:表示多种用“,”隔开。

Linux 进程管理

(2)运行crontab命令
? 功能:生成用户的cron文件 ? 格式:crontab [参数] 文件名 ? 参数:
? -u 用户名 ? -r ? -l ? -e //指定具体用户的cron文件 //删除用户的crontab文件 //显示用户的cron文件 //编辑用户的crontab文件

Linux 进程管理

? 实例:
? # crontab /root/root.cron //建立当前标准格式用户crontab文件 ? # crontab –r //删除当前用户的cron文件

Linux 进程管理

? 配置案例:
? 要求:root用户在每周2,4,6早上3点启重系统 ? 配置过程:
? # vi /root.cron (以root用户登录)

0 3 * * 2,4,6
? # crontab /root.cron

/sbin/shutdown -r now

Linux 进程管理

crontab命令提交的调度任务存放在 /var/spool/cron目录中,并且以提交的用户名 称命名,等待crond进程来调度执行。

Linux 进程管理

? 注意: (1)/etc/at.deny和/etc/at.allow文件 用于控制用户运行at的任务可以通过 /etc/at.deny和/etc/at.allow文件控制执行at命令的 用户,at.deny存放禁止执行at命令用户名; at.allow存放允许at命令的用户名。//禁止user1用 户执行at命令安排调度任务 #vi /etc/at.deny //向文件中添加如下内容 user1

Linux 进程管理

系统管理的其它命令
1. last
功能:显示先前用户登录信息 格式:# last [参数] 参数: -n //列出前n行 username //显示指定用户的登录信息 实例: #last root //显示超级用户登录信息

Linux 进程管理

2. date
功能:显示或设定系统日期、时间 格式: #date [MMDDhhmm[CC]YY[.ss]] 实例: # date //显示日期和时间 # date 082409452005.30 //设定日期和时间

Linux 进程管理

3. time
功能:测定执行特定的命令所用的时间等信息 格式:# time <COMMAND> 实例: # time ls

Linux 进程管理

4. whoami 功能:显示当前登录的用户名 实例: #whoami

Linux 进程管理

5. id
功能:显示当前用户的详细ID 格式:# id〔参数〕 参数: -a 显示所有ID信息 -u 显示UID -g 显示用户所属组的GID -G 显示用户附加组GID 实例: # id # id -u

Linux 进程管理

6. cal 功能:显示日历 格式:# cal [参数] [CCYY] 参数: -y //指定哪一年的日历 实例: # cal //默认显示本年本月 # cal -y 2000

Linux 进程管理

分组操作
…………………………

点评、操作演示:
………………………………………..

Linux 进程管理

Linux 进程管理

归纳与总结
通过本节课的学*我们要掌握以下内容: 进程管理的命令、cron的使用 进程的启动方式 进程定义、分类

Linux 进程管理

Linux 进程管理

课后*题
1、ps命令显示结果中STAT的s代表 ? B A、运行 B、休眠 C、终止 D、挂起 2、终止一个前台进程,可用 ? A A、ctrl+c B、ctrl+z C、alt+c D、alt+z ? 3、希望把某个在后台挂历起的作业转到后台继续运行,可使用 C A、nice B、fg C、bg D、renice 4、at 8:00 pm 是指 ? D A、当天早8点 B、每天早8点 C、每天晚上8点 D、 当天晚8点 5、在cron中若指定00 07 * * 2,4,6则2,4,6代表 ? D A、每月的2,4,6 B、每天的2,4,6 C、每小时的2,4,6 D、每周的2,4,6

Linux 进程管理

6、在目录/etc/rc.d/rc3.d下,有很多以K和S开头的链接文件, ? B 这里的以S开头的文件表示什么意思。 A. stop B. start C. sys D. sysadmin

7、linux中自动安排任务可使用 ? A B C A、at B、batch C、cron D、time
8、在shell中,当用户准备结束登录对话进程时,可用哪些命令 A、logout B、exit C、ctrl+d D、shutdown ? A B C ? AB C D 9、一般关机的命令有 A、init 0 B、shutdown now

C、halt

D、poweroff




友情链接: 高中资料网 职业教育网 成人教育网 理学 大学工学资料