消息传递系统

更新时间:2024-05-21 14:29

消息传递系统,应用于程序设计,有不必借助共享数据的优点。进程发送的消息可以是定长的也可以是变长的。如果只可以发送定长的消息,那么系统层的实现就很简单。然而,这种限制增加了程序设计的难度。另一方面,变长的消息需要更复杂的系统层实现,但是程序设计工作更简单。

功能

消息系统的功能是允许进程与其它的进程进行通信。我们已经看到了消息传递在微内核中的应用。在这种方案下,服务作为普通的用户进程提供。更确切的说,服务在内核之外。用户进程之间的通信通过传递消息完成。IPC 至少提供了两种操作:send(message)和receive(message)。

进程发送的消息可以是定长的也可以是变长的。如果只可以发送定长的消息,那么系统层的实现就很简单。然而,这种限制增加了程序设计的难度。另一方面,变长的消息需要更复杂的系统层实现,但是程序设计工作更简单。

通信

如果进程P 和Q 要进行通信,那么它们必须能够互相发送和接收消息;二者之间必须要建立一条通信链路。有多种方法可以实现这条链路。在这儿,我们并不关心链路的物理实现,而是要考虑它的逻辑实现。有如下几种用于逻辑实现send/receive 操作的方法:

l 直接或间接通信

l 对称或不对称通信

l 自动或手动缓冲(Automatic or explicit buffering)

l 发送拷贝或引用

l 定长消息或变长消息(Fixed-sized or variable-sized messages)

免责声明
隐私政策
用户协议
目录 22
0{{catalogNumber[index]}}. {{item.title}}
{{item.title}}