본문 바로가기

자바기초

자바관련상식 - JVM과 바이트코드

JVM (Java Virtual Machine)

코드 최적화와 백엔드를 담당.

https://cyj42.tistory.com/entry/JVM?category=756317

 

JVM

JVM (=Java Virtual Machine. 자바 가상 머신) Java로 개발한 프로그램을 컴파일하여 만들어지는 바이트 코드를 실행시키기 위한 가상머신. 컴파일러보다 느림.(자바 명령을 한 번에 읽고 실행시키기 때��

cyj42.tistory.com

 

바이트코드 (Bytecode)

고급 언어로 작성된 소스 코드를 가상머신이 이해할 수 있는 중간 코드. (C, C++에서 어셈블리어처럼)

VM은 이 바이트코드를 각각의 하드웨어 아키텍처에 맞는 기계어로 다시 컴파일.

이진 표현법.

인터프리터(코드를 한 줄씩 읽어 내려가며 실행하는 프로그램. 속도가 느리지만 프로그램 수정이 간단) 방식으로 해석.

바이트코드로 소스 코드를 역으로 추출하는 프로그램(역컴파일러, 디컴파일러)에 취약한 편.

JDK 개발 툴 중 javac(자바 컴파일러)가 자바 소스 파일을 바이트코드로 변환.