CLR的执行模型】的更多相关文章

.Net 从代码生成到执行,这中间的一些列过程是一个有别于其他的新技术新概念,那么这是一个什么样的过程呢,有什么样的机制呢,清楚了这些基本的东西我们做.Net的东西方可心中有数.那么,CLR的执行模型是一个什么样的过程呢? 将源代码编译成托管模块 --> 将托管模块合并成程序集 --> 加载公共语言运行时 --> 执行程序集的代码 目录 将源代码编译成托管模块 将托管模块合并成程序集 加载公共语言运行时 执行程序集的代码 本地代码生成器:NGen.exe Framwork类库入门 通用类…
第一章 CLR 的执行模型(2) 本篇内容大纲 Framework 类库(Framework Class Library , FCL) 通用类型系统(Common Type System,CTS) 公共语言规范(Common Language Specification,CLS) 总结 一.Framework 类库(Framework Class Library , FCL) 1.mscorlib.dll (Microsoft Core Library,微软核心类库) 我们先来看个例子.新建一个…
CLR via C# 读书笔记:第一章 CLR 的执行模型(1) 第Ⅰ部分CLR基础.这部分为三章(第一章:CLR的只想能够模型,第二章:生成.打包.部署和管理应用程序及类型,第三章:共享程序集和强命名程序集)大部分都是概念性的东西,看起来比较的枯燥无味,由于都是概念性的东西所以也比较难于理解,不过这些知识也是后面深入的前提,要想深入的了解.net平台及C#语言,这些概念性的知识也是必须懂得的.废话不多说了,咱们还是硬着头皮一起来看看第一章吧!由于一章内容较多,我会分开来写.本篇内容大纲: 将源…
好吧,废话少说,先上一章Hello World图: 我们有了一个Hello world程序,如此之简单,再加上我今天没有用汉字编程o(>﹏<)o,所以一切很简单明了. 故事开始: 编译: 一个程序写完肯定要编译,以前什么C啊什么的都是编译成本机的CPU指令,但是我们的C#不是. C#,VB.NET都会把它们编译成托管模块,托管模块在一个标准的可移植的PE文件中.(那些懵懂的少年肯定慌了,这是什么鬼,又是托管模块又是PE文件的.莫慌,所有你听不懂的高大上的术语其实都很简单,你现在不需要懂,听我慢…
1.1将源代码编译成托管模块…
1.1将源代码编译成托管代码模块…
CLR(Common Language Runtime)公共语言进行时是一个可由多种编程语言使用的“进行时”. 将源代码编译成托管模块 可用支持CLR的任何语言创建源代码文件,然后用对应的编译器检查语法和分析源代码.无论选择哪个编译器,结果都是托管模块(managed module).托管模块是标准的32位Microsoft Windows可移植执行体(PE32)文件,或者是标准的64位Windows可移植执行体(PE32+)文件,他们都需要CLR才能执行.(注:PE是Portable Exec…
在非托管的C/C++中,可以进行一些底层的操作     "公共语言运行时"(CLR)是一个可由多种编程语言使用的"运行时"          CLR的核心功能包含:         内存管理         程序集加载         安全性         异常处理         线程同步       可由支持CLR的编程语言编写源代码,再由对应的编译器检查语法和分析源代码,最后都会生成托管模块,托管模块需要CLR才能执行       托管模块的组成:    …
1:公共语言运行时(Common Language Runtime,CLR)是一个可由多种编程语言使用的“运行时”.CLR的核心功能(比如内存管理.程序集加载.安全性.异常处理和线程同步)可由面向CLR的所有语言使用: 2:C#源代码文件--->C#编译器--->托管模块(中间语言IL和元数据):无论选用哪个编译器,结果都是一个托管模块:托管模块是一个标准的32位可移植执行体(PE32)文件,或者是一个标准的64位Windows可移植执行体(PE32+)文件,它们都需要CLR才能执行: 3:托…
1. 概述 本章主要是介绍从源代码到可执行程序的过程中,CLR所做的工作. 2. 名词解释 ① 公共语言运行时(Common Language Runtime, CLR),是一个可由多种语言使用的 运行时,核心功能(内存管理.程序集加载.安全性.异常处理和线程同步)可由面向CLR的所有语言使用. ② PE32:32位 Microsoft Windows 可移植执行体.    PE32+:64位 Microsoft Windows 可移植执行体. ③ 元数据 是一组数据表,这些数据表描述了 模块中…