[운영체제] Bounded Buffer Problem
오늘은 대표적인 동기화 문제 중 Bounded Buffer Problem에 대해 알아보겠습니다. 이 문제는 Producer-Consumer Problem이라고도 불립니다. consumer는 버퍼가 비어있을 때 아무것도 가져올 것이 없기 때문에 기다려야 합니다. producer는 버퍼가 가득 차있을 때 빈공간이 없기 때문에 기다려야 합니다. semaphore를 사용하여 이 문제를 해결해보겠습니다. semaphore full = 비어있지 않은 버퍼의 개수 semaphore empty = 비어있는 버퍼의 개수 semaphore mutex = critical section 진입 여부 (critical section 진입 전, 후에 바꿔주면서 critical section에 대한 상호 배제적 접근을 보장해준다) ..
운영체제
2021. 7. 23. 09:43