1. JDK : Java Development Kit
: java 개발 도구
java로 SW를 개발 할 수 있도록 기능을 제공하는 패키지로
java 컴파일러인 javac, java 실행 도구인 java, JRE, JVM 등...이 들어있다.
2. JRE : Java Runtime Environment
: java의 런타임 환경으로, java 프로그램을 동작시킬 때 필요한 라이브러리 파일, 기타 파일, JVM을 가지고 있다.
런타임 환경
: 다른 SW를 실행하기 위한 환경이다.
SW 프로그램을 실행하기 위해서는 실행 환경이 필요하다. 런탐임 환경은 프로그램 실행을 위해 클래스 파일을 로드하고 메모리 등...의 액세스를 확보한다.
3. JVM : Java Virtual Machine
: java 가상머신으로 자바 프로그램 실행 환경을 만들어준다.
.java 파일을 javac로 컴파일하여 .clss(바이트 코드)로 만들게 되면 이 코드를 JVM에서 실행하게 된다.(: 기계어로 해석함, 기계에 종속적임, JVM안에 인터프리터가 들어있음.)
jvm 기능
1. java 프로그램이 어느 기기, 운영체제 상에서 실행될 수 있게 한다.
2. 메모리를 관리하고 최적화 한다.
- Heap과 Stack의 메모리 사용을 확인하고 관리한다.
- 가비지 컬랙션 프로세스를 통해 메모리를 관리한다.