版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
操作系统试验汇报试验3-1:Linux進程的创立与父子進程同步试验目的(1)熟悉在C語言源程序中使用Linux所提供的系统调用界面的措施;(2)掌握Linux中進程的创立措施以及调度执行状况,理解進程与程序的区别;(3)使用系统调用wait()和exit(),实現父子進程同步;(4)理解Linux提供的C编译器gcc的调用;(5)深入掌握vi的使用。试验内容(1)父進程创立子進程,返回後父子進程都分别循环输出字符串“Iamparent.”或“Iamchild.”5次,每输出一次後使用sleep(1)延時1秒,然後再進入下一次循环,如下所示。将该源程序链接後执行,观测并分析运行成果。父進程返回後执行:for(i=0;i<5;i++){printf(“Iamparent.\n”);sleep(1);}子進程返回後执行:for(i=0;i<5;i++){printf(“Iamchild.\n”);sleep(1);}(2)進程家族树在源程序中持续使用4個fork(),而不是用if()進行返回值的判段,在4個fork()語言背面输出字符“A”。观测并分析该程序编译连接执行後的输出成果。(3)父子同步進程修改第(1)題的程序,使用exit()和wait()实現父子進程同步,其同步方式為父進程等待子進程的同步,即:子進程先循环输出5次,然後父進程再循环输出5次.观测与否有不一样的成果出現。试验思索观测运行成果,分析成果产生的原因。答:當一种新的進程创立後,系统就會增長一种進程参与竞争CPU,并随時也許被操作系统调度执行當程序中创立了子進程後,该程序的执行有什么特點?為何?答:条件分支的构造清晰,实現父子進程的程序分离及父子進程双方感覺不到對方的行為;由于子進程创立後复制了父進程的堆栈和数据空间,并继承了父進程的资源权限,及父進程和子進程在各自的空间中运行同一内容的程序,因此程序會运行两次。假如持续创立多种子進程而不使用条件進行各自空间的分隔,會出現什么状况?請画出第(2)題试验的進程家族树。Fork()Fork()Fork()Fork()Fork()Fork()Fork()Fork()Fork()Fork()Fork()Fork()Fork()Fork()Fork()如上图所示一共出現了16個A怎样实現父子進程之间的父進程等待子進程的同步?答:使用信号量P、V操作来实現子進程与父進程的同步,子進程终止時执行exit()向父進程发终止信号,父進程使用wait()等待子進程的终止。试验代码=1\*GB3①3-1-1:main(){intp1,i;while((p1=fork())==-1);if(p1>0) for(i=0;i<5;i++) { printf("Iamparent.\n"); sleep(1); }else for(i=0;i<5;i++) { printf("Iamchild.\n"); sleep(1); }}=2\*GB3②3-1-2:#include<stdio.h>main(){fork(); fork(); fork(); fork();putchar('A'); //每個進程都要输出‘A’}=3\*GB3③3-1-3:main(){intp1,i;while((p1=fork())==-1);if(p1>0) { wait(0); for(i=0;i<5;i++) { printf("Iamparent.\n"); sleep(1); } }else { for(i=0;i<5;i++) { printf("Iamchild.\n"); sleep(1); } exit(0); }}程序运行成果=1\*GB3①3-1-1:=2\*GB3②3-1-2:=3\*GB3③3-1-3:试验心得通過這次试验
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年多重耐药菌医院感染预防与控制培训试题及答案
- 2026年管理学基础考试题库及解析答案
- 2026年专升本针灸推拿巩固升学题及答案
- 2026年审计题库及答案
- 2026年(公司级)员工三级安全教育考试试题附答案
- 2026年《运动训练学》期末考试复习题库(含答案)
- 2026中国物流配送行业运营效率优化与发展前景展望与投资路径规划分析
- 2025年防雷安全知识试题及答案
- 2026年金融事务所面试题及答案
- 2026年仪器仪表维修工练习题库含答案
- 水利行业从业人员安全培训手册
- GB 4053.3-2025固定式金属梯及平台安全要求第3部分:工业防护栏杆及平台
- 2025年山东职教英语试卷及答案
- 钢结构加固设计标准
- 【施工】建设工程施工现场安全管理研究论文开题报告和任务书
- 2025中远海运战略性新兴产业人才社会招聘265人笔试历年常考点试题专练附带答案详解2套试卷
- 胃癌合并肝转移综合治疗方案
- 南昌水业集团南昌工贸有限公司2026年招聘考前自测高频考点模拟试题浓缩300题必考题
- 退休支部工作计划2025完整版
- GB/T 46197.2-2025塑料聚醚醚酮(PEEK)模塑和挤出材料第2部分:试样制备和性能测定
- 啤酒质量知识培训课件
评论
0/150
提交评论