[Go] 잠자는 이발사 문제
😪 잠자는 이발사 문제란? '잠자는 이발사 문제'는 운영체제의 프로세스 간 통신과 그들의 동기화 문제를 직관적으로 설명하기 위한 문제입니다. 잠자는 이발사 문제는 다음과 같이 정의됩니다. 이발사: 이발사는 고정된 개수의 대기석이 있는 바버샵으로 출근합니다. 대기 중인 손님이 있다면 손님을 이발 의자에 앉혀서 이발을 해 주고, 대기 중인 손님이 없다면 이발사는 낮잠을 잡니다. 손님: 손님은 이발을 받으러 바버샵에 갑니다. 이발사가 다른 손님을 이발하고 있다면 대기석으로 이동합니다. 대기석이 비어있으면 빈자리에 앉아서 기다리고, 그렇지 않다면 바버샵을 나갑니다. 이발을 받을 차례가 된 손님은 이발 의자로 이동하며 이발사가 자고 있다면 이발사를 깨웁니다. 문제: 이발사와 손님의 행동 시간이 확실하게 구분되어 ..
Go/코딩 하기
2023. 9. 30. 11:35