티스토리 뷰
728x90
임계 영역(critical section)
:프로세스 영역 중에서 공유 자원을 접근하는 코드 영역. (즉 공유 자원에 접근했을 때를 '임계 영역에 있다'고 말함)
모든 프로세스가 임계 영역을 가지고 있는 것은 아니지만 자원을 공유하면서 병행적으로 실행되는 프로세스는 반드시 임계 영역을 가지고 있다. 프로세스의 결정성이 보장되기 위해서는 임계 영역이 상호 배제적으로 실행되어야 한다.
프로세스의 코드 영역
1) 임계 영역(critical section)
2) 진입 영역(entry section)
3) 출구 영역(exit section)
4) 잔류 영역(remainder section)
임계 영역의 문제해결 만족조건
1) 상호 배제(mutual exclusion) 조건: 두 개 이상의 프로세스가 임계영역에 존재해서는 안 된다.
2) 진행(progress) 조건: 임계영역에 존재하는 프로세스가 없을 경우 임계영역에 진입할 수 있어야 한다.
3) 제한된 대기(bounded waiting) 조건: 임계영역 진입하려는 프로세스가 무한정 기다리게 해서는 안 된다.
728x90
'cs > operating system' 카테고리의 다른 글
[운영체제/OS] 프로세스 간 통신(메시지 전송/공유 메모리 방식) (0) | 2021.04.17 |
---|---|
[운영체제/OS] 스레드 동기화 기법 뮤텍스(mutex)/세마포어(semaphore) (0) | 2021.04.16 |
[운영체제/OS] 결정성, 생산자/소비자 프로세스, 경쟁 조건 (0) | 2021.04.02 |
[운영체제/OS] 리눅스 프로세스 (0) | 2021.03.28 |
[운영체제/OS] 프로세스 스케줄링 (선점/비선점) (0) | 2021.03.28 |