




全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
课程实验报告课程名称计算机操作系统班级实验日期姓名学号实验成绩实验名称实验3 进程并发与同步实验目的及要求1、 加深对进程概念的理解,区分进程并发执行与串行执行;2、 掌握进程并发执行的原理,理解进程并发执行的特点;3、了解fork( )系统调用的返回值,掌握用fork()创建进程的方法;熟悉wait、exit等系统调用;4、能利用相应的系统调用实现进程树与进程间的同步。实验环境操作系统:linux Unbuntu 11.10实验工具:Vmware实验内容1、编写一C语言程序,实现在程序运行时通过系统调用fork( )创建两个子进程,使父、子三进程并发执行,父亲进程执行时屏幕显示“I am father”,儿子进程执行时屏幕显示“I am son”,女儿进程执行时屏幕显示“I am daughter”。要求多次连续反复运行这个程序,观察屏幕显示结果的顺序,直至出现不一样的情况为止。要求有运行结果截图与结果分析2、连续4个fork()的进程家族树,family1-1.c程序清单如下:#include main() fork(); fork(); fork(); fork(); printf(“An”);请根据程序运行结果,画出进程家族树,并分析原因。3、修改程序1,在父、子进程中分别使用wait、exit等系统调用“实现”其同步推进,父进程必须等待儿子进程与女儿进程结束,才可以输出消息。写出相应的同步控制,并分析运行结果。4、创建一个子进程,并给它加载程序,其功能是调用键盘命令“ls -l”,已知该键盘命令的路径与文件名为:/bin/ls。父进程创建子进程,并加载./child2程序。写出相应的程序代码并分析程序运行结果。算法描述及实验步骤1、 编写一C语言程序,实现在程序运行时通过系统调用fork( )创建两个子进程,使父、子三进程并发执行,父亲进程执行时屏幕显示“I am father”,儿子进程执行时屏幕显示“I am son”,女儿进程执行时屏幕显示“I am daughter”。并且反复的测试,观察每一次的执行的顺序有什么不同2、 修改程序1,在父、子进程中分别使用wait、exit等系统调用“实现”其同步推进,父进程必须等待儿子进程与女儿进程结束,才可以输出消息。4、创建一个子进程,并给它加载程序,其功能是调用键盘命令“ls -l”,已知该键盘命令的路径与文件名为:/bin/ls。父进程创建子进程,并加载./child2程序。调试过程及实验结果总结1、实现在程序运行时通过系统调用fork( )创建两个子进程,使父、子三进程并发执行,父亲进程执行时屏幕显示“I am father”,儿子进程执行时屏幕显示“I am son”,女儿进程执行时屏幕显示“I am daughter”。这一点需要注意。返回结果时,由于每一次的不确定性,所以 要想得到比较具有说服性的,就必须经过多次的测试。2、连续4个fork()的进程家族树在进行实验的时候可能会出现进程输出信息一直一样的情况,需要多次执行输出才有可能会看到输出结果不一样的情况附录Child.C#include #includeint main() printf(I am child!n);execl(/bin/ls, ls, -l, NULL);return 0;创建进程#include int main() fork(); fork(); fork(); fork(); printf(An);return 0;Father.c#include #include #include #include main() int p; while (p=fork()=-1); if (p=0) execl(./child,0); else wait(0); exit(0); 进程并发#include int main() int p1,p2; while (p1=fork()=-1); if (p1=0) printf(I am son.n); else while (p2=fork()=-1); if (p2=0) printf(I am daughter.n); else printf(I am father.n); return 0;进程同步#include #include int main() int p1,p2; while (p1=fork()=-1); if (p1=0) printf(I am son.n); else while (p2=for
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 酿造美酒的基础知识培训课件
- 诗词文言文对比阅读(解析版)-2026年中考语文复习试题(广东专用)
- 人教版八年级英语下册重点短语及专练(含答案)
- CN120193440A 一种改善纸张表面平滑度的湿端造纸工艺
- 人教版部编版语文九年级下册 第五单元测试及答案02
- 老人护理知识培训课件
- 2025宾馆客房租赁与设施租赁服务合同范本
- 2025版排水沟疏通与环保处理施工合同样本
- 2025年度外墙防水涂料施工与建筑防水质量监管合同
- 2025年城市综合体拆迁补偿及安置合同
- 建筑行业信息化管理与施工监控系统方案
- 法律检索教学课程设计
- 12D401-3 爆炸危险环境电气线路和电气设备安装
- DL∕ T 799.1-2010 电力行业劳动环境监测技术规范 第1部分:总则
- 2024年高考作文备考之议论文写作素材:人物篇(墨子)
- 3种不锈钢多辊冷轧机的使用比较
- (正式版)JBT 11270-2024 立体仓库组合式钢结构货架技术规范
- 2024年度患者转运途中发生意外的应急预案及处理流程
- 数学知识讲座
- 赣县清溪中心学校早期民办、代课教师稳控应急预案
- 利润分成合同
评论
0/150
提交评论