如何在C ++中创建沙箱环境?

时间:2013-07-11 14:56:28

标签: c++ linux sandbox dynamic-library

有没有办法在C ++中创建沙盒环境,您可以在其中: - 运行进程 - 在(Linux)中加载动态库

动态库是首选,因为主进程和沙盒进程之间的通信很容易。

沙盒进程不应该将内存放在堆上或与内核/操作系统交互。相反,主进程将提供执行这些操作的接口。

有没有办法做到这一点?我可以创建一个脚本解释器,但这会带走很多速度。我想保持最小的速度损失。

1 个答案:

答案 0 :(得分:-2)

您可以使用一些提供沙箱环境的软件。使用可以为应用程序提供内存限制,时间限制等和其他参数。我在创建一些在线评判时使用了沙盒文件,并且需要在有限的环境中执行其他用户的c ++文件。