【发布时间】:2009-10-29 23:46:47
【问题描述】:
如果您没有将 CLONE_VM 标志传递给 clone(),那么新进程将与原始进程共享内存。这可以用来让两个不同的应用程序(两个 main()'s)在同一个进程中运行吗?理想情况下,这就像使用 CLONE_VM 调用 clone() 然后调用 exec() 一样简单,但我意识到它可能涉及更多。至少,我假设生成的应用程序需要编译为可重定位(-fPIC)。我意识到我总是可以将应用程序重新编码为库,并创建一个主应用程序,将其他“应用程序”作为线程产生,但我很好奇这种方法是否可行。
【问题讨论】:
标签: linux linker exec fork system-calls