
Mutex 와 세마포어 (Semaphore) * Critical Section (임계 구역)에 대한 접근을 막기 위해 LOCKING 매커니즘이 필요 - Mutex (binary semaphore) : 임계구역에 하나의 스레드만 들어갈 수 있음 - Semaphore : 임계구역에 여러 스레드가 들어갈 수 있음 : counter를 두어서 동시에 리소스에 접근할 수 있는 허용 가능한 스레드 수를 제어 세마포어 (Semaphore) * P : 검사 (임계영역에 들어갈 때) - S값이 1 이상이면 임계 영역 진입 후 S값 1 차감 (S값이 0이면 대기) * V : 증가 (임계영역에서 나올 때) - S값을 1 더하고 임계 영역을 나옴 * S : 세마포어 값 (초기 값만큼 여러 프로세스가 동시 임계 영역 접근 가능)..

동기화(Synchronization) 이슈 동기화 : 작업들 사이에 실행 시기를 맞추는 것 여러 스레드가 동일한 자원(데이터) 접근시 동기화 이슈 발생 동일 자원을 여러 스레드가 동시 수정 시 각 스레드 결과에 영향을 줌 동기화 이슈 해결 방안 Mutual exclusion (상호 배제) 쓰레드는 프로세스 모든 데이터를 접근할 수 있으므로, 여러 스레드가 변경하는 공유 변수에 대해 Exclusive Access 필요 어느 한 스레드가 공유 변수를 갱신하는 동안 다른 스레드가 동시 접근하지 못하도록 막아라 Mutual exclusion (상호 배제) 임계 자원 (critical resource) 임계 영역 (critical section) ※ 정리 * 동기화 : 작업들 사이에 실행 시기를 맞추는 것 출처 ..