版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实验项目二进程管理实验项目二进程管理一、 实验目的1. 理解进程的概念,掌握父、子进程创建的方法。2. 认识和了解并发执行的实质,掌握进程的并发及同步操作。二、 实验内容1. 编写一语言程序,实现在程序运行时通过系统调用frk( )创建两个子进程,使父、子三进程并发执行,父亲进程执行时屏幕显示“ m father,儿子进程执行时屏幕显示“Iamson”,女儿进程执行时屏幕显示“ m dauhtr。2. 多次连续反复运行这个程序,观察屏幕显示结果的顺序,直至出现不一样的情况为止。记下这种情况,试简单分析其原因.3. 修改程序,在父、子进程中分别使用wat()、eit()等系统调用“实现”其同步推
2、进,并获取子进程的ID号及结束状态值。多次反复运行改进后的程序,观察并记录运行结果。三、 源程序及运行结果源程序1:iclude dio。h#ncly/typehincd intma() pi_pid; char a; num;pntf(”strtng:n”); id fk(); (pid =1) prif(faie); exit(1); ele f (pid = 0) a am on; lse a = Iam fher; pd = fork(); i (pi -1) prit(faid); xit(1); ese if (pd=0) a= I m daugter; or(um3;num0;m
3、) puts(a); slep(1); ei(0);运行结果:源程序2:#incudes/tpes.hiclud uistd。hincud sti.hiclue tdlib.hinclude sy/wi。hnman() pi_t d; char messae; it n; ntexit_cod; prntf(forkstarting.。.n”);pd = fork(); f (pid = 1) printf(”orfaild!); xit(1); else i (pd=) mesae =”I am son; = 3; eit_code 99; else essae = I fahr”; =3;
4、 xitcode ; id =fork(); if (pid = -1) printf(”forkfaed!); ext(1); elsei (i= ) mesage = I a agter”; n = 3; ex_code = 10; or (;n;n-) ts(messag); slep(1); f(d !=0) int tue; pd_d_pi; child_pid = wait(statue); printf(This i the childrenprocess: id dn,cild_pi); if(WIFXTE(tatue) pin(”child exitdwith codedn,
5、WETSATUS(statue); else rintf(chil terinated anormaly!); exit(exit_coe);运行结果:四、 实验分析与总结1. 实验内容运行结果为什么无固定顺序,fk()函数创建进程是如何并发执行的。2. 实验内容3是如何实现父子进程的同步执行的。答:1.因为利用for()函数创建的三个进程抢占pu不同,从而导致三个进程被cu调用执行的顺序不同,从而输出的结果无固定顺序;rk()函数调用成功后,子进程与父进程并发执行相同的代码,但由于子进程也继承了父进程的程序指针,所以子进程是从f()后的语句开始执行,另外fork在子进程和父进程中的返回值是不
6、同的,在父进程中返回子进程的PID,而在子进程中返回0,使父进程和子进程执行不同的分支,从而实现了进程的并发执行。2. 该程序段主要使用了函数ai()和exit(),这是因为父进程必须等待两个子进程终止后才终.在父进程中调用wait()函数,则父进程被阻塞,进入等待队列,等待子进程结束。子进程终止时执行exit()向父进程发终止信号,当接到信号后,父进程提取子进程的结束状态值,从wa()返回继续执行原程序,从而实现了父、子进程的同步推进.总结:通过这次实验,我加深对进程概念的理解,进程是程序在一个数据集合上运行的过程,是系统进行资源分配和调度的一个独立单位,进程有如下特征:(1)结构特征:可并发执行(2)动态性:是进程实体的一次执行过程(3)并发性:
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 江苏省东台市第四联盟市级名校2025-2026学年初三英语试题期末练习试卷含解析
- 重庆市七中学2025-2026学年初三下期第二次模拟考试英语试题文试题含解析
- (正式版)DB37∕T 3039-2017 《化妆品中溴硝丙二醇的测定 高效液相色谱法》
- 压疮护理中的护理实践与经验
- 2026年旅游管理专业导游证考取与带团技巧
- 2026年基站建设项目施工计划书
- 2026年移动储能车研发生产项目方案
- 八上我的精神家园课件
- 核医学科甲状腺碘131治疗流程
- 赓续红色血脉勇做时代新人-青年学习“七一”讲话精神解读
- 伐木承揽合同标准文本
- 2025新人教版七年级下册英语 Unit 8知识点梳理及语法讲义(答案版)
- 食品厂复工复产方案
- 2024年数智工程师职业鉴定考试复习题库(含答案)
- 哮喘免疫治疗
- 生态修复绿化项目施工技术标书
- 写字楼装修合同协议
- 人教A版2019必修第一册专题3.2函数的基本性质【十大题型】(原卷版+解析)
- 中医培训课件:《放血疗法》
- 人工智能伦理导论- 课件 3-人工智能伦理
- 《制药卫生》课件
评论
0/150
提交评论