Applications continue to grow in size and sophistication. Spreading applications across multiple processors and network nodes increases complexity due to interprocess communication, but there are ways ...