Engineering Note

[Java] main thread 실행 흐름과 call stack, stack frame, main thread 개념 본문

Programming Language/Java

[Java] main thread 실행 흐름과 call stack, stack frame, main thread 개념

Software Engineer Kim 2025. 8. 2. 16:41

JVM 메모리의 3가지 주요 영역

- method area, call stack, heap

 

 

 

call stack(call stack area)

- stack 자료구조를 기반으로 메서드 호출을 추적하는 공간, JVM이 thread마다 만들어 줌.

- 간단하게 stack area라고도 함.

 

 

stack frame

- 메서드가 호출될 때, call stack에 push되는 단위. 지역변수, 매개변수, 리턴 주소 등이 들어있음.

- call stack area에 차례대로 저장되는 메서드의 호출 정보

 

main thread

- Java 프로그램 실행시 JVM이 자동으로 만들어주는 최초의 thread, main() 메서드를 실행함.

 

 

[JVM 시작]
    │
    ▼
[Main Thread 생성]  ← OS에서 실제 실행 단위
    │
    ▼
[Call Stack 생성]   ← 스택 자료구조 기반, 메인 쓰레드 전용
    │
    ▼
[main() 호출됨]     → Stack Frame(main)
    │
    ├── methodA() 호출 → Stack Frame(methodA) push
    │         └── methodB() 호출 → Stack Frame(methodB) push
    │
    ▼
각 메서드 종료되면 → Stack Frame이 하나씩 pop

Comments