imort 박뉴프

교착상태(Deathlock) 본문

Develop/Operating System

교착상태(Deathlock)

박뉴프 2022. 11. 13. 23:56

교착상태(Deathlock)

-두 개 이상의 프로세스가 자원 할당을 무한정 대기하는 상태이다.

 

교착상태 발생조건

상호배제

한 번에 한 개의 프로세스만이 공유 자원을 사용할 수 있어야 한다.

점유와 대기

최소한 하나의 자원을 점유하고 있으면서 다른 프로세스에 할당되어 사용되고 있는 자원을 추가적으로 사용하기 위해서 대기하는 프로세스가 필요하다.

비선점

다른 프로세스에 할당된 자원은 사용이 끝날 때 까지 강제로 빼앗을 수 없다.

환형대기

공유 자원과 공유 자원을 사용하기 위해 대기하는 프로세스들이 원형으로 구성되어 있어 자신에게 할당된 자원을 점유하면서 앞이나 뒤에 있는 프로세스의 자원을 요구해야 한다.

 

 

교착상태 해결방안

교착상태 예방

상호배제, 점유와 대기, 환형대기, 비선점 하지 않게 예방한다.

교착상태 회피

안전한 상태일때만 수락한다. (은행원 알고리즘, 자원할당그래프 ...)

교착상태 발견

상태 감시 알고리즘 통해 교착상태를 검사한다. (자원할당 그래프...)

교착상태 복구

교착상태 없어질 때까지 프로세스 Kill 한다.

 

 

 


🔍 블로그 https://parkmj236.tistory.com

🔍 Notion 이력서 https://parkmj236.notion.site/Park-Minji-e4fa8aa44b8c48b582a9082515dbc15e

🔍 Github https://github.com/Park-New-project/Projects


참고

https://parkmj236.tistory.com/4

 

로드밸런싱(Load Balancing)과 로드밸런서(Load Balancer)

2022.07.02 인프라 업그레이드 방법 -Scale-up 서버동작을 빠르게 하기 위해 하드웨어 성능을 높임 -Scale-out 여러대의 서버가 나누어 일함 (비용이 적고 무중단 서비스 제공가능) Scale-out 하는 방

parkmj236.tistory.com

https://parkmj236.tistory.com/6

 

멀티프로세스(Multi Process)와 멀티스레드(Multi Thread)

2022.08.05 프로세스 -운영체제에서 자원을 할당받는 작업의 단위 -구조적으로 코드영역,데이터영역,스택영역,힙영역을 갖는다. -최소 1개 이상의 스레드를 갖는다. -한 프로세스는 다른 프로세스

parkmj236.tistory.com

 

Comments