Path: utzoo!news-server.csri.toronto.edu!cs.utexas.edu!asuvax!noao!ncar!gatech!udel!rochester!pt.cs.cmu.edu!o.gp.cs.cmu.edu!PLAY.MACH.CS.CMU.EDU!bsy From: bsy@PLAY.MACH.CS.CMU.EDU (Bennet Yee) Newsgroups: comp.arch Subject: Re: Translating 64-bit addresses Message-ID: <1991Mar10.061658.4484@cs.cmu.edu> Date: 10 Mar 91 06:16:58 GMT References: <6590@hplabsz.HP.COM> <12030@pt.cs.cmu.edu> <6626@hplabsz.HP.COM> Sender: netnews@cs.cmu.edu (USENET News Group Software) Reply-To: bsy+@cs.cmu.edu Organization: Cranberry Melon, School of Cucumber Science Lines: 36 In article , pcg@cs.aber.ac.uk (Piercarlo Antonio Grandi) writes: >On 7 Mar 91 13:31:29 GMT, peter@ficc.ferranti.com (Peter da Silva) said: > >peter> In article >peter> pcg@cs.aber.ac.uk (Piercarlo Antonio Grandi) writes: > >pcg> I would however still maintain that even with conventional multiple >pcg> address space architectures shared memory is not necessary, as >pcg> sending segments back and forth (remapping) gives much the same >pcg> bandwidth. > >peter> I don't think you can really make a good case for this. > >Tell that to the people that ported Mach, and 4.3BSD to the PC/RT... :-) > >My estimate is that remapping can be done on demand (lazy remapping), >not on every context switch, and it does not cost more than a page fault >(which is admittedly an extremely expensive operation, but one about >which people don't complain). Also in many cases lazy remapping costs >nothing, given the vagaries of scheduling. Suppose a segment is shared >between processes 1 and 3; if 1 is deactivated, 2 is activated, and 1 >is reactivated, no remapping need take place, because 3 has not >accessed it in this sequence. Actually, handling shared memory doesn't require the kernel to twiddle the page tables on context switch for almost all machines _except_ for those like the RTs where it's got an inverted page table. Normal page table machines may have many virtual addresses mapped to the same physical address. The kernel needs to intervene only if the page is shared copy-on-write -- the page is marked as write protected and the kernel copies the page only when a task writes to the (shared) page. Remapping is a special case of shared memory. -- Bennet S. Yee Phone: +1 412 268-7571 Email: bsy+@cs.cmu.edu School of Computer Science, Carnegie Mellon, Pittsburgh, PA 15213-3890