标签:队列 通信 间通信 lec7 进程 消息传递 共享内存 os
7.1进程间通信背景和基础
- 将一个应用实现为一个进程,非常冗余比如本来,两个进程本来可以共享数据库实现其次是比较低效,由于本来实现一个邮件应用本来应该只关注邮件任务逻辑,但是将完整的应用设计为一个应用,其数据库也需要自己设计最后是即使将一个应用设计为一个进程,仍然需要进程间通信,需要进程间共享
- 进程间的协作但是需要进程间的依赖与互相影响
- 进程间通信
7.2 共享内存
- 共享内存需要处理好同步
- 共享内存基本实现
- 共享内存的问题轮询浪费时间,固定时间检查又时延长
7.3 消息传递
- 消息立马转发
- 消息传递的两个原语
- 双向通信
- 间接通信
- 间接通信到信箱中
- 信箱共享的挑战
7.4 消息传递的问题与解决方法
- 消息传递的阻塞与非阻塞异步中的超时机制
- 同步通信与超时机制
- 快递桌充当缓冲的作用
7.5 Unix管道
- 两个进程之间的一根通信管道
- 定义管道
- xv6的管道
- pipewrite
- piperead
- sleep/wakeup通信机制
- 管道的优缺点
7.6 Unix消息队列
- 带类型的消息传递
- 消息队列先进先出,按照类型取值
- 消息队列可以有多个发送者,接收者消息队列是FIFO与基于类型查询
7.7 轻量级远程方法调用LRPC
- unix之间的通信机制通常很重
- 之前的RPC非常复杂
- 数据传输慢?RPC中可以共享参数栈和寄存器
7.8 ChCore进程间通信
标签:队列,通信,间通信,lec7,进程,消息传递,共享内存,os 来源: https://www.cnblogs.com/mlmz/p/16410380.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。