1
데드락의 정의
교착 상태란 두 개 이상의 프로세스 또는 스레드가 서로가 보유한 자원을 기다리면서 영원히 진행되지 못하는 상태입니다.
동기화를 열심히 구현해서 경쟁 조건은 해결했는데, 이번에는 프로그램이 아예 멈춰버리는 상황이 발생할 수 있습니다. 에러 메시지도 없고, CPU 사용률도 0%에 가깝고, 로그도 더 이상 찍히지 않습니다.
데드락 vs 라이브락 vs 기아와 1. 상호 배제를 중심으로 교착 상태의 개념의 판단 흐름을 읽습니다.
교착 상태란 두 개 이상의 프로세스 또는 스레드가 서로가 보유한 자원을 기다리면서 영원히 진행되지 못하는 상태입니다.
1971년 Coffman 등이 정리한 4가지 조건입니다.
데드락을 시각적으로 분석하는 도구가 자원 할당 그래프(Resource Allocation Graph, RAG)입니다.
데이터베이스 교착 상태 데이터베이스에서 데드락은 매우 흔합니다.