A Message-Coupled Architecture (MESCAR) for Distributed Shared-Memory Multiprocessors