CS 기초/운영체제

임계 영역, 뮤텍스, 세마포어

잡템 2023. 10. 29. 03:15

임계 영역(Critical Section)

공유 자원에 접근하는 코드영역을 말하며 여러 프로세스 또는 스레드가 동시에 접근 시 문제가 발생할수 있으므로

독점을 보장해줘야 하는 영역이다.

 

뮤텍스

공유자원을 안전하게 관리하기위한 상호배제 기법으로 상호 배제(Mutual Exclusion)의 약자이다.

락을 활용해 임계 영역에 진입전 락을 획득하고 임계 영역을 빠져나올때 락을 해제하여 다른 프로세스 또는

스레드의 접근을 허용하게한다. 1개만 임계 영역에 접근하게 하는 기법이다.

 

세마포어

공유자원에 동시 접근 가능한 개수를 지정하여 관리하는 상호 배제 기법으로 개수 제한이 1이면 뮤텍스와

동일한 역할을 한다.  값이 2이상이면 여러개가 임계 영역에 접근 할수 있는 기법이다.

 

Reference

https://worthpreading.tistory.com/90

https://velog.io/@octo__/%EB%AE%A4%ED%85%8D%EC%8A%A4Mutex#%EC%84%B8%EB%A7%88%ED%8F%AC%EC%96%B4%EC%99%80%EC%9D%98-%EA%B4%80%EA%B3%84