您的位置:首页 > 其它

10进程通信

2019-06-11 21:52 337 查看
版权声明:Copyright:@@个人所有 https://blog.csdn.net/y20_20/article/details/91472593

进程通信

目录

共享存储
管道通信
消息传递

内容:

1、原因:

  • 进程是分配系统资源的单位(包括内存空间地址),因此每个进程的内存空间地址相互独立
  • 为了安全起见,一个进程不能直接访问另一个进程的空间地址,但进程间通信又是必须的
  • 所以,操作系统提供了三种安全的通信方式

2、共享存储管道=:

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

3、管道通信:

  1. 用于连接读写进程的共享文件,其实就是在内存中开辟一个大小固定的缓冲区
  2. 采用半双工通信,如果想要双向通信,则需要设置两个管道,各进程要互斥的访问管道
  3. 写满时不能再写,读空时不能再读
  4. 没写满不能读,没读空不能写

4、消息传递

  1. 进程间的数据交换以格式化的信息为单位,进程操作系统的发送消息和接收消息原语发送和传递消息
  2. 格式化的信息包括:发送进程ID,接收进程ID,消息类型,消息长度等格式化信息(计算机网络中的包头)
  3. 直接通信方式:将消息直接挂到接收进程的消息缓冲队列上
  4. 间接通信方式:消息要先发送到中间实体(信箱)中

5、知识点总结:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: