... | @@ -89,6 +89,7 @@ |
... | @@ -89,6 +89,7 @@ |
|
CLI명세를 기반으로 Microsoft에서 작성한 Virtual Execution System을 CLR이라 한다
|
|
CLI명세를 기반으로 Microsoft에서 작성한 Virtual Execution System을 CLR이라 한다
|
|
.Net Framework의 핵심 중의 핵심으로 코드를 실행하고 메모리를 자동 관리하며 형식의 안정성을 보장하는 등 여러 가지 실행시간 서비스(환경)를 제공한다.
|
|
.Net Framework의 핵심 중의 핵심으로 코드를 실행하고 메모리를 자동 관리하며 형식의 안정성을 보장하는 등 여러 가지 실행시간 서비스(환경)를 제공한다.
|
|
|
|
|
|
|
|
|
|
##### A common runtime for all .NET languages
|
|
##### A common runtime for all .NET languages
|
|
1. Common type system (CTS)
|
|
1. Common type system (CTS)
|
|
2. Common metadata
|
|
2. Common metadata
|
... | @@ -96,9 +97,11 @@ CLI명세를 기반으로 Microsoft에서 작성한 Virtual Execution System을 |
... | @@ -96,9 +97,11 @@ CLI명세를 기반으로 Microsoft에서 작성한 Virtual Execution System을 |
|
4. Memory allocation and garbage collection
|
|
4. Memory allocation and garbage collection
|
|
5. Code execution and security
|
|
5. Code execution and security
|
|
|
|
|
|
|
|
|
|
##### CLR Execution model
|
|
##### CLR Execution model
|
|
todo-이미지 추가
|
|
todo-이미지 추가
|
|
|
|
|
|
|
|
|
|
##### Execution engine
|
|
##### Execution engine
|
|
1. Compiles Microsoft Intermediate Language (MSIL) into native code
|
|
1. Compiles Microsoft Intermediate Language (MSIL) into native code
|
|
2. Handles garbage collection
|
|
2. Handles garbage collection
|
... | @@ -124,12 +127,13 @@ The Base Class Library (BCL) is literally that, the base. It contains basic, fun |
... | @@ -124,12 +127,13 @@ The Base Class Library (BCL) is literally that, the base. It contains basic, fun |
|
The Framework Class Library (FCL) is the wider library that contains the totality: ASP.NET, WinForms, the XML stack, ADO.NET and more. You could say that the FCL includes the BCL.
|
|
The Framework Class Library (FCL) is the wider library that contains the totality: ASP.NET, WinForms, the XML stack, ADO.NET and more. You could say that the FCL includes the BCL.
|
|
|
|
|
|
### Assembly
|
|
### Assembly
|
|
|
|
|
|
C#.VB.Net 및다른.Net 언어들로짜여진소스코드를컴파일하여생성되는결과인.exe or .dll파일을Assembly라고한다.
|
|
C#.VB.Net 및다른.Net 언어들로짜여진소스코드를컴파일하여생성되는결과인.exe or .dll파일을Assembly라고한다.
|
|
|
|
|
|
|
|
|
|
##### Assembly 구조:
|
|
##### Assembly 구조:
|
|
todo-이미지추가
|
|
todo-이미지추가
|
|
|
|
|
|
|
|
|
|
##### Assembly 실행과정:
|
|
##### Assembly 실행과정:
|
|
1. 어셈블리가CLR로로드된다.
|
|
1. 어셈블리가CLR로로드된다.
|
|
2. CLR은manifest 포함된정보를기반으로다양한작업을수행한다.
|
|
2. CLR은manifest 포함된정보를기반으로다양한작업을수행한다.
|
... | @@ -139,6 +143,7 @@ todo-이미지추가 |
... | @@ -139,6 +143,7 @@ todo-이미지추가 |
|
|
|
|
|
### Managed vs. Unmanaged
|
|
### Managed vs. Unmanaged
|
|
|
|
|
|
|
|
|
|
##### Managed code is:
|
|
##### Managed code is:
|
|
1. CLR executed code is called managed code. (any .NET language)
|
|
1. CLR executed code is called managed code. (any .NET language)
|
|
Code that contains enough information to allow the CLI to provide a set of core services
|
|
Code that contains enough information to allow the CLI to provide a set of core services
|
... | @@ -150,6 +155,7 @@ todo-이미지추가 |
... | @@ -150,6 +155,7 @@ todo-이미지추가 |
|
C. Fields
|
|
C. Fields
|
|
D. Methods
|
|
D. Methods
|
|
E. Parameters
|
|
E. Parameters
|
|
|
|
|
|
5. Protected from irregular use of types (type-safe)
|
|
5. Protected from irregular use of types (type-safe)
|
|
6. Portable between different platforms (Windows, Linux, Max OS x, etc.)
|
|
6. Portable between different platforms (Windows, Linux, Max OS x, etc.)
|
|
|
|
|
... | | ... | |