기어가더라도 제대로
[운영체제 - 김덕수 교수님] 프로세스 동기화, 상호 배제 - TAS(3/7) 본문
HW 솔루션
- TestAndSet (TAS) instruction
- test 와 set을 한번에 수행하는 기계어
- Machine instruction
- Atomicity, Indivisible
- 실행 중 interrupt를 받지 않음(preemption 되지 않음)
- Busy waiting
- 비효율적
TAS Instruction
- 타겟값을 저장, 타겟에 true 저장, 반환 세동작이 한번에 실행된다.
- 한명이 들어가서 일을 하고 있을 때, 2,3번이 뺑뺑돌고 있는데,
- 3번이 갔다고 치고, 다음에 4번이 온다면?
- 2번은 계속 기다릴 수 밖에 없다.
ME with TAS Instruction
- N-process mutual exclusion
- 장점
- 구현이 간단
- 단점
- Busy waiting
- Busy waiting 문제를 해소하기 위한 기법
- semaphore
- 대부분의 OS들이 사용하는 기법
- semaphore
'CS > 운영체제' 카테고리의 다른 글
[운영체제 - 김덕수 교수님] 프로세스 동기화, 상호 배제 - Semaphore(5/7) (0) | 2022.08.03 |
---|---|
[운영체제-김덕수 교수님] 프로세스 동기화, 상호 배제 - Spinlock(4/7) (0) | 2022.08.03 |
[운영체제-김덕수 교수님]프로세스 동기화 & 상호배제(2/7) (0) | 2022.08.01 |
[운영체제 - 김덕수 교수님]프로세스 동기화 & 상호배제(1/7) (0) | 2022.08.01 |
[운영체제 - 김덕수 교수님] 프로세스 스케쥴링 (4/4) - MLQ, MFQ (0) | 2022.07.31 |
Comments