티스토리 뷰
교착상태 발생 4가지 필요조건
4가지 중 하나라도 지켜지지않으면 발생하지 않는다
예방(prevention)
상호배제를 만족하지않도록 할 수는 없다
상호배제 빼고 나머지 3개는 발생하지 않도록 해도 된다
점유와 대기 조건의 배제
필요한 자원을 모두 한꺼번에 요청
(가지고 있으면서 요구x)
단점
자원 낭비
비효율적 자원공유
무기한 연기 발생 가능
비선점 조건의 배제
자원요구 거절 -> 점유 자원 반납
98%했는데 자원요구할때 작업손실 가능
단점
비용 및 시간 증가
무기한 연기 발생 가능
환형대기 조건의 배제
자원의 유형별로 할당 순서를 부여
요구할때는 순서대로
단점
자원할당 융통성 부족
별도로 자료구조 관리,스케줄러가 추가적으로 일을 해야한다
->자원 낭비 초래
새로운 자원 추가시, 프로그램과 시스템 재구성 필요
단점이 있어도 쓰는이유
1. 도입할 수 있는 시스템이 존재한다
2. 아카데미에서는 여러가지 메커니즘을 설명한다
교착상태의 회피
발생하려고하면 피해가는 방법
예방보다 효율적, 덜 엄격한 제약
미래의 프로세스 행위에 대한 지식에 의존
banker's algorithm
안전상태, 불안전상태
불안전상태는 교착상태가 발생할 수 있다
자원할당한 이후가 불안정상태가되면 자원할당을 해주지않는다
단점
자원 개수 고정, 프로세스 집단 고정, 최대 필요자원 개수 보고 필요, 유한한 시간내에 모든 자원반환가정
교착상태의 감지
교착상태의 발생 여부 결정
자원할당 그래프 사용 방법
교착상태 회복
일시중단/재시작 방법
프로세스는 처리내용의 손실없이 다시 시작
체크포인트/복귀방법
롤백
체크포인트 이후의 작업은 손실 가능
체크포인트체크해놓고 다시돌아가서 거기서부터 다시 시작함
deadlock
일어날 수 없는 상황을 계속 기다리는 것
livelock
일어날 수 있는 상황을 계속 기다리는 것
(길거리 길막)
'개념 > 운영체제' 카테고리의 다른 글
운체 시험공부2 (0) | 2022.04.15 |
---|---|
운체 시험공부 (0) | 2022.04.14 |
교착상태와 무기한 연기 (0) | 2022.04.05 |
비동기 병행 실행3 (0) | 2022.04.01 |
비동기 병행 실행2 (0) | 2022.03.29 |
- Total
- Today
- Yesterday
- 인프콘2024
- CSS
- authorization code
- 데이터3법
- git
- 2024인프콘
- 프로그래머스
- 리눅스
- SpringBoot
- bfs
- html #웹 #웹사이트 #플레이리스트
- 클로아
- 로스트아크 캐릭터
- DML
- oauth
- git commit 수정
- javascript
- Android Studio
- authorization_code
- SQL
- infcon 2024
- oauth2.0
- DDL
- html
- 오픈소스
- kloa
- git 예전 커밋 수정
- 데이터 3법
- 데이터베이스
- 우분투
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |