본문 바로가기

TIL

<자바 Java> JVM이란?

- JVM이란?

Java Virtual Machine, 즉 자바 가상 기계를 뜻한다.

 

 

- 왜 필요한가?

자바 프로그램은 기본적으로 우리가 사용하고 있는 운영체제에서 바로 사용할 수 없다.

무슨 이야기냐 하면, 구조가 이렇다.

 

Java (소스파일, .java) -> 컴파일러가 컴파일(해석, 번역) : javac.exe -> 바이트 코드파일(.class) : 자바 프로그램 -> JVM을 통해 운영체제에서 사용.

 

즉, 자바 프로그램은 위처럼 완전한 기계어어도 아니고, 중간 단계의 바이트 코드이기 때문에 이것을 바로 운영체제에서 사용하기는 어려운 것이다.

따라서 자바 프로그램을 사용하지 못하는 운영체제를 대신해, 자바 프로그램을 해석하고 실행할 수 있는 가상의 운영체제로서 JVM을 도입한 것.

 

그런데 'Java Virtual'까지는 이해하겠는데 왜 Machine 즉, 기계냐...?

영어권에서는 컴퓨터를 '기계'라고 칭하기 때문이라고 한다. 그래서 'Java Virtual Machine'이 되었다. (이해에 참고)

 

- JVM의 효용

그래서 간단히 말하자면, JVM을 통해 우리는 편리하게 운영체제 종류에 관계없이 동일한 결과를 만들어낼 수 있다. JVM이 중간다리 역할로서 자바 프로그램을 각 운영체제에게 똑같이 실행하고 해석해주기 때문이다.

 

 

참고 : 도서 <이것이 자바다>