... | @@ -12,13 +12,13 @@ CLR는 두 가지 큰 기능이 있는데, 하나는 CIL를 JIT컴파일러를 |
... | @@ -12,13 +12,13 @@ CLR는 두 가지 큰 기능이 있는데, 하나는 CIL를 JIT컴파일러를 |
|
|
|
|
|
프로그램 실행 중 CLR는 다음과 같은 기능을 한다.
|
|
프로그램 실행 중 CLR는 다음과 같은 기능을 한다.
|
|
|
|
|
|
1. **Memory management**
|
|
**1. Memory management**
|
|
2. **Exception handling**
|
|
**2. Exception handling**
|
|
3. **Code access security**
|
|
**3. Code access security**
|
|
4. **Thread execution**
|
|
**4. Thread execution**
|
|
5. **Debugging**
|
|
**5. Debugging**
|
|
6. **Verification & Compilation**
|
|
**6. Verification & Compilation**
|
|
7. **Garbage Collector**
|
|
**7. Garbage Collector**
|
|
|
|
|
|
### **공통 중간 언어(CIL: Common Intermediate Language)**
|
|
### **공통 중간 언어(CIL: Common Intermediate Language)**
|
|
자바의 VM에서는 중간 언어를 특별히 바이트 코드(Byte Code)라고 한다. 이와 마찬가지로 닷넷의 CLR에서는 이를 CIL이라고 하며 보통은 줄여서 IL코드 또는 MSIL코드라고 한다. 이는 CPU에 독립적인 결과물로서 모든 닷넷 호환언어는 소스코드를 IL코드로 컴파일하고 CLR이 실행될 때 IL코드를 CPU의 기계어로 최종 번역한다. IL코드에는 자체적인 프로그래밍 문법이 있으며 ILASM.EXE라는 전용 컴파일러도 있다. IL코드는 가상 머신에서 실행된다는 의미에서 일종의 기계어와 유사하다.
|
|
자바의 VM에서는 중간 언어를 특별히 바이트 코드(Byte Code)라고 한다. 이와 마찬가지로 닷넷의 CLR에서는 이를 CIL이라고 하며 보통은 줄여서 IL코드 또는 MSIL코드라고 한다. 이는 CPU에 독립적인 결과물로서 모든 닷넷 호환언어는 소스코드를 IL코드로 컴파일하고 CLR이 실행될 때 IL코드를 CPU의 기계어로 최종 번역한다. IL코드에는 자체적인 프로그래밍 문법이 있으며 ILASM.EXE라는 전용 컴파일러도 있다. IL코드는 가상 머신에서 실행된다는 의미에서 일종의 기계어와 유사하다.
|
... | | ... | |