操作系统之进程篇3

1.进程管道通信就是一个进程发出某种数据,另一个进程接受数据信息,这些数据信息通过一片共享的存储空间进行传递,可以是内存,也可以是磁盘。从根本上说,管道是一个线性字节数组,类似文件,可以用文件读写的方式进行访问,但却不是文件,因为通过文件系统是看不到管道的存在的,同时管道是可以设在内存里的,文件极少设在内存里。

2.通常管道的一个重要特点是使用管道的俩个进程必须存在某种关系,如父子进程。如果要在不相关的进程之间使用管道通信,则需要使用记名管道。记名管道和文件系统共享一个名字空间,也就是说我们现在可以从文件系统看见记名管道,记名管道的名字不能与文件系统里的任何文件名重名。

3. 




4.套接字可以分为本地套接字和网域套接字,而网域套接字又按照其提供的数据传输特性分为以下几个大类: 


5.管道和套接字通信的缺点?

  1)这种通信方式必须事先在通讯的进程之间建立连接,这需要消耗系统资源。

  2)通信的自愿性,即一方虽然可以向管道和套接字发送信息,对方却可以选择是否接受或者接受一部分。

  3)当通信的数据量很少时,而建立这种通信连接却耗时时,这种通信是低效率的。

6.我们传输的信息量少时,用管道和套接字是不划算的,所以我们不想事先建立任何连接,而是临时需要通信时,而这种通信对方又必须做出回应,不能选择接收或不接收时,我们想出了信号。

7. 信号是什么?


8. 信号量是什么?

  信号量实际上就是一个简单整数,一个进程在信号变为0或1的情况下推进,并且将信号变为1或0来防止别的进程推进,当进程完成任务后,则将信号在变为0或1,从而允许其他进程推进。

其实信号量不是一种通信机制,而是一种同步机制。

9.两个进程需要共享大量数据如何实现?




10.消息队列与管道的不同?

  1)消息队列无固定的读写进程,任何有权限的进程都可以读写,即所谓的多对多,而不是管道的点对点。

  2)消息队列很多操作系统都支持,而管道却不是。

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值