.Net Framework 工具Mpgo.exe与Ngen.exe】的更多相关文章

首先放出官方MSDN的文档地址 Mpgo.exe 主要用于分析程序集启动时需要哪些东西,然后将信息反馈给NGen.exe 来更好的优化本机映像,使得应用程序启动更快,工作集缩小.准备发布时,用MPGO工具启动它,走一遍程序的常规任务.与所执行代码相关信息就会写入profile并嵌入程序集文件中. Ngen.exe 利用这些profile数据来更好地优化它生成本机映像.…
原文:[CLR via C#]1.5 本地代码生成器:NGen.exe 1. NGen.exe工具,可以在一个程序安装到用户计算机时,将IL代码编译成为本地代码.由于代码在安装时已经编译好,所以CLR的JIT编译器不需要再运行时编译IL代码了,这有助于提升程序的性能. 2. NGen.exe可以加快程序的启动速度,减少程序的工作集. 3. NGen.exe生成的文件存在以下问题:     1)没有知识产权保护.在运行时,CLR要求访问程序集的元数据,这就要求同时发布包含IL代码和元数据的程序集.…
前言 在看<CLR>的时候,作者在开篇的时候提到了NGen.exe,前面一节执行程序集的代码中提到:程序或方法执行前会执行MSCorEE.dll中的JIT函数把要执行方法的IL转换成本地的CPU指令,讲代码放在内存块中,第二次调用方法的时候,由于已对方法进行了验证和编译,所以会直接执行内存块中的代码,不需要再执行JIT函数编译了.因为在方法没调用之前都会要调用JIT函数编译,在这一节的最后作者也提到,通过实验表明,CLR的JIT编译器似乎没有使自己的应用程序达到应有的性能,然后就提到了.Net…
一.JITCompiler 如你所知,JIT(just-in-time或“即时”)编译器是CLR的重要组件,它的职责是将IL转换成本地cpu指令. <<CLR via C#>>一书中在CLR的执行模型章节里有一副图形象介绍了一个方法(WriteLine)首次调用时发生的事情: JITCompiler函数被调用时,它知道要调用的是哪个方法,以及具体是什么类型定义了该方法.然后,JITCompiler会在定义该类型的程序集的元数据中查找被调用的方法的IL,接着JITCompiler验证…
一.JITComplier 如你所知,JIT(just-in-time或“即时”)编译器是CLR的重要组件,它的职责是将IL转换成本地cpu指令. <<CLR via C#>>一书中在CLR的执行模型章节里有一副图形象介绍了一个方法(WriteLine)首次调用时发生的事情: JITComplier函数被调用时,它知道要调用的是哪个方法,以及具体是什么类型定义了该方法.然后,JITComplier会在定义该类型的程序集的元数据中查找被调用的方法的IL,接着JITComplier验证…
本机映像生成器创建托管程序集的本机映像,并且将该映像安装到本地计算机的本机映像缓存中.本机映像缓存是全局程序集缓存的保留区域.一旦您为某个程序集创建了本机映像,运行库在每次运行该程序集时就会自动使用该本机映像.不必执行任何其他的过程就可使运行库使用本机映像.在程序集上运行Ngen.exe 可以提高程序集的加载和执行速度,原因是它可以从本机映像缓存中还原代码和数据结构,而不是动态生成它们.        问:C#写的程序能编译成本机代码吗?         答:可以,使用Ngen.exe即可以MS…
深入本机影像生成器(Ngen.exe)工具使用方法详解 先介绍一点背景知识:.Net程序在运行时会实时(JIT)编译,将.Net程序文件编译成cpu认识的汇编机器码.实时编译需要消耗额外的cpu和内存资源,这对于服务器端程序是无关紧要的,因为实时编译只在程序第一次运行时编译,之后就不需要再做了:如果你在做的是一个较大的winform程序或者silverlight等客户端程序时就需要考虑提前编译了..Net framework安装目录下(类似C:\Windows\Microsoft.NET\Fra…
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://goldlion.blog.51cto.com/4127613/834075 引子 由于 AnimatePacker的打包发布用的是Qt动态编译,且为了给没有Qt环境的朋友使用,会集成一些dll,所以造成了一些不便.(策划和美术都喜欢一个exe的东西吧= =) 个人对Qt静态编译不怎么感冒,大约是因为比较折腾,所以一直没弄. 近几年各种虚拟化工具迅猛发展,易用性和稳定性越来越好.…
http://qqhack8.blog.163.com/blog/static/114147985201126105626755/ 这是我2011年的东西了,当时用此方法可免杀很多马,至今依然有很大的用处 比如有一些WebShell,特别菜刀无法直接上传exe文件时(当然该工具可传任意文件) 可通过此方法向目标上传任意文件(菜刀下载功能不可用或没VPS做WEB下载的情况) 现在依旧可用于类似奇葩环境,特别是S2环境很多时候仅能上传文本 [原创]3KB大小 EXE转BAT 工具原理以及编写思路 2…
用 install4j 工具为java程序打包exe 制作人:mark 制作时间:2013-05-02 用Eclipse 将程序源码打包成jar文件. 打包jar方法我不做介绍了,相信大家都会,不会的百度一下吧. 准备工作. 将导出的jar包:aaa.jar,程序需要的图片:images,数据库database,以及你要生成exe文件后的图标 png图片,全部复制到一个SMMS文件夹下面. 打开安装好的install4j文件 输入程序全名Full Name,程序简称 Short Name, 版本…