프로세스나 스레드가 특정 조건이 충족될 때까지 반복적으로 CPU를 사용하며 루프를 도는 방법
이 방법은 프로세스가 필요한 자원을 기다리거나 특정 이벤트를 대기할 때 사용
이 동안 CPU는 해당 프로세스에 할당된 상태를 유지하므로 다른 작업을 수행할 수 없음
1단계 : Process 1이 공유 자원을 사용하고 있음
- Process 1 : 현재 공유 자원(Shared Resource)를 사용하고 있음
- 공유 자원 : Process 1에 의해 점유되어 사용 중
2단계 : Process 2가 공유 자원이 필요해짐
- Process 1 : 여전히 공유 자원을 사용하고 있음
- Process 2 : 이제 공유 자원이 필요해짐, 그러나 현재 공유 자원이 Process 1에 의해 사용 중이므로, Process 2는 해당 자원에 접근할 수 없음
3단계 : Process 2가 Busy Waiting에 들어감
- Process 1 : 계속해서 공유 자원을 사용하고 있음
- Process 2 : 공유 자원이 사용 가능해질 때 까지 대기, 이 대기 방식은
Busy Waiting
임
- Process 2는 자원이 해제될 때까지 CPU를 점유한 채 루프를 돌며 자원의 상태를 지속적으로 확인
Busy Wait
의 한 형태로 특정 자원에 대한 접근을 제어하기 위해 사용되는 동기화 기법