플랫폼 독립 - 해당되는 글 1건
@플랫폼 독립
- 닷넷은 한번 작성한 프로그램을 운영체제에 상관없이 실행할 수 있다. 또한 닷넷 프로그램을 개발하는 언어에도 제약이 없어서 최소한의 규격을 만족하는 모든 언어를 활용할 수 있다. 이것이 가능한 이유는 닷넷 지원 컴파일러들이 IL(Intermediate Language)이라고 하는데 자바의 바이트 코드와 동일한 개념이다. 
물론 IL은 어디까지나 중간 코드일뿐이므로 직접적으로 실행할 수는 없다. IL이 실행되려면 기계가 이해할 수 있는 네이티브 코드로 변환하는 과정을 거쳐야 한다. 중간 코드를 기계어로 컴파일하는 작업은 JIT(Just In Time)컴파일러가 담당하는데 각 플랫폼별로 JIT컴파일러가 따로 제공된다. 그래서 JIT컴파일러만 바꾸면 어떤 플랫폼에서나 실행 가능한 것이다. 
닷넷 프로그램은 IL로만 컴파일되고 실행 직전에 플랫폼별 JIT 컴파일러에 의해 기계어 코드로 변환되어 실행된다. 물론 중간 코드를 생성함으로 인한 불이익도 있다. CPU가 IL을 직접해석하지 못하므로 컴파일 과정을 거쳐야 실행할 수 있는 번거로움이 있고 컴파일 후 실행단계를 거치므로 네이티브 언어보다 성능이 떨어진다. 하지만 인터프리터 방식으로 동작했던 초기의 자바와는 달리 닷넷의 JIT는 컴파일 방식으로 동작하므로 속도가 더 빠르다. 또한 꼭 필요한 부분만 컴파일하고 한번 컴파일한 것은 캐시한 후 두번 컴파일 하지 않도록 되어 있다.

 
저작자 표시
신고

'Study > C#' 카테고리의 다른 글

[C# : 배열의 메서드]  (0) 2010.07.25
[C# : 콘솔의 여러가지 기능]  (0) 2010.07.25
[.NET : 닷넷의 네임스페이스]  (0) 2010.07.25
[.NET : 닷넷의 장점]  (0) 2010.07.25
[.NET : 닷넷의 구성요소]  (0) 2010.07.25
[.NET: 닷넷의 구조]  (0) 2010.07.25
Trackback 0 | Comment 0

강군v's Blog is powered by Daum & tistory

 

티스토리 툴바