ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 모니터
    운영체제/프로세스 동기화 2018. 2. 4. 01:07

    세마포어를 이용하여 임계 구역 문제를 해결할 프로그래머가 세마포어를 잘못 사용할 경우 다양한 유형의 오류가 쉽게 발생한다.

    오류는 상호 배제 요구 조건을 위반하거나 교착 상태를 발생시킨다

    모니터 쉽고 효율적인 프로세스 동기화 수단을 제공하는 고급 언어 수준의 동기화 구조물이다.

     

    모니터 사용법

    추상 데이터 형은 데이터와 데이터를 조작하는 함수들의 집합을 하나의 단위로 묶어놓은 것이다.

    모니터 형의 표현은 다른 프로세스들이 직접 사용할 없고, 모니터 내에 정의된 함수만이 모니터 내의 지역 변수와 형식 매개변수들에 접근할 있다.

    모니터 구조물은 모니터 안에 항상 하나의 프로세스만이 활성화 있도록 보장한다.

    모니터 구조물은 동기화 기법을 모델링하는 데에는 충분한 능력을 제공하지 않기 때문에 condition 이라는 구조물이 사용된다.

    condition 변수에 호출될 있는 연산은 오직 wait signal 뿐이다.

    wait 연산을 호출한 프로세스는 다른 프로세스가 signal 호출 때까지 일시 중단한다.

    signal 연산은 정확히 하나의 일시 중단 프로세스를 재개한다.

    만약 일시 중단된 프로세스가 없을 경우 signal 연산은 아무 효과가 없다.


    '운영체제 > 프로세스 동기화' 카테고리의 다른 글

    고전적인 동기화 문제들  (0) 2018.02.04
    세마포어  (0) 2018.02.04
    뮤텍스 락  (0) 2018.02.04
    동기화 하드웨어  (0) 2018.02.04
    피터슨의 해결안  (0) 2018.02.04

    댓글