세마포어

컴퓨터 과학에서 세마포어는 하나 이상의 리소스에 대한 액세스를 제어하는 변수입니다. 세마포어는 개발자함수가 유효한 데이터에만 액세스하고 올바른 시점에 실행되도록 하는 데 사용하는 도구입니다. 세마포어는 리소스를 사용할 수 없을 때 해당 리소스에 대한 액세스를 허용하지 않음으로써 교착 상태경쟁 상태를 방지할 수 있습니다.

컴퓨터 프로그래밍에서 세마포어는 이진 세마포어와 카운팅 세마포어라는 두 가지 주요 유형으로 나뉩니다.

이진 세마포어

이진 세마포어는 두 가지 값(0 또는 1)만 가질 수 있는 부울 변수입니다. 이 변수는 함수나 리소스에 대한 액세스를 제한하는 잠금으로 자주 사용됩니다. 예를 들어 세마포어 A가 getData() 함수를 제어한다고 하겠습니다. A = 0이면 getData()는 실행되지 않습니다. A = 1이면 getData()가 실행됩니다. 이진 세마포어는 켜짐 또는 꺼짐 중 하나인 플래그나 스위치로도 간주됩니다.

카운팅 세마포어

카운팅 세마포어는 음이 아닌 정수일 수 있으며, 자연수라고도 합니다. 하나 이상의 함수 결과에 따라 값이 증가하거나 감소할 수 있습니다. 예를 들어 카운팅 세마포어는 리소스 풀에서 사용할 수 있는 리소스 수를 추적할 수 있습니다. 세마포어가 증가하는 값보다 더 많이 감소하면 결국 0에 도달합니다. 값이 0이면 남은 리소스가 없다는 뜻입니다.

NOTE: 실제 세계에서 "세마포어"는 먼 거리에서 신호를 보내는 데 사용하는 깃발이나 기타 물체입니다. 예를 들어 어떤 사람이 선착장에서 기둥을 들어 올려 페리 선장에게 배에 타고 싶다는 신호를 보낼 수 있습니다.

업데이트됨 February 1, 2020 작성: Per C.

quiz지식 테스트하기

The abbreviation "NaN" in a spreadsheet program is short for what?

A
None and NULL
0%
B
Negative and NOT
0%
C
Not a Number
0%
D
No actual Name
0%
Correct! Incorrect!     View the NaN definition.
More Quizzes →

Tech Terms 컴퓨터 사전

이 페이지의 세마포어에 대한 정의는 TechTerms.com의 저자가 작성한 원본 정의입니다. 이 페이지를 참조하거나 이 정의를 인용하려면 정의 바로 아래에 있는 녹색 인용 표시줄을 사용하세요.

저희의 목표는 컴퓨터 용어를 이해하기 쉬운 방식으로 설명하는 것입니다. 게시하는 모든 정의에서 정확성과 간결함을 추구합니다. 이 정의에 대한 피드백이 있거나 새로운 기술 용어를 제안하고 싶으시면 문의해 주세요.

Tech Terms 뉴스레터

매일 또는 매주 발행되는 뉴스레터로 기술 지식을 향상시키세요! 지금 구독하고 새로운 용어와 퀴즈를 이메일로 받아보세요.

무료 TechTerms 뉴스레터 구독하기

이메일을 얼마나 자주 받고 싶으신가요?

각 이메일에 포함된 링크를 통해 언제든지 구독을 취소하거나 수신 빈도를 변경할 수 있습니다. 질문이 있으신가요? 문의해 주세요.

참고: 뉴스레터는 영어로 발송됩니다.