[OS] Semaphore, Ordering, Mutex (은행 계좌 자바 예제)
0. Semaphore 여러 개의 프로세스가 공유 자원에 동시 접근할 때 문제 발생 프로세스 A, 프로세스 B는 int a = 100 이라는 자원을 공유하여, 각각 a를 1씩 증가시키는 작업을 시킴 이때, 한번에 둘 이상의 프로세스가 접근하여 데이터를 동시에 변경하며 결과값에 영향을 줄 수 있음 경쟁 상태= Race condition 공유된 자원 속 하나의 데이터는 한번에 프로세스만 접근할 수 있도록 제한을 두어야 할 때 고안된 것이 Semaphore (쎄마포어) Semaphore는 P연산과 V연산으로 이루어져 있음 P(S) : S를 1 감소 (S--) V(S) : S를 1 증가 (S++) 프로세스는 S가 1 이상일 때만 임계영역으로 진입할 수 있다고 가정 / S가 0이면 진입하지 못함 * Semapho..
2021.06.13