728x90 반응형 Critical section1 [OS] 프로세스 동기화 문제 (세마포어) 프로세스는 공유 메모리를 사용하여 공통된 변수와 버퍼를 공유한다. 그런데 context switching을 통해 현재 cpu를 할당받은 프로세스가 달라지면 공유 메모리에 동시에 접근하는 이슈가 발생할 수 있다. 이를 동기화 이슈라고 한다. 동기화 이슈 예를 들어서 A와 B가 100만원이 들어있는 같은 통장에 10만원씩 예금했다고 해보자. 10만원을 예금하는 코드의 구성은 다음과 같다. 통장의 총 금액을 가져온다. 해당 금액에 10만원을 추가한다. 추가한 금액을 통장에 저장한다. 멀티 프로세스 환경에서는 프로세스를 동시에 실행할 수 없다보니 두 프로세스를 조금씩 번갈아가면서 실행하게 된다. 그런데 다음과 같이 context switching이 발생할 수 있다. (빨간색이 프로세스 A, 초록색이 프로세스 B.. 2023. 5. 27. 이전 1 다음 728x90 반응형