- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
网络操作系统4
第8章 UNIX系统的进程通信 本章以单机系统中进程间的通信为背景,介绍进程通信的基本原理和系统进程通信的管理机制。 8.1进程通信基本概念 进程间的通信可以分成两大类: ★控制信息的传递(进程间的低级通信) 进程间少量的信息传递,这些信息主要用于控制进程的执行速度和执行方式,通常只包含一个或几个字节(byte)的信息量。 ★大批量数据的传送进程间的高级通信 完成进程之间大量数据的传递,用于进程间的程序或数据的交换。 第8章 UNIX系统的进程通信 操作系统提供多种进程通信机制以满足进程通信的需要。 8.1.1主从式通信 主从(Master-Servant System)式通信方式是指通信的进程双方间存在着种主从式的隶属关系。主进程是通信过程的控制者,从进程是通信过程的从属者。具有如下主要特点: ◎在通信过程中主进程对从进程的资源和数据享有使用权限,而从进程对主进程则没有这种权限。 ◎在通信过程中主进程始终控制着从进程的工作和动作过程。 ◎一旦进程的主从关系确定,在整个通信过程中它们的隶属关系不再发生变化。 在多用户系统中,主从式进程通信最典型的例子是终端控制进程与终端进程,在两者间发生信息交互时,终端控制进程是主进程,终端进程是从进程。 第8章 UNIX系统的进程通信 8.1.2会话式通信 会话(Dialogue System)式通信是指进行通信的进程双方采用请求和回应请求的方式进行通信。其中请求进程和服务进程以会话方式完成进程之间的通信。通信的进程双方分为使用者进程和服务者进程,使用者进程通过调用服务者进程来完成进程间的通信。有以下主要特点: ◎通信时使用者进程需要事先得到服务者进程的允许,方能使用服务者进程为其提供的服务 ◎服务者进程每次都是根据使用者进程提出的请求提供服务的,并且在进程通信的过程控制权始终为服务者进程所有。 ◎同样进程间在确定使用会话式方式进行通信时也要建立固定的逻辑关联关系。 最典型也是最常见的例子是,用户进程与磁盘管理进程之间的通信过程。 第8章 UNIX系统的进程通信 8.1.3消息或邮箱通信 该方式最显著的特点是进行通信的进程双方处在平等的地位上。在通信过程中无论接收进程是否准备好,发送进程都可以进行消息发送,发送的信息是通过消息缓冲区或邮箱完成传递的。消息或邮箱通信适应于进程间的大批量数据传递。信息传递时通常需要一定的数据结构,并可能会因操作系统的不同而有所差异。具有如下主要的特点: ◎通信中发送进程能否发送信息,只与消息缓冲区或邮箱中是否有足够大的空闲空间来满足这次通信有关,而与需要将信息发送到的目的进程的状态无关。 ◎发送进程和接收进程之间不需要建立直接的逻辑关联关系 ◎发送信息和接收信息必须通过消息缓冲区或邮箱来完成信息的传递。简单的信息结构可以如图所示。 第8章 UNIX系统的进程通信 8.1.4共享存储区进程通信 进程之间也可采用系统建立的进程通信信息共享存储区的通信方式来完成进程间的通信。在这种通信方式中,信息共享存储区是通信进程都可以访问的数据区。利用共享存储区的特性,发送进程可以将需要传递的信息放在共享区中,接收进程从共享区中获取所需信息。 该方式具有以下主要特点: ◎进程通信中,通信的数据或信息不发生存储移动。 ◎当需要交互时,通信进程双方通过一个共享存储区完成信息交互。 ◎共享存储区中的数据,可以作为需要交互进程的一部分存储在进程体中。 共享存储区方式适合进程间大量数据的传送。 第8章 UNIX系统的进程通信 8.1.5 UNIX系统的进程通信 在UNIX中,支持多个进程协同工作的机制。在UNIX系统中设定的三种进程间通信的方式有: ◎基本通信:早期UNIX系统主要使用的通信手段,可以完成进程间简单信号的传递,主要用来协调进程间的同步与互斥管理。 ◎管道通信:UNIX中主要的大批量信息传递方式之一。管道(pipe)具有非常鲜明的通信特点,可用于同一用户的同祖先的进程间通信,而有名管道(或称FIFO管道)可用于不同用户进程间的通信。 ◎IPC:适应大批量信息传递的通信方式,IPC的功能强大,通信方式灵活,是现代UNIX中支持的主要通信方式。 近年来增加了计算机间的通信,利用TCP/IP协议进行网络通信的系统调用接口。 第8章 UNIX系统的进程通信 8.2基本通信 8.2.1锁文件通信 早期UNIX系统中最基本的通信方式使用锁文件完成进程间通信。锁文件的实现方法可以从行式打印机和UUCP命令的实现中找到。 使用锁文件进行通信的过程,实际上是通信进程双方将“锁文件是否存在”这一事实作为一个二元信号量进行设置与查询。进程用对“锁文件的建立与否”状态的判别和设置完成从一个进
文档评论(0)