在基于消息传递的通信机制中,其核心成分是发送原语和()。

题目
填空题
在基于消息传递的通信机制中,其核心成分是发送原语和()。
参考答案和解析
正确答案: 接收原语
解析: 暂无解析
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

NetWare中客户机进程和服务器进程间的通信采用()。

A.信箱

B.消息传递

C.通信原语

D.协议栈


参考答案:D

NetWare中的进程间通信有两种形式:
(1)客户机进程与服务器进程之间的通信,采用协议栈的方式。
(2)在同一台机器(服务器机)中进程之间的通信,采用IPX内部网络的方式。

第2题:

在程控交换系统中,进程之间的通信普遍采用的方法是()。

A.直接通信

B.消息间接传输

C.消息缓存通信

D.原语直接通信


参考答案:C

第3题:

进程通信就是进程之间进行信息交换。系统中各进程异步执行,但有些进程之间必须保持

一定的联系,以便协调一致地完成指定任务。这种联系就是通过交换一定数量的信息实现的。

消息缓冲通信技术是一种高级通信机制,由Hansen首先提出。其基本思想是:根据“生产者—消费者关系”原理,利用公共消息缓冲区实现进程之间的信息交换。

1.试叙述高级通信机制与低级通信机制P、V原语操作的主要区别。

2.试解释消息缓冲通信技术的基本原理。

3.消息缓冲通信机制中提供发消息的原语Send(receiver,a)和接受消息原语Receive(a)。调用参数a分别表示发送消息的内存区首地址或接受进程的内存消息区首地址。试设计相应的数据结构,并用P、V操作原语实现Send和Receive原语。


正确答案:1.要点:进程间通信时所交换的通信量可多可少。少的时候仅是一些状态和数据的交换或者仅是一个简单的唤醒信号:多则可交换大量的信息。前者称为进程同步与进程互斥也称为进程间低级通信:后者称成为进程间的高级通信。 2.要点: (1) 由操作系统在系统空间维护一组缓冲区; (2) 由操作系统提供两个进程高级通信原语Send和Receive: (3) 发送进程要发送消息时执行Send系统调用命令产生自愿性中断进入操作系统核心; (4) 操作系统为发送进程分配一个空缓冲区并将所发送的消息内容从发送进程空间拷贝到该缓冲区中然后将此缓冲区连接到接受进程的消息队列尾。发送进程就完成了发送返回到用户态继续执行; (5) 当接受进程执行到receive系统调用时也产生自愿性中断进入操作系统核心; (6) 操作系统将载有消息的缓冲区从消息队列中取出并将消息拷贝到接受进程空间中然后收回空闲缓冲区:接受进程完成了消息接受返回到用户态继续执行; 3.要点: (1) 消息缓冲区的数据结构: type Message=record sender(消息发送者) size(消息长度) text(消息正文) pointer(消息队列指针) end; (2) 设置信号量如下: 每个接受进程有一个m-mutex:互斥对消息队列的操作初值为1; buffer:管理空闲缓冲区初值为空闲缓冲区个数; b-mutex:互斥操作空闲缓冲区初值为1; message:管理接受进程消息初值为0。 (3) Send(receivera) begin 根据参数receiver寻找接受进程如果没有找到则出错返回: P(buffer): P(b-mutex): 从消息缓冲区链上摘取一个空闲消息缓冲区; V(b-mutex); 将消息长度及消息正文由a地址由发送区拷贝到消息缓冲区中; 将发送进程的名字也刻录在该缓冲区中; P(m-mutex); 将消息缓冲区挂到接受进程消息队列的尾部; V(m-mutex): V(message) end; (4) Receive(a) begin P(message); P(m-mutex): 从消息队列中取一个载有消息的缓冲区: V(m-mutex); 将消息长度以及消息正文由消息缓冲区拷贝到接受区(由a指示); P(b-mutex); 将空闲缓冲区挂到系统消息区链尾; V(b-mutex); V(buffer) end;
1.要点:进程间通信时所交换的通信量可多可少。少的时候仅是一些状态和数据的交换,或者仅是一个简单的唤醒信号:多则可交换大量的信息。前者称为进程同步与进程互斥,也称为进程间低级通信:后者称成为进程间的高级通信。 2.要点: (1) 由操作系统在系统空间维护一组缓冲区; (2) 由操作系统提供两个进程高级通信原语Send和Receive: (3) 发送进程要发送消息时,执行Send系统调用命令,产生自愿性中断进入操作系统核心; (4) 操作系统为发送进程分配一个空缓冲区,并将所发送的消息内容从发送进程空间拷贝到该缓冲区中,然后将此缓冲区连接到接受进程的消息队列尾。发送进程就完成了发送,返回到用户态继续执行; (5) 当接受进程执行到receive系统调用时,也产生自愿性中断,进入操作系统核心; (6) 操作系统将载有消息的缓冲区从消息队列中取出,并将消息拷贝到接受进程空间中,然后收回空闲缓冲区:接受进程完成了消息接受,返回到用户态继续执行; 3.要点: (1) 消息缓冲区的数据结构: type Message=record sender(消息发送者) size(消息长度) text(消息正文) pointer(消息队列指针) end; (2) 设置信号量如下: 每个接受进程有一个m-mutex:互斥对消息队列的操作,初值为1; buffer:管理空闲缓冲区,初值为空闲缓冲区个数; b-mutex:互斥操作空闲缓冲区,初值为1; message:管理接受进程消息,初值为0。 (3) Send(receiver,a) begin 根据参数receiver寻找接受进程,如果没有找到,则出错返回: P(buffer): P(b-mutex): 从消息缓冲区链上摘取一个空闲消息缓冲区; V(b-mutex); 将消息长度及消息正文由a地址由发送区拷贝到消息缓冲区中; 将发送进程的名字也刻录在该缓冲区中; P(m-mutex); 将消息缓冲区挂到接受进程消息队列的尾部; V(m-mutex): V(message) end; (4) Receive(a) begin P(message); P(m-mutex): 从消息队列中取一个载有消息的缓冲区: V(m-mutex); 将消息长度以及消息正文由消息缓冲区拷贝到接受区(由a指示); P(b-mutex); 将空闲缓冲区挂到系统消息区链尾; V(b-mutex); V(buffer) end;

第4题:

消息发送原语中一般要包含要发送消息的内存指针和()

  • A、发送者
  • B、接收者
  • C、接收消息的内存指针
  • D、投递员

正确答案:C

第5题:

使用异步通信原语时,发送者在消息发送完成以前为什么不能使用缓冲区?该如何解决?


正确答案: 因为倘若发送进程在消息发送完成之前,即在消息发送期间使用或修改原来的缓冲区,将会造成错误。
有两种办法解决(应采用异步原语):
①采用带拷贝的非阻塞原语,即让内核把消息拷贝到内核缓冲区,允许调用进程继续运行。
②带中断的非阻塞发送,即当消息发送完成后,中断发送进程,通知发送进程此时缓冲区可用。

第6题:

在基于消息传递通信机制中,其核心成分是()。

A.通信原语

B.函数

C.参数

D.程序


参考答案:A

第7题:

面向消息中间件(MOM)通过高效可靠的(),在分布式环境下扩展进程间的通信,可支撑多种通信协议、语言、应用程序、硬件和软件平台。

A. 消息扩展机制
B. 消息共享机制
C. 消息传递机制
D. 消息处理机制

答案:C
解析:
数据访问中间件:此类中间件是为了建立数据应用资源互操作的模式,对异构坏境下的数据库或文件系统实现联接。典型的技术如Windows平台 的ODBC和Java平台的DBC等。

远程过程调用中间件:此类中间件可以使开发人员在需要时调用位于远端服务器上的过程,屏蔽了在调用过程中的通信细节。一个应用程序使用 RPC来远程执行一个位于不同地址空间里的过程,在效果上看和执行本地调用相同。

消息中间件:消息中间件(MOM )指的是利用高效可靠的消息传递机制进行平台无关的数据交流,并基于数据通信来进行分布式系统的集成。 分布式对象中间件:是建立对象之间客户/服务器关系的中间间,结合了对象技术与分布式计算技术。目前主流的对象中间件有OMG的 CORBA , Microsoft 的COM/DCOM/COM+以及IBM的SOM , Sun的RMI/EJB等。

事务中间件:也称事务处理监控器,事务处理监控程序位于客户和服务器之问,完成事务管理与协调、负载平衡、失效恢复等任务,提高系统的整体性能。

第8题:

如下选项中不属于进程通信机制的是( )。

A.消息

B.共享内存

C.信号量

D.原语


正确答案:D
解析:操作系统中常用的进程通信机制包括消息、共享内存、信号量、管道等,在Linux系统中,socket和信号也是进程通信机制,原语也是由若干条指令构成的完成特定功能的一个过程,一个原子操作要么全做,要么全不做。

第9题:

在消息缓冲通信方式中,发送原语和接收原语的主要功能是什么?


正确答案:当发送者要发信息时,执行SEND系统调用命令,产生自愿性中断进入操作系统核心。将信息放到缓冲区。当接收者执行到RECEIVE系统调用命令时,也产生自愿性中断,进入操作系统核心。将信息从缓冲区取出。

第10题:

在基于消息传递的通信机制中,其核心部分是发送原语和接收原语,统称为()。


正确答案:通信原语