谁能简要解释一下 DDS 中的全局数据空间?是不是像虚拟内存??什么时候需要全局数据空间?我知道在 UDPv4 的单播中,为每个 dataWriter/dataReader 对分配一个端口,通过该端口在 dataWriter 和 dataReader 之间进行通信,那么全局数据空间的概念从何而来?
1 回答
0
全局数据空间是一个抽象概念。它不是物质存在。
UDP 和 shmem 只是传输。
共享数据空间可能体现在哪里(共享内存,malloc'd 内存,分布在驱动程序中的缓冲区中,任何地方)是实现细节的一个功能,您可以从忽略开始,同时记住这个概念是您可以使用它来了解数据在运动时的维护位置。
作为系统集成商或系统实施者,您只需要了解 DDS 实施为您的应用程序提供了一个全局数据空间,以便数据在必要时存在。
DDS 实现获取您发布的数据并将其推送到全局数据空间。DDS 实施根据其宣布的订阅将数据从全局数据空间中取出并交给您的应用程序。
DDS 实现如何选择将全局共享数据空间呈现给您的应用程序将取决于实现细节,并将在更高级别的文档中进行讨论。 它如何实现“数据空间”将在您可能永远不需要参考的较低级别的文档中。
读写
于 2017-12-12T11:23:13.737 回答