운영체제전자계산기조직응용기사(통합변경) · 2017년08월26일 · 80/100
80.데커(Dekker) 알고리즘에 대한 설명으로 틀린 것은?
1
교차상태가 발생하지 않음을 보장한다.
2
프로세스가 임계영역에 들어가는 것이 무한정 지연될 수 있다.정답
3
공유 데이터에 대한 처리에 있어서 상호배제를 보장한다.
4
별도의 특수 명령어 없이 순수하게 소프트웨어로 해결된다.
해설
*데커 알고리즘(Dekker's algorithm) 데커가 상호 배제를 위해 고안한 병행 프로그래밍 알고리즘. 이 알고리즘은 의사소통을 위해 공유 메모리를 사용하여 두 프로세스(또는 스레드)가 하나의 자원을 혼란 없이 공유할 수 있게 한다. 데커의 알고리즘은 검사 및 조정(test-and-set) 명령과 같은 원자적 명령이 없는 경우에도 사용할 수 있으며, 바쁜 대기(busy waiting) 알고리즘에 속한다. 이 알고리즘은 두 프로세스가 동시에 임계 영역에 들어가려고 할 때 하나만 들어가도록 한다. 한 프로세스가 이미 임계 영역에 있다면, 다른 프로세스는 전 프로세스가 끝나기를 기다려야 한다.