owlsuri.log
로그인
owlsuri.log
로그인
교착상태2
OwlSuri
·
2023년 4월 21일
팔로우
0
교착상태
운영체제
한국방통대
0
방통대 운영체제
목록 보기
7/12
교착상태 회피
프로세스의 자원 사용에 대한 사전 정보를 활용하여 교착상태가 발생하지 않는 상태에 머물도록 하는 방법
사전정보
현재 할당된 자원
가용상태의 지원
프로세스들의 최대 요구량
안전상태와 안전순서열
안전상태 -> 교착상태가 발생하지 않음
교착상태를 회피하면서 각 프로세스에 그그들의 최대요구랭까지 빠짐없이 자원을 할당할 수 있는 상태
안전순서열이 존재하는 경우
불안전상태
안전순서열이 존재하지 않는 경우
안전순서열
순서있는 프로세스의 집합 <P1, P2,.......,Pn>
각 Pi에 대, Pi가 추가로 요구할 수 있는 자원의 양이 현재가용상태의 자원으로 충당되러가 혹은 여기에 Pj(단 j<i)에 할당된 자원까지 포함하여 충당 가능한 경우
P1이 한개를 먼저 요구했을경우 -> 교착강태 가능성 있음
교착상태 회피
교착상태는 불안전상태에서만 발생가능
항상 안전상태를 유지해야함
프로세시그 가용상태의 자원을 요구하더라도 프로세스는 대기상태가 될 수 있음
자원이용율은 다소 낮아질 수 있음
교착상태 회피 알고리즘
각 자원의 단위자원이 하나밖에 없는 경우
-> 변형된 자원할당 그래프 이용
자원 정점에 표시하던 단위자원의 개수 제거
선언간선 (Piri) 추가
- 앞으로 프로세스 Pi가 자원 rj를 요구하게 될 것임
- 요구간선과 구분을 위해 점선으로 표시
-> 프로세스를 마칠떄까지 추가적으로 필요한 자원
자원을 요구받으면 해당 선언간선을 요구간선으로 변경
그 요구간선을 할당간선으로 변환해도 사이클이 생기지 않는 경우에만 자원을 할당하고 할당간선으로 변환
각 자원의 단위자원이 여러개일 수 있는 경우
-> 은행원 알고리즘 이용
자원을 요구받으면 그 자원을 할당해주고 난 후이 상태를 계산해서 그것이 안전상태인지 확인
안전상태가 보장되는 경우에만 자원을 할당(안전하지않으면 할당안함)
-> 할당하지 않음
교착상태 탐지 및 복구
사후에 처리하는 방법
교착상태 탑지
시스템의 교착상태 여부를 조사하기 위해 주기적으로 상태조사 알고리즘 수행
교착상태 복구
교착상태가 탐지된 경우 적절한 조치를 취해 정상상태로 복구
교착상태 탐지
교착상태 복구
교착상태가 탐지되면 복구 조치
복구의 주체
오퍼레이터 : 수작업
운영체제 : 자동
복구방법
-> 교착상태 프로세스 종료
모든 교착상태 프로세스를 종료 -> 진행했던 내용에 대한 복원비용이 큼
사이클이 제거될 때까지 교착상태 프로세스를 하나씩 종료 -> 종료대상을 선택하기 위한 비용 매 프로세스 종료 후 교착상태 재확인을 위한 비용
-> 교착된 프로세스가 할당받은 자원을 해제
사이클이 제거될때까지 할당된 자원을 단계적으로 선범하여 다른 프로세스들에 할당
프로세스와 자원 선택기준
- 프로세스 진척도, 사용중인 자원의 수 등
프로세스의 복귀 시점도 제반 요소를 고려하여 결정
기아상태에 빠지지 않도록 프로세스 선택시 복구 횟수 고려
OwlSuri
기억이 안되면, 기록을 -
팔로우
이전 포스트
교착상태1
다음 포스트
메모리관리
0개의 댓글
댓글 작성