JVM이란?
JVM(Java Virtual Machine)은 자바 프로그램을 실행하기 위한 가상 머신(Virtual Machine)입니다. 이름 그대로 물리적인 컴퓨터가 아니라, 프로그램 위에서 동작하는 소프트웨어 기반의 컴퓨터라고 이해할 수 있습니다.
자바로 작성된 코드는 .java 파일로 저장된 뒤, 자바 컴파일러(javac)를 통해 바이트코드(.class)로 변환됩니다. 이 바이트코드는 OS나 하드웨어와 무관한 중간 형태의 코드이며, JVM이 이 바이트코드를 해석하거나 실행합니다.
즉, JVM은 자바 바이트코드를 받아서 실제로 프로그램이 동작하도록 만들어주는 역할을 합니다.
왜 JVM이 필요한가?
JVM의 가장 큰 특징은 운영체제(OS)에 독립적이라는 점입니다. 자바는 "한 번 작성하면, 어디서나 실행된다(Write Once, Run Anywhere)"는 철학을 바탕으로 설계되었고, 이 철학의 중심에 JVM이 있습니다.
운영체제 독립성
- 자바는 Windows, macOS, Linux 등 다양한 플랫폼에서 사용할 수 있습니다.
- Java 코드가 JVM 위에서 실행되기 때문에, OS에 맞는 JVM만 설치되어 있으면 같은 자바 프로그램을 어디서든 실행할 수 있습니다.
'Interview Question' 카테고리의 다른 글
[Interview Question] 선언형과 명령형 프로그래밍의 차이점은? (1) | 2025.06.10 |
---|---|
[백엔드 면접 질문 준비] (7) RDB에서 페이징 쿼리의 필요성 (0) | 2025.04.15 |
[백엔드 면접 질문 준비] (5) 프로세스와 스레드의 차이는 무엇인가요? (0) | 2025.04.04 |
[백엔드 면접 질문 준비] (4) CI/CD란? (0) | 2025.04.03 |
[백엔드 면접 질문 준비] (3) HTTP 상태 코드에 대해 말해보세요. (0) | 2025.04.02 |