Path: utzoo!censor!geac!torsqnt!news-server.csri.toronto.edu!cs.utexas.edu!usc!apple!agate!darkstar!cs.washington.edu From: pardo@cs.washington.edu (David Keppel) Newsgroups: comp.os.research Subject: Re: Toy Experiment with Shared Memory Programming Message-ID: <8859@darkstar.ucsc.edu> Date: 10 Nov 90 18:34:44 GMT Sender: usenet@darkstar.ucsc.edu Organization: University of Washington, Computer Science, Seattle Lines: 23 Approved: comp-os-research@jupiter.ucsc.edu jms@central.cis.upenn.edu (Jonathan M. Smith) writes: >[Programming with pipes vs. shared memory] Some other lessons from the experiment: * Programming with good, familiar primitives is always easier. * Never confuse MODEL with IMPLEMENTATION -- there are pipes that are implemented using shared memory (Mach, Topaz) and shared memory implemented using pipes (more or less, anyway; Ivy). * The results are always different on a multiprocessor: the shared-memory version has a simple implementation that (after setup) makes no kernel calls and does no copying -- at least on some platforms. * There is also a pipe model, implemented using shared memory, that runs on (some) multiprocessors with no kernel calls and no copying. * Simple, understandable examples are almost controversial :^) Thank you for this opportunity to generalize... ;-D on ( General Semaphore? This is Private Memory. Sir! ) Pardo -- pardo@cs.washington.edu {rutgers,cornell,ucsd,ubc-cs,tektronix}!uw-beaver!june!pardo