JAVA - 인터프리터,
- 컴파일러와 인터프리터 (Compilers and Interpreters)
→ 컴파일러 - 한 언어로 작성된 프로그램을 다른 언어의 프로그램으로 바꾸어 주는 프로그램
→ 처음 작성된 프로그램을 원시 프로그램(source program)이라고 부르고, 변환된 프로그램을 목적 프로그램(target program)이라 한다.
→ 고급언어로 작성된 원시 프로그램은 기계어의 목적 프로그램으로 컴파일된다.
→ 컴파일러가 원시 프로그램 전체를 한꺼번에 기계어로 바꾼 다음 실행한다.
→ 인터프리터는 프로그램을 일부분씩 기계어로 변환하여 실행한다.
→ 자바 컴파일러는 자바 원시 프로그램을 바이트 코드로 변환한다.
→ 자바 바이트 코드는 특정 컴퓨터로부터 독립적인 자바 가상기계의 기계어이다.
→ 자바 인터프리터는 자바 바이트 코드를 해석(interpret)한다.
→ C언어는 Compile 되어 기계어(.OBJ)가 되고 이게 CPU로 전달되어 실행되나, JAVA는 Compile되면 Byte code(.class)가 되고 이것이 JVM(Java Virtual Machine)으로 부터 기계어로 바뀌어 진다.
→ 즉, JAVA는 컴파일 후 바로 실행되는게 아니라 JVM을 거쳐야 하는데, 이를 인터프리터(Interpreters)라 한다.
→ CPU에 맞춰진 언어가 JAVA이다. (원래 임베디드 용으로 개발되었었다.)
→ 단점은 JVM을 CPU의 특성에 맞춰서 다 만들어야 한다. 안드로이드를 예로 들면 LG용 달빅머신, 삼성용 달빅 머신 같은 것들이 따로 있어야 하며 이는 즉, linux의 디바이스 드라이버를 각각의 하드웨어에 맞추는 것이다.
- 래퍼 클래스
'내장형 하드웨어 > JAVA' 카테고리의 다른 글
JAVA - 인수로서의 배열, 2중배열, tokenizer (0) | 2011.12.15 |
---|---|
JAVA - String 클래스의 메소드, 배열 (0) | 2011.12.14 |
JAVA - 윈도우 생성 2번째 (0) | 2011.08.09 |
JAVA - 배열 (0) | 2011.07.26 |
JAVA - 생성자 (0) | 2011.07.25 |