Embedded system/[KOCW] 운영체제
[운영체제] 교착 상태 (Deadlock)
● 교착 상태 (Deadlock) 두 개 이상의 프로세스나 스레드가 서로 자원을 얻지 못해서 다음 처리를 하지 못하는 상태 위의 그림은 사거리가 막혀있는 상황이다. Deadlock이란 일련의 프로세스들이 서로가 가진 자원을 기다리면서 잠들어 있는 상태를 의미한다. 자원이라는 것은 하드웨어 자원일 수도 있고 소프트웨어 자원일 수도 있다. 예를 들어, 하드웨어 자원일 경우 tape drive 두 개가 있다고 했을 때, 하나의 tape drive에서 읽어 다른 tape drive에다가 copy를 하고 싶다고 하자. 두 프로세스가 각각 tape 두 개의 자원을 가져야 읽고 쓰는 행위를 할 텐데, 상대방이 가진 자원을 서로 계속 요구하게 되면 프로세스 진행이 되지 않는다. 소프트웨어 자원일 경우에는 프로세스 0 ..