- 1、本文档共5页,可阅读全部内容。
- 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系统为主 实验四 进程的管道通信 一、实验目的 (1)了解Linux系统中进程通信的基本原理。 (2)了解和掌握管道通信机制。 二、实验预备知识 管道是UNIX系统中最早为两个进程之间提供的一种通信机制。管道是一种单向的、先入先出的、无结构的、大小固定的通信通道。写进程在管道的一端写入数据,读进程从管道的另一端读出数据。如果两个或多个进程同时对一个进程进行读写,那么这些进程必须使用锁机制或者信号量机制对其进行同步。 管道分为无名管道和有名管道。无名管道没有名字,所以只能提供给进程家族中的父子进程间通信使用,而有名管道则用于没有家族关系的任意两个进程之间的通信。 实现无名管道的传统方法是利用文件系统机制,把管道看作是一个打开的文件, 因此它有一个i节点和两个文件表项。 (1)创建一个管道 管道是由使用pipe系统调用而创建的。#include unistd.h int pipe(int fd[2]); 返回:成功为0,出错为-1 经由参数fd[]返回两个文件描述符:fd[0]为读端, fd[1]为写端。 (2)读管道 在管道创建后,希望从管道中读取数据的进程使用读文件描述符fd[0]作为参数,调用read( )系统调用。 #include unistd.h ssize_t read(int fd,void *buf,size_t nbytes); 返回:读到的字节数,若已到文件尾为0,若出错为-1。 (3)写管道 向管道中写入数据的进程使用写文件描述符fd[1]作为参数,调用write( )系统调用。 #include unistd.h ssize_t write(int fd,const void *buf,size_t nbytes); 返回:若成功为已写的字节数,若出错为-1。 (4)锁定文件lockf( ) 用于锁定文件的某些段或者整个文件。 #include unistd.h int lockf(int fd,int function,long size); 其中,fd为文件描述符, function是1表示锁定、0表示解锁,size是锁定或解锁的字节数,若为0,表示从当前位置到文件尾。 三、实验内容 编写一段程序,实现进程的管道通信。 使用系统调用pipe( )建立一条管道,创建两个子进程P1和P2。 让P1和P2分别向管道各写一句话: Child 1 is sending a message! Child 2 is sending a message! 父进程则从管道中读出来自于两个子进程的信息,显示在屏幕上。 要求父进程先接受子进程P1发来的消息,然后再接受子进程P2发来的消息。 四. 试验总结 1. 写出试验报告。 2. 管道通信有什么特点?
您可能关注的文档
最近下载
- DB41T 2431-2023 重点区域地质灾害风险调查评价规范(1:10000).docx VIP
- 2012 INTERNATIONAL BUILDING CODE (2012年国际建筑规范).pdf VIP
- 金龙湖养老度假基地可行性报告.doc VIP
- 光伏发电工程施工规范.docx VIP
- 渗透检测工艺规程.pptx VIP
- 质量员考试(市政质量)基础知识试卷真题(2025年新版附解析).docx VIP
- 幼儿园课件:变焦PPT.ppt
- KEF音响无线HiFi扬声器LS50 Wireless II用户手册.pdf VIP
- 一种低气味、低刺激双固化胶粘剂及其制备方法.pdf VIP
- 设计机构设置和岗位职责.docx VIP
文档评论(0)