공유 메모리의 예: POSIX Shared Memory(uniX)
메시지 패싱의 예: Pipes(UNIX)
POSIX Shared Memory(uniX)
- 메모리에 매핑되어 있는 파일들로 구성되어 있다.
- 공유 메모리 객체를 생성한 후, 객체의 사이즈를 정해준 후 memory-mapped 파일을 할당한다.
Pipes(UNIX)
- 초기 유닉스 시스템의 IPC 메커니즘 중 하나이다
- 두개의 프로세스가 소통할 수 있도록 연결 역할을 해준다
- 파이프의 4가지 이슈
- 한 방향으로만 흘러가는가
- 양방향 소통이 가능하는가
- 생산자와 소비자가 부모-자식 관계를 가지고 있는가
- 네트워크에서 소통하는가
- 파이프의 일반적인 종류
- 기본 파이프
- 한방향 통신
- 부모 프로세스 - 자식 프로세스 통신
- 기본 파이프
클라이언트-서버 시스템에서의 소통
- 소켓
- 원격지를 위한 연결 수단
- IP 주소 + Port 번호로 소켓을 특정한다
- 자바의 소켓
- Socket class: connection-oriented (TCP)
- DatagramSocket class: connectionless (UDP)
- MulticastSocket class: multiple recipients
- RPC(Remote Procedure Calls)
- 원격에 있는 함수(프로세스)를 호출하는 것
- 리모트 서비스의 가장 흔한 형태
- stub을 클라이언트 사이드에 제공해서 연결함
- IPC가 한 컴퓨터 내부의 프로세스끼리 통신하는 것이라면
- RPC는 컴퓨터 사이의 프로세스끼리 원격으로 통신하는 것이다.
'Computer Science > 운영체제' 카테고리의 다른 글
멀티쓰레딩 (Pthread) (0) | 2022.12.06 |
---|---|
쓰레드의 이해 (Thread & Concurrency) (0) | 2022.12.06 |
프로세스간 통신(IPC) (0) | 2022.12.01 |
프로세스에 대해 이해해보자 (0) | 2022.11.22 |
운영체제의 개념과 구조 (0) | 2022.11.15 |