본문 바로가기

배운내용 정리

JVM

자바를 사용하면서 자바만 설치하고 어떻게 동작하는지에 대해서 대략적으로만 알고 있었지만 내 배캠 자바 강의를 듣고 이번에 정리를 할 겸 몰랐던 부분에 대해서도 공부하는 시간을 가졌다.

 

1. JVM이 무엇인가?

Java Virtual Machine의 약자로 자바 가상머신이라는 뜻이다.

풀어서 설명하면 여라가지의 기기 위에 Java 프로그램을 실행시킬 수 있는 가상의 기기를 만들어 주는 것을 의미한다.

2. JVM 구조

바이트 코드( Java 프로그램 변환코드 ) : 내가 작성한 코드가 운영체제가 읽을 수 있는 코드(바이트 코드)로 Java 컴파일러가 변환한 코드

인터프리터( Java .class 코드 해석기 ) :  운영체제가 읽은 바이트 코드를 기기(기계)가 실행할 수 있는 기계어로 번역

JIT 컴파일러( 빠른 Java .class 코드 해석기 ) :  인터프리터의 효율을 높여주는 서포터 해석기

메모리 영역 ( Java 데이터를 저장하는 영역 ) :  운영체제로부터 JVM이 할당받은 메모리 영역

클래스 로더 ( Java. class 바이트 코드를 메모리 영역에 담는 운반기 ) :  JVM으로 class(바이트 코드)를 불러와서 메모리에 저장

가비지 컬렉터 ( Java 쓰레기 청소기 ) : 메모리 영역에서 안 쓰는 데이터를 주기적으로 흡수해 가는 청소기

JVM구조

 

3. JRE

JVM을 설치하는 방법은 JRE를 설치하는것이다.

JRE는 Java Runtime Environment 즉 자바 실행 환경이다.

하지만, JRE(JVM)만 있다면 Java 프로그램을 실행만 시킬 수 있다.

JRE는. class 파일만 실행 가능하다.

JDK 가 javac 명령을 통해. java 파일을 실행가능한. class 파일로 변환해 준다.

 

4. JDK

JDK는 Java Development Kit로 Java 프로그램을 개발할 수 있는 키트이다.

JDK는 아래 그림처럼 JRE(JVM)의 기능을 포함하고 있다.

JDK는. java 파일들을. class 파일들로 변환해 주는 Java Compiler(javac) 기능과 디버깅 하는 jdb기능도 있다

Java의 구조