728x90
데드락은 두개 이상의 프로세스가 동시에 실행될 때 운영체제 혹은 소프트웨어간 자원관리에 에러가 발생하여
프로세스가 멈춰버리는 현상을 말한다. (이때 간혹 운영체제 자체가 멈추기도 한다).
둘 이상의 프로세스 실행 시 시스템 자원 호출 요청 순서가 뒤엉켜 서로가 다른 프로세스에서
점유중인 자원을 기다리며 무한 대기상태에 빠지는것을 말한다.
이때 데드락이 발생하기 위해서 다음 4가지의 조건을 모두 충족해야 한다. (상점비순)
상호배제 : 한번에 하나의 프로세스만 프로세스 실행에 필요한 자원을 사용할 수 있다.
점유와 대기 : 자원을 가지고 있는 상태에서 다른 프로세스가 자원을 반납하기를 기다리고 있어야 한다.
비선점 : 다른 프로세스가 가지고 있는 자원을 강제로 빼앗아 올 수 없다.
순환대기 : 각 프로세스가 순환적으로 다음 프로세스가 요구하는 자원을 가지고 있어야 한다.
'Computer Science > 운영체제' 카테고리의 다른 글
[운영체제] 데드락을 해결하기 위한 3가지 방법 (0) | 2021.07.07 |
---|---|
[운영체제] 멀티프로세스 대신 멀티 스레드를 사용하는 이유 (0) | 2021.06.30 |
[운영체제] PCB가 무엇인가? (0) | 2021.06.30 |
[운영체제] 프로세스와 스레드의 개념과 차이점 (0) | 2021.06.30 |