[JVM 밑바닥까지 파헤치기] 3-3. 가비지 컬렉터와 메모리 할당 전략: 구현
저우즈밍 님의 "JVM 밑바닥까지 파헤치기" 책을 정리한 포스팅 입니다 1. 루트 노드 열거GC를 수행하려면 어떤 객체가 살아있는지 먼저 알아야 함이를 위해 GC Root라는 출발점을 기준으로 참조 그래프를 따라 탐색함대표적인 GC Root는 스레드 스택, 정적 변수, 레지스터가 있음항목설명Stop-the-world- 루트 노드 탐색은 실행 중인 애플리케이션과 충돌하므로 반드시 stop-the-world가 필요함OopMap (Object Offset Map)- 각 스레드 스택에 존재하는 객체 참조의 위치 정보를 담은 맵- 모든 시점이 아닌, Safe Point에서만 생성되어 성능 최적화됨객체 이동 지원- GC 과정에서 객체 주소가 바뀌는 경우, OopMap을 통해 스레드 스택 내 참조도 정확하게 갱신함-..