여러 개념들
CPU 관련
- CPU 스케줄링: 여러 프로세스가 CPU를 공유하는 방식
- CPU 사용률: (실제 작업시간 / 총시간) × 100%
- Throttling: CPU 사용을 의도적으로 제한
- Cooldown: 과부하에서 벗어나기 위한 회복 기간
- Workload: 프로세스가 해야 할 일의 양
Deadlock 관련
- Multithreading: 하나의 프로세스 내 여러 스레드 동시 실행
- 자원: 여러 스레드가 공유하는 데이터/객체
- 락(Lock): 한 번에 1개 스레드만 접근하도록 제한
- Deadlock: 2개 이상 스레드가 서로의 자원을 무한히 기다리는 상태
- 데드락 4가지 조건: Mutual Exclusion, Hold and Wait, No Preemption, Circular Wait
- 자원 획득 순서: 모든 스레드가 동일 순서로 자원 획득
출처: Codyssey-B1/B4-2