semaphore
-
💻 [OS 오퍼레이팅시스템] #11 | Synchronization (상호배제) | 동기화, 세마포어, 스핀락CS/OS 2022. 6. 12. 23:06
💻 Race Condition - Synchronization 쓰레드가 멀티쓰레딩 프로그램에서 같이 일할 때 공유 자원에 접근하는 것. -> 동기화 문제 발생 이 때, 올바르지 못한 결과가 나오는 문제 -> race condition - Race Condition 다수의 프로세스나 쓰레드가 동시에 공유 자원에 접근하고 변경하려고 할 때 발생하는 버그 문제. 공유 자원에 접근할 결과가 다음과 같다. - Non-deterministic한 Incorrect한 결과 - Non-Reproducible (재생산 불가능) 실행 시간에 달려있다. (실행 속도와 스케쥴링 타임 조절 불가능) - 멀티쓰레딩 : CPU 스케쥴러에 의해 '끼어들기(interleaving)'가 발생할 수 있다. -> 예측 불가능 - 멀티프로세서..