Trustworthy Systems

For a microkernel, a big lock is fine

Authors

Sean Peters, Adrian Danis, Kevin Elphinstone and Gernot Heiser

NICTA

UNSW

Abstract

It is well-established that high-end scalability requires fine-grained locking, and for a system like Linux, a big lock degrades performance even at moderate core counts. Nevertheless, we argue that a big lock may be fine-grained enough for a microkernel designed to run on closely-coupled cores (sharing a cache), as with the short system calls typical for a well-designed microkernel, lock contention remains low under realistic loads.

BibTeX Entry

  @inproceedings{Peters_DEH_15,
    address          = {Tokyo, JP},
    author           = {Peters, Sean and Danis, Adrian and Elphinstone, Kevin and Heiser, Gernot},
    booktitle        = {Asia-Pacific Workshop on Systems (APSys)},
    keywords         = {operating systems, microkernels, multicore, scalability, locking, performance},
    month            = jul,
    numpages         = {7},
    paperurl         = {https://trustworthy.systems/publications/nicta_full_text/8768.pdf},
    publisher        = {ACM},
    slides           = {https://trustworthy.systems/publications/nicta_slides/8768.pdf},
    title            = {For a Microkernel, a Big Lock Is Fine},
    year             = {2015}
  }

Download