상호 배제

CS 지식/운영체제

[CS] 교착 상태

교착 상태 (DeadLock) 교착 상태는 둘 이상의 프로세스가 다른 프로세스가 점유하고 있는 자원을 서로 기다리면서 무한 대기에 빠지는 상황을 일컫습니다. 즉, 한정된 자원을 여러 곳에서 사용하려고 하면서 프로세스가 자원을 얻지 못해서 다음 처리를 하지 못하는 상태입니다. 프로세스1과 프로세스2가 모두 자원1, 자원2를 얻어야 한다고 가정합니다. t1 : 프로세스1이 자원1을 얻은 동시에 프로세스2는 자원2를 얻음 t2 : 프로세스1은 자원2를 기다리고 프로세스2는 자원1을 기다림 이처럼 현재 서로 원하는 자원이 상대방에게 할당되어 있어서 두 프로세스는 무한정 wait 상태에 빠지게 되는데 이러한 상황을 교착 상태라고 부릅니다. 교착 상태가 주로 발생하는 경우는 다음과 같습니다. 멀티 프로그래밍 환경에..

CS 지식/운영체제

[CS] 상호 배제

상호 배제 (Mutual Exclusion)상호 배제는 공유 불가능한 자원의 동시 사용을 피하기 위해 사용되는 알고리즘입니다.이는 임계 구역으로 불리는 코드 영역에 의해 구현되며, 하나의 프로세스가 공유 자원을 사용할 때 다른 프로세스의 접근을 막을 수 있도록 합니다. 상호 배제는 멀티 프로세스나 멀티 스레드의 동기화에 사용됩니다.또한, 이는 교착 상태의 4가지 필요 조건 중 하나로서 교착 상태와 기아 상태가 발생할 수 있습니다.교착 상태 (Deadlock) : 무한 대기기아 상태 (Starvation) : 우선순위가 낮아 자원을 계속 할당받지 못하는 상태 임계 구역 (Critical Section)임계 구역은 공유 자원에 접근하는 프로세스 내부의 코드 영역입니다.어떤 프로세스가 이 영역을 수행 중일 때..

damon-911
'상호 배제' 태그의 글 목록