编写应用程序级虚拟化解决方案

时间:2010-04-28 20:26:41

标签: virtualization emulation

我对编写应用程序级虚拟化解决方案感兴趣。更具体地说,我需要一种方法将正在运行的应用程序与主机操作系统完全隔离。我不一定需要或想要一个完整的虚拟机,但我需要提供隔离功能。

根据我对此事的理解,如果我可以隔离应用程序的进程空间,并为其提供一个最小的虚拟机管理程序,它提供所需的超级调用,这应该是足够的隔离。我对此完全错了吗?有没有办法只隔离进程空间而不必虚拟化其他所有内容?另外,有没有我可以用来开始我的开发的资源?

另外,研究dynarec仿真器是如何工作的,因为它们基本上可以满足我的需求,但这会提供足够的隔离吗?

提前致谢。

2 个答案:

答案 0 :(得分:0)

你不能只使用Microsoft App-V吗?或者你需要自己写点什么?

答案 1 :(得分:0)

我们有一个内部解决方案,通过虚拟化注册表和环境变量来提供流程级虚拟化。

一个简单的解决方案是利用AppInit_DLLs将dll加载到新进程并在那里开始处理(比如评估一些状态或配置,并设置环境变量等)。不幸的是,我们的注册表解决方案使用微软提供的自定义应用程序compat db文件多年前没有任何历史记录与现在(!)...但我建议谷歌搜索“微软绕道而行”并调查该路线。

您还可以通过类似方式虚拟化.Net GAC并为.Net主机设置自定义程序集提供程序。