13.8. Duality of system structures
A question which comes to mind is whether the functionality provided by same-address-space and separate-address-space system designs differ fundamentally. Are there some things you can do in one type of system but not in the other?
Lauer and Needham (1978) claim that the two basic system structures are duals: that any problem that can be solved in a shared-memory system has a dual solution in a non-shared-memory system, and vice versa. We shall see that the argument holds but only if certain process management and IPC primitives are available.
The example we consider is that of a buffer management function, which can either be implemented through a monitor in a shared-memory system, or as a managing process ...