garbage collection

· Study/Java
이 글을 작성하기 위해 지난 한 달 동안 Garbage Collection(이하 GC)에 대해 자세히 공부해보았다. 이번 글에서는 Java에서 사용하는 Generational GC에 대해 알아보며, Naver D2 블로그의 Java Garbage Collection 글과 Java HotSpot VM G1GC 글을 토대로 작성했다. 계속해서 글을 읽기 전에 아래 네 글을 읽고 오는 것이 좋다. [Garbage Collection] (1) 개념, 유래, 한계, GC에 대해 알아야 하는 이유 [Garbage Collection] (2) GC 알고리즘 - Reference Counting Algorithm(참조 횟수 카운팅) [Garbage Collection] (3) GC 알고리즘 - Tracing Garba..
지난 3편에 이어, Garbage Collection(이하 GC, 가비지 컬렉션)의 알고리즘 중 Tracing GC(추적 기반)에 대해 계속 알아본다. 다시 말하지만 Tracing GC에서는 아래 알고리즘들에 대해 작성할 예정이며, 지금까지 세 개의 알고리즘에 대해 알아보았다. - Mark-Sweep Algorithm - Mark-Sweep-Compact Algorithm - Tri-color Marking Algorithm (Incremental GC) - Copying Algorithm (Incremental GC) - Generational Algorithm (Incremental GC) 이번 글에서는 앞서 살펴보았던 Mark-Sweep Algorithm의 문제인 Fragmentation(단편화) ..
지난 2편에 이어 Garbage Collection(이하 GC, 가비지 컬렉션)의 알고리즘 중 Tracing GC(추적 기반)에 대해 알아본다. Tracing GC에서는 아래 알고리즘들에 대해 작성할 예정인데, 꽤나 많은 양이 예상되므로 두 편으로 글을 나눠 쓰려고 한다. - Mark-Sweep Algorithm - Mark-Sweep-Compact Algorithm - Tri-color Marking Algorithm (Incremental GC) - Copying Algorithm (Incremental GC) - Generational Algorithm (Incremental GC) 이 글에서는 Reference Counting GC를 보완하며 만들어진 Tracing GC의 원조격 알고리즘이라 할 ..
지난 1편에 이어, 이번 글부터 본격적으로 Garbage Collection(이하 GC, 가비지 컬렉션)의 알고리즘에 대해 작성한다. 작동 방식에 따라 크게 아래 두 가지로 분류 가능한데, 1. 추적 기반 GC (Tracing Garbage Collection) 2. 참조 횟수 카운팅 GC (Reference Counting Garbage Collection) 2번부터 먼저 알아본다. Reference Counting GC 개념 Reference Counting GC는 GC의 초기 알고리즘으로, "Garbage를 발견하는 것"에 초점이 맞추어져 있다. 어느 한 메모리가 다른 메모리를 얼마나 많이 참조하는지 횟수를 세어서 메모리 접근 가능과 불가능을 나누는 방식이다. 예를 들어, A 메모리가 B 메모리를 ..
대흉근
'garbage collection' 태그의 글 목록