The substrate object model and architecture
Arindam Banerji, Dinesh C. Kulkarni, John M. Tracey, D. Cohn · 2002
Operating system kernels are difficult to build, hard to change and a problem to adapt to new hardware. This is particularly true when the operating system tries to simulate a general-purpose multiprocessor on a cluster of workstations. The substrate architecture presented here uses lessons from language design to facilitate the evolution of existing operating systems. A reflective object model that clearly separates instances, interfaces and implementations is the basis of this architecture. The object-model implementation allows flexible and dynamic composition of interfaces and implementations. The language environment and object model is used to create substrates, building block components of a multiprocessor environment.>