I. 모니터의 개요 가. 모니터의 개념 프로그래밍 언어 수준에서 동시성을 제어하여 타이밍 오류를 해결한 상호 배제 기법 나. 모니터의 특징 세마포어의 이론적 기반 제공, 타이밍 오류와 P/V 연산 코드구현 순차적으로만 사용할 수 있는 공유 자원 및 그룹 할당 데이터, 프로시저를 포함하는 병행성 구조 II. 모니터의 동작 개념도/구성 요소와 연산의 구현 가. 모니터의 동작 개념도/구성
I. 동시 수행의 위험, 자원 경합의 의미 가. 자원 경합의 정의 공유 자원에 대해 여러 개의 프로세스가 동시에 접근을 시도하여 일관성 보장이 어려운 상태 나. 자원 경합의 특징 특징 설명 예측 불가 – 발생 현상, 빈도 등 예측이 전혀 불가능 비 균등 – 성능 변화가 불균등하여 일관성이 없음 분석 난해 – 연관 요인에 의해 원인분석
I. 세마포어와 모니터 세마포어 모니터 세마포어 변수(s) 및 두 개의 연산(P, V)으로 임계영역에 접근하는 잠금장치에 대한 이론적 기반 Concurrent-Pascal, Module-2/3, JAVA 등 프로그래밍언어 수준에서 세마포어 처럼 상호배제 기능 제공 II. 세마포어와 모니터의 상호관계 가. 세마포어와 모니터 개념적 상관관계 세마포어는 모니터에 이론적 기반을 제공하고, 모니터는 타이밍 문제점을 보완하여 동시성 제어 위한 상호작용 지원 나. 세마포어와
I. 실시간 스케줄링 문제, 우선순위 역전 현상의 개요 가. 우선순위 역전 현상의 정의 우선순위가 높은 task가 준비 상태로 바뀌었지만 더 낮은 task가 CPU를 점유하고 있어 실행되지 못하는 현상 나. 우선순위 역전의 원인 스케줄링과 동기화 사이 상호작용 결과로 발생 스케줄링 규칙에서 실행되어야 하는 스레드와 동기화에서 실행되어야 하는 스레드가 서로 다른 경우, 우선 순위 역전 발생
I. 멀티 프로세스 환경의 리소스풀, 계수형 세마포어의 개념 0과 1의 값을 가지는 이진형 세마포어와 달리, 풀에 있는 자원의 수와 같은 값으로 초기화 되는 세마포어 동기화 기법 II. 계수형 세마포어의 동작 매커니즘 및 사례 가. 계수형 세마포어 동작 매커니즘 구분 세부 내용 동작 개념도 매커 니즘 ① 세마포어는 Pool 자원 수와 같은 값으로 초기화 ②
I. Busy waiting, 세마포어의 개요 가. 세마포어(Semaphore)의 정의 운영체제나 프로그램 내에서 공유 자원에 대한 접근을 제어하기 위해 사용되는 신호 나. 세마포어의 개념도 최초의 s값은 1, P(s)를 먼저 수행하는 프로세스가 s=0 변경, Critical Section에 진입, 먼저 들어갔던 프로세스가 V(s)를 수행하면 s=1로 변경, P(s)에서 대기하고 있던 프로세스가 진행 s=1 이면, Critical Section 실행 중 프로세스 없음 의미
I. 다중 프로세스 상호 간 통신, IPC 가. IPC (Inter Process Communication)의 개념 공유 메모리가 없는 독립된 프로세스 간 동기화 및 데이터 교환을 위한 상호통신 기법 나. IPC의 필요성 동기화 문제 해결 – 다중 프로세스 환경에서 여러 사용자가 동시 쓰기 시 데이터 무결성 보장 가능 프로세스간 데이터 교환 – 작은 데이터의 경우 메시지 큐 방식