0

我的任务是编写一个 Linux 共享库,两个或多个进程可以使用该库在它们之间共享数据。我对如何在不相关的进程之间共享数据感到困惑,因为它们不共享文件句柄、内存空间或其他任何东西。有谁知道两个或多个进程如何通过同一个库在它们之间共享数据?

我还需要为该库编写一个 API。我想出了 API,但我不知道如何完全实现它。

API 如下所示:

library.registerProcess(name) - registers process in library
library.createSharedData(size) - creates shared data of size (in bytes)
library.getSharedData(name) - get shared data of process by name

现在 process1 可以调用library.registerProcess('process1'). 然后 process2 可以调用library.registerProcess('process2').

现在 process1 可以调用library.createSharedData('1mb')来创建一个大小为 1mb 的共享数据区域。

Process2 现在可以调用library.getSharedData('process1')返回process1共享数据(某些对象或结构可能包含指向可访问的内存的指针)。

我真的很困惑两个不相关的处理如何可以交谈和使用这个 API。

4

0 回答 0