Some very thought-provoking ideas about OS architecture.

shapj@us.ibm.com shapj@us.ibm.com
Tue, 22 Jun 1999 15:26:47 -0400


Jim Gettys writes (in the context of a discussion about asynchronous messaging):

>Here's the moral: buffering/batching can work REALLY well, but is BEST done
>at design time, and hard/painful/impossible to retrofit later.

Jim is absolutely right.  I remember having a long series of design sessions on
this with Phil Karlton (now dearly missed) when my group was designing the SGI
VIEW debugger product line.

The two hidden costs in buffered asynchronous messaging systems is that somebody
has to pay for the buffers and recovering consistency when one side or the other
drops the ball is more than a little tricky.  At this point, I'm fairly well
convinced that asynchronous messaging is not something I want in a microkernel
nucleus.

None of this, you should understand, is meant to disagree with Jim; it's more an
observation about different priorities at different layers in the design.

Jonathan S. Shapiro, Ph. D.
IBM T.J. Watson Research Center
Email: shapj@us.ibm.com
Phone: +1 914 784 7085  (Tieline: 863)
Fax: +1 914 784 7595