Described herein is an implementation of an inter-process communications
technology. One or more implementations, described herein, facilitate
creation of a bi-directional message conduit having exactly two
endpoints. A first endpoint is owned by a first software process and a
second endpoint is owned by a second software process. One or more
implementations, described herein, maintain the bi-directional message
conduit for passing multiple messages via the bi-directional message
conduit from the first process to the second process, according to
established rules that can be checked.