지난 포스팅에서 동시성 문제인 '레이스 컨디션'과 '데이터 레이스'에 대해 알아보았다.이번 포스팅에서는 그 해결 방법인 Semaphore과 Mutex에 대해 알아보자.동시성 이슈주요 원인 :data race데이터 접근 절차는 atomic하지 않음 (읽기->연산->쓰기)단일 코어 : 하나의 instructor 실행 중 cpu 사용 권한을 뺏기는 경우 동시에 같은 memory address 읽을 가능성 존재멀티 코어 : 여러 cpu에서 동시에 같은 memory address 읽을 가능성 존재race condition멀티 스레드 : 프로세스의 공유 데이터 사용 중 발생멀티 프로세스 : 커널 내부의 공유 데이터 사용 중 발생해결 방법 :단일 코어 : 공유 자원에 접근한 경우 계속해서 그 프로세스가 cpu를 점유..