Closed msung99 closed 3 months ago
식사하는 철학자 문제는 교착상태를 표현하는 대표 문제입니다. N명의 철학자가 존재하고 N-1개의 젓가락/포크가 존재합니다. 한철학자가 자신의 N-1, N번째 자원을 점유하면 식사를 할 수 있습니다. 포크가 철학자의 수 * 2보다 부족하기 때문에 필연적으로 식사를 끝내기 전까지 다른 철학자는 대기해야 하고 이때 교착상태가 발생합니다.
예방, 회피, 탐지, 복구하는 방법이 있습니다.
데드락을 예방하는 방법은 데드락을 발생시키는 4가지 필수조건 점유대기, 선점불가, 순환대기, 상호배제 중 한가지를 골라 미리 해결해서 예방하는 것입니다.
데드락이 이미 발생했을때 해당 프로세스를 종료하거나 자원을 강제로 회수하는 방식으로 해결할 수 있습니다.
식사하는 철학자 문제(Dining Phliosophers Problem) 에 대해 설명해주세요.
데드락을 해결하기 위한 해결방안 4가지에 대해 설명해주세요.
데드락 예방(Prevention) 기법에는 어떤 방식이 있으며, 각 방식의 장단점에 대해 설명해주세요.
데드락 회복(Recovery) 기법은 어떠한 방식으로 회복을 수행하는에 대해 설명해주세요.
예상 면접 질문
관련 포스팅
https://haon.blog/cs/os/deadlock/