We're concerned with software system structures that make it possible to exploit the full potential of advanced architectures such as multiprocessors, wide-address machines, and high-bandwidth low-latency networks.
The SPIN project is concerned with increasing performance for resource-intensive applications, such as multimedia and databases. The key idea in SPIN is that of an adaptable kernel architecture; SPIN has an extensible microkernel, in which application-specific code can be embedded. An application can define new resources, which are split into a user-level component and a kernel-level component. The kernel contains mechanisms to permit the embedding of application-specific code (the kernel-level components) in a way that is completely protected. SPIN merges research in operating systems and programming languages, using trusted compilers and type-safe languages to verify the safety of these kernel-resident application components.
The performance potential of multiprocessors has proven to be elusive in practice. One important reason is that current multiprocessor operating system structures and facilities tend to be warmed-over rehashes of their uniprocessor predecessors. Multiprocessors create the opportunity and the need to re-think various aspects of operating system design. This has been a focus of our work for the past several years. Topics have included:
Improved runtime support for specific classes of parallel scientific applications is another area that we are actively pursuing, as an outgrowth of our interest in system support. Topics include:
In Opal, all applications execute in one address space. This facilitates sharing: a pointer means the same thing to all applications. The key point is that having a single address space does not compromise protection: each application executes in a private protection domain; the fact that an application can generate an address does not mean that it can necessarily read or write that address. Protection domains are composed of multiple segments; segments are the basic unit of sharing.
Achieving low-latency cross-machine communication using the coming generation of high-bandwidth networks (specifically ATM networks) is another area of current interest.
Principal Investigators: Bershad, Lazowska, Levy, Zahorjan