大学进程通信ppt课件

上传人:仙*** 文档编号:141344073 上传时间:2022-08-24 格式:PPT 页数:34 大小:223.50KB
收藏 版权申诉 举报 下载
大学进程通信ppt课件_第1页
第1页 / 共34页
大学进程通信ppt课件_第2页
第2页 / 共34页
大学进程通信ppt课件_第3页
第3页 / 共34页
资源描述:

《大学进程通信ppt课件》由会员分享,可在线阅读,更多相关《大学进程通信ppt课件(34页珍藏版)》请在装配图网上搜索。

1、3.5 进程通讯3.5.1 信号通讯机制 3.5.2 共享文件通讯机有制 3.5.3 共享存储区通讯机制 3.5.4 音讯传送通讯机制 3.5.5 有关音讯传送实现的假设干问题进程通讯概念(1)并发进程之间的交互必需满足两个根本要求:同步和通讯。进程竞争资源时要实施互斥,互斥是一种特殊的同步,本质上需求处理好进程同步问题,进程同步是一种进程通讯,经过修正信号量,进程之间可建立起联络,相互协调运转和协同任务。进程通讯概念(2)进程协同任务时,需求相互交换信息,有些情况下进程间交换的少量信息,有些情况下进程间交换大批数据。进程之间相互交换信息的任务称 为 进 程 通 讯 I P C I n t e

2、 r P r o c e s s Communication。进程间通讯的方式(1)信号signal通讯机制;共享存储区(shared memory)通讯机制;共享文件(shared file)通讯机制;音讯传送(message passing)通讯机制。进程间通讯的方式(2)低级通讯机制,适用于集中式操作系统高级通讯机制,既适用于集中式操作系统,又适用于分布式操作系统3.5.1 信号通讯机制 信号机制又称软中断,一种简单的通讯机制,经过发送一个指定信号来通知进程某个异常事件发生。信号不但能从内核发给一个进程,也能由一个进程发给另一个进程。UNIX系统信号分成以下几类(1)与进程终止相关的信号

3、SIGCLD、SIGHUP、SIGKILL、SIGCHLD等,如进程终了、进程杀死子进程,;与进程例外事件相关的信号SIGBUS、SIGSEGV、SIGPWR、SIGFPE等,如进程执行特权指令、写只读区、地址越界、总线超时,硬件缺点;与进程执行系统调用相关的信号SIGPIPE、SIGSYS、SIGILL等,如进程执行非法系统调用、管道存取错;UNIX系统信号分成以下几类(2)与进程终端交相互关的信号SIGINT、SIGQUT等,如进程挂断终端、用户按delete键或break健。用户进程发信号SIGTERM、SIGALRM、SIGUSR1、SIGUS2等,如进程向另一进程发一个信号、要求报警

4、;跟踪进程执行的信号SIGTRAP等。UNIX软中断机制 具有以下功能:软中断信号的发送,软中断信号的呼应和软中断信号的处置。信号发送任务由系统调用kill完成 信号呼应运用系统调用signal完成 信号的处置过程 3.5.2 共享文件通讯机制(1)管道(pipeline)是衔接读写进程的一个特殊文件,允许进程按先进先出方式传送数据,也能使进程同步执行操作。发送进程以字符流方式把大量数据送入管道,接纳进程从管道中接纳数据,所以叫管道通讯。管道的本质是一个共享文件,根本上可借助于文件系统的机制实现,包括管道文件的创建、翻开、封锁和读写。共享文件通讯机制(2)读写进程相互协调,必需做到:进程对通讯

5、机构的运用应该互斥,一个进程正在运用某个管道写入或读出数据时,另一个进程就必需等待。发送者和接纳者双方必需可以知道对方能否存在,假设对方曾经不存在,就没有必要再发送信息。共享文件通讯机制(3)管道长度有限,发送信息和接纳信息之间要实现正确的同步关系。write阻塞。read阻塞。共享文件通讯机制(5)写进程共享文件读进程共享文件通讯机制(6)系统翻开文件表用户翻开文件表内存活动索引节点表外存fp读进程写进程fp文 件 节 点指针文 件 节 点指针索引节点pip文件 pipe的数据构造3.5.3 共享存储区通讯机制 Process AProcess BShared memorykernel与共享

6、存储有关的系统调用 shmget(key,size,permflags)shmat(shm-id,daddr,shmflags)shmdt(memptr)shmctl(shm-id,command,&shm-stat)3.5.4音讯传送(1)什么是音讯传送message passing?音讯和音讯传送机制 根本的音讯传送原语send,receive音讯传送(2)采用音讯传送机制后,一个正在执行的进程可在任何时辰向另一个正在执行的进程发送音讯;一个正在执行的进程也可在任何时辰向正在执行的另一个进程恳求音讯。音讯传送(3)一个进程在某一时辰的执行依赖于另一进程的音讯或等待其他进程对发出音讯的回答,

7、那么,音讯传送机制严密地与进程的阻塞和释放相联络。音讯传送就进一步扩展了并发进程间对数据的共享,提供了进程同步的才干。直接通讯 发送或接纳音讯的进程必需指出信件发给谁或从谁那里接纳音讯 原语sendP,音讯:把一个音讯发送给进程P 原语receiveQ,音讯:从进程Q接纳一个音讯间接通讯(1)进程间发送或接纳音讯经过信箱进展,音讯可被了解成信件原语sendA,信件:把一封信件音讯传送到信箱A原语receiveA,信件:从信箱A接纳一封信件音讯间接通讯(2)间接通讯的实现(1)信箱是存放信件的存储区域,每个信箱可分成信箱特征和信箱体两部分。信箱特征指出信箱容量、信件格式、指针等;信箱体用来存放信

8、件间接通讯(3)间接通讯的实现(2)发送信件:假设指定信箱未满,那么将信件送入信箱中由指针所指示的位置,并释放等待该信箱中信件的等待者;否那么发送信件者被置成等待信箱形状 接纳信件:假设指定信箱中有信,那么取出一封信件,并释放等待信箱的等待者,否那么接纳信件者被置成等待信箱中信件的形状间接通讯(4)type box=record size:integer;/*信箱大小*/count:integer;/*现有信件数*/letter:array1.n of message;/*信箱*/S1,S2:semaphore;/*等信箱和等信件信号量*/end间接通讯(6)procedure send(va

9、rB:box,M:message)var I:integer;begin if B.count=B.size then W(B.s1);i:=B.count+1;B.letteri:=M;B.coumt:=I;R(B.S2)end;send间接通讯(6)procedure receive(varB:box,x:message)var i:integer;begin if B.count=0 then W(B.s2);B.count:=B.count-1;x:=B.letter1;if B.count not=0 then for i=1 to b.count do B.letteri:=B.l

10、etteri+1;R(B.S1);end;receive3.5.5 有关音讯传送实现的假设干问题 信箱容量问题 多进程与信箱相连的信件接纳问题 信箱的一切权问题 信件的格式问题 通讯进程并行性问题 音讯缓冲通讯涉及的数据构造 sender:发送音讯的进程名或标识符 size:发送的音讯长度 text:发送的音讯正文 next-ptr:指向下一个音讯缓冲区的指针 在进程的PCB中涉及通讯的数据构造:mptr:音讯队列队首指针 mutex:音讯队列互斥信号量,初值为1 sm:表示接纳进程音讯队列上音讯的个数,初值为0,是控制收发进程同步的信号量 音讯缓冲通讯过程 接纳进程名:Q信件长:5c正文:A

11、BCDESend(发送区首址)发送区音讯队列首指针mutexsm发送进程名:P信件长:5正文:ABCDE后继信件缓冲指针0进程Q的PCB发送进程名:P信件长:5正文:ABCDEreceive(接纳区首址)接纳区 进程P 进程QUNIX的音讯传送机制(1)音讯缓冲池和音讯缓冲区(msgbuf),前者包含音讯缓冲池大小和首地址;后者除存放音讯正文外,还有音讯类型字段。音讯头构造和音讯头表,音讯头表是由音讯头构造组成的数组。音讯头构造包含音讯类型、音讯正文长度、音讯缓冲区指针和音讯队列中下一个音讯头构造的链指针。UNIX的音讯传送机制(2)音讯队列头构造和音讯队列头表,由于可有多个音讯队列,于是对应

12、每个音讯队列都有一个音讯队列头构造,音讯队列头表是由音讯队列头构造组成的数组。音讯队列头构造包括:指向队列中第一个音讯的头指针、指向队列中最后一个音讯的尾指针、队列中音讯个数、队列中音讯数据的总字节数、队列允许的音讯数据最大字节数、最近一次发送/接纳音讯进程标识和时间。UNIX的音讯传送机制(3)音讯队列头构造音讯队列头表音讯头构造音 讯 缓 冲区池音 讯 缓 冲区信件的格式问题和其他有关问题 单机系统中信件的格式可以分直接信件又叫定长格式和间接信件又叫变长格式。网络环境下的信件格式较为复杂,通常分成音讯头和音讯体,前者包括了发送者、接纳者、音讯长度、音讯类型、发送时间等各种控制信息;后者包含了音讯内容。通讯进程的同步问题 常用的组合有:阻塞型send和阻塞型receive 非阻塞型send和阻塞型receive 非阻塞型send和非阻塞型receive

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!