你能将Phoenix编译器用作更强大的NGEN吗?

时间:2008-09-19 12:32:54

标签: .net compiler-construction native ngen

如果您不了解Phoenix,它是Microsoft的编译器框架,它可以成为所有新编译器的基础。它可以从CIL,x86,x64和IA64读取代码;并在x86,x64,IA64或CIL中发出代码。

我可以使用它将纯.Net应用转换为纯本机应用吗?我的意思是,它不必加载任何.Net .dll(甚至不是mscoree),并且将具有相同的语义?当然,这不包括反思。

1 个答案:

答案 0 :(得分:5)

在不了解Phoenix的情况下,为了让.NET应用程序本地运行,你还需要一个本机版本的框架,除非你不使用框架(这几乎是不可能的)。

CLR还包括垃圾收集,程序集加载等,因此转储CLR的解释部分可能不会对.NET应用程序的性能产生太大影响。

此外,来自凤凰城FAQ

  

Q值。如何从原生图像重新定位到MSIL图像(反之亦然)?

     

一个。不是很容易。这不是一个受支持的场景,虽然理论上可能,但我们不知道有谁真正做过。