IPC는 크게 두 가지 모델로 나뉜다.
메시지 전달 방식은 커널이 제공하는 API를 이용해서 커널 공간을 통해 메시지를 주고 받는다. 커널을 통해 메시지를 송/수신자끼리 주고 받으며, 커널에서는 데이터를 버퍼링한다. 프로세스 간의 메모리 공유 없이 가능하다.
장점
단점
종류
: 두 개의 프로세스를 파이프로 연결하여 하나의 프로세스는 데이터를 쓰기만 하고 다른 프로세스는 데이터를 읽기만 하며 데이터를 통신한다. 따라서 한 쪽 방향으로만 데이터가 이동하고 주로 부모-자신 간의 단방향 통신으로 사용된다.
: 부모-자신 관계가 아니더라도 어느 프로세스 간의 데이터 송신이 가능하다. 양방향 통신이 가능하며, 메시지의 형태는 사용자가 정의하여 사용할 수 있다. 다수의 프로세스가 동시에 데이터를 쉽게 다룰 수 있으며, 비동기 방식이기에 방대한 처리량이 있다면 큐에 넣은 후 나중에 처리할 수 있다.
: 흔히 네트워크 통신 기법으로 많이 사용되는 방법으로, 양쪽 PC에서 각각 임의의 포트를 정하고 해당 포트 간의 대화를 통해 데이터를 주고 받는다. 양방향 통신이 가능하며, 원격에서 프로세스 간의 데이터를 공유할 때 사용한다.