InterProcessCommunication such as * PipesAndFilters * MessagePassing (MailBoxes) * SendReceiveReply * SendReceiveReplyEventually * ActorsModel * CommunicatingSequentialProcesses * UnixSignal (software interrupts: very limited communication as it doesn't carry any data) * Sockets * SharedMemory * Files * Semaphore / mutex (usually used to coordinate access to SharedMemory) * PublishSubscribeModel * CommonObjectRequestBrokerArchitecture (CORBA) * DistributedCom * JavaRemoteMethodInvocation * SimpleObjectAccessProtocol / XmlRpc * DotNetRemoting * MachPorts * Database querying / OpenDataBaseConnectivity / TableOrientedSynchronization http://www.nightflight.com/foldoc-bin/foldoc.cgi?query=ipc ---- Some practical ways of doing this include * DistributedRuby * MessagePassingInterface (mpi) * ParallelVirtualMachine (pvm) * D-BUS ** http://dbus.freedesktop.org/doc/dbus-tutorial.html ---- See also ParallelProgramming ParallelProgrammingModel