10进程通信

进程通信

目录

一、共享存储
二、管道通信
三、消息传递

内容:

1、原因:

  • 进程是分配系统资源的单位(包括内存空间地址),因此每个进程的内存空间地址相互独立
  • 为了安全起见,一个进程不能直接访问另一个进程的空间地址,但进程间通信又是必须的
  • 所以,操作系统提供了三种安全的通信方式
    访问内存空间如图所示:
    在这里插入图片描述
    2、共享存储:

(1)、基于数据结构的共享: 比如只能存放固定长度的数组,限制多,速度慢,因此是一种低级通信方式
(2)、基于共享存储区的共享: 在内存中划分出一块共享存储区,数据的形式、存储的位置都有进程控制,而不是操作系统,相比之下速度更快更方便,所以是一种高级通信方式
(3)注意: 两个进程对共享空间的访问必须是互斥的,互斥访问操作由操作系统的P、V操作控制
在这里插入图片描述
3、管道通信:

  1. 用于连接读写进程的共享文件,其实就是在内存中开辟一个大小固定的缓冲区
  2. 采用半双工通信,如果想要双向通信,则需要设置两个管道,各进程要互斥的访问管道
  3. 写满时不能再写,读空时不能再读
  4. 没写满不能读,没读空不能写
    在这里插入图片描述
    *4、消息传递
  5. 进程间的数据交换以格式化的信息为单位,进程操作系统的发送消息和接收消息原语发送和传递消息
  6. 格式化的信息包括:发送进程ID,接收进程ID,消息类型,消息长度等格式化信息(计算机网络中的包头)
  7. 直接通信方式:将消息直接挂到接收进程的消息缓冲队列上
  8. 间接通信方式:消息要先发送到中间实体(信箱)中
  9. 在这里插入图片描述

5、知识点总结:
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值