less than 1 minute read

공유 자원과 임계구역

공유자원은 여러 프로세스가 공동으로 이용하는 데이터

- 공유 자원의 접근

    누가 언제 데이터를 읽거나 쓰느냐에 따라 결과가 달라질 수 있음

    - 경쟁 조건

        2개 이상의 프로세스가 공유 자원을 병행적으로 읽거나 쓰는 상황

- 임계구역

    공유 자원 접근 순서에 따라 실행 결과가 달라지는 프로그램의 영역

    프로세스 실행 상황에서는 공유할 수 없는 매우 중요한 자원

- 생산자-소비자 문제

    생산자 프로세스와 소비자 프로세스가 서로 독립적으로 작업을 하는 상황에서 전역 변수에 접근하는 타이밍을 서로 맞추지 않아 데이터에 문제가 생기는 상황

- 임계구역 해결 조건

    상호 배제, 한정 대기, 진행의 융통성을 모두 만족해야 함

    - 상호 배제

        한 프로세스가 임계구역에 들어가면 다른 프로세스는 임계구역에 들어갈 수 없음

    - 한정 대기

        어떤 프로세스도 무한 대기하지 않아야 함

    - 진행의 융통성

        한 프로세스가 다른 프로세스의 진행을 방해하면 안 됨

Categories:

Updated: