Notice
Recent Posts
Recent Comments
Link
«   2024/07   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
Archives
Today
Total
관리 메뉴

브래의 슬기로운 코딩 생활

운영체제 6주차 정리 - 2 본문

2-1/운영체제

운영체제 6주차 정리 - 2

김브래 2023. 4. 7. 15:18

교착 및 기아 상태 - 임계 구역


임계 구역


Critical Area

- 또는 “임계 영역”이라 함
- 공유 자원에 대하여 프로세스(멀티스레드 포함)들의 동시 접근에 한계가 있는 영역
- 임계 구역을 접근할 때에는 반드시 가용 상태를 확인해야 함

프린터 예시

- 만약 프린터장치가 프로세스들의 동시 접근을 허용하게 된다면,
- 프로세스들에 의한 출력 요청 명령 들로 인해 기대 외의 결과물이 나오게 됨

공유 메모리 사용 예시

*result의 값은?


임계 구역 해결 조건


상호 배제(mutual exclusion)

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

 

한정 대기(bounded waiting)

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


진행의 융통성(progress flexibility)

다른 프로세스의 진행을 방해해서는 안 됨


세마포어 - Semaphore

임계 구역 접근을 위해 On/Off 표시등(lamp)을 운영
- On 상태 : 사용 중
- Off 상태 : 사용 가능

 

임계 구역을 접근하는 프로세스들은 이 표시등을 모니터링(반복 수행)

 

가용상태(Off 상태)이면, 자신이 On시키고 접근


모니터


Monitor

- 공유 자원을 내부로 숨김
- 외부 접속을 차단
- 인터페이스를 통해 공유 자원 갱신 및 데이터 추출

 

작동 원리

- 요청받은 작업을 모니터 큐에 저장
- 시스템은 모니터 큐의 데이터를 순서대로 처리
- 결과만 해당 프로세스에 알려줌

'2-1 > 운영체제' 카테고리의 다른 글

운영체제 7주차 정리 - 2  (0) 2023.04.10
운영체제 7주차 정리 - 1  (0) 2023.04.10
운영체제 6주차 정리 - 1  (0) 2023.04.07
운영체제 5주차 정리 - 3  (0) 2023.03.30
운영체제 5주차 정리 - 2  (0) 2023.03.30