Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

You are correct, the message-passing portion of ROS is inter-process communication (IPC).

I'm not sure which other IPC mechanisms you're looking at, but ROS provides the following additional features in addition to just passing messages:

  • message type checking (type name and message version)
  • support for many languages: C++, Pytho, Lisp, Java and more!
  • seamless use of language-native data structures (no need to explicitly serialize)
  • seamless use of multiple publishers and subscribers on a topic (IPC channel)
  • Introspection of the type, content and rate of messages on a topic (rostopic command-line tool)
  • very easy to create and use multiple topics
  • easily expands to work across a network, with no changes to your nodes