본문 바로가기
Programming 기초/Java

[Java] Java의 동작원리

by 뭉제 2023. 1. 31.

원인 

= 소프트웨어가 구현되는 원인 -> Source

= 기호, 부호 -> Code

= 의미를 전달하는 약속 -> Language

 

결과

= application

= program

 

 

자바 소스가 프로그램으로서 동작하는 과정


컴퓨터는 자바와 같은 고급 언어로 작성된 프로그램은 직접 처리할 수 없기 때문에, 컴퓨터가 실행할 수 있는 기계어 코드로 변환하는 컴파일(compile) 과정이 필요하다. 컴파일을 전담하는 소프트웨어를 컴파일러(compiler)라고 한다.

자바는 소스 프로그램의 확장자가 .java이고, 자바 전용 컴파일러에 의해 .class 파일로 변환된다.

JVM(Java Virtual Machine, 자바 가상 머신)은 class 파일을 읽고 컴퓨터를 동작시킨다.

 

 

왜 자바의 실행 과정 중에 JVM이 끼어있을까?


자바 소스 프로그램을 컴파일하여 생성된 class 파일은 바이트 코드(byte code)로 되어있다.

 

- 바이트 코드(byte code)

 · JVM이 이해할 수 있는 언어

 · CPU에 종속적이지 않은 중립적인 코드(플랫폼에 독립적)

 · JVM에 의해 해석되고 실행되는 코드

 

class 파일은 컴퓨터의 CPU에 의해 직접 실행되지 않고, JVM이 실행시킨다.

자바로 작성된 모든 프로그램은 JVM에서만 실행될 수 있으므로, 자바 프로그램을 실행하기 위해서는 반드시 JVM이 설치되어 있어야 한다.

 

하드웨어 독립적인 바이트 코드와 이를 실행하는 JVM에 의해 한 번 프로그램을 작성하면 어느 플랫폼에서도 자바 프로그램을 실행시킬 수 있는데, 이를 WORA(Write Once Run Anywhere)이라고 한다.

댓글