【发布时间】:2016-01-20 11:37:04
【问题描述】:
理论上是否可以在第二个(例如达尔文的 XNU)上执行为一个 POSIX 内核(例如 Linux)构建的
为什么不可能?
如果是因为库和/或共享对象,也许可以只留下内核及其与整个第二个操作系统的依赖关系,并从第一个开始使用其他所有内容?
所以你将只有来自第二个操作系统的内核和驱动程序,你可以 chroot 到某个地方,你就可以首先运行任何可执行文件?
或者我们可以制作某种动态包装器或静态翻译器吗?
UPD:好的,我找到了something similar,但只是粗略的建议,也许有人可以说得更清楚些?
【问题讨论】:
-
xBinary 可能是解决方案,但它已经过时并且不适用于现代 OSX
-
有趣的部分是 darwins 内核内部实际上应该有一个系统调用包装器使这更容易,但我怀疑它是否仍然以应有的方式工作。 freebsd 在一定程度上也支持 linux 二进制文件freebsd.org/doc/handbook/linuxemu.html
标签: linux-kernel kernel posix darwin xnu