본문 바로가기

OS/쉽게 배우는 운영체제

프로세스 동기화

728x90

목차

1. 프로세스 간 통신

- 프로세스가 다른 프로세스와 데이터를 주고받는 것

- 내부 데이터 통신, 프로세스 간 통신, 네트워크를 통신으로 나뉨

 

2. 프로세스 간 통신의 분류

- 통빈 방향: 양방향 (소켓), 반양방향 (무전기), 단방향 (전역 변수, 파일, 파이프)
- 구현 방식: 대기가 있는 통신 (파이프, 소켓), 대기가 없는 통신 (전역 변수, 파일)

 

3. 프로세스 간 통신의 분류

- 전역 변수: 공동으로 관리하는 메모리를 사용

- 파일: 저장장치에 파일을 읽고 쓰는 방법

- 파이프: 운영체제가 제공하는 동기화 방식으로, 파이프에 쓰기 연산과 읽기 연산을 통해 데이터를 주고 받음

- 소켓: 컴퓨터에 있는 프로세스와 프로세스를 소켓으로 연결하여 통신, 소켓에 데이터를 쓰고 읽으며 통신

 

4. 공유 자원

- 변수, 메모리, 파일 등

- 데이터를 읽거나 쓸 때 결과가 달라질 수 있음

 

5.  임계구역

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

 

6. 임계구역 해결 조건

- 상호 배제: 한 프로세스가 임계구역에 들어가면 다른 프로세스는 임계구역에 들어갈 수 없음

- 한정 대기: 무한 대기의 경우는 없어야 함

- 진행의 융통성: 한 프로세스가 다른 프로세스 진행을 방해하면 안됨

 

7.  임계구역 해결 방법

300x250

'OS > 쉽게 배우는 운영체제' 카테고리의 다른 글

CPU 스케줄링  (0) 2022.05.03
프로세스와 스레드  (0) 2022.04.19
컴퓨터 구조와 성능 향상  (0) 2022.04.18
운영체제 개요  (0) 2022.04.18