Category: JAVA

0

JAVA - Garbage Collection(가비지 컬렉션)

목차 Post not found: computer-science/java/gc-tunning JAVA - Garbage Collection(가비지 컬렉션) JAVA - JVM (자바 가상 머신) JAVA - Garbage Collection(가비지 컬렉션) 동적 할당 받은 메모리 중에서 사용하지 않는 메모리를 해제해 메모리 누수를 막는 메모리 관리 기법 memory leak 을 없앨 수 있다. GC Root가 될 수 있는 대상들 Stack 영역의 데이터 Static 데이터 JNI에 의해 생성된 객체들 Mark And Sweep 알고리즘 참조가 유효한 Object를 Reachable 참조가 유효하지 않은 Object를 Unreachable 이라고 부른다. Mark GC Root로부터 모든 변수를 스캔하면서 각각 어떤 객체를 참조하고 있는지 찾아서 마킹하는 과정 Mark 과정에서 Reachable 한 객체와 Unreachable 한 객체를 스캔한다 Sweep Unreachable한 객체를 Heap 에서 제거하는 과정 Compact Sweep 후 분산된 객체들을 모아 메모리 단편화 가 이뤄지는 것을 막아준다.

0

JAVA - JVM (자바 가상 머신)

목차 Post not found: computer-science/java/gc-tunning JAVA - Garbage Collection(가비지 컬렉션) JAVA - JVM (자바 가상 머신) JVM (자바 가상 머신) 자바 컴파일러에 의해 생성된 자바 바이트 코드(.class) 를 OS에 맞는 기계어로 변환해 실행할 수 있게 해준다.클래스 파일로 떨어질 수 있으면 어떤 언어라도 실행이 가능하다. (ex. kotlin) 자바 컴파일러에 의해 생성된 바이트 코드를 실행하는 표준이자 구현체다. JVM은 각 OS(운영체제) 에 맞게 설계가 돼 있다. 자바 바이트 코드만 있으면 JVM을 이용해 어느 운영체제에서나 실행이 가능하다. Stack 기반 가상 머신 JVM 구조 Class Loader, Memory, 실행 엔진(Execution Engine) 이 세가지로 구성 돼 있다.