Date: Thu, 12 Feb 1998 16:18:14 +0100 From: Eivind Eklund <eivind@yes.no> To: Garrett Wollman <wollman@khavrinen.lcs.mit.edu>, Eivind Eklund <eivind@yes.no> Cc: current@FreeBSD.ORG Subject: Re: Heads up: static -ification Message-ID: <19980212161814.38690@follo.net> In-Reply-To: <199802121509.KAA21386@khavrinen.lcs.mit.edu>; from Garrett Wollman on Thu, Feb 12, 1998 at 10:09:30AM -0500 References: <19980210030906.20113@follo.net> <199802100857.BAA22938@usr05.primenet.com> <19980212143844.44164@follo.net> <199802121509.KAA21386@khavrinen.lcs.mit.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, Feb 12, 1998 at 10:09:30AM -0500, Garrett Wollman wrote: > <<On Thu, 12 Feb 1998 14:38:44 +0100, Eivind Eklund <eivind@yes.no> said: > > > I actually dislike the use of calls between layers at all (or at > > least in almost all cases). Layers should communicate through > > asynchronous messages; that way, you avoid a lot of stupid implict > > ordering assumptions. > > ``Layering is a great model for designing protocols, but an incredibly > lousy way of implementing them.'' > - D. D. Clark That quote is often true for protocols, yes. OTOH, I haven't yet found a way of implementing advanced protocols that isn't lousy. And one of the problems with most layered protocol implementations is that they don't take the layering far enough - they throw in a lot of indirect calls and non-visible state as their 'layers', instead of abstracting enough and consider each layer a process. At least for operating systems, message-passing systems tend to be beautifully simple. The main problem is that if you do them in a memory-protected environment your performance tend to suck. Eivind. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19980212161814.38690>