자바는 다른 프로그래밍 언어와 달리 소스 파일을 컴파일(compile)하면 머신코드가 아닌 바이트코드가 만들어집니다.
기계어코드는 컴퓨터에서 바로 실행이 가능하지만 바이트코드는 그렇지 않습니다. 따라서 바이트코드를 기계어코드로 변환해서 사용해야 하는데, 이 역할을 수행하는 것이 바로 JVM(Java Virtual Machine)입니다. 자바 개발자는 바이트코드로 된 실행 파일을 배포하므로, 이 파일을 실행하려면 반드시 실행하는 컴퓨터에도 JVM이 설치되어 있어야 합니다.
C | JAVA | |
소스 파일 | .c | .java |
↓ | ↓ | |
실행 파일 | .exe (기계어코드) |
.class (바이트코드) |
↓ | ↓ | |
OS | JVM | |
↓ | ||
OS |
JRE(Java Runtime Environment)란
JVM와 함께 기타 실행 시 필요한 파일들이 포함되어 있는 것으로,
단순히 자바 프로그램을 내려받아 실행만 하고 싶다면 JRE만 내려받아 설치하면 됩니다.
JDK(Java Development Kit)란
JRE와 함께 기타 개발 시 필요한 개발 도구들이 포함되어 있는 것으로,
자바 프로그램을 실행도 시켜보고 싶고 개발도 하고 싶다면 JDK를 내려받아 설치하면 됩니다.
* 요약
- JVM = 자바 실행 파일(바이트코드)를 기계어코드로 변환해주는 가상머신
- JRE = JVM + 실행시 필요한 여러 파일
- JDK = JRE + 개발시 필요한 개발 도구
728x90
반응형
'etc. > IT 용어 사전' 카테고리의 다른 글
IoC(Inversion of Control)이란? (0) | 2022.04.10 |
---|---|
애플릿, 서블릿, JSP란? (웹에서의 자바 기술) (0) | 2022.04.10 |
Kubernetes란? (0) | 2021.09.09 |
AWS란? (0) | 2021.08.30 |
우분투(Ubuntu)란? (0) | 2021.08.30 |