- 1、本文档共11页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验二linux进程的创建.ppt
* * 实验二 linux进程的创建 一、实验目的 1、了解进程与程序的区别,加深对进程概念的理解。 2、掌握进程并发执行的原理,理解进程并发执行的特点,区分进程并发执行与串行执行。 3、了解fork()系统调用的返回值,掌握用fork()创建进程的方法。 4、熟悉wait,exit等系统调用。 二、实验内容 1、编写一C语言程序,实现在程序运行时通过系统调用fork()创建两个子进程,使父、子三进程并发执行,父亲进程执行时屏幕显示“parent”,儿子进程执行时显示”son”,女儿进程执行时显示”daughter“。 2、多次连续反复运行这个程序,观察屏幕显示结果的顺序,直至出现不一样的情况为止。记下这种情况,试简单分析其原因。 3、修改程序,在父、子进程中分别使用wait,exit等系统调实现其同步推进,多次反复运行改进后的程序,观察并记录运行结果。 三、实验指导 1、fork()系统调用 创建一个新进程。 系统调用格式:pid=fork() 参数定义: int fork() fork()返回值意义如下: 0:在子进程中,pid变量保存的fork()返回值为0,表示当前进程是子进程。 0:在父进程中,pid变量保存的fork()返回值为子进程的pid值。 -1:创建失败。 关于建立进程的典型代码段 if (pid=fork())!=0 { /*父进程运行,例如wait(pid);*/ …. } else { /*子进程运行,例如exec(“ap1”,…);*/ ….} 2、wait()系统调用 等待子进程运行结束。如果子进程没有完成,父进程一直等待。Wait()将调用进程挂起,直到其子进程因暂停或终止而发来软中断信号为止。 系统调用格式:int wait(status) 参数定义: int *status; 其中,status是用户空间的地址,为0表示子进程正常结束,非0表示出现了各种各样的问题。 3、exit()系统调用 终止进程的执行。 系统调用格式:void exit(status) 参数定义: int status; 其中,Status是返回给父进程的一个整数。 exit(0)表示进程正常终止,exit(1)表示进程运行有错,异常终止。 4.exec系统调用: 输入参数:新程序名,... 功能:以指定程序覆盖当前进程的程序代码 典型地,子进程在FORK后用EXEC使新程序覆盖进程空间 fork内部实现过程中父子进程内存空间内容和 proc 等数据结构内容 5、参考程序 #include stdio.h main() { int p1,p2,i; While ((p1=fork())==-1); /*创建子进程p1*/ if (p1==0) for(i=0;i4;i++) printf(“daughter %d\n”,i); else {while(p2=fork()==-1); /*创建子进程p2*/ if(p2==0) for (i=0;i4;i++) printf(“son %d \n”,i); else for(i=0;i4;i++) printf(“parent %d\n”,i);}} *
您可能关注的文档
- 如何打造坚实的基层团队试题答案.doc
- 如何扩大英语词汇量.doc
- 如何扩大词汇量及词汇考点.ppt
- 如何扩展自己的社会关系.doc
- 如何拟作文题目(小学六年级作文).ppt
- 如何控制中间调的网点扩大.pdf
- 如何提升孩子学习能力之创新能力(王海峰)中华讲师网.ppt
- 如何提升综合实践活动有效性的探讨.doc
- 如何提高中职生的创新能力.doc
- 如何提高后进生的英语水平.pdf
- 2026届高考数学总复习(第1轮)基础版第50讲 直线的方程.pptx
- 《关于组织开展能源领域氢能试点工作的通知》解读及对策.docx
- 二年级数学奇妙的动物世界跨学科项目化学习设计.docx
- 高一美术传承与创新中国近现代美术思政融合课教学设计.docx
- 2025年湖北省省直辖行政单位选调生考试(行政职业能力测验)综合能力测试题带答案.docx
- 2025年温州医科大学仁济学院单招语文测试模拟题库附答案.docx
- 2025年清远职业技术学院单招(语文)测试模拟题库附答案.docx
- 2025年湖北省咸宁市事业单位招聘考试(职业能力倾向测验)题库及答案1套.docx
- 2025年温州大学单招语文测试题库有答案.docx
- 2025年湖北省荆州市单招语文测试模拟题库a4版.docx
文档评论(0)