The increasing irrelevance of IPC Performance for Micro-kernel-Based Operating Systems

IPC is the glue with which traditional operating system services such as networking, and ling, are provided in microkernel-based operating systems. Because applications rely heavily on cross-address space communication, IPC performance is often viewed as being the \Achilles heel" of a microkernel-based operating system. In this paper I discuss four reasons why IPC performance is becoming increasingly irrelevant to overall system performance.

[1]  Henry M. Levy,et al.  High-performance cross-address space communication , 1990 .

[2]  David R. Cheriton The V Kernel: A Software Base for Distributed Systems , 1984, IEEE Software.

[3]  Alessandro Forin,et al.  UNIX as an Application Program , 1990, USENIX Summer.

[4]  Paulo Guedes,et al.  Generalized Emulation Services for Mach 3.0: Overview, Experiences and Current Status , 1991, USENIX MACH Symposium.

[5]  Richard F. Rashid,et al.  DOS as a Mach 3.0 Application , 1991, USENIX MACH Symposium.

[6]  Brian N. Bershad,et al.  Lightweight remote procedure call , 1989, TOCS.

[7]  Richard Draves,et al.  A Revised IPC Interface , 1990, USENIX MACH Symposium.

[8]  Jeffrey C. Mogul,et al.  The effect of context switches on cache performance , 1991, ASPLOS IV.

[9]  William J. Bolosky,et al.  Mach: A New Kernel Foundation for UNIX Development , 1986, USENIX Summer.

[10]  Cheryl A. Wiecek A Model and Prototype of VMS Using the Mach 3.0 Kernel , 1992, USENIX Workshop on Microkernels and Other Kernel Architectures.

[11]  Armando P. Stettner The design and implementation of the 4.3BSD UNIX operating system , 1988 .

[12]  Chris Maeda,et al.  Networking performance for microkernels , 1992, [1992] Proceedings Third Workshop on Workstation Operating Systems.

[13]  David R. Cheriton,et al.  Binary Emulation of UNIX Using the V Kernel , 1990, USENIX Summer.

[14]  Brian N. Bershad,et al.  The interaction of architecture and operating system design , 1991, ASPLOS IV.

[15]  Brian N. Bershad,et al.  Using continuations to implement thread management and communication in operating systems , 1991, SOSP '91.

[16]  Andrew R. Cherenson,et al.  The Sprite network operating system , 1988, Computer.

[17]  Mark Horowitz,et al.  Cache performance of operating system and multiprogramming workloads , 1988, TOCS.