더북(TheBook)

5.1.2 메시지 전달 IPC

메시지 전달 IPC는 오늘날 가장 널리 쓰이는 IPC 방식이다(지원하는 운영체제 또한 많다). 메시지 전달 IPC에서는 모든 작업에 고유 식별자를 부여하고 이 식별자를 향해 메시지를 주고받는 식으로 정보를 교환한다. 운영체제는 여기에 쓰일 통신 채널을 수립하고 시스템 콜을 거쳐 작업끼리 메시지를 주고받는 기능을 제공한다.

이러한 방식의 장점은 운영체제가 통신에 쓰이는 채널을 직접 관리해주므로 충돌 없이 데이터를 주고받을 수 있고 편리한 인터페이스를 제공한다는 점이다. 그러나 그 반대급부로 통신 비용이 크다. 아무리 간단한 것이라도 작업 간에 정보를 교환하려면, 주고받을 정보를 원본 작업의 사용자 공간에서 시스템 콜을 경유(3장에서 설명했듯)해 운영체제의 채널로 복사하고, 이를 다시 대상 작업의 사용자 공간으로 복사하는 복잡한 과정을 거쳐야 하기 때문이다.

메시지 전달의 또 다른 장점으로 분산 시스템으로 확장이 쉽다는 점을 들 수 있다. 그 외에도 여러 장점이 있지만 여기서는 넘어가도록 한다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.