MSIL到本机代码存储

本文关键字:存储 本机代码 MSIL | 更新日期: 2023-09-27 18:02:10

这是一个非常基本的问题。

根据MSDN MSIL To Native Code, JIT编译是按需进行的。每次当我们运行汇编JIT编译器将MSIL转换为本机语言?或者当我们第一次运行汇编程序时,它会将本机语言代码转换并存储到某个地方?

提前感谢!

MSIL到本机代码存储

JIT编译器在启动应用程序时编译代码并将其存储在内存

此代码可以由ngen.exe(本机图像生成器)缓存并存储在本机图像缓存中。这将在下次启动应用程序时自动加载,并且您不需要第二次JIT MSIL代码。

Ngen.exe创建本机映像,这些映像是包含编译的特定于处理器的机器码的文件,并将它们安装到本地计算机上的本机映像缓存中。运行时可以使用缓存中的本机映像,而不是使用即时(JIT)编译器来编译原始程序集。

本机图像缓存可以在类似C:'Windows'assembly'NativeImages_v4.0.30319_64的路径上找到。此路径无法通过Windows资源管理器访问,因此请使用cmd或powershell。