✅ [OS 관련 Problem Solving 질문 목록]

1. 멀티쓰레드 환경에서 공유 자원을 안전하게 처리하려면 어떻게 할까?

2. 프로세스 간 통신(IPC)을 구현해야 할 때 어떤 방법을 사용할 수 있을까?

목적 추천 방식
속도가 매우 중요할 때 Shared Memory + Semaphore
구조화된 메시지 전달 Message Queue
단순한 단방향 통신 Pipe / Named Pipe
유연하고 확장 가능한 통신 Unix Domain Socket / TCP Socket
시스템 수준 리소스 접근 조율 Semaphore만 사용

3. 데이터를 처리하는 서버가 CPU-bound일 때와 I/O-bound일 때 스레드 모델은 어떻게 달라져야 할까?

4. OOM(Out Of Memory)이 발생한 서버의 원인을 어떻게 분석할 수 있을까?

5. Context Switching이 자주 발생하는 원인은? 줄이기 위한 방법은?

✅ [자료구조 관련 Problem Solving 질문 목록]

1. LRU Cache를 직접 구현해봐.

2. O(1) 시간에 insert, delete, getRandom을 지원하는 자료구조를 설계해봐.

3. 백엔드 서비스에서 해시맵을 사용할 때 어떤 상황에서 성능이 급격히 저하될 수 있을까?