He has been instrumental in the design, implementation, and evaluation of the Munin and Quarks distributed shared memory systems, and has extensive hands-on experience both implementing and using real DSM systems. John is currently co-leading two ARPA-funded research projects that involve DSM. The first entails restructuring of the Mach operating system, part of which involves making DSM a fundamental operating system service used by both user applications and system services. The second project involves the design and implementation of a scalable shared-memory multiprocessor that incorporates many of the design features found in software DSM systems, including relaxed consistency and application driven consistency protocols.