모니터
-
14. 모니터운영체제/운영체제 정리 2019. 12. 31. 00:57
동기화의 또 다른 도구인 모니터는 세마포어 이후에 나왔다. 세마포어에 구조는 int value 하나와 큐 하나가 존재하고 acquire()과 release() 를 통해 value를 감소하고 증가시키면서 0 미만이면 acquire()를 호출해 큐에 프로세스(스레드) 를 갖히게 하고 0보다 크면 큐에 잡혀있는 프로세스(스레드)를 깨우는 방식이었다. 모니터 역시 공유자원 + 공유자원 접근 함수가 존재한다. common variable과 common variable에 접근할 수 있는 함수들이다. 그리고 두 개의 큐가 존재하는데 앞에 큐는 상호 베타를 위해 존재한다. 즉 common variable에 접근할 수 있는 함수들이 있는데 이 메서드들에 접근하려면 한 스레드만 접근할 수 있다는 뜻이다. 이미 다른 스레드..