欢迎来到课桌文档! | 帮助中心 课桌文档-建筑工程资料库
课桌文档
全部分类
  • 党建之窗>
  • 感悟体会>
  • 百家争鸣>
  • 教育整顿>
  • 文笔提升>
  • 热门分类>
  • 计划总结>
  • 致辞演讲>
  • 在线阅读>
  • ImageVerifierCode 换一换
    首页 课桌文档 > 资源分类 > DOCX文档下载  

    贵州大学计算机科学与技术学院实验报告Linux系统实验名称进程通信.docx

    • 资源ID:371768       资源大小:23.52KB        全文页数:4页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

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

    贵州大学计算机科学与技术学院实验报告Linux系统实验名称进程通信.docx

    贵州大学计算机科学与技术学院实验报告院(系)名称计算机科学与技术学院班级人工智能2001课程名称Linux系统实验名称进程通信日期2022年11月14日星期四指导教师王以松学号、姓名沈军豪成绩(10分制):批改日期:1.实验名称进程通信2.实验目的熟悉LimIX进程之间信号、管道、消息队列(信号量、共享内存)等通信的实现方法。编译、运行程序并分析结果rootiZ2ze3k5k6130t7ge5yaiaZ#visig-l.croot0iZ2ze3k5k613t7ge5yaiaZgccsig-l.c-osig-1rootiZ2ze3k5k6130t7ge5yaiaZ#./sig-1人CChiIdprocess2iskilledbyparent!childprocess1iskilledbyparent!parentprocessiskilled!rootiZ2ze3k5k6130t7ge5yaiaZ#如果把参考程序SignaI(SIGINT,stop)放在*(1)*/和/*/位置,结果会怎样并分析原因。root0iZ2ze3k5k613t7ge5yaiaZ#gccsig-l.c-osig-2root0iZ2ze3k5k6130t7ge5yaiaZ#./sig-2Cchildprocess2iskilledbyparent!parentprocessiskilled!root0iZ2ze3k5k6130t7ge5yaiaZ该程序段前面部分用了两个Wait(O),为什么?因为有两个子进程(4)该程序段中每个进程退出时都用了语句exit(0),为什么?为了使子进程正常退出,并不影响父进程的执行root0iZ2ze3k5k6130t7ge5yaiaZ#./createfifoUsage:./createfifo<filename>root(3iZ2ze3k5k613t7ge5yaiaZ#./createfifotmpf1root(3iZ2ze3k5k613t7ge5yaiaZ#ll/tmp-bash:ll/tmp:Nosuchfileordirectoryroot(3iZ2ze3k5k6130t7ge5yaiaZ#Iltmptotal8-rw1rootroot0Nov1513:22AliyUnASSiStClientSingIprw-r-r1rootroot0Nov2006:55fldrwx3rootroot4096Nov1513:27systemd-private-14c3dbl543e3f88a-chronyd.service-ER9Kfhdrwx2rootroot4096Nov1513:35tmp.NocWjxt2r2root(3iZ2ze3k5k613t7ge5yaiaZ#root(0iZ2ze3k5k6130t7ge5yaiaZ#./read_fifotmpf1openfifo./read_fifoforreadingsuccessed.read19bytesfromfifo:hello,goodmorningread15bytesfromfifo:hoedoyoudo?rootiZ2ze3k5k6130t7ge5yaiaZ#.writefifotmpf1hello,goodmorningopenfifo./write_fifoforwrittingsuccessed.hoedoyoudo?#在读管道端按下ctrl+C,写端仍然处于打开状态,写端继续输入任何字符,则会收到SIGPIPE信号,表示管道已断开:root0iZ2ze3k5k613Ot7ge5yaiaZ#./write_fifotmpf1openfifo./write_fifoforwrittingsuccessed.hjxhfdcjCaughtsignal13write()failedonfifo:Brokenpiperoot0iZ2ze3k5k613t7ge5yaiaZ#root0iZ2ze3k5k613t7ge5yaiaZ#echohello>tmpf2rootiZ2ze3k5k613t7ge5yaiaZ#root(piZ2ze3k5k613t7ge5yaiaZ#cattmpf2hellorootiZ2ze3k5k6130t7ge5yai.aZ#cattmpf2#将写端程序的signal(SIGPIPE,signal_handler)替换为SignaI(SIGPIPE,SIGJGN),并将FlXME后的break语句注释,重新编译运行,在读管道端关闭后,写管道端继续写,重新打开读管道端,发现会丢失在管道断开期间写管道端写入的内容。root0iZ2ze3k5k6130t7ge5yaiaZ#./write_fifotmpf2helloopenfifo.writefifoforwrittingsuccessed.rootiZ2ze3k5k6130t7ge5yaiaZ#./read_fifotmpf2openfifo./read_fifoforreadingsuccessed.read6bytesfromfifo:helloCroot(3iZ2ze3k5k6130t7ge5yaiaZ#./read_fifotmpf2openfifo./read_fifoforreadingsuccessed.基于共享内存的进程通信root0Z2ze3k5k613Ot7ge5yaiaZ#./shmwritepleaseinput:hellopleaseinput:howareyouCroot(3iZ2ze3k5k613t7ge5yaiaZ#./shmreadmessagefromshm:howareyourootiZ2ze3k5k613t7ge5yaiaZ#ipcs-mnattchSharedMemorySegmentskeyshmidownerpermsbytesOx61lO001root6661028rcc+Ai7l7qrRLA1RG7cRa$a7liIttttt开多个终端,同时运行上面的Shmead和Shmwrite,根据输出结果分析原因只有一个write和read有可以正常运行因为只要有一个进程申请写共享空间,其他写进程就会进入等待状态,只有第一个写进程结束,后面的一个写进程才能运行

    注意事项

    本文(贵州大学计算机科学与技术学院实验报告Linux系统实验名称进程通信.docx)为本站会员(夺命阿水)主动上传,课桌文档仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知课桌文档(点击联系客服),我们立即给予删除!

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




    备案号:宁ICP备20000045号-1

    经营许可证:宁B2-20210002

    宁公网安备 64010402000986号

    课桌文档
    收起
    展开