Disco: Running Commodity Operating Systems on Scalable Multiprocessors (1997)

Summary. Operating systems are complex, million line code bases. Multiprocessors were becoming popular, but it was too difficult to modify existing commercial operating systems to take full advantage of the new hardware. Disco is a virtual machine monitor, or hypervisor, that uses virtualization to run commercial virtual machines on cache-coherent NUMA multiprocessors. Guest operating systems running on Disco are only slightly modified, yet are still able to take advantage of the multiprocessor. Moreover, Disco offers all the traditional benefits of a hypervisor (e.g. fault isolation).

Disco provides the following interfaces:

Disco is implemented as follows: