Chapter 1 The CLR execution Model
1.JIT-Compiler
At the first time calling on a IL method, the JIT-Compiler compiles the IL into native CPU code and put them in dynamic memory, then, the subsequent calls will execute the native code directly.
2. In CLR, the performance is quite good for most applications
3. The CLR offers the ability to execute multiple managed applications in single OS process
4. IL Basics
IL itself is in the binary format which means it can't be read by the human
http://www.codeproject.com/KB/msil/ilassembly.aspx
5. Useful Tools:
CLRVer.exe
ILAsm.exe -- generates a portable executable (PE) file from Microsoft intermediate language (MSIL)
ILDasm.exe -- takes a portable executable (PE) file that contains Microsoft intermediate language (MSIL) code and creates a text file suitable as input to Ilasm.exe (IL Assembly Language, readable)
NGen.exe
PEVerify.exe
6. CLS
CLS compliant
Cross Language Interoperability” section in the .NET Framework SDK documentation
(http://msdn.microsoft.com/en-us/library/730f1wy3.aspx).
7. Interoperability with Unmanaged Code
1>Managed code can call an unmanaged function in a DLL
2>Managed code can use an existing COM component (server)
3>Unmanaged code can use a managed type (server)
Chapter 2 Building, Packaging, Deploying, and Administratering Applications and Types
1. Respond file local one and global one (%SystemRoot%/Microsoft.NET/Framework/vX.X.X/csc.rsp)
2. An assembly is a unit of reuse, versioning, and security. It allows you to partition your types and resources into seperate files so that you, and consumers of your assembly, get to determine which files to package together and deploy.
3. Assembly Linker (AL.exe)
csc /t:module RUT.cs
csc /t:module FUT.cs
al /out:JeffTypes.dll /t:library FUT.netmodule RUT.netmodule
4. Version and Culture
5. Configurations
%SystemRoot%/Microsoft.NET/Framework/version/CONFIG