CLR读书笔记

CLR 读书笔记

·         明确几个问题

1..Net framework 如何设计的,相较与COM有何重大变化

2..Net 语言如何变为IL, IL 如何保存,CLR怎样处理它,以及怎样处理托关与非托管代码之间的联系

3.为什么要为assembly配置Meta Data, CLR 怎样使用它,Meta Data 怎样生成和被使用的

4.CLR 如何使用开发中使用的数据类型

5.Exception 的底层实现

6.GC

7.  Reflector

8. Multi-Thread

9. Interface, 范型 重用已有的算法

10.Delegate, Call back function

11. Attribute

·         .Net Framework 组成

1.    CLR

o    文件加载器

o    内层管理器(GC)

o    安全系统(代码访问安全性)

o    线程池

2.    FCL (framework class library)

·         .Net framework 版本

1.2002年 .Net framework 1.0

2. 2003年 .Net framework1.1

3. 2005年 .Net framework2.0 (支持x86, AMD64, IA64)

4. .Net Compact framework (PDA, 便携式数据终端)

·         将源代码编译成托管模块

托管模块

(IL, Meta Data)

C#.......

Compiler

C#, Basic,

Jscript, Fortran

托管模块各个部分

o    标准Windows PE 文件头 类似Common object file format.

o    PE32 可运行在windows32和Windows64位版本上

o    PE32+只可运行在windows64位版本上

o    标志文件类型:GUI,CUI,DLL,并包含时间戳指出文件生成时间。只包含IL代码的模块,PE32(+)的大多信息会被忽视。对于包含本地cpu代码的模块,这个头

o    包含了与本地CPU代码的信息

o    CLR 头 (clr版本,一些标志,模块数据,资源,强名称。。。)

o    元数据(两种类型的表:源代码中定义的数据和成员;源代码中引用的类型和成员)

时间: 2024-10-07 15:56:24

CLR读书笔记的相关文章

《CLR via C#》读书笔记 之 泛型

第十二章 泛型 2014-06-15 初始泛型12.3 泛型基础结构  12.3.1 开放类型与封闭类型  12.3.2 泛型类型和继承  12.3.3 泛型类型同一性  12.3.4 代码爆炸参考 初始泛型[1][2] 返回 泛型(generic)是CLR和编程语言提供一种特殊机制,它支持另一种形式的代码重用,即"算法重用". 简单地说,开发人员先定义好一个算法,比如排序.搜索.交换等.但是定义算法的开发人员并不设定该算法要操作什么数据类型:该算法可广泛地应用于不同类型的对象.然后,

《CLR Via C#》读书笔记,持续更新...

写了快5年代码了,一直都是使用别人发明的语言,别人发明的框架做快速开发,还从来没有真正深刻的学习过底层的一些东西,于是今年我打算读<CLR Via C#>这本书,认识一下C#的底层,我觉得看这本书起码对日后代码的调优有用,以下读书笔记仅记录我在读书过程中看到的认为有用的,平时不容易被注意到的点.先按照顺序记录,直到书完全看完的那天会对这篇文章做一个分类整理. 第四章-类型基础 if (o is String)//第一次检查 { String b = (String)o;//第二次 } //为此

《CLR via C#》读书笔记 之 线程基础

第二十五章 线程基础 2014-06-28 25.1 Windows为什么要支持线程 25.2 线程开销 25.3 停止疯狂 25.6 CLR线程和Windows线程 25.7 使用专用线程执行异步的计算限制操作 25.8 使用线程的理由 25.9 线程调度和优先级 25.10 前台线程和后台线程 参考 25.1 Windows为什么要支持线程 返回 Microsoft设计OS内核时,他们决定在一个进程(process)中运行应用程序的每个实例.进程不过是应用程序的一个实例要使用的资源的一个集合

C#刨根究底:《你必须知道的.NET》读书笔记系列

一.此书到底何方神圣? <你必须知道的.NET>来自于微软MVP-王涛(网名:AnyTao,博客园大牛之一,其博客地址为:http://anytao.cnblogs.com/)的最新技术心得和感悟,将技术问题以生动易懂的语言展开,层层深入,以例说理.全书主要,包括了.NET基础知识及其深度分析,以.NET Framework和CLR研究为核心展开.NET本质论述,涵盖了.NET基本知识几乎所有的重点内容.全书分为5个部分,第1部分讲述.NET与面向对象,从底层实现角度分析了.NET如何实现面向

《C#图解教程》读书笔记之一:C#和.NET框架

一.在.NET之前的编程世界 C#语言是在微软公司的.NET框架上开发程序而设计的,首先作者给大家纠正了一下C#的正确发音:See Sharp(而不是很多人说的什么C井之类的,每次听到C井我都只能呵呵一笑). 1.1 20世纪90年代末的Windows编程 这时大多数程序员使用VB.C或C++,一些C/C++程序员使用纯Win32API,但纯Win32API不是面向对象的,而且使用它的工作量很大,比MFC还大.大多数程序员在使用MFC(Microsoft Foundation Class,微软基

[读书笔记]C#学习笔记八:StringBuilder与String详解及参数传递问题剖析

前言 上次在公司开会时有同事分享windebug的知识, 拿的是string字符串Concat拼接 然后用while(true){}死循环的Demo来讲解.其中有提及string操作大量字符串效率低下的问题, 刚好自己之前也看过类似的问题, 于是便拿出来记录一下.本文内容: 参数传递问题剖析, string与stringbuilder详解 1,参数传递问题剖析 对于C#中的参数传递,根据参数的类型可以分为四类: 值类型参数的按值传递 引用类型参数的按值传递 值类型参数的按引用传递 引用类型参数的

《C#图解教程》读书笔记之二:存储、类型和变量

一.类型初窥:掀起你的盖头来 (1)C程序是一组函数和数据类型,C++程序是一组函数和类,而C#程序是一组类型声明: (2)类型是一种模板:模板本身不是数据结构,但它详细说明了由该模板构造的对象的特征: (3)C#提供了16种预定义类型:13种简单类型(数值类型:int,float,double,decimal等:非数值类型:bool,char),3种非简单类型(object,string,dynamic): 所有的预定义类型都直接映射到底层的.NET类型.C#的类型名称其实就是.NET类型的别

C#入门经典(v6) 读书笔记 (第一部分 C#语言)

前言 我说会C#,实际都是皮毛.买了<C#入门经典>(v6)和<C#高级编程>(v9),决定系统地学一遍.这是我的读书笔记而已,不是什么教程,如果有错误,还请各路大神指正. 希望自己坚持看完这两本书,做好笔记,补缺补漏. 第1章 C#简介 Framework 框架 Compact 精简的 OOP(Object-Oriented Programming,面向对象编程) CTS(Common Type System,通用类型系统)指如int等最基础的数据类型 CLR(Common La

Querying Microsoft SQL Server 2012 读书笔记:查询和管理XML数据 2 -使用XQuery 查询XML数据

原文:Querying Microsoft SQL Server 2012 读书笔记:查询和管理XML数据 2 -使用XQuery 查询XML数据 XQuery 是一个浏览/返回XML实例的标准语言. 它比老的只能简单处理节点的XPath表达式更丰富. 你可以同XPath一样使用.或是遍历所有节点,塑造XML实例的返回等. 作为一个查询语言, 你需要一个查询处理引擎. SQL Server 数据库通过XML数据类型方法的T-SQL 语句来处理XQuery. SQL Server 并不支持所有的X