반응형
1. 데드락
- 교착상태
- 여러 프로세스가 서로 다른 프로세스의 작업이 긑나기를 기다리다가 아무도 작업을 진행하지 못하는 상태
-
- 교착상태의 예시
- 교착상태의 필요조건
- 상후배제
- 프로세스가 한 리소스를 점유했다면 다른 프로세스에게 공유되면 안됨
- 비선점
- 프로세스 a가 리소스를 점유하고 있는데 b가 리소스를 빼앗을 수 없음
- 점유와 대기
- 프로세스가 리소스 a를 가지고 있는 상태에서 리소스 b를 원하는 상태여야함
- 원형 대기
- 점유와 대기를 하는 프로세스들의 관계가 원형을 이루고 있다는 것
- 상후배제
- 예방은 노답 > 해결을 하자.
- 교착상태의 필요조건
- 교착상태의 예시
2. 데드락 해결
- 교착상태 회피
- 프로세스들에게 자원을 할당할 때 어느 정도 자원을 할당해야 교착상태가 발생하는지 파악해서 교착상태가 발생하지 않는 수준의 자원을 할당
- 전체 자원의 수 와 할당된 자원의 수를 기준으로 안전상태, 불안전상태로 나뉨
- 가벼운 교착상태 검출
- 일정시간동안 작업을 진행하지 않는다면 교착상태가 발생했다고 간주 → 해결
- 해결 : 일정 시점마다 체크포인트를 만들어 작업을 저장하고 해당 포인트로 롤백
- 일정시간동안 작업을 진행하지 않는다면 교착상태가 발생했다고 간주 → 해결
- 무거운 교착상태 검출
- 자원할당 그래프를 이용하여 현재 운영체제에서 프로세스가 어떤 자원을 사용하는지 지켜보고 발생시 → 해결
- 해결 : 그래프를 이용해서 순환구조가 생기는 그래프를 찾고 교착상태를 일으킨 프로세스를 강제로 종료 + 체크포인트로 롤백
- 무거운 교착상태 검출은 지속석으로 그래프유지, 검사를 위해 오버헤드가 발생하지만, 가벼운 교착상태 검출에서 발생하는 억울하게 종료되는 프로세스는 발생하지 않음
- 자원할당 그래프를 이용하여 현재 운영체제에서 프로세스가 어떤 자원을 사용하는지 지켜보고 발생시 → 해결
해당 글은 [인프런 - 그림으로 쉽게 배우는 운영체제] 강의를 듣고 정리한 글 입니다.
그림으로 쉽게 배우는 운영체제 | 감자 - 인프런
감자 | 이 강의를 통해 모든 개발자들이 필수로 알아야하는 운영체제의 원리를 알 수 있습니다., 개발자의 필수 지식 운영체제를 배워서뿌리 깊은 나무가 되어 봐요 🌳 강의 주제 📖 [임베딩 영
www.inflearn.com
'🔥 🔥' 카테고리의 다른 글
[강의] 그림으로 쉽게 배우는 운영체제 - 3. 프로세스 동기화 (0) | 2024.05.23 |
---|---|
[강의] 그림으로 쉽게 배우는 운영체제 - 2. CPU 스케줄링 (0) | 2024.05.13 |
[강의] 그림으로 쉽게 배우는 운영체제 - 1. 프로세스와 쓰레드 (0) | 2024.05.13 |
[강의] 그림으로 쉽게 배우는 운영체제 - 0. 운영체제 들어가기 (0) | 2024.05.13 |
yarn berry (0) | 2021.12.05 |