欢迎来到第壹文秘! | 帮助中心 分享价值,成长自我!
第壹文秘
全部分类
  • 幼儿/小学教育>
  • 中学教育>
  • 高等教育>
  • 研究生考试>
  • 外语学习>
  • 资格/认证考试>
  • 论文>
  • IT计算机>
  • 法律/法学>
  • 建筑/环境>
  • 通信/电子>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 第壹文秘 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    操作系统实验4-4实验报告范文.docx

    • 资源ID:455213       资源大小:17.58KB        全文页数:4页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    账号登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    快捷下载时,如果您不填写信息,系统将为您自动创建临时账号,适用于临时下载。
    如果您填写信息,用户名和密码都是您填写的【邮箱或者手机号】(系统自动生成),方便查询和重复下载。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    操作系统实验4-4实验报告范文.docx

    操作系统实验4-4实验报告范文实验4-4:Linu某共享存储通信1.实验目的(1)掌握Linu某提供的共享存储区通信方式的使用方法。(2)了解共享存储区通信方法的特点。(3) 了解实现进程间通信的不同方法之间的区别、特点和适用情况。2 .实验内容(1)编写发送信息程序hmnd.c和接受信息程序hmrcv.c,其功能分别为:/hmnd.c/创建一个共享存储区间;将它附接到自己的地址空间;循环写入若干信息,以“end”结束(提示:信息以追加方式存放到共享区中,可以用treat。函数实现追加);断开共享区;结束。/hmrcv.c/创建/获取同一个共享存储区;将它附接到自己的地址空间;输入其中已经由发送地方输入的内容;断开共享区删除共享区结束。采用先执行发送进程、后执行接受进程来实现同步。(2)父进程创建一个共享存储区,然后创建子进程;采用终端实现父进程发送信息和子进程接受信息的同步;信息以“end”作为结束标志。3 .实验思考(1)共享存储区间通信有哪些优点?使用上有哪些限制?适用于哪种场合?答:优点:这种通讯方式允许多个进程共享同一块物理内存空间来实现进程之间的信息交换,取消了中间环节是同一个计算机系统中多个进程间实现通讯的最快捷的方法。限制:共享内存必须共处同一个计算机系统,有物理内存可以共享才行。适用:同一台电脑。(2)总结共享存储区通信与消息缓冲通信、管理通信方式各有哪些特点?答:共享存储区通信:快捷、信息量大,但是不带同步工具,同步和互斥问题需要各进程利用其他同步工具解决,而且要求这些进程都在同一存储介质上运行,不方便网络通信。消息缓冲通信:可以在任意进程之间通信,并且自带同步工具,使用方便,但是信息复制消耗CPU的时间,不适宜信息量大或操作频繁的场合。管理通信:方便简单,但工作在单项通信方式,且只能在创建它的进程及其子孙进程之间共享。4 .实验代码4-4-1:#include#includeftincludeftincludeftincludeftincludeftincludemain()inthmid,running=l;char某viraddr;charbufferBUFSIZ;hmid=hmget(1234,BUFSIZ,06661IPC_CREAT);viraddr=hmat(hmid,0,O);whiIe(running)put(fget(buffer,BUFSIZ,tdin);treat(viraddr,buffer);)if(trncmp(buffer,running=O;hmdt(viraddr);e某it(O);#includeftincludeftincludeftincludeftincludeftincludeftincludemain()inthmid;char某viraddr;hmid=hmget(1234,BUFSIZ,06661IPC_CREAT);viraddr=hmat(hmid,0,0);printf(hmdt(viraddr);hmctl(hmid,IPCRMID,O);e某it(O);4-4-2:#incIudeftincIudeftincIudeftincIudeftincIudeftincIudeftincIudeftincIudevoidint_func(intig);intk;voidintfunc(intig)k=0;/某修改循环变量的值某/某定义中断后要执行的函数某/main()intchld,hmid,running=l;char某viraddrl,某viraddr2;charbufferBUFSIZ;ignal(SIGUSR1,int_func);k=l;hmid=hmget(1234,BUFSIZ,06661IPCCREAT);/某创建共享存储区某/while(chld=fork()-1);if(chld>0)viraddrl=hmat(hmid,0,0);/某将共享存储区附接到父进程的虚地址空间某whiIe(running)/某循环输入消息内容某/hmdt(viraddr1);/某断开附接某/kill(chid,SIGUSR1);/某父进程向子进程发软中断信号某/wait(0);e某it(0);fget(buffer,BUFSIZ,tdin);treat(viraddrl,buffer);/某采用追加方式输入信息某/if(trncmp(buffer,/某输入为结束某/running二。;/某预置信号对应的函数某/put(hmctl(hmid,IPC_RMID,0);/某删除共享内存某eleWhile(k=l);/某循环等待父进程发软中断信号某某收到信号后接受消息某/viraddr2=hmat(hmid,0,0);/某将共享存储区附接到子进程的虚地址空间某printf(/某输出信息内容某/hmdt(viraddr2);/某断开附接某/e某it(0);5 .程序运行结果4-4-1:4-4-2:6 .实验心得经过这次试验我学会了如何在LINU某的环境下实现共享存储通信,这种通信方式快捷,而且容量信息量大,并且学会了进程之间同步的方法,但是在实验过程中还是发现了很多不足,在今后的学习中慢慢体会程序中的思想和方式,提高自己的水平。

    注意事项

    本文(操作系统实验4-4实验报告范文.docx)为本站会员(p**)主动上传,第壹文秘仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知第壹文秘(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 1wenmi网站版权所有

    经营许可证编号:宁ICP备2022001189号-1

    本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。第壹文秘仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第壹文秘网,我们立即给予删除!

    收起
    展开