Message passing
William S. Frantz
frantz@netcom.com
Thu, 15 Dec 1994 17:09:06 -0800 (PST)
> Perhaps the message passing design can take a idea from the 370
> instruction set here. The 370 has an instruction, Move Long, that
> can copy up to 16 meg of data (The size of virtual memory)...
>
> This particular instruction is one of the major impediments in
> building a decently fast 370 implementation. It ties up an amazing
> number of system resources, and is empirically no faster than a
> cleverly written string move routine on a modern machine. RISC
> designers abandoned it with good reason, and I'm sort of loathe to
> reintroduce it.
I guess I just don't understand. The semantics are simple, and
the hardware is nearly the only thing in the right place to implement
decisions based of the memory architecture. Certainly the compiler
is very unlikely to know about things such as interleaving, and
whether this move should load the cache or not. It always struck
me that, since so much of commercial processing is moving data
around, that RISC architectures would evolve to have move in the
hardware in the same way they have evolved to have floating point
in the hardware.
> I grant, though, that the same things you do in a 370 debugger to
> handle this instruction could be applied to DIMSUM.
I didn't do anything special. What would anyone want to do? When
you look at the partially completed move, you see the PSW pointing
at the move instruction, and the registers indicate how much of it
has completed. What could be clearer.
> If we take this view, then speaking as a debugger author I want the
> kernel to provide an event of interest that is guaranteed to be after
> the message is completely transferred but before the process has
> executed any instructions following the receipt of the message.
In KeyKOS, you turn off the domain's meter. That's what the KeyKOS
debugger does.
-----------------------------------------------------------------
Bill Frantz Periwinkle -- Computer Consulting
(408)356-8506 16345 Englewood Ave.
frantz@netcom.com Los Gatos, CA 95032, USA