[Java의 정석] JVM(Java Virtual Machine)

말하는 감자·2022년 5월 14일
0

Java의 정석

목록 보기
3/32
post-thumbnail

Chapter 01 자바를 시작하기 전에

1. 자바(Java Programming Language)

1.4. JVM(Java Virtual Machine)

📌 JVM(Java Virtual Machine)

📍 JVM이란?

JVM은 'Java virtual machine'의 약자로 '자바를 실행하기 위한 가상 기계'이다.
영어권에서는 컴퓨터를 머신(machine)이라고 하므로 '자바를 실행하기 위한 가상의 컴퓨터'라고 이해하면 좋을 것이다.

'가상 기계(virtual machine)'는 소프트웨어로 구현된 하드웨어를 뜻하는 넓은 의미의 용어이며 컴퓨터의 성능이 향상됨에 따라 점점 더 많은 하드웨어들이 소프트웨어화되어 컴퓨터 속으로 들어오고 있다.
'가상 컴퓨터(virtual computer)'는 실제 컴퓨터(하드웨어)가 아닌 소프트웨어로 구현된 컴퓨터라는 뜻으로 컴퓨터 속의 컴퓨터라고 생각하면 된다.

자바로 작성된 애플리케이션은 모두 이 가상 컴퓨터(JVM)에서만 실행되기 때문에 자바 애플리케이션이 실행되기 위해서는 반드시 JVM이 필요하다.

📍 Java 애플리케이션과 일반 애플리케이션의 비교

일반 애플리케이션의 코드는 OS만 거치고 하드웨어로 전달되는데 Java 애플리케이션은 JVM을 한번 더 거칠뿐더러 하드웨어에 맞게 완전히 컴파일된 상태가 아니고 실행 시에 해석(interpret)되기 때문에 속도가 느리다는 단점을 가지고 있다.

그러나 요즘엔 바이트코드(byte code)를 하드웨어의 기계어로 바로 변환해주는 JIT컴파일러와 Hotspot과 같은 신기술의 도입으로 JVM의 기능이 향상되어 속도문제가 상당히 개선되었다.

📍 다양한 버전의 JVM

자바 언어의 특징 1. 운영체제에 독립적에도 언급했듯이 OS에 따라 다양한 버전의 JVM이 필요하다.


📑 원본 자료

  • Java의 정석(3판) [남궁 성/도우출판/2016]
profile
나는 말하는 감자다

0개의 댓글