IT 기술/CA & OS

IPC (Inter Process Communication)

gooooooood 2025. 5. 22. 11:14
반응형

1. IPC의 개념과 목적

가. IPC의 개념

- 운영체제에서 실행 중인 여러 독립 프로세스들이 서로 데이터를 주고받아 협력할 수 있도록 하는 기술

 

나. IPC 목적

구분 목적 설명
데이터 공유 데이터 교환 - 프로세스간 변수, 메시지 등 전달
자원 공유 - 메모리, 파일 등 효율적 공유
프로세스 협력 작업 분담 - 복잡한 작업 분산 수행
동기화 이벤트 동기화 - 작업 순서 제어 동기화
안정성 및 성능 - 프로세스 모듈화로 성능 개선

 

 

2. IPC 주요 기법 3가지

기법 매커니즘 설명
파이프
- 한 프로세스 출력, 다른 프로세스 입력의 단방향 통신 방식
- 주로 부모-자식 프로세스간 통신에 사용
공유 메모리
- 두 개 이상의 프로세스가 동일한 메모리 공간 공유로 데이터 교환
- 가장 빠른 IPC 방식이지만 동기화 구현 필요
메시지 
- 운영체제가 관리하는 메시지 큐에 메시지 넣고 꺼내는 방식, 비동기 통신 기능
- 큐 기반 여러 메시지 순차 처리 가능

 

 

3. 공유 자원 출돌이나 일관성 문제 해결위한 동기화 기법

기법 매커니즘 설명
세마포어
- 카운터 값 활용해 여러 프로세스가 공유 자원 접근하는 것을 제어
- 이진 세마포어, 카운팅 세마포어
뮤텍스
- 하나의 프로세스만 공유 자원에 접근할 수 있도록 잠금 설정하는 방식
- 뮤텍스 획득 프로세스가 작업 후 해제해야 다른 프로세스 접근 가능
모니터
- 상호 배제 로직 추상화하고 공유 자원 접근 인터페이스 제
- 고수준 언어에서 많이 사
Read-Write Lock
- 여러 읽기는 동시 허용, 쓰기는 단독으로 수행하게 관리
- 데이터 일관성과 병렬성 만족

 

 

반응형

'IT 기술 > CA & OS' 카테고리의 다른 글

멀티 GPU  (0) 2025.05.22
인터럽트  (0) 2025.05.22
프로세스 스레싱  (0) 2025.01.07
차세대 컴퓨팅  (0) 2024.12.17
가상메모리  (0) 2024.12.17