정의
- IPC(Inter Process Communiction)은 프로세스간의 의사소통을 의미
- 서로 다른 프로세스 간의 통신을 하기 위해서 두 프로세스가 동시에 접근이 가능한 메모리가 필요
- 이 내용이 Front end에 있는 이유가 프로세스 간의 통신이 클라이언트-서버 간 통신과 유사해서 있는 것 같음
종류 및 특징
Socket
- 한 컴퓨터 안에서의 프로세스 통신 뿐만 아니라 다른 컴퓨터의 프로세스와도 통신이 가능 (이를 ‘네트워킹’ 이라고 한다.)
- 소켓은 프로세스 동기화를 지원
- 데이터를 받는 쪽의 프로세스가 Busy Waiting을 하지 않아도 됨
- Pipe는 통신을 위해 2개를 사용하나, 소켓은 하나만 사용하여도 양방향 통신이 가능
- 소켓 모식도
면접 Q&A
- Q : IPC 가 무엇 인가요?
- A : Inter Process Communication 으로 프로세스 간의 통신입니다. 종류로는 Shared Memory, Pipe, Message Queue, Socket 등이 있습니다.
- Q : Socket 에 대해 좀더 자세히 설명 해 줄 수 있나요?
- A : 네트워크에서 클라이언트와 서버가 통신하는 구조에 이 Socket이 사용되며, 다른 IPC와 다르게 외부 시스템과 통신 할 수 있는 특징이 있습니다.