- 178
- 0
- 约1.35万字
- 约 41页
- 2018-09-01 发布于贵州
- 举报
计算机操作系统试验上海大学-
-盛俊 操作系统上机实验报告
PAGE41 / NUMPAGES41
SHANGHAI UNIVERSITY
计算机操作系统实验报告
(实验三、六)
学 院 计算机工程与科学学院
专 业 计算机科学与技术
组 号 第 28 组
姓 名 盛俊
教 师 沈俊
赵正德
日 期 2013-10-25
实验三
进程管理及进程通信
一. 实验目的
利用Linux提供的系统调用设计程序,加深对进程概念的理解。体会系统进程调度的方法和效果。了解进程之间的通信方式以及各种通信方式的使用。
二. 实验准备
复习操作系统课程中有关进程、进程控制的概念以及进程通信等内容(包括软中断通信、管道、消息队列、共享内存通信及信号量概念)。熟悉本《实验指导》第五部分有关进程控制、进程通信的系统调用。它会引导你学会怎样掌握进程控制。阅读例程中的程序段。
三. 实验方法
用vi 编写c 程序(假定程序文件名为prog1.c)编译程序$ gcc -o prog1.o prog1.c 或$ cc -o prog1.o prog1.c 运行$./prog1.o
四. 实验内容及步骤
1. 编写程序。显示进程的有关标识(进程标识、组标识、用户标识等)。经过5 秒钟后,执行另一个程序,最后按用户指示(如:Y/N)结束操作。
2. 参考例程1,编写程序。实现父进程创建一个子进程。体会子进程与父进程分别获得不同返回值,进而执行不同的程序段的方法。
思考:子进程是如何产生的?又是如何结束的?子进程被创建后它的运行环境是怎
样建立的?
答:是由父进程用fork()函数创建形成的,通过exit()函数自我结束,子进程被创建后核心将其分配一个进程表项和进程标识符,检查同时运行的进程数目,并且拷贝进程表项的数据,由子进程继承父进程所有文件。
3. 参考例程2,编写程序。父进程通过循环语句创建若干子进程。探讨进程的家族树以 及子进程继承父进程的资源的关系。
思考题:①画出进程的家族树。子进程的运行环境是怎样建立的?反复运行此程序看会有什么情况?解释一下。②修改程序,使运行结果呈单分支结构,即每个父进程只产生一个子进程。画出进程树,解释该程序。
22641.
2264
227122692265
2271
2269
2265
227022682266
2270
2268
2266
2267
2267
2.修改之后的程序
运行结果:
2340
2340
2341
2341
2342
2342
2343
2343
解释:当该进程为父进程时就创建子进程并退出,当该进程为子进程时返回标识号
4. 参考例程3 编程,使用fork( )和exec( )等系统调用创建三个子进程。子进程分别启动不同程序,并结束。反复执行该程序,观察运行结果,结束的先后,看是否有不同次序。
思考:子进程运行其它程序后,进程运行环境怎样变化的?反复运行此程序看会有什么情况?解释一下。
答:子进程运行其他程序后,这个进程就完全被新程序代替。由于并没有产生新进程所以进程标识号不改变,除此之外的旧进程的其他信息,代码段,数据段,栈段等均被新程序的信息所代替。新程序从自己的main()函数开始进行。反复运行此程序发现结束的先后次序是不可预知的,每次运行结果不一样。原因是当每个子进程运行其他程序时,他们的结束随着其他程序的结束而结束,所以结束的先后次序在改变。
5. 参考例程4编程,验证子进程继承父进程的程序、数据等资源。如用父、子进程修改公共变量和私有变量的处理结果;父、子进程的程序区和数据区的位置。
思考:子进程被创建后,对父进程的运行环境有影响吗?解释一下。
答:子进程被创建后,对父进程的运行环境无影响,因为当子进程在运行时,他有自己的代码段和数据段,这些都可以作修改,但是父进程的代码段和数据段是不会随着子进程数据段和代码段的改变而改变。
6. 参照《实验指导》第五部分中“管道操作的系统调用”。复习管道通信概念,参考例程5,编写一个程序。父进程创建两个子进程,父子进程之间利用管道进行通信。要求能显示父进程、子进程各自的信息,体现通信效果。
代码:
思考:①什么是管道?进程如何利用它进行通信的?解释一下实现方法。
②修改睡眠时机、睡眠长度,看看会有什么变化。请解释。
③加锁、解锁起什么作用?不用它行吗?
答:1.管道是指能够连接一个写进程和一个读进程,并允许他们以生产者-消费者方式进行通信的一个共享文件,又称pipe文件。由写进程从管道的入端将数据写入管道,而读进程则从管道出端读出数据来进行通信。
2.修改睡眠时机和睡眠长度都会引起进程被唤醒的时间不一,因为睡眠时机决定进程在何时睡眠,睡眠长度决定进程何时被唤醒。
3.加锁、解锁是为了
您可能关注的文档
- 莒县河东片区控规项目建议.doc
- 莱芜市-实验小学办学理念解读.doc
- 荷花苑施组设计定稿.doc
- 莱德太阳能市场-营销策略研究.doc
- 莱钢2烧结施组设计.doc
- 莲之梦三创策划.doc
- 莲花印象多层施组设计.doc
- 菩提慧宾养生馆运营策划李传麟.doc
- 菱北中心幼儿园冬季安全自查报告书.doc
- 菊园小区投标.doc
- 2025年全国演出经纪人员资格认定考试试卷带答案(研优卷).docx
- 2025年全国演出经纪人员资格认定考试试卷完整版.docx
- 2025年全国演出经纪人员资格认定考试试题库及完整答案.docx
- 2025年全国演出经纪人员资格认定考试试卷完美版.docx
- 2025年全国演出经纪人员资格认定考试试卷含答案(实用).docx
- 2025年全国演出经纪人员资格认定考试试卷及答案(各地真题).docx
- 2025年下半年内江市部分事业单位公开考试招聘工作人员(240人)备考题库附答案.docx
- 2025年全国演出经纪人员资格认定考试试卷及答案1套.docx
- 2025年下半年四川成都市郫都区面向社会引进公共类事业单位人员2人备考题库最新.docx
- 2025年下半年内江市部分事业单位公开考试招聘工作人员(240人)备考题库附答案.docx
原创力文档

文档评论(0)