본문 바로가기

JVM2

자바 JVM (RUNTIME DATA AREAS) 자바의 기본서적을 보면 자바는 '플랫폼에 독립적이다.'라고 설명되어있다. 하지만 그 설명이 매우 미약하여 대부분의 사람들은 왜 플랫폼에 독립적인지 잘 모른다. 자바의 철학이 바로 'Write Once, Run Everywhere' 인데, 이는 한번 작성된 프로그램은 어디에서나 실행 가능해야 한다라는 뜻이다. 이 철학을 실현하기 위해 가장 중요한 것이 바로 JVM이다. 사용자가 .java 파일을 작성하여 javac로 컴파일을 하게되면 .class라는 확장자를 가진 파일이 생긴다. 이는 JVM(Java Virtual Machine)이 읽을 수 있는 Bytecode로 해석된 것이며, 이 class파일을 가지면 JVM이 설치된 그 어느 곳에서도 사용이 가능하다는 것을 의미한다. 이로써 자바는 플랫폼에 독립적이다.. 2020. 4. 1.
JVM 우선 JVM이란? 자바 가상 머신이라 부른다. 자바와 운영체제사이에서 중계자 역할을 한다. 자바가 운영체제 종류에 영향받지 않고 돌아갈 수 있도록 한다. 메모리 관리를 자동으로 해준다 (GC) 여기서 중요한 것은 운영체제와 플랫폼 종류에 의존적이지 않고 독립적으로 JAVA프로그램이 실행된다. 위 그림을 설명하면... Java Compiler(자바 컴파일러)에 의해 Java source(.java) 파일은 Byte code로 변환된다. Class Loader(클래스 로더)는 이 변환된 Byte code(.class) 파일을 JVM 내로 class를 로드하고 Link작업을 통해 배치 등 일련의 작업을 한다. 또 런타임시 class를 load한다. Execution Engine(실행 엔진) 은 Class Lo.. 2020. 1. 30.