我正在阅读
Tmux源代码,看看它是如何工作的.它看到它使用imsg进行IPC,这是我从未听说过的.我一直试图找到更多,但事实证明imsg很难谷歌,我得到了很多iMessage的结果.
I found some imsg
documentation here,所以它似乎是一个OpenBSD库.我开始寻找Linux实现,但我找不到任何东西.看来Tmux的作者编写了自己的兼容层.这让我感到惊讶,因为imsg似乎真的很有用. Linux是否有类似的C API,我只是不知道?
解决方法
快速查看构建脚本会显示以下三个文件:
> compat/imsg-buffer.c
> compat/imsg.c
> compat/imsg.h
因此,tmux作者提供了OpenBSD的imsg库的副本,该库完全在用户空间中实现.