세마포어(Semaphore), 세마포어 종류

CODEDRAGON Security/System

반응형

   

   

세마포어(세마포어; Semaphore )

  • 1965년 Edsger Wybe Dijkstra가 제안한 방법
  • busy waiting 문제 해결할 수 있는 기법
  • 일종의 정수형 변수
  • P()연산과 V()연산, 그리고 초기화 연산에 의해서만 접근 가능하여 이를 통해서만 값이 바뀝니다.
  • 임의의 세이퍼 S에 대해서는 하나의 대기 큐가 할당됩니다.

   

   

https://ko.wikipedia.org/wiki/%EC%84%B8%EB%A7%88%ED%8F%AC%EC%96%B4

https://en.wikipedia.org/wiki/Semaphore_(programming)

   

   

세마포어 종류

이진 세마포어

(binary semaphore)

세마포어 변수가 0과 1의 두 종류의 값만을 갖는 경우

상호 배제나 프로세스 동기화의 목적으로 사용될 때 이용

카운팅 세마포어

(counting semaphore)

세마포어 변수가 0 이상의 모든 정수값을 가질 수 있는 경우

생산자-소비자 문제 등의 해결을 위해 사용