实验5:作业任务和进程管理

更新时间:2023-12-25 15:59:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

实验5:Linux/UNIX作业、任务和进程管理 1、实验目的

(1) 掌握UNIX系统作业、任务和进程管理的任务,了解Linux系统进程管理的图形界面;

(2) 了解UNIX的系统进程间通信机制,掌握信号操作和终止进程的命令。 (3) 了解任务和作业管理命令at和batch;

(4) 掌握UNIX系统的进程定时启动管理命令crontab; (5) 了解进程的挂起,掌握fg,bg等命令。

2、实现设备

一台装有Windows操作系统PC机,上装有虚拟机系统VMWare,实验过程通过VMWare系统启Linux系统工作。

3、实验方法与注意事项

实验室内的实验环境与系统是共用设施,请不要在系统内做对系统或对其他用户不安全的事情。

要求每个同学登录后系统后,要在自己的家目录内容以自己(拼音)名字或学号,创建一个子目录(已有者可以不再创建)。以后所有工作都要在自己的目录内进行。建议以后的实验都在同台计算机上做,这样可以保持连续性。

用户要按通常实验要认真书写实验报告。

4、实验过程 l) 进程管理与通信

(1) 进程状态查询

查看系统内的进程及进程树的命令是ps和pstree。借助在线帮助命令man ps或man pstree,以不同的参数运行ps和pstree观察输出,并弄清楚输出中每列的意义。

① ps –ef | more #显示所有进程及启动参数 ② ps –ajx | more #以作业方式显示进行信息 ③ ps –el | more #以长格式显示所有进程信息 ④ pstree -p 或 pstree –p | more ⑤ pstree -a 或 pstree –a | more

(2) 终止进程的执行

① 终止某一已知PID进程:ps –9 PID ② 终止某一已知进程名的进程:

在当前终端上执行命令:man ps

换一终端在其运行:ps –e | grep man 终止进程执行:kill –9 PID ③ 终止所的同名进程

#PID由用户自己选择

#确定进程PID

#PID是上命令查询的结果

终止上例中的man命令:killall man 或 killall –9 man

分别至少在2个不同终端上登录,然后在其中的一个终端上分别执行以下命令,并观察和分析原因。

killall bash killall –9 bash

(3) 进程的挂起及前后台调度

在一个终端上起动命令man man,在不退出man命令的情况下按下组合键Ctrl+Z,观察反映。先后执行命令jobs和fg命令,并观察反映。

再按下组合键Ctrl+Z,在提示符下再启动一个命令(比如ps –e | more)后,按下组合键Ctrl+Z,然后再先后执行命令jobs和fg或fg 1或fg 2命令,并观察反映。

最后将每的被挂起的进程通过fg命令调住前台,然后正常终止它们。

(4) 查询使用某个文件系统的进程

分别在终端(F1)/dev/tty1和(F2)/dev/tty2上以不同用户登录,要求其中的一个是超级用户。使用命令查询命令

fuser -u /dev/tty1 和 fuser -u /dev/tty2 观察执行的结果。

设root在F3上登录,在其上运行命令fuser -k /dev/tty2后观察F2上的用户情况。

(5) 进程管理的图形界面

通过

(6)Linux系统的任务管理图形界面:

以下列方法进入图形界面:

->系统工具->系统监视器

或 ->System Tools->System Monitor

启动任务管理器。可通过界面进行相关操作,但最好不要做终止系统进程或自己进程之类的事。

2) at命令的使用。

(1) 任务的

编制一个任务让其在指定的(近期)时刻执行,以便于观察结果: at time #比如0830,或now + 3 minutes 间都试试

> clear > `tty`

> ls /tmp > /tmp/ls

> echo ”This is a DEMO to at” >> /tmp/ls > Ctrl+D

最好两个时

也可使用vi /tmp/myjob将以下行保存到脚本文件/tmp/myjob,然后使用输入重定向或通过-f /tmp/myjob来启动作业。

echo ”at:BEGIN” > /tmp/at$$

ls /tmp >> /tmp/at$$

echo ”at:END” >> /tmp/ls$$

然后通过命令ls –l /tmp/at*观察,观察/tmp/at*的内容,分析后删除之。

(2) 查询at调度的作业

at –l

(3) 终止at调试的作业

at –r JID #JID为at –l查询出的作业号。 在命令执行前可用at –l 来查看任务或作业列表。

3) crontab命令的使用

以超级用户登录,为自己编制一个定期启动程序的规划,由cron调度执行。方法是: crontab –e (回车后进行编辑界面,编辑过程参见vi的使用) (按i进入vi编辑状态,输入以下内容:)

10 11 * * * /sbin/init 6 #时间应根据具体情况而定,本例为11:10时,重启系统。

按ESC键退出编辑状态

再按:x存盘退出,crontab将提交本次的任务 至此任务提交完毕。你可以提交多行任务,让系统在不同的时间做指定的事情。这里只给出一行:在每天的11:10分系统重新启动。

可以用crontab –l 查看已提交的任务。

为避免对以后实验的影响,本次实验后请,请再次调用crontab –e命令解除已制订的任务。

也可仿此作其他任务的调度。

5、实验报告的内容与书写

实验完毕后关闭系统。

以书面形式记录下你的每一步过程,包括输入、输出信息,遇到的问题和解决的办法,(输出较多者可精简)。

本文来源:https://www.bwwdw.com/article/pecx.html

Top