상호 배제, 진행, 한정 대기는 서로 다른 실패 모드를 막기 위한 최소 요구 조건이다.
둘 이상이 동시에 들어가면 공유 값이 덮어써진다.
아무도 쓰지 않는데 모두 기다리면 시스템이 멈춘다.
특정 스레드가 계속 밀리면 공정성이 깨진다.
판단 순서 먼저 동시 진입 가능성을 막고, 그다음 비어 있을 때의 진입 보장과 오래 기다린 스레드의 기회를 확인한다.