안녕하세요. Java 프로그래밍과 관련된 JDK, JVM, JRE와 실행원리에 대해서 알아보겠습니다.
JDK(Java Development Kit)
- 자바 개발 키트를 의미하며, JRE와 Java 컴파일러(javac), 디버거를 포함하는 프로그램를 의미합니다.
JRE(Java Runtime Enviornment)
- 자바 실행 환경을 의미, JVM을 동작하는데 필요한 각종 자바 라이브러리를 담고 있습니다.
JVM(Java Virtural Machine)
- 자바 가상 머신을 의미, 컴파일하여 나온 결과인 자바 바이트 코드를 실행시켜주는 가상 머신입니다.
- 자바 가상 머신은 운영체제에 종속되지 않으며 윈도우, MAC, 리눅스 등 다양한 OS에서 작동됩니다.
그림으로 보는 포함 관계
다음으로 자바 프로그램의 실행 흐름도에 대해서 알아보겠습니다.
이와 관련하여 다음의 그림을 살펴봅시다.
자바 프로그램의 실행 흐름도
- 컴파일된 파일을 실행할 수 있는 런처(Launcher)를 이용하여 실행됩니다.
- 런처는 " ~.class"파일을 실행하도록 하며, 최종적으로 JVM을 통해 동작하게 됩니다.
원리
1. 편집기 혹은 IDE를 통해 자바 소스코드를 작성하면 Helloworld.java 파일이 생성됩니다.
2.이 자바 소스 코드를 컴파일하게 되면 자바 바이트 코드 (Helloworld.class) 파일이 생기게 됩니다.
+) 컴파일러(javac.exe)
- 컴퓨터가 이해할 수 있는 코드로 변환하는 과정입니다.
3. 바이트 코드(Helloworld.class)가 생성되게 됩니다.
4. 이를 자바 런처(lanuncher)를 이용하여, 바이트 코드(Helloworld.class)를 실행하게 되면 JVM에서 실행되게 됩니다.
+) 자바 런처(java.exe)
- 자바 가상머신을 구동하고 그 위에서 자바 프로그램이 실행되도록 돕는 프로그램입니다.
📔Reference(참고 자료)
- 티스토리 블로그
[Java 개념]JVM, JRE, JDK 차이
JVM, JRE, JDK의 차이 많은 사람들이 자주 궁금해하는 주제인, JVM, JRE, JDK의 차이점에 대해서 알아보자 JVM Java Virtual Machine의 약어 자바가상머신이라고도 불린다. 자바 프로그램을 컴파일 해서 나온
cryptosalamander.tistory.com
2. 생활코딩
실행 - Java
코드 우선 코드에 대해서 알아보자. 코드(code) 혹은 소스(source)는 프로그램이 어떤 모습이고, 어떻게 동작해야 하는가를 표현한 일종의 설계도라고 할 수 있다. 그런데 컴퓨터 프로그래밍에서의
opentutorials.org
'프로그래밍 언어 > JAVA 환경설치 및 작동 원리' 카테고리의 다른 글
JAVA의 빌드툴 (0) | 2023.06.05 |
---|---|
빌드와 컴파일의 차이 (0) | 2023.06.05 |
JVM 동작 방식 (0) | 2023.06.05 |
Mac에서 자바 실행 환경 설정하기 (0) | 2022.10.09 |