728x90
반응형

자바 가상 머신 (JVM, Java Virtual Machine)

시스템 메모리를 관리하면서 자바 기반 애플리케이션을 위해 이식 가능한 실행 환경을 제공한다.

JVM 은 다른 프로그램을 실행시키는 것이 목적인 프로그램이다.

자바는 완전한 기계어가 아니라 바이트 코드이기 때문에 이를 해석하고 실행할 수 있는 가상 운영체제가 필요하다.

 

이런 역할을 해주는 것이 JVM 이다.

 

JVM 의 2가지 기본 기능
- 자바 프로그램이 어느 기기 또는 어느 운영체제 상에서도 실행될 수 있게 하는 것.
즉, 한 번 작성해 어디에서나 실행한다는 원칙
- 프로그램 메모리를 관리하고 최적화 하는 것


JVM 에 대한 정의
JVM 에 대한 정의는 다음과 같이 나누어진다.
- 기술적 정의 : JVM 은 코드를 실행하고 해당 코드에 대해 런타임 환경을 제공하는 소프트웨어 프로그램에 대한 사양이다.
- 일반적 정의 : JVM 은 자바 프로그램을 실행하는 방법이다. JVM 의 설정을 구성한 다음 설정사항에 따라 실행 중에 프로그램 리소스를 관리한다.


가비지 컬렉션 (Garbage Collection)
자바 이전에는 프로그래머가 모든 프로그램 메모리를 관리했었다.
자바에서는 JVM 이 프로그램 메모리를 관리한다. JVM 은 가비지 컬렉션이란 프로세스를 통해 메모리를 관리하며
가비지 컬렉션은 자바 프로그램에서 사용되지 않는 메모리를 지속적으로 찾아내서 제거한다.
가비지 컬렉션은 실행중인 JVM 내부에서 일어난다.
JVM 은 운영체제에 종속적이다.
자바는 JVM이 운영체제와 프로그램 사이에서 해당 운영체제에 맞게 변환하여 전달하기 때문에 운영체제에서 자유롭다.
JVM 은 운영체제에 종속적이기 때문에 운영체제에 맞는 JVM을 필요로 한다.



정리해보자면
자바 가상 머신인 JVM 은 자바 프로그램이 어느 기기 또는 어느 운영체제에서도 실행될 수 있게 해준다
프로그램 메모리를 관리하고 최적화 해준다.
가비지 컬렉션을 수행해 메모리를 효율적으로 사용할 수 있게 해준다.


- 참고 사이트 -
https://www.itworld.co.kr/news/110837

 

"JVM이란 무엇인가" 자바 가상 머신 이해하기  - ITWorld Korea

자바 가상 머신(Java Virtual Machine, JVM)은 시스템 메모리를 관리하면서 자바 기반 애플리케이션을 위해 이식 가능한 실행 환경을 제공한다.Credit: JavaWorld/ IDGJVM은 다른 프로그램을 실행시키는 것이

www.itworld.co.kr

https://asfirstalways.tistory.com/158

 

#자바가상머신, JVM(Java Virtual Machine)이란 무엇인가?

#JVM이란? JVM이란 JAVA Virtual Machine, 자바 가상 머신의 약자를 따서 줄여 부르는 용어이다 (가상머신이란 프로그램의 실행하기 위해 물리적 머신과 유사한 머신을 소프트웨어로 구현한 것이다.) JV

asfirstalways.tistory.com

 

728x90
반응형
복사했습니다!