[운영체제] 세마포어 & 뮤텍스

함민혁·2023년 8월 8일
0

cs면접준비

목록 보기
19/43

뮤텍스,세마포어 -> https://velog.io/@miin-hyukkk/운영체제-IPCInter-Process-Communication

뮤텍스 알고리즘
1. 데커 알고리즘
flag과 turn 변수를 통해 임계 구역에 들어갈 프로세스/스레드를 결정하는 방식

2.피터슨 알고리즘
데커와 유사하지만, 상대방 프로세스/스레드에게 진입 기회를 양보하는 것에 차이가 있음

3.제과점 알고리즘
여러 프로세스/스레드에 대한 처리가 가능한 알고리즘. 가장 작은 수의 번호표를 가지고 있는 프로세스가 임계 구역에 진입함

뮤텍스

임계 영역에 하나의 작업 스레드만 허용하는 것임
임계 영역에 들어갈 수 있는 작업 스레드는 lock을 소유해야함
자원을 소유하고 있는 작업 스레드는 lock을 쥐고 있고 작업이 끝나면 lock을 풀어냄
해당 자원을 쥐고 있는 스레드만이 lock을 반환할 수 있어서 비선점 방식이 됨
(비선점: 쓰고있는애를 강제로 나오게 못하는 게 비선점 방식)

세마포어

임계 영역에 들어가는 스레드가 복수개가 가능
동기화 대상이 여러 개일 경우에 사용됨
세마포어의 경우 공유 자원에 1개 이상의 스레드가 접근할 수 있으며 "접근 스레드의 수"에 한계를 두는 방식임

🫠

출처: https://murphymoon.tistory.com/entry/임계구역을-보호하기-위한-기법-운영체제OS-면접질문-6

profile
Born to be FE developer 🧑🏻‍💻

1개의 댓글

comment-user-thumbnail
2023년 8월 8일

감사합니다. 이런 정보를 나눠주셔서 좋아요.

답글 달기