有一个 Linux 系统(作为我项目的一部分),我可能需要在其中进行热代码加载,即更新部分软件、无线(通过 WiFi 下载软件)或无线(通过局域网)。这个软件有两部分,一部分是用 C++ 编写的,另一部分是用 Erlang 编写的。C++ 部分通过 TCP/IP(一组 6-7 多种专有协议)与一些外部实体通信。我最需要进行热加载的部分是与那些外部实体对话的 C++ 部分。C++ 部分通过端口与 Erlang 对话(目前正在开发中),但我想将其更改为 NIF(将来某个时候)。
有人可以建议一些 C++ 功能的热代码加载策略。我知道 Erlang 的能力,但我的理解是该功能不会扩展到用 C++ 编写的部分。
此外,我需要确保包含专有协议实现的 C++ 模块来自“有效来源”。什么可能是正确的策略?
我想,我的要求并不少见,所以如果存在这样的模块、框架、库,我会很乐意指出这些。