Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!hellgate.utah.edu!caen!zaphod.mps.ohio-state.edu!wuarchive!udel!haven!uvaarpa!mcnc!rti!dg-rtp!dg-rtp.dg.com!hamilton From: hamilton@dg-rtp.dg.com (Eric Hamilton) Newsgroups: comp.arch Subject: Re: Historical architectural advances?? Message-ID: <1990Nov14.002229.23142@dg-rtp.dg.com> Date: 14 Nov 90 00:22:29 GMT References: <8185@scolex.sco.COM> <1868@m1.cs.man.ac.uk> <8553@scolex.sco.COM> <1888@m1.cs.man.ac.uk> <1990Nov7.155719.24413@dg-rtp.dg.com> Sender: usenet@dg-rtp.dg.com (Usenet Administration) Reply-To: hamilton@dg-rtp.dg.com (Eric Hamilton) Organization: Data General Corporation, Research Triangle Park, NC Lines: 47 In article , peter@ficc.ferranti.com (Peter da Silva) writes: |> In article <1990Nov7.155719.24413@dg-rtp.dg.com> hamilton@dg-rtp.dg.com (Eric Hamilton) writes: |> > I would like to see the term "tightly coupled" reserved for |> > systems in which memory is shared and coherent for all |> > processors and all the processors occupy the same physical |> > address space. |> |> Fair enough. |> |> > The distinguishing characteristic of these |> > machines is that the C construct *p=... can be used to |> > change shared data. |> |> This means that any group of systems on an Ethernet suddenly become tightly |> coupled as soon as you boot up Andy Tannenbaum's Amoeba on them, no? Of course, I shouldn't have said "THE distinguishing characteristic..."; almost any characteristic can be emulated at some cost, so it's hard to come up with truly distinguishing characteristics. I believe that you've described one technique for realizing the semantics of globally shared and coherent memory on top of hardware which doesn't do coherent sharing, and I expect the readership of this newsgroup to come up with many more similar examples. So I'll take the position that the answer to your question is no. You've described a loosely coupled system that emulates a tightly coupled one. Also, I'll take the position that trying to rigorously pin down the distinction between an emulation and the real thing is a sterile exercise - the better the emulation is, the less useful the distinction. And if we look down inside the snooping caches that tie a shared and coherent memory system together, we find local replication of read data, broadcast invalidates, and all the other machinery used to share data in our loosely coupled systems. None of this means that a shared memory system is not usefully different from a loosely coupled system building shared-memory semantics out of, say, the LAN.