This is a good article on RPC where some RPC analogues are listed; you can follow a reference on each of them:
http://en.wikipedia.org/wiki/Remote_procedure_call[
^].
My own opinion? Hard to say. I think, in the words of C++ and Windows, COM and DCOM (
http://en.wikipedia.org/wiki/Component_Object_Model[
^],
http://en.wikipedia.org/wiki/Distributed_Component_Object_Model[
^]) got the most of popularity and are well established, but view of them is
very cautious.
I could see that COM appeared as a transitional stage between such non-object-oriented system as Windows (at least from the API point of view; and, despite the fact that the APIs are mostly kept in OOP style, technically this is not OOP at all) and object-oriented technologies, such as those related to C++. This measure could not cure non-object-oriented nature of OS and created a number of artificial constructs and made the system considerably bloated. In my string opinion, COM should go, and CLR-based systems should replace Windows. Microsoft is already working in this direction:
COM later made its way to the word of CLR and .NET, as a glue used to create a bond with legacy code; but .NET is a truly object-oriented system, top to bottom, it does not need COM at all. What I really would prefer to recommend, is either classical .NET remoting (many say it is obsolete, but I'm not so sure) and WCF. The problem is: if you consider this, you should consider C++/CLI or C#, not C++. C++/CLI is very close to C++ though, but essentially different. If you are interested, see also:
http://en.wikipedia.org/wiki/.NET_Remoting[
^],
http://msdn.microsoft.com/en-us/library/2e7z38xb%28v=VS.100%29.aspx[
^],
http://en.wikipedia.org/wiki/Windows_Communication_Foundation[
^],
http://msdn.microsoft.com/en-us/netframework/aa663324.aspx[
^],
http://msdn.microsoft.com/en-us/library/dd456779.aspx[
^],
http://en.wikipedia.org/wiki/C%2B%2B/CLI[
^],
http://en.wikipedia.org/wiki/C%2B%2B/CLI[
^],
http://www.ecma-international.org/publications/standards/Ecma-372.htm[
^].
Supplement:
To get an idea of how managed CLR platform can be used in development of OS, please read about the following projects:
Microsoft Singularity:
http://en.wikipedia.org/wiki/Singularity_%28operating_system%29[
^],
http://research.microsoft.com/en-us/projects/singularity/[
^];
Cosmos:
http://en.wikipedia.org/wiki/Cosmos_%28operating_system%29[
^],
http://cosmos.codeplex.com/[
^];
SharpOS:
http://en.wikipedia.org/wiki/SharpOS_%28operating_system%29[
^],
http://www.sharpos.org/[
^];
ETH Zurich — Microsoft Research Barrelfish:
http://en.wikipedia.org/wiki/Barrelfish[
^],
http://www.barrelfish.org/[
^].
Microsoft Midori (code name):
http://en.wikipedia.org/wiki/Midori_%28operating_system%29[
^].
—SA