管理不是由Erlang代码

时间:2015-05-26 05:08:06

标签: linux macos process operating-system erlang

Erlang提供了两种管理操作系统进程的方法:简单的os模块和围绕erlang:open_port()构建的更好的API。我还发现了一个关于GitHub的有趣项目,该项目部分用C ++编写,名为erlexec

无论如何,所有这些都不适合控制正在运行的过程。我想:

  • 从进程名称获取OS PID。
  • 向流程发送信号。
  • (可选:将数据发送到流程)。
  • 检查流程统计信息:至少 CPU使用率%已用内存(与top等命令相同的数据)。
  • 至少能够支持Linux和Mac OS X平台。

经过一些研究后我得出结论,在Linux平台上,我需要混合使用C调用并从/proc文件系统中读取。

我是在正确的道路上还是那里的另一种方式(不包括调用shell命令来获取数据或执行操作)?

是否有一个我无法找到的库(一个Erlang一个或一个非常适合从Erlang调用的C库?

0 个答案:

没有答案