더북(TheBook)

엄마가 냉장고를 열어 우유가 없는 것을 확인한다.

엄마가 우유를 사러 슈퍼마켓에 간다.

엄마가 우유를 사서 집에 돌아오는 길에 아빠가 냉장고에 우유가 없는 것을 확인한다.

아빠가 우유를 사러 슈퍼마켓에 간다.

아빠가 우유를 사서 집에 돌아온다.

 

우유는 1개면 충분한데, 2개가 되어 문제가 발생한다. 이때 냉장고는 공유 자원, 엄마, 아빠는 각각 프로세스를 의미한다. 우유가 0개에서 1개가 되는 것을 기대했지만, 엄마가 우유를 사러 간지 모르고 아빠가 우유를 사러 감으로써 우유는 총 2개가 되는, 의도하지 않은 결과를 초래한다. 이러한 문제를 해결하려면 프로세스 동기화가 이뤄져야 한다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.