wjdtmfgh.log
로그인
wjdtmfgh.log
로그인
Deadlock - 2
Jeong seulho
·
2023년 2월 20일
팔로우
0
운영체제
0
운영체제
목록 보기
14/35
📌Deadlock의 그래프 모델
프로세스 -> 자원
은 해당 프로세스가 자원을 요청
자원 -> 프로세스
는 자원이 프로세스에게 할당 됨
📌Deadlock의 state transition 모델
프로세스가 2개인 예
edge는 해당 번호의 프로세스가 개입
노드의 숫자 2개는 각각 현재 프로세스의 상태
P1이 R1보유 R2를 요청 + P2가 R2보유 R1을 요청시 데드락
📌deadlock의 발생 필요조건
자원의 특성
Exclusive use of resources : 자원을 독점적으로 사용해야함
Non-preemptive resource : 자원을 빼앗을 수 없음
프로세스의 특성
hold and wait(partial allocation) : 자원을 보유하고 있으면서 다른 자원을 기다림
circular wait : 자원을 요청하는 순서가 순환적임
📌deadlock의 해결 방법
deadlock prevention methods
4가지의 조건 중 하나를 제거
모든 자원을 공유 가능하게 만듬
exclusive use of resources를 제거
사실상 불가능
모든 자원에 대해 선점 가능하게 만듬
non-preemptive resource를 제거
사실상 불가능
유사 방법 : 프로세스A가 자원A를 사용중에 프로세스B가 자원A를 요청하면 프로세스A가 하던 작업을 취소하고 자원을 반납(매우 비효율적)
필요한 자원 한번에 모두 할당
hold and wait를 제거
자원 낭비가 심함(필요하지 않은 순간에도 자원을 보유)
다른 프로세스들의 대기 시간이 길어짐
자원들에 순서를 부여
circular wait를 제거
자원의 순서를 정해놓고 순서의 증가 방향으로만 자원을 요청(1자로 만듬)
자원 낭비 발생(사용 가능한 자원이 있어도 사용하지 못함)
Jeong seulho
팔로우
이전 포스트
Deadlock - 1
다음 포스트
Deadlock - 3
0개의 댓글
댓글 작성