| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 |
- go
- 트랜잭션
- Wil
- TCP
- 상속
- OOP
- Kotlin
- react
- 프록시
- 회고
- 코틀린
- Rust
- springboot
- netty
- 도커
- Til
- 객체지향
- Security
- MySQL
- hikaricp
- 데드락
- 2026-04
- Spring
- Spring Boot
- Java
- 자바
- Python
- thread
- JVM
- 스프링
- Today
- Total
목록Java (26)
hyuko
생각 정리용으로 써두는 글. 이번 주는 한 우물만 팠음 — JVM. 명세 §2.5(런타임 데이터 영역) 부터 시작해서 §2.6(Frames), §2.7(객체 표현), §2.9(특수 메서드) 까지 명세를 한 줄씩 본인 말로 다시 풀고, 마지막엔 메모리·GC·JIT 를 하나의 시스템으로 묶어 통합 정리까지. 거기에 면접 두 주제(브라우저 동작, 프로세스·스레드·Spring 요청 처리) 도 같이 갔음. 실무 쪽은 무선 mesh radio 환경에서 RDP 안 되던 사건이 있었는데 OSI 7계층을 다시 새기게 된 케이스였음. 두 트랙을 같이 적어둠.JVM 은 명세일 뿐이번 주 가장 크게 잡힌 게 이거. JVM 은 명세 이지 구현체 이름이 아님. HotSpot, OpenJ9, GraalVM 다 자기 마음대로 만들어..
오늘은 두 가지 결이 다른 걸 같이 정리했다. 하나는 JVM 명세 쪽 — 객체의 내부 표현이랑 특수 메서드(, ). 다른 하나는 객체 지향이란 무엇인가에 대한 본인의 생각. 면접 답변용으로 한 번 풀어 써본 거라 톤이 좀 다른데, 후자는 그대로 살려둔다.JVM은 객체의 내부 구조를 강제하지 않는다JVMS 의 객체 표현 섹션을 보면 명세가 한 문장으로 끝난다.JVM은 객체의 어떤 특정한 내부 구조도 강제하지 않는다.이게 처음부터 중요하던 말이다. JVM은 "객체가 무엇이어야 한다"만 정의하고, "내부적으로 어떻게 생겨야 한다"는 강제하지 않는다. 그래서 HotSpot, OpenJ9, GraalVM 등 각 구현체가 자기만의 방식을 자유롭게 쓸 수 있다.다만 가장 대중적인 JVM인 오라클의 HotSpot 은 ..
JVM 학습을 시작한 지 3일차다. 오늘은 새로운 진도를 나가는 대신 1~2일차에 학습한 JVMS §2.5 (Run-Time Data Areas) 와 §2.6 (Frames) 을 본인 말로 다시 정리하고, 한 장의 다이어그램으로 통합하는 시간을 가졌다.학습 1주차의 회고 성격이 강한 글이라, JVM 메모리 구조를 처음 보시는 분이라면 이전 글부터 보시면 더 좋다.JVM의 본질가장 먼저 머리에 박아둬야 할 것은 이거다.JVM은 명세일 뿐, 실제 구현체의 명칭이 아니다. 명세만 맞다면 어떻게 구성되어도 상관없다.이게 JVMS 전체를 관통하는 철학이다. 그래서 HotSpot, OpenJ9, GraalVM 같은 다양한 JVM 구현체가 존재할 수 있고, PermGen → Metaspace 같은 큰 변화도 명세가 ..
자바를 이용해 개발하기 위해서는 JVM을 필수로 알아야한다. 이번 글에서는 JVM Specification 17 기준으로 런타임 데이터 영역(Run-Time Data Areas)을 정리해본다.오라클 공식 문서를 직접 읽으면서 정리한 내용이고, 중간중간 헷갈렸던 부분과 직접 던졌던 질문들도 같이 풀어본다.JVM이 뭔지부터본격적으로 들어가기 전에 큰 그림부터 잡고 가자.자바는 하드웨어 플랫폼이라는 족쇄를 제거하여 "한 번 작성하면 어디서든 실행된다" 라는 이상을 실현한다.런타임에 핫 코드(빈번하게 실행되어 전체 성능에 영향을 크게 주는 코드)를 감지, 컴파일하고 최적화하여서 자바 애플리케이션이 최상의 성능을 내도록 도와준다.용어부터 정리하면JDK = 자바 프로그래밍 언어 + 자바 가상 머신 + 자바 클래스 ..