当前位置: 首页 > news >正文

公司企业网站源码网站技术培训学校

公司企业网站源码,网站技术培训学校,建筑网片焊接机,wordpress主题模版楔子#xff1a;本篇是承继前面三篇文章而来#xff0c;分别为#xff1a;.Net 7 的 AOT 和 CLR有什么区别#xff1f;.Net 7 的 R2R,Crossgen2是什么?.Net 7 的AOT原理简析通过以上三篇的基础#xff0c;本篇来彻底解析下AOT这门技术的底层原理。AOT此终#xff0c;不再…楔子本篇是承继前面三篇文章而来分别为.Net 7 的 AOT 和 CLR有什么区别.Net 7 的 R2R,Crossgen2是什么?.Net 7 的AOT原理简析通过以上三篇的基础本篇来彻底解析下AOT这门技术的底层原理。AOT此终不再叙。.Obj(win) OR .O(Linux)目标文件AOT的第一步就是比较重要的通过ILC AOT编译器把托管代码的动态链接库DLL)编译成二进制的机器码。这个编译的过程基本上如下1.通过Roslyn把.Net代码编译成托管DLL2.通过ILC AOT编译器调用JIT编译器3.通过JIT编译器把托管DLL编译成二进制机器码4.返回ILC编译器把二进制的机器码写入目标文件.Obj OR .O。写入目标文件之后所有的代码需要运行的全局变量局部变量函数机器码函数头重定位偏移符号结构变量段偏移全部被目标目标文件包含。下一步就是进行目标机器的链接。Link(win) OR ldLinuxwin下面可以通过link.exe来链接目标文件。而linux下面可以通过ld -o命令来链接gcc或者ilc编译的目标文件.o 。然后得到的exe或者ELF就是AOT最终的文件形态。过程以上经过提炼的过程看似非常简单里面实则极其复杂而且晦涩。简单的看看。不会太深入。以下1,2以__managed__Main AOT入口函数为例它里面调用的是C#的Main函数。3以函数System.Runtime.TypeCast.LdelemaRef的重定位为例。4看链接之后。1.入口第二列00269F60是__managed__Main函数在段.managedcode$I的偏移地址也就是函数头地址。2.内容3.局部变量以下是.data段上图红色框的东西到底什么呢为何也放入目标文件跟踪下发现是函数LdelemaRef重定位处的注释。以下是部分代码蓝色框为重定位所以值是0红色框就是上面需要找的内容。4.链接之后的可执行文件。无论是win还是linux,链接之后的可执行文件体积变小了省略了函数名。可以对照下。前后PE和ELF的加载器LD和Link的中间连接过程。JITILCCL一个不落的全用上了。分支则在链接用了开源和不开源的链接器。结果微软为了支持社区提出的AOT技术这个过程搞得复杂多了。但是用起来似乎以前方便了些只不过封装太多了。
http://www.yutouwan.com/news/76015/

相关文章:

  • 三好街做网站的公司网站建设中公司
  • 个人网站空间价格个人网站建设的小清新图片
  • 外卖网站建设的策划书微信网站协议书
  • 高级建站网站做网站有域名还需要什么
  • 网站建设 软件做违法网站会怎样
  • wordpress内容导航无锡网站排名优化
  • 学做早餐网站长春网站建设方案推广
  • 做网站优化公司学校网站制作价格
  • 压缩图片在线网站免费ai域名注册
  • 网站导航固定wordpress默认index
  • 镇江网站建设推广找思创seo流量是什么
  • 网站建设的基本要求中石化第五建设有限公司官方网站
  • 论坛网站备案流程图创建一个小程序需要多少钱
  • 关于医院网站建设的通知常用的网站都有哪些
  • 哈尔滨网站域名部门网站建设开票内容些什么
  • 素材网站松岗网站开发
  • 网站域名可以做端口映射吗代写文章质量高的平台
  • 武清做网站园林公司做网站的好处
  • 家政公司网站的建设电子商务网站开发是指
  • 公司网站建设费用会计处理图书馆网站建设费用
  • 网站开发挣不挣钱杭州网站建设及推广
  • 厦门网站制作套餐网站付费模板
  • 网站建设费分多少期摊销深圳网站建设vr知识
  • 网站建站网站开发什么网站可以做投资
  • 网站商城例子下载广西住房和城乡建设厅网站
  • 百度商桥在网站怎样注册个人网站
  • wordpress 站点网络丽江市网站建设
  • 北京网站设计公司wx成都柚米科技15网站案例代码
  • 嘉兴做外贸网站比较好的公司上海网站建设公司价格
  • 台州网站制作维护网站制作 苏州