欢迎来到天天文库
浏览记录
ID:45594974
大小:719.00 KB
页数:33页
时间:2019-11-15
《专升本辅导-进程管理》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、1问题7进程通信的三种类型,管道的定义,消息缓冲队列的通信机制2§2.7进程通信(communication)进程之间的信息交换称为进程通信。合作进程间所交换的信息量,少则是一个状态或数据,多则成千上万字节的。3进程的同步与互斥=>低级通信进程的同步与互斥是一种通信方式,一进程可通过修改变量或信号量告知另一进程,它是否可以继续执行下去.生产者——消费者算法,P、V操作只能传递信号,信号本身不包含任何数据,而进程不当还容易导致进程死锁,因此,称这些同步机构为低级通信机构.4按通信交换的数据量多少划分低级通信:在OS中数据交换量少的进程协调过程。一般只传送一个和几个字节
2、的信息,达到控制进程执行速度的作用。(进程的同步和互斥)信号量机制作为同步工具是卓有成效的,但作为通信工具则不够理想。(效率低。通信对用户不透明。)高级通信:用户可以直接利用操作系统所提供的一组通信命令,高效地传送大量数据的一种通信方式。5高级进程通信方式的主要优点效率高和使用方便。操作系统隐藏了进程通信的实现细节,它给用户提供了一组以发送和接收命令为主的通信原语,用户直接使用这些通信原语一次就能发送成千上万字节的信息,大大简化了通信程序的编制工作。6三种基本的进程通信方式:根据通信实施的方式和数据存取的方式,分为:1)共享存储器系统共享内存变量(如信号量机制)
3、和共享内存区两种通信方式。2)消息传递系统消息缓冲和信箱两种通信方式。3)管道通信方式7发送原语(send(接收者进程名,发送区首地址))接收原语(receive(接收区首地址))系统提供给用户实现进程通信的最基本的原语,也是构成一种具体的通信系统的主要内容,用户直接使用这些通信原语一次就能发送成千上万字节的信息。81)消息缓冲通信方式消息(message):在计算机网络中又叫报文,指进程之间相互传递的赖以发生相互作用的有结构的数据。在消息传递系统中,进程间的数据交换,是以格式化的消息(message)为单位的.1.消息缓冲通信机制中的数据结构(1)消息缓冲区。在消
4、息缓冲队列通信方式中,主要利用的数据结构是消息缓冲区。它可描述如下:typemessagebuffer=recordsender;发送者进程标识符size;消息长度text;消息正文next;指向下一个消息缓冲区的指针end(2)PCB中有关通信的数据项。在利用消息缓冲队列通信机制时,在设置消息缓冲队列的同时,还应增加用于对消息队列进行操作和实现同步的信号量,并将它们置入进程的PCB中。2.发送原语发送进程在利用发送原语发送消息之前,应先在自己的内存空间,设置一发送区a,把待发送的消息正文、发送进程标识符、消息长度等信息填入其中,然后调用发送原语,把消
5、息发送给目标(接收)进程。发送原语首先根据发送区a中所设置的消息长度a.size来申请一缓冲区i,接着,把发送区a中的信息复制到缓冲区i中。获得接收进程的内部标识符j,将i挂在j.mq上。图2-12消息缓冲通信132)信箱通信方式指连接两进程之间的一个打开的共享文件,以文件作为缓冲传输介质,一个进程向其写入消息,另一个进程从中读取消息,好象是一个管道,消息从一头流进,从另一头流出的通信方式。14信箱就是一个用来对一定数量的消息进行缓冲的地方,通常是个有结构的文件,由存放信箱控制信息的信箱头和带格子的信箱体组成。信箱的标识地址作为消息的间接地址。信箱一般由接收者向系统
6、提出创建申请,由系统创建,归接收者拥有。3)管道(Pipe)通信“管道”是指用于连接一个读进程和一个写进程以实现他们之间通信的一个共享文件,又名pipe文件。向管道(共享文件)提供输入的发送进程(即写进程),以字符流形式将大量的数据送入管道;而接收管道输出的接收进程(即读进程),则从管道中接收(读)数据。为了协调双方的通信,管道机制必须提供以下三方面的协调能力:①互斥,即当一个进程正在对pipe执行读/写操作时,其它(另一)进程必须等待。②同步,指当写(输入)进程把一定数量(如4KB)的数据写入pipe,便去睡眠等待,直到读(输出)进程取走数据后,再把他唤醒。当读
7、进程读一空pipe时,也应睡眠等待,直至写进程将数据写入管道后,才将之唤醒。③确定对方是否存在,只有确定了对方已存在时,才能进行通信。问题8.线程的基本概念,线程的属性,线程与进程的区别与联系。1718进程的两个基本属性:1.进程是一个可拥有资源的独立单位;2.进程又是一个可独立调度和分配的基本单位。合起来,进程便成为一个能独立运行的基本单位,从而构成了程序并发执行的基础。进程是一个资源的拥有者,在执行这些操作时会付出较大的时间开销。因此在系统中所设的进程数目不宜过多,切换不宜过于频繁,这就限制了系统的并发程度。19线程的定义定义:线程是进程中的一个实体,是被系
此文档下载收益归作者所有