操作系统实验3答案
- 格式:doc
- 大小:105.00 KB
- 文档页数:4
实验三操作系统进程管理
一、实验目的
1) 掌握系统进程的概念,加深对Linux / UNIX进程管理的理解。
2) 学会使用ps命令和选项。
3) 列出当前shell中的进程。
4) 列出运行在系统中的所有进程。
5) 根据命令名搜索特定的进程。
6) 使用kill命令终止进程。
7) 根据用户名查找和终止进程。
二、实验内容和相应的答案截图,三、实验结果分析
步骤1:创建一个普通用户(参见实验二),以普通用户身份登录进入GNOME。
步骤2:打开一个“终端”窗口(参见实验二)。
步骤3:回顾系统进程概念,完成以下填空:
1) Linux系统中,几乎每一个启动的进程,都会由内核分配一个唯一的__PID__进程标识符,用于跟踪从进程启动到进程结束。
2) 当启动新进程的时候,内核也给它们分配系统资源,如__内存_和__CPU_。
3) 永远不向父进程返回输出的进程叫做__僵进程__。
4) 由父进程派生出来的进程叫做____子___进程。
5) ___父_进程是一个派生另一个进程的进程。
6) 运行用于提供服务的Linux系统进程是_______________。
7) 如果父进程在子进程之前结束,它创建了一个______________进程。
步骤4:回顾ps命令和信息。基本的ps命令显示当前shell中的进程信息,用户只能够查看当前终端窗口中初始化的进程。输入ps命令,将结果填入表3-3中。
表3-3 实验记录
下面,在当前终端窗口中,练习使用给出的每个选项的ps命令。
输入ps -f 命令,显示运行在系统中的某个进程的完全信息,填入表3-4中。
表3-4 实验记录
步骤5:列出系统中运行的所有进程。
输入ps -ef 命令,显示运行在系统中的各个进程的完全信息。执行该命令,并与ps –f 命令的输出结果对照,一致吗?有何不同?
答:不一致,后者显示了所有进程的完全可用信息,多了很多。
分析当前终端窗口中的输出结果,记录下来用于写实验报告。
a. 显示了多少个进程?答:59
b. 进程ID的PID是什么?
c. 启动进程的命令(CMD) 是什么?答:sched
d. 请观察,什么命令的PID号是1?答:init[5]
e. 执行ps –ef >aaa命令,将ps命令的输出送到文本文件aaa。再次运行cat aaa | wc命令,计算进程的数目。其中,cat是显示文本文件命令。“|”是管道命令,就是将前一个命令的输出作为后一个命令的输入。wc 命令用来计算文本的行数,第一个数字显示的是行的数目,可以用来计算进程的数目。计算出进程数目并做记录。
执行man ps命令,可以打开Linux用户命令手册。了解ps命令的用法。输入wq命令可退出用户手册的阅读。man命令可以执行吗?结果如何?
答:Man ps时出现
步骤6:确定一个要终止的进程。
当试图终止一个程序,或者释放一个挂起的终端窗口的时候,杀死和不响应的应用相关的PID可能还是不够的,一般需要杀死那个进程的父进程,在少数情况下,甚至要杀死父进程的父进程。为了沿着层次结构,从子进程追溯到派生它们的父进程,必须能够查找PID 和PPID。
必须首先确定最低级不响应进程的PID。通常,可以试着去杀死那个进程。如果这样做不能够停止那个进程,可能需要杀死它的父进程。杀死父进程将杀死所有它派生的子进程。杀死一个父进程也比杀死几个子进程快得多。
1) 在GNOME当前终端窗口中,输入ps命令。有多少进程正在运行?为什么只有这么少的进程?答:2个,只显示当前用户的进程
2) 正在运行的进程的名字是什么?它表示什么?答:bash和ps 前者是Linux 平台的内定Shell,后者是查看进程的命令
3) 进程的PID是多少?答:3348 3537
4) 在bash shell中输入命令csh,打开一个C shell会话,当前系统的会话提示符是什么?(注:csh是和bash类似的另外一种命令解释程序)
5) 输入ps -f 命令,显示在当前shell中运行的进程的所有信息。现在什么进程正在运行?
6) bash的PID是-sh (csh) 的PPID吗?答:是
7) 输入命令sleep l000&,创建一个进程,把执行挂起1000秒(大约15分钟) 。&表示在后台运行命令,返回shell提示符,这样您可以继续工作。
8) 再次输入ps -f命令。-sh (csh) 的PID是sleep命令的PPID吗?哪些PID是csh (C shell) 的子进程?
9) 输入命令kill -9
sleep进程现在是什么类型的进程?
四、心得体会
通过这次的实验,我初步了解学会使用ps命令和选项。还有如何列出当前shell中的进程。如何列出系统中的所有进程和用户的进程,对于搜索特定的进程也有了一些了解,对于如何杀死进程还不是很了如指掌,但也有了一定的了解。还有查找和终止进程等一些知识。当然对于些次的实验我未能全部都做完,但也完成得七七八八了,总的来说这次的实验对我的帮助很大。