navis
운영체제 5강 (병행프로세스) 본문
728x90
학습개요
- 병행 프로세스 중 협력 프로세스에서 발생할 수 있는 구체적인 문제로 생산자-소비자 문제와 판독기-기록기 문제가 있습니다. 또한 협력 프로세스 사이에는 데이터를 공유하기 위해 통신이 필수인데, 이 과정에서도 다양한 문제가 발생할 수 있습니다. 이번 강의에서는 생산자-소비자 문제, 판독기-기록기 문제의 예를 통해 협력 프로세스의 일반적 구현방법을 학습합니다. 또한 병행 프로세스 사이의 통신을 위한 방법에 대해 논리적 측면에서 살펴봅니다.
학습목표
- 생산자-소비자 문제를 알아보고, 세마포어를 이용하여 해결할 수 있다.
- 판독기-기록기 문제를 알아보고, 세마포어를 이용하여 해결할 수 있다.
- 프로세스 간 통신을 위한 논리적 구조를 설명할 수 있다.
정리하기
- 생산자-소비자 문제는 상호배제와 동기화가 필요한 문제로 세마포어를 이용하여 구현할 수 있다.
- 판독기-기록기 문제는 기록기는 상호배제가 필요하나 판독기는 상황에 따라 다른 처리가 필요한 문제로 세마포어를 이용하여 구현할 수 있다.
- 판독기-기록기 문제는 특정 상황에서 판독기에 우선순위를 주는 형태의 문제와 기록기에 우선순위를 주는 형태의 문제로 정의할 수 있다.
- 프로세스 간 통신 방법에는 공유 메모리 방법과 메시지 전달 방법이 있다.
- 공유 메모리 방법은 협력 프로세스가 공유 메모리를 이용하는 동일한 변수를 사용함으로써 데이터를 서로 공유하는 방법이다.
- 메시지 전달방법은 협력 프로세스가 메시지를 주고받으면서 데이터를 서로 공유하는 방법이다.
- 메시지 전달방법에는 송신자와 수신자가 직접 서로를 지정하여 메시지를 주고받는 직접통신 방법과 우편함을 통하여 메시지를 주고받는 간접통신 방법이 있다.
'방송통신대 컴퓨터과학과' 카테고리의 다른 글
인공지능 6강 (논리에 의한 지식 표현) (0) | 2024.04.17 |
---|---|
알고리즘 6강 (탐색) (0) | 2024.04.17 |
인공지능 5강 (지식과 인공지능) (0) | 2024.04.15 |
알고리즘 5강 (정렬) (0) | 2024.04.15 |
데이터 베이스 (0) | 2024.04.12 |