devnoong.log
article thumbnail
[JAVA] Stack 과 Heap에 대해서
JAVA 2022. 7. 27. 16:50

JVM 메모리 영역 https://devnoong.tistory.com/5 [JAVA] JVM 구조 JVM 이란? JavaVirtualMachine의 줄임말로 OS에 종속되지 않고 CPU가 JAVA를 인식 및 실행 할 수 있게 도와주는 가상 장치를 뜻한다. 자바 소스 코드로 작성된 자바 파일은 Javac라는 Java 컴파일러에 의해 JVM devnoong.tistory.com JVM구조에 대해서 이전 시리즈로 글을 올린 적이 있었다. JVM의 자세한 구조는 위의 링크를 참조하면 되고 Stack과 Heap에 대해 자세하게 알아보기 위해 기록한다. 간략하게 JVM에 할당된 메모리 영역을 보면 아래와 같다. Code 영역 실행할 프로그램의 코드가 저장되는 영역으로 ClassLoader에 의해 배치된 코드들을 ..

article thumbnail
[JAVA] JVM 구조
JAVA 2022. 7. 27. 16:40

JVM 이란? JavaVirtualMachine의 줄임말로 OS에 종속되지 않고 CPU가 JAVA를 인식 및 실행 할 수 있게 도와주는 가상 장치를 뜻한다. 자바 소스 코드로 작성된 자바 파일은 Javac라는 Java 컴파일러에 의해 JVM이 해석 할 수 있도록 바이트 코드 형태인 클래스 파일로 변환됨. 바이트코드 형태인 class파일은 ClassLoader를 통해 JVM 메모리에 할당 되고 실행 엔진에 의하여 기계어(바이너리코드)로 변환 된다. CPU는 바이너리코드를 읽어 컴퓨터가 이해하고 수행 할 수 있도록 Runtime Data Area에 배치되어 실질적인 수행을 처리해준다. 즉, 컴파일과 실행이 동시에 일어나는 것이 아닌 ① 컴파일 과정 ② 실행 과정 이렇게 분리돼서 수행된다. ① 컴파일 과정은 ..