JVM / JRE / JDK

MSKim·2023년 2월 26일
0

Java

목록 보기
5/19

JVM(Java Virtual Machine)

컴퓨터는 0 또는 1의 2진수, 바이너리로 작성된 기계어를 사용한다.
.java파일을 컴파일하면 .class파일(바이트코드)이 생긴다.(바이트코드: 사람이 쓰는 자바 코드에서 컴퓨터가 읽는 기계어로의 중간 단계에 있는 코드)
JVM은 그때그때 바이트코드를 기계어로 번역해주는 역할을 한다.

JVM은 자바로 짜서 컴파일한 소프트웨어들이 JVM이 깔린 어떤 종류의 컴퓨터에서든 돌 수 있게 해주는 것.
'한번 작성하면 모든 곳에서 실행한다' Write Once Run Anywhere, W-O-R-A가 자바의 원칙이다.

JVM은 스택 기반으로 동작하며, Java Byte Code를 OS에 맞게 해석 해주는 역할을 하고 가비지컬렉션을 통해 자동적인 메모리 관리를 해준다.

JRE(Java Runtime Environment)

자바로 짠 소프트웨어가 컴파일 및 빌드까지 다 된 다음 이를 사용할 곳에 주어져서 실행이 될 때 그 환경 요소들로서 필요한 것들.
즉, 자바로 만들어진 프로그램을 실행시키는데 필요한 라이브리들과 각종 API, 그리고 JVM이 포함되어 있다.

JDK(Java Development Kit)

개발 시 필요한 라이브러리들과 javac, jdb, jar, javadoc 등의 개발 도구들이 포함되어 있고 개발을 하려면 당연히 실행도 시켜줘야 하기 때문에 JRE도 함께 포함되어 있다.

movie

profile
Today I Learned

0개의 댓글