【发布时间】:2023-03-27 15:28:01
【问题描述】:
我正在阅读 Galvin 的“操作系统概念”中的“消息传递系统”部分,我遇到了这个:
进程发送的消息可以是固定大小或可变大小。如果只是固定大小 可以发送消息,系统级实现很简单。这种限制, 但是,这使得编程任务变得非常困难。
我无法理解为什么在这种情况下编程任务很困难而系统级实现很容易。有人可以详细说明此声明。在此先感谢。
【问题讨论】:
标签: operating-system
我正在阅读 Galvin 的“操作系统概念”中的“消息传递系统”部分,我遇到了这个:
进程发送的消息可以是固定大小或可变大小。如果只是固定大小 可以发送消息,系统级实现很简单。这种限制, 但是,这使得编程任务变得非常困难。
我无法理解为什么在这种情况下编程任务很困难而系统级实现很容易。有人可以详细说明此声明。在此先感谢。
【问题讨论】:
标签: operating-system
如果所有消息的大小相同,您可以为来自适当内存的消息分配一个固定大小的缓冲区池,这样操作系统端就很容易了。
这使得应用程序端更加困难,因为所有消息都必须适合相同大小的内存块。例如,如果没有代码来决定如果字符串太长该怎么办,则无法传递字符串。
【讨论】: