deadlock

    운영체제에서의 동기화

    프로세스는 여러개가 동시에 실행될 수 있고, I/O 요청시 CPU는 idle하지 않고 다른 프로세스의 일을 처리한다. 동기화를 통해서 여러개의 프로세스가 CPU를 공유하면서 데이터를 수정한다. 이때 수행중인 퀀텀(quantum)이 끝나면, 수정 도중에 나가야 한다. 이후 다른 프로세스가 공유 데이터에 접근하여 데이터를 사용하면, 수정중이었던 불안정한 데이터를 사용하게 되고 그 결과 예상치 못한 데이터가 산출된다. 🧨 따라서 프로세스의 최종 결과가 잘못된다. 🧨 데이터의 비일관성을 해소하기 위해서, 순차적으로 수행하는 매커니즘이 필요하다. Race Condition 공유 영역(critical-section)에서 프로세스들의 사이에 제어가 없어 예측하지 못한 값이 발생하는 상태 Critical Serctio..