inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제

동기화 기법

뮤텍스 락

163

bae jewoo

작성한 질문수 20

0

뮤텍스 락으로 설명하신 내용은 스핀락 아닌가요?
스핀락은 프로세스를 블로킹하지 않고 계속해서 CPU를 사용하여 busy-waiting이 일어나지만
뮤텍스 락은 대기 큐에서 블로킹 된 상태로 대기하여 busy-waiting이 일어나지 않는 걸로 알고 있습니다

컴퓨터-구조 운영체제 기술면접

답변 2

0

bae jewoo

아래 비슷한 내용의 질문이 있었네요

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.
bae jewoo님께서 질문하신 뮤텍스 락과 스핀락의 차이점에 대해 설명드리겠습니다.

뮤텍스와 스핀락은 둘 다 상호 배제(Mutual Exclusion)의 방식을 제공하지만, 그 동작 원리가 다릅니다.

  • 스핀락은 프로세스를 블로킹하지 않고, 락이 풀릴 때까지 계속 CPU 자원을 소모하며 루프를 돎으로써 상태를 확인하는 busy-waiting 방식을 사용합니다. 이러한 방식은 짧은 대기 시간이 예상될 때 유리할 수 있지만, CPU 자원을 계속 소모하므로 다른 프로세스들이 CPU를 사용하지 못하게 됩니다.

  • 뮤텍스 락은 스레드가 자원을 사용할 수 없을 때, 해당 스레드를 대기 큐에 블로킹 상태로 두어 스케줄러가 다른 프로세스를 실행할 수 있도록 CPU를 양보합니다. 따라서 busy-waiting을 피하며, 보다 효율적인 CPU 자원 사용이 가능합니다. 뮤텍스는 주로 사용자 수준에서 구현된 락 메커니즘으로, 커널 수준에서 지원하는 기능도 있습니다.

말씀하신 대로, 뮤텍스 락은 일반적으로 스레드나 프로세스가 사용할 수 없는 자원을 대기할 때, 블로킹 상태로 전환하여 busy-waiting을 피하는 장점을 제공합니다.

관련된 다른 질문들에서도 비슷한 내용이 논의된 바 있습니다. 다음 링크를 통해 유사한 질문과 답변을 참조하실 수 있습니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

17:00 부분에 ddr4 sdram은 길이 16개인듯한 ram이라고 설명했는데

0

80

1

유니코드 문자 집합

0

65

0

컴퓨터 구조의 기본 흐름

0

80

1

메모리로부터 주소버스를 통해 받아들이는 주소번지를 CPU로 가져오는 경우

0

74

1

리눅스, 윈도우, IOS 등등 대부분의 운영체제는 같은 구조로 이루어져 있나여?

0

64

1

강의에 나오는 pdf

0

150

2

슈퍼스칼라 프로세서

0

99

1

컴퓨터가 이해하는 두 가지 정보 : 데이터 쪽 질문

0

94

1

캐시 메모리

0

85

1

메모리맵 / 고립형 차이

0

190

1

마무리 - 확인 문제에 대해 질문있습니다.

0

112

1

가상메모리의 필요성

0

193

1

섹션12. 입출력장치의 대기상태

0

96

1

P.301 질문

0

71

1

메모리맵 IO와 고립형 IO 차이 질문

0

133

1

강의하실 때, 보여주시는 ppt 파일 혹시 어디서 받을 수 있는건가요?

0

201

1

파일 시스템 관련 질문 있습니다.

0

112

1

페이징 관련 질문드립니다.

0

136

1

DMA 컨트롤러

0

183

1

보수랑 플래그 관련해서 질문드립니다

0

173

2

페이지

1

183

2

책에 있는 내용이 다 들어가 있나요?

0

188

1

페이지의 수

0

98

1

모니터

0

123

2