HomeAboutMeBlogGuest
© 2025 Sejin Cha. All rights reserved.
Built with Next.js, deployed on Vercel
🍗
[New] 조규현팀
/
🏪
TS Store
/
🩹
데드락(Deadlock, 교착상태)이란?
🩹

데드락(Deadlock, 교착상태)이란?

Person
완료율%
상태
완료
나의 블로그
Think Sharing (TS)
🏐
데드락(DeadLock)
🏗️ Build Up💨What데드락이란 무엇인가.발생조건✅How [해결 방법 및 예방 방법]예방 (4가지) 회피탐지 → 획복📌 REFER

🏗️ Build Up

  • 프로세스는 기본적으로 필요로 하는 자원이 있다.
  • 자원이란?
    • 시스템 자원은 컴퓨터 시스템 내에 제한된 물리적 부품과 논리적 구성 요소를 아울러 이르는 용어이다.
    • 모든 장치와 내부 시스템 부품들은 자원이다.
    • ex) 파일, 네트워크 (소켓 연결), 메모리 영역 등이 있다.

💨What

데드락이란 무엇인가.

notion image
  • 요약하자면, 시스템 자원에 대한 요청이 서로 뒤엉킨 상태이다.
  • 즉, 둘 이상의 프로세스가 다른 프로세스가 점유하고 있는 자원을 서로 기다릴 경우 무한정 기다리는 상태를 말한다.

발생조건

상호배제
한번에 하나의 프로세스만 해당 자원을 사용할 수 있다.
점유 대기
자원을 최소한 하나 보유하고, 다른 프로세스에게 할당된 자원을 점유하기 위해 대기하는 프로세스가 존재해야 한다.
비선점
이미 할당된 자원을 강제로 뺏을 수 없다.
순환 대기
대기 프로세스의 집합이 순환 형태로 자원을 대기하고 있어야 한다.

✅How [해결 방법 및 예방 방법]

 

예방 (4가지)

🌕
교착 상태 발생 조건 중 하나를 제거함으로써 해결하는 방법
상호배제 조건 부정
여러 프로세스가 공유 자원을 사용할 수 있게 한다.
점유 대기 조건 부정
프로세스가 실행되기 전 필요한 모든 자원 할당한다.
비선점 조건 부정
높은 우선순위의 프로세스가 해당 자원을 선점할 수 있도록 한다.
순환 대기 조건 부정
순환 형태로 대기 하지 않도록 한 쪽 방향으로 만 요구할 수 있도록 한다.

회피

  • 은행원 알고리즘
    • 프로세스가 자원을 요구할 때 시스템은 자원을 할당한 후에도 안정 상태로 남아있게 되는지를 사전에 검사하여 교착 상태를 회피하는 기법

탐지 → 획복

  • 탐지 : 자원 할당 그래프를 통해 교착 상태를 탐지
  • 회복 : 프로세스 모두 중지, 자원을 선점하도록 허용
 
 
 

📌 REFER

[운영체제] 데드락(Deadlock, 교착 상태)이란?
운영체제에서 데드락(교착상태)이란, 시스템 자원에 대한 요구가 뒤엉킨 상태입니다. 즉, 둘 이상의 프로세스가 다른 프로세스가 점유하고 있는 자원을 서로 기다릴 때 무한 대기에 빠지는 상황 을 일컫습니다. 데드락이 발생하기 위한 조건은 크게 4가지로 말할 수 있습니다. 데드락의 해결법을 크게 3가지로 분류할 수 있습니다.
[운영체제] 데드락(Deadlock, 교착 상태)이란?
https://chanhuiseok.github.io/posts/cs-2/
[운영체제] 데드락(Deadlock, 교착 상태)이란?
Deadlock 개념이란? 그에 대한 해결책/회피책
OS에 대해 기본적인 상식 중 Deadlock으로 운영체제 부분을 시작 해볼까 합니다. 먼저, DeadLock의 개념입니다. 1. DeadLock의 개념 - 프로세스가 자원을 얻지 못해 다음 처리를 하지 못하는 상태로, '교착 상..
Deadlock 개념이란? 그에 대한 해결책/회피책
https://jwprogramming.tistory.com/12
Deadlock 개념이란? 그에 대한 해결책/회피책