상호배제를 구현한 것
자물쇠 기능을 코드로 구현한 것, 동시에 접근해서는 안되는 자원에 동시에 접근하지 않도록 만드는 도구
사용자가 다루기 좋은 동기화 도구 (두 동기화 모두 가능)
모니터 안에는 하나의 프로세스만 가능
-> 네 가지 모두 있으면 발생됨
비선점 : 한 프로세스가 자원 점유시 뺏을 수 없는 상태
점유와 대기 : 한 프로세스가 이미 자원을 할당 받았는데 다른 자원도 할당 받으려고 하는 상태
원형 대기 : 자원 할당 그래프가 원형으로 이루어지는 상태
상호배제 : 한 프로세스가 사용하는 자원은 다른 프로세스가 사용할 수 없는 상태
예방 / 회피 / 회복