操作系统第10讲:第3章进程管理续4通信.ppt

上传人:小飞机 文档编号:6387887 上传时间:2023-10-26 格式:PPT 页数:17 大小:293.32KB
返回 下载 相关 举报
操作系统第10讲:第3章进程管理续4通信.ppt_第1页
第1页 / 共17页
操作系统第10讲:第3章进程管理续4通信.ppt_第2页
第2页 / 共17页
操作系统第10讲:第3章进程管理续4通信.ppt_第3页
第3页 / 共17页
操作系统第10讲:第3章进程管理续4通信.ppt_第4页
第4页 / 共17页
操作系统第10讲:第3章进程管理续4通信.ppt_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《操作系统第10讲:第3章进程管理续4通信.ppt》由会员分享,可在线阅读,更多相关《操作系统第10讲:第3章进程管理续4通信.ppt(17页珍藏版)》请在三一办公上搜索。

1、2023/10/26,1,操作系统第10讲,第3章 进程管理(4)(进程通信)主讲:闫新庆2012 3,2023/10/26,2,第3章 进程管理,内容提纲3.1 认识进程前的准备 3.2 进程的概念与描述3.3 进程状态及其转换 3.4 进程控制3.5 进程互斥与同步 3.6 进程通信 3.7 死锁问题 3.8 线程与超级线程 本章小结 习题,2023/10/26,3,3.7 进程通信,导语:进程通信是指进程间互相传递信息。操作系统可以被看作是各种进程组成。这些进程都具有各自的独立功能,且大多数被外部需要而启动执行。一般来说,进程间的通信可以划分为二种:即控制信息的传送(低级通信)大批量数据

2、传送(高级通信)进程间同步或互斥,也是使用锁或信号量进行通信来实现的。低级通信一般只传送一个或几个字节的信息,以达到控制进程执行速度的作用。高级通信要传送大量数据。高级通信的目的不是为了控制进程的执行速度,而是为了交换信息。,2023/10/26,4,3.7 进程通信,一、进程间的通信1定义:进程之间相互传递消息的过程称为进程间的通信。2功能:为协调某一任务,通过发送消息,使进程之间保持一定的联系。二、进程通信类型-低级通信特点:只能用于少量的“状态和数据控制信息”通信。适用于同步与互斥机制,传送的是控制信息,19个字节。)主从式:解决进程能否继续执行下去。(有固定的主从关系,键盘与显示,计算

3、与打印(读、)等)其特点:从进程动作受主进程控制。主进程可以使用从进程提供的数据。主从之间的关系是固定的,2023/10/26,5,3.7 进程通信,二进程通信类型低级通信会话式:(共享存储区数据结构的交互式进程间通信方式,许可式通信方式,如用户进程与服务进程,如申请读写磁盘的进程与完成读写操作的进程。特点:使用进程必须得到服务进程的许可才能激活与使用。服务进程根据使用进程要求提供服务,服务控制由服务进程自身完成。两者之间存在固定关系。只能用于少量的状态和据通信。,2023/10/26,6,3.7 进程通信,三、进程通信类型高级通信1 类型:(1).消息通信机制(公用缓冲区,1973年Hans

4、en提出)消息或邮箱机制则无论接收进程是否已准备好接收消息,发送进程都将把所要发送的消息送入缓冲区或邮箱。消息的一般形式由发送进程名、接收进程名、数据和有关数据的操作个部分组成。(图3.15)。,图3.15消息的组成,2023/10/26,7,3.7 进程通信,消息或邮箱机制的特点:只要存在空缓冲区或邮箱,发送进程就可以发送消息。发送进程和接收进程之间无直接连接关系,接收进程可能在收到 某个发送进程发来的消息之后,又转去接收另一个发送进程发来 的消息。发送进程和接收进程之间存在缓冲区或邮箱(图3.16)用来存放 被传送消息。(2).共享存储区方式与前面三种方式不同,共享存储区方式不要求数据移动

5、。两个需要互相交换信息的进程通过对同一共享数据区(shared memory)的操作来达到互相通信的目的。这个共享数据区是每个互相通信进程的一个组成部分。,图3.16缓冲区或邮箱通信结构,缓冲区或邮箱,2023/10/26,8,3.7 进程通信,低级通信只能获得进程是否能够继续下去的简单信息(仅作为一种进程控制的标志),如信号量及PV操作。高级通信能够解决一个进程将大批量数据传递给另一个进程的问题。1.基于共享存储区的通信方式,是效率最高的一种通信机制 原理:在内存中开辟一个区域,并连入多个进程的虚拟地址空间,当一个进程在该空间(缓冲区)写入数据后,另一个进程就可以从所连的虚拟地址空间直接进入

6、该区读出数据,就好像使用私有数据一样方便。进程要求分配一个共享存储时,核心是先要按进程提供的关键字值,查找系统共享存储区段表,表存在共享段,则说明该共享段已被其它进程创建,如不存在,则建立一个空闲页表区(包括共享段的关键字,大小,首地址,存取控制权等)。,2023/10/26,9,3.7 进程通信,特点:效率高,一个进程可以分配多个共享存储区,最大值由系统决定。2消息通信机制(公用缓冲区,1973年Hansen提出)原理:消息通信机构管理一组空闲缓冲区消息。A进程向B进程发送消息,申请一个缓冲区,填写有关 信息后,发送信号给B进程。B进程读取数据并释放消息缓冲区。,2023/10/26,10,

7、3.7 进程通信,三、进程通信类型高级通信(续1)2消息通信机制(续)控制信息 Send-pia 发送进程标志。Iype 消息类型。Size 消息长度。Text 消息正文。Next-ptr 下一个消息的指针。PCB 有关管理消息的数据项。Hd-ptr 进程已收到的消息队列的指针Mutex 对消息队列进行操作的互斥信号灯。Ssm 接受与发送进程之间的同步信号量,其值表示接受的消息数。OS提供接受和发送两个调用系统。,2023/10/26,11,3.7 进程通信,三、进程通信类型-高级通信(续2)2消息通信机制(续)发送进程 开辟一个发送缓冲区 填入消息及控制信息 调用发送消息系统,spn-pir

8、指向缓冲区首地址。(5)接收进程 开辟一个接收缓冲区 调用接收消息系统调用。,2023/10/26,12,3.7 进程通信,三、进程通信类型-高级通信(续3)4邮箱通信:邮箱通信就是由发送进程申请建立一与接收进程链接的邮箱。发送进程把消息送往邮箱,接收进程从邮箱中取出消息,从而完成进程间信息交换。设置邮箱的最大好处就是发送进程和接收进程之间没有处理时间上的限制。一个邮箱可考虑成发送进程与接收进程之间的大小固定的私有数据结构,它不像缓冲区那样被系统内所有进程共享。邮箱由邮箱头和邮箱体组成。其中邮箱头描述邮箱名称、邮箱大小、邮箱方向以及拥有该邮箱的进程名等。邮箱体主要用来存放消息。,2023/10

9、/26,13,3.7 进程通信,三、进程通信类型-高级通信(续4)3邮箱通信(续)信箱类型 公用信箱OS创建,由系统核准使用,系统运行期间,该信箱始终存在。专用信箱由某个进程创建,创建后指明用户名。私用信号量由用户进程创建,用户 信箱进程之间的彼此关系 1对1:收发进程之间建立一条进程间的通信链路。它们之间的交互 不受其它进程影响。1对多:广播式,客户服务模式。,2023/10/26,14,3.7 进程通信,多对1:客户机对服务器模式,允许一个和多个进程之间进行交互。多对多:公用信箱关系,多个进程可以向其发送,也可以接收公用 信箱。邮箱通信条件 邮箱为空才能发。邮箱存在数据才能接收。收发进程之

10、间至少存在一个邮箱。,2023/10/26,15,3.7 进程通信,三、进程通信类型-高级通信(续5)4管道通信 通过管道文件:连接一个读进程和一个写进程的文件称之为管道文件,以实现两者之间的通信。特征 采用FIFO的数据组织传输方式。能传送任意量的数据。写满则发送进程自我阻塞,读空则阻塞。通信机制的三方协调能力 接、收进程双方都存在才能通信。互斥:写不能读,读不能写。同步,收、发进程互相协作的机制,2023/10/26,16,第10讲小结,2023/10/26,17,君辞西行归塞上,泪两行,月无光。秦岭八百无黛色,商都戚容,中秋似冬凉。嫦娥相伴跨三省,衷情长,塞外凉。王伦捧酒踏歌过,太白惊诧,琼浆何人当?李广邀月云台上,论汉赋,话安阳。沙湖为酒满汉席;婵娟舞袖,月明泻银光。注1:辛亥中秋丑时一刻,君辞西行,抵府,万般惆怅,信手此文,以志纪念。注2:商都郑州别称;嫦娥指赵曙夫人孙秀英;三省河南、陕西、宁夏注3:王伦诗仙李白好友,善制酒。注4:李广汉代名将,常驻银川守土御疆;沙湖宁夏大型淡水湖,距银川约90kg,送赵曙中秋西辞归夏贺兰词,2007-09-25,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号