본문 바로가기

컴퓨터공학/Java

CS> JVM은 무엇이고 왜 자바를 Platform Independent 언어라고 할까?

1단계 코드작성 : 문법에 맞춰 코드 작성

2단계 변환(Compile) : 컴퓨터 언어로 변환하는 작업

3단계 실행 : 컴퓨터 언어로 변환된 파일을 JVM(Java Virtual Machine)으로 실행한다. 

 

 

 

 

1단계에서는 .java 파일로 소스코드를 저장한다.

하지만 컴퓨터는 이것을 이해하지 못한다.

컴퓨터는 오직 바이트 코드라는 2진수로 이루어진 언어로 작성된 것만 이해하기 때문이다. 

즉 컴퓨터 언어로 변환하는 과정을 컴파일이라고 한다. 

자바의 컴파일 명령어는 javac인데 이걸 통해서 .java 파일을 .class 파일로 변환한다. 

이 class 파일을 java 라는 명령어로 실행하면 

JVM이 플랫폼에 맞춰서 class 파일을 구동한다. 

따라서 JVM은 OS에 종속적이다. 

리눅스, 맥, 윈도우 사용되는 JVM이 다르다.  

각각의 플랫폼에 맞는 JVM을 설치해야한다.

 

 

 

요약

JVM 특징

컴퓨터 언어로 작성된 ByteCode를 실행하여 프로그램을 구동한다. 

플랫폼(OS)에 종속된다.

따라서 플랫폼에 상관없이 자바 코드를 작성하면 플랫폼에 맞게 설치된 JVM이 해당 플랫폼에 맞춰서 실행한다. 

만드는 사람은 플랫폼을 신경 안 써도 된다!!

이런 특징으로 Java를 

Platform Independent Programming Lauguage 라고 한다 

그리고 이런 걸 Cross Platform 이라고 한다.