JVM2 [Java] JVM GC 처리 과정 1. GC란 Garbage Collection의 약자인 GC는 JVM에서 제공하는 메모리 관리 기능입니다. Runtime Data Area의 Heap 영역에 저장된 객체들을 따로 정리하지 않으면, 메모리가 가득차 에러가 발생할 수 있습니다. 이를 방지하고자 JVM에서는 GC를 통해 메모리를 관리해 주며, 이 덕분에 개발자는 편하게 프로그래밍을 할 수 있습니다! (개발자들은 어느 시점에 GC가 동작하는지 모릅니다. 언제 역할을 수행하는지는 모르지만.. 늘 고마워 GC..) Java에서 System.gc()를 직접 호출할 수도 있지만.. 해당 메소드를 호출하는 것은 시스템의 성능에 매우 큰 영향을 미치므로 절대 호출해서는 안됩니다! 2. Java에 GC 도입이 가능했던 이유 Java는 weak generat.. Java 2024. 4. 16. [Java] JVM의 구조와 자바 컴파일 과정 0. 자바의 특징 자바의 특징이라고 하면 플랫폼 독립성이 먼저 떠오르곤 합니다. 자바가 OS에 독립적일 수 있는 이유는 바로 JVM(Java Virtual Machine) 덕분인데요! 오늘은 자바가 플랫폼 독립성을 가질 수 있는 이유인 JVM의 기능과 컴파일 과정에 대해 알아보도록 하겠습니다! 1. JVM 구조 자바 가상 머신 JVM은 자바 프로그램 실행환경을 만들어 주는 소프트웨어입니다. JVM에는 자바 실행 환경 JRE(Java Runtime Environment)가 포함되어 있기 때문에, 개발자가 작성한 자바 파일을 컴파일한 .class 파일은 JVM에서 실행됩니다! (1) 클래스 로더 (Class Loader) 자바는 동적으로 클래스를 읽어옵니다. 그렇기 때문에 런타임 환경이 되어서야 모든 코드가.. Java 2024. 4. 16. 이전 1 다음