![实验十八--linux进程间通信.ppt_第1页](http://file2.renrendoc.com/fileroot3/2018-12/28/642cea9d-7965-4f4a-bd15-c51db22a36e7/642cea9d-7965-4f4a-bd15-c51db22a36e71.gif)
![实验十八--linux进程间通信.ppt_第2页](http://file2.renrendoc.com/fileroot3/2018-12/28/642cea9d-7965-4f4a-bd15-c51db22a36e7/642cea9d-7965-4f4a-bd15-c51db22a36e72.gif)
![实验十八--linux进程间通信.ppt_第3页](http://file2.renrendoc.com/fileroot3/2018-12/28/642cea9d-7965-4f4a-bd15-c51db22a36e7/642cea9d-7965-4f4a-bd15-c51db22a36e73.gif)
![实验十八--linux进程间通信.ppt_第4页](http://file2.renrendoc.com/fileroot3/2018-12/28/642cea9d-7965-4f4a-bd15-c51db22a36e7/642cea9d-7965-4f4a-bd15-c51db22a36e74.gif)
![实验十八--linux进程间通信.ppt_第5页](http://file2.renrendoc.com/fileroot3/2018-12/28/642cea9d-7965-4f4a-bd15-c51db22a36e7/642cea9d-7965-4f4a-bd15-c51db22a36e75.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Linux进程间通信(IPC),实验十九,共享内存(Shared memory) 消息队列(Messge Queue),主要内容,共享内存,共享内存是一种最为高效的进程间通信方式。因为进程可以直接读写内存,不需要任何数据的拷贝。 为了在多个进程间交换信息,内核专门留出了一块内存区。这段内存区可以由需要访问的进程将其映射到自己的私有地址空间,从而大大提高了效率。 由于多个进程共享一段内存,因此也需要依靠某种同步机制,如互斥锁和信号量等 。,共享内存,共享内存的实现分为两个步骤: 第一步是创建共享内存,shmget(),从内存中获得一段共享内存区域。 第二步是映射共享内存,shmat(),把这段创
2、建的共享内存映射到具体的进程空间中。 到这里可使用共享内存了,也就是可以使用不带缓冲的I/O读写命令对其进行操作。 除此之外,当然还有断开映射的操作,shmdt()。,共享内存,共享内存,共享内存,消息队列,消息队列就是一些消息的列表。用户可以从消息队列中添加消息和读取消息等。从这点上看,消息队列具有一定的FIFO特性,但是它可以实现消息的随机查询,比FIFO具有更大的优势。同时,这些消息又是存在于内核中的,由“队列ID”来标识。 消息的结构。受到两方面约束,长度必须小于系统规定上限,其次,它必须以一个长整型变量开始,接受函数将用这个成员变量来确定消息类型 struct my_message
3、long message_type; /*data*/ ,消息队列,消息队列的实现包括四种操作: 创建或打开消息队列: msgget(),数量会受到系统消息队列数量的限制。 添加消息: msgsnd(),把消息添加到已打开的消息队列末尾; 读取消息: msgrcv(),把消息从消息队列中取走,与FIFO不同的是,这里可以指定取走某一条消息; 控制消息队列: msgctl(),可以完成多项功能。,消息队列,消息队列,消息队列,消息队列,消息队列,编写一对程序shm1.c和shm2.c,第一个程序创建一个共享内存段,并把写到里面的数据都读出来,直到读到“end”。第二个程序连接已有的共享内存段,并负责向里输入数据,直到输入“end”(需要自己提供同步机制)。 编写一对程序msg1.c和msg2.c,前者负责接收消息,后者负责发送消息,允许两
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小学歇后语课件范文
- 宁夏肿瘤随访登记项目实施方案
- 2025年弹射救生系统合作协议书
- 员工表彰年会模板
- 植树节绿色营销策略模板
- DeepSeek文案写作培训
- 对汉语言文学的应用性教学的分析
- 贫困生申请书初中
- 银行预留印鉴变更申请书
- 大学生食用菌创业项目
- 如果历史是一群喵
- 抖音房产直播敏感词汇表
- 2024届山东省青岛市市北区八年级物理第二学期期末质量检测试题含解析
- 广东省深圳市2023年中考英语试题(含答案与解析)
- 《看看我们的地球》
- 2022-2023年人教版九年级化学(上册)期末试题及答案(完整)
- 中华民族共同体概论课件专家版2第二讲 树立正确的中华民族历史观
- 蔚来用户运营分析报告-数字化
- 中学生低碳生活调查报告
- 东软入职合同
- 护理责任组长竞聘
评论
0/150
提交评论