Computer Science/운영체제
2022. 6. 3.
Chapter 08. Deadlocks
Deadlock 이란?) 어떤 스레드가 필요로 하는 자원을 다른 대기 스레드에서 점유하고 있고, 대기 스레드 역시 다른 스레드가 작업을 끝내기를 기다리고 있기 때문에 대기상태가 영원히 끝나지 않는 현상이다. 즉 교착상태에 빠져서 아무것도 못하는 경우를 의미한다. 여러 개의 자원이 있는 시스템에서 동기화가 필요한 스레드들끼리 자원을 공유한다. 이러한 자원을 하나의 type으로 묶을 수 있는데, 내부에는 여러 identical instance로 이루어져 있다. request(요청) -> use(사용) -> release(반납)의 순서로 자원을 사용하는 데 사용 단계에서 여러 자원을 사용할 수 있다. 자원에 포함되는 인스턴스의 갯수는 중요하지 않고 type이 중요하다. Deadlock의 특징) 아래 4가지 조..