实验2:进程管理实验.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

进程管理

1.实验目的

(1)加深对进程概念的理解,尤其是进程的动态性、并发性。

(2)了解进程如何被创建和终止。

(3)学会查看进程的状态信息。

(4)学会使用进程管理命令。

(5)学会在后台运行进程。

2.实验要求

(1)理解有关进程的概念,能用ps命令列出系统中进程的有关信息,并进行分析。

(2)理解进程的创建及族系关系。

(3)能使用,jobs,bg,at等命令控制进程的运行。

(4)了解终止进程的方法。

3.知识准备

(1)进程状态

利用ps命令可以查看系统中进程的状态。通过使用不同的选项,ps命令可以报告很多信息。表2-3列出ps命令输出中包含的各个域,这些域的内容对系统性能调试十分有帮助。

表2-3ps命令输出常见的域

(2)信号机制

信号(signal)机制亦称作软中断,是在软件层次上对中断机制的一种模拟。异步进程可以通过彼此发送信号来实现简单通信。系统预先规定若干个不同类型的信号(如现在的Linux和POSIX.4定义了64种信号),各表示发生了不同的事件,每个信号对应一个编号。运行进程当遇到相应事件或者出现特定要求时(如进程终止或运行中出现某些错误——非法指令、地址越界等),就把一个信号发送到相应进程。接收信号的进程在运行过程中要检测自身是否收到了信号,如果已收到信号,则转去执行预先规定好的信号处理程序。处理之后,再返回原先正在执行的程序。进程之间利用信号机制实现通信的过程如图2-11所示。

图2-11利用信号实现进程间通信

这种处理方式与硬件中断的处理方式有不少相同之处,但是二者又是不同的。因为信号的设置、检测等都是软件实现的。信号处理机构是系统中围绕信号的产生、传送和处理而构成的一套机构。

表2-4列出在x86平台上Linux内核定义的常用信号。

4.实验步骤

1、输入ps命令

PS?命令用来报告系统当前的进程状态。

2、输入ps–e命令

可以显示系统中运行的所有进程,包括系统进程和用户进程。

3、输入ps–f命令

可以得到进程详细信息。

4、输入ps–el命令

显示进程环境变量列出长表。

二、进程控制

1、后台进程

(1)$grep“注册用户名”/etc/passwd/tmp/abc

(2)ps–ppid

2、作业控制

(1)?进程休眠60秒Sleep60

(2)?进程休眠30秒Sleep30

(3)?查看进程状态Jobs

(4)?把睡眠30秒的sleep命令放在前台执行fg%2

(5)?当提示符出现后,再查看进程状态jobs

三、发送中断信号

(1)后台运行sleep命令$sleep120

(2)查看sleep进程的状态?$ps?–?ppid

(3)终止sleep命令$kill-9pid

(4)再查看sleep进程的状态$ps–ppid

四、减轻系统负载

【at命令】

让一个命令在指定的时间运行,并把结果输出在一个文件中

例:

attime

date

who

ctrld

at?命令会把已执行命令的标准输出发送到用户的邮箱,用cat命令查看邮箱内容,显示结果。

七、实验结果分析:

本次实验让我对Linux操作系统有了进一步的认识,主要实现Linux操作系统中进程管理的功能,对进程也有了一些比书本上更具体化的概念,了解了进程的创建、执行特定任务、终止、和同步的相关系统调用。理解了fork、exec、wait等系统调用的使用。在实验的过程中多次出现了因为观察不仔细导致输入错误的情况,说明对于命令的理解并不深入,不知道其代表的意义,只是照着实验手册上的提示输入,以后一定会多注意,先理解手册上的命令再进行操作。

4.实验步骤

(1)观察进程状态

①不带参数,输入ps命令,观察用户自己的进程的状态。

$ps

PIDTTYTIMECMD

632pts/100:00:00bash

1637pts/100:00:00ps

其中:PID——进程的标识号(ID)。

TTY——该进程所在的控制终端。

TIME——该进程累计执行的时间,即占用CPU的时间,以hh:mm:ss格式表示。

CMD——表示该进程所对应的命令。

说明:

(i)每个进程有唯一的PID,即进程和它的PID是一一对应的。如果用户在不同时间输入同一个命令,则它们的PID也不相同。这是由于Linux命令是通过进程完成的。在不同时间运行相同命令,系统会建立不同的进程。

(ii

文档评论(0)

188****5816 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档