JVM 밑바닥까지 파헤치기 책을 읽고
포스트
취소

JVM 밑바닥까지 파헤치기 책을 읽고

개요

먼저, 필자가 대학원에 오기도 했으며, 입학하자 말자 너무 바쁜 일정으로 인해 글을 작성하지 못하였다. 그렇다 보니 자연스럽게 글을 쓰는 것을 미루게 되었고, 점점 더 더 많은 지식과 내용을 써야해!! 같은 압박감이 느껴지게 되었다. 우선, 지금까지 추가적으로 책을 2권을 더 읽었었고, 최근에는 논문 1일 1개 읽기 챌린지를 하고 있다. 특히, 전하고 싶은 내용은 정말로 많으나… 쓰기 위한 나의 지식이 한참 많이 부족하다! 라는 생각이 들고 있다. 거두절미하고, 대학원에 입학하자 말자, 지도 교수님에게 달려가서 연구 과제비로 구매하여 읽어본 책이였으며, 교양을 쌓기에 정말로 좋은 책이였다.

필자는 지금 현재, Memory Management Unit과 DRAM 최적화에 대해 공부와, 논문거리에 쓸 내용이 정말로 무궁무진한 이기종 컴퓨팅에 관련하여 연구를 하고있다. 그래서, Garbage Collect에 대해서 관심과, 맨 마지막에 있는 JIT, AOT관련된 내용이 있어 읽어보면 좋은 공부가 될 것 같았고, 예상대로 좋은 책이였다.

논문을 읽는것 보다 책을 읽는 것을 무척이나 좋아한다. 이유로는 논문은 지금 현재의 문제점과 개선방향에 대해서 집중하는 반면에, 책은 처음부터 끝까지 모든 내용에 대해 전반적으로 설명을 해주기 때문이다. 그렇기에, 궁금하고 더 자세히 알고 싶다면 그때서 기술의 근원이 되는 논문을 찾아보는 편이라서, 책을 좋아한다.

올해, 4월달에 나온 책을 9월에 읽는 다는건 조금 늦은감이 있긴 하다. 하지만 이 책은 3~5년이 지나더라도 읽을 사람은 분명히 많을 것이라고 필자는 생각한다. 책의 내용 자체가 현재와 미래에 대해서 이야기를 하는것이 아닌, Java의 근원부터 설명을 하며, Java 버전 1 부터 지금까지의 역사에 대한 내용이다. 그래서, 만약에 Java에 대해서 자세히 공부를 하고 싶지 않거나, Spring BootAnnotation이 어떻게 동작하는지 궁금하지 않거나, JVM이 알아서 잘해주지 않을까? 라고 생각한다면, 이 책은 필요가 없다.

부 제목을 보면 알듯이, 자동 메모리 관리, 실행 서비스시템, 컴파일, 동시성 이다보니, 책의 내용 대부분이 GC, GC, GC, Optimizing JAVA 에 대한 내용이다.

아직 책이 출간된지 얼마가 되지 않았기 때문에 자세하게 설명을 하는것은 아니라고 생각하기도 하며, 직접 읽어보는걸 추천한다.

다만, 컴퓨터 개론 공부는 최고이며 새로운 논문 거리를 만들어 준다.

내용

책을 읽으면서, GC에 대해서 3장에 대해서 자세히 설명이 되어 있었는데, 필자가 Udemy의 인강에서 공부했던, GC 내용이 한번 더 공부하는 느낌이라서 정말로 좋았다. 특히, G1는 알고 있었지만, ZGC의 가비지 컬렉터는 상상 이상으로 아이디어가 대단한 사람이라는것을 알게해주었었다. 물론, 이 책을 읽어보지 않고, 목차만 검색하더라도 충분한 책에 대한 Insight를 경험할 수 있다라고 생각한다.

3.1 들어가며
3.2 대상이 죽었는가?
3.3 가비지 컬렉션 알고리즘
3.4 핫스팟 알고리즘 상세 구현
3.5 클래식 가비지 컬렉터
3.6 저지연 가비지 컬렉터
3.7 적합한 가비지 컬렉터 선택하기
3.8 실전: 메모리 할당과 회수 전략

그 외적으로는 필자는 C/C++ 개발을 하며, 나아가 컴파일러쪽으로 연구를 하고 있다보니, Java가 어떻게 동작하는지는 읽지 않았다. (e.g. 가상 머신 성능 모니터링과 문제 해결 도구, 클래스 파일 구조, 클래스 로딩 메커니즘) 그리고, 하나의 분야에 대해서 공부를 하는 것이 아니라, 다양한 분야에 대해서 Insight를 얻는 것은 매우 좋은 것 같으며, 논문거리로 생각하기에도 좋다고 생각을 하고 있다.

히히… 최고였다..

이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.

남자친구 대행 가능한 챗봇 개발 여정기 Part. 1

GIST Developers' Night 2024에 연사로 참가하고 나서