백엔드 (Backend)/자바 (Java)
[JAVA] 자바 가상 머신 (JVM, Java Virtual Machine)의 구조와 동작방식
자바 가상 머신(JVM, Java Virtual Machine) 이란? 자바 가상 머신(JVM, Java Virtual Machine)은 자바 프로그램 실행환경을 만들어주는 소프트웨어이다. 지난 포스트와 비슷한 내용이지만 과거에는 대부분의 컴퓨터 언어가 특수한 아키텍처나 OS에 맞게 컴파일되도록 설계가 되어있었다. 자바 이전에 C/C++은 모든 CPU에 맞게 컴파일될 수 있었지만 해당 CPU에 맞는 컴파일러가 필요했다. 하지만 각각의 환경을 위한 컴파일러 개발 비용은 비싸고 오랜 시간이 소요된다는 문제가 있었고 더 나은 방식을 찾기 위해 제임스 고슬링과 그 동료들은 다양한 환경의 CPU에서 실행될 수 있는 이식성이 뛰어난 Cross Platform 언어 개발에 착수하게 된다. 이렇게 자바는 "Write ..