HotSpot JVM에서 객체가 차지하는 메모리 구조 분석
객체가 메모리에 그려지는 방식
new 키워드로 생성한 인스턴스는 힙 영역에 할당된다. 그렇다면 실제로 이 인스턴스는 어떤 형태로 누워 있을까? 다음 질문에 답할 수 있어야 JVM 내부를 온전히 이해했다고 볼 수 있다.
인스턴스의 메모리 형태는 어떻게 생겼는가?
아무 필드도 없는 Object 하나가 몇 바이트나 먹는가?
필드들은 메모리 상에서 어떤 순서로 배치되는가?
...
8월 11일 14:59에 게시됨
synchronized 메커니즘과 자바 동기화 최적화 기법
사용자 모드와 커널 모드
JVM에서 스레드 동기화는 초기에는 운영체제의 커널 레벨 리소스를 사용하는 시스템 콜을 필요로 했습니다. 이 방식은 무거운 잠금(heavyweight lock)으로 알려져 있으며, 컨텍스트 스위칭 비용이 크기 때문에 성능에 부담을 줍니다. 현대 JVM은 이러한 문제를 해결하기 위해 다양한 사용자 모드 내 최적화 기법을 도입했습니다.
CAS (Compare-an ...
6월 25일 19:39에 게시됨