Kernel‐Kernel communication in a shared‐memory multiprocessor

Eliseu M. Chaves, Prakash Ch Das, Thomas J. Leblanc, Brian D. Marsh, Michael L. Scott

Research output: Contribution to journalArticlepeer-review

11 Scopus citations


In the standard kernel organization on a bus‐based multiprocessor, all processors share the code and data of the operating system; explicit synchronization is used to control access to kernel data structures. Distributed‐memory multicomputers use an alternative approach, in which each instance of the kernel performs local operations directly and uses remote invocation to perform remote operations. Either approach to interkernel communication can be used in a large‐scale shared‐memory multiprocessor. In the paper we discuss the issues and architectural features that must be considered when choosing between remote memory access and remote invocation. We focus in particular on experience with the Psyche multiprocessor operating system on the BBN Butterfly Plus. We find that the Butterfly architecture is biased towards the use of remote invocation for kernel operations that perform a significant number of memory references, and that current architectural trends are likely to increase this bias in future machines. This conclusion suggests that straightforward parallelization of existing kernels (e.g. by using semaphores to protect shared data) is unlikely in the future to yield acceptable performance. We note, however, that remote memory access is useful for small, frequently‐executed operations, and is likely to remain so.

Original languageEnglish (US)
Pages (from-to)171-191
Number of pages21
JournalConcurrency: Practice and Experience
Issue number3
StatePublished - May 1993

ASJC Scopus subject areas

  • Engineering(all)


Dive into the research topics of 'Kernel‐Kernel communication in a shared‐memory multiprocessor'. Together they form a unique fingerprint.

Cite this