● 교착 상태 (Deadlock) 두 개 이상의 프로세스나 스레드가 서로 자원을 얻지 못해서 다음 처리를 하지 못하는 상태 위의 그림은 사거리가 막혀있는 상황이다. Deadlock이란 일련의 프로세스들이 서로가 가진 자원을 기다리면서 잠들어 있는 상태를 의미한다. 자원이라는 것은 하드웨어 자원일 수도 있고 소프트웨어 자원일 수도 있다. 예를 들어, 하드웨어 자원일 경우 tape drive 두 개가 있다고 했을 때, 하나의 tape drive에서 읽어 다른 tape drive에다가 copy를 하고 싶다고 하자. 두 프로세스가 각각 tape 두 개의 자원을 가져야 읽고 쓰는 행위를 할 텐데, 상대방이 가진 자원을 서로 계속 요구하게 되면 프로세스 진행이 되지 않는다. 소프트웨어 자원일 경우에는 프로세스 0 ..
2022.12.27 - [Operating System] - [운영체제] 프로세스 동기화 1 (Race Condition/경쟁 상태) [운영체제] 프로세스 동기화 1 (Race Condition/경쟁 상태) ● 데이터의 접근 데이터는 Storage Box에 저장되어 있고 그 데이터를 가지고 Execution Box 위치에서 연산 작업을 한 후 다시 원래 위치인 Storage Box에 저장한다. 이렇게 데이터를 읽고 연산/수정 후 결 rannnneey.tistory.com 2023.01.04 - [Operating System] - [운영체제] 프로세스 동기화 2 (Critical Section, Race condition) [운영체제] 프로세스 동기화 2 (Critical Section, Race con..