본문 바로가기
IT/JAVA

JAVA - 자바 가상 머신(Java Virtual Machine)

by 삐약 개발자 2024. 12. 3.
반응형

JVM이란?

JVM은 자바로 작성한 소스 코드를 해석해 실행하는 별도의 프로그램임

자바는 JVM을 매개해서 운영체제와 소통함

JVM이 자바 프로그램과 운영체제 사이에서 일종의 통역가 역할을 수행

 

 

 

 

JVM구조

노란색 박스 되어 있는 컴파일 터미널로 하는 법

javac 파일 이름
javac -d ../파일 이름 //directory 경로 설정  

unmappable character

javac -encoding UTF-8  파일 이름 //로 해결가능

 

JVM은 운영 체제로부터 소스 코드 실행에 필요한 메모리를 할당받음

그것이 바로 위 그림 상의 런타임 데이터 영역

 

Stack과 Heap

스택 - LIFO == 값이 저장됨

스택은 일종의 자료구조임 // 자료구조는 프로그램이 데이터를 저장하는 방식을 의미함

 

힙 - LOFI (?) == 데이터 저

JVM이 작동되면 이 영역은 자동 생성 // 이 영역 안에 객체나 인스턴스 변수, 배열이 저장

 

Garbage Collection

메모리를 자동으로 관리하는 프로세스

가비지 컬렉션은 프로그램에서 더 이상 사용하지 않는 객체를 찾아 삭제하거나 제거하여 메모리를 확보하는 것을 의미

동작하는 방식

반응형

'IT > JAVA' 카테고리의 다른 글

JAVA - 스레드(Thread)  (0) 2024.12.03
JAVA - 파일 입출력(I/O)  (0) 2024.12.03
JAVA - 스트림(Stream)  (0) 2024.12.02
JAVA - 람다(Lambda)  (0) 2024.12.02
JAVA - 애너테이션(Annotation)  (1) 2024.12.02