JVM, JRE, JDK 이란
2022. 11. 11. 14:35ㆍ책 공부/스프링 입문을 위한 자바 객체 지향의 원리와 이해
반응형
※ 해당 게시물은 스프링을 위한 자바 객체 지향의 원리와 이해 ( 김종민 지음 ) 을 읽고 요약하여 작성한 것입니다.
이해하기 쉽게 먼저 JVM, JRE, JDK 의 원래 명칭을 알아두자.
- JVM ( Java Virtual Machine ) / 자바 가상 기계 ( 가상의 컴퓨터 )
- JRE ( Java Runtime Environment ) / 자바 실행 환경 ( JVM용 OS )
- JDK ( Java Development Kit ) / 자바 개발 도구 ( JVM용 소프트웨어 개발 도구 )
JVM 은 이름 그대로 가상 기계이다.
컴퓨터를 구동하기 위해서는 물리적 컴퓨터인 하드웨어와 운영체제, 그리고 그 위에서 구동될 소프트웨어가 필요하다.
거기에 더해 소프트웨어를 개발할 수 있는 개발 도구가 필요하다.
자바도 마찬가지이다.
JDK를 이용해 개발된 소프트웨어는 JRE 이라는 운영체제에 의해 가상의 컴퓨터인 JVM에서 구동된다.
즉, 자바 프로그램을 작성하면 JVM이 중재자로서 각 플랫폼에서 프로그램을 구동하는 데 아무 문제가 없게끔 만들어 주는 것이고 이러한 자바의 특성을 Write Once Run Anywhere 라고 한다.
JVM의 메모리 구조
<----- Java Heap -----> <--------- Native Memory --------->
+------+----+----+-----+-----------+--------+--------------+
| Eden | S0 | S1 | Old | Metaspace | C Heap | Thread Stack |
+------+----+----+-----+-----------+--------+--------------+
반응형
'책 공부 > 스프링 입문을 위한 자바 객체 지향의 원리와 이해' 카테고리의 다른 글
상속성 (0) | 2022.11.14 |
---|---|
추상화 ( Abstracion ) (0) | 2022.11.14 |
객체 지향의 4대 특성 (0) | 2022.11.14 |
객체(Object)와 클래스(Class) (0) | 2022.11.11 |
들어가며 (0) | 2022.11.11 |