.Net 应用程序与进程的简单理解

.Net 应用程序与进程的简单理解

lu_yi_ming(_at_)sina.com   2004.11.4


1. .Net 应用程序加载后最终变成一个普通的进程,windows 按照普通进程对待,如调度及异常处理。

2. .Net 应用程序编译后形成 IL 编码(不是x86的机器码加C函数调用)。

3. .Net 应用程序(实时编译为x86代码后)所有的基础调用都通过 .Net 类库入口实现,.Net 类库入口检查调用的合法性等,然后再进一步调用传统的操作系统的函数入口或 COM 入口。

4. .Net 应用程序的加载过程:创建一个进程,把 .Net 的支持库映射到进程地址空间中,把应用程序的 IL 编码放入进程内存空间,调用 .Net 的支持库的某个开始函数,从这个函数开始分析 IL 编码,把所有的 IL 函数入口记录为尚未编译,然后把函数 main 编译成 x86 机器码,开始调用 main,main 调用其他函数时再先编译后调用。这种方式叫托管。操作系统对整个程序的运行按照一般进程对待。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值