Skip to main content

Efficient concurrency control for high-performance microkernels

Authors

Anna Lyons

NICTA, Sydney, Australia
UNSW, Australia

Abstract

Concurrency control in OS kernels for multicore processor systems requires locking, which introduces complexity and overheads. One simple approach to avoiding data structure corruption is to avoid concurrency in the kernel by using one big kernel lock. Alternatively, one can identify critical sections and resources in the kernel and lock these individually, using lock ordering to prevent deadlock. Both approaches have their risks. Using many locks increases kernel complexity, risks deadlock and makes correctness hard to guarantee. But using a big kernel lock reduces scalability.

This project evaluates the giant-locking scheme of a high-performance microkernel with very short system calls, for present and near-future high-performance embedded hardware. We implement a light-weight instrumentation framework that reveals features of the system and provides detailed system traces. We investigate the scalability of a variety of workloads using simulation, and relate these to real workloads via a simple model.

BibTeX Entry

  @mastersthesis{Lyons:be,
    author           = {Anna Lyons},
    month            = jul,
    year             = {2011},
    title            = {Efficient Concurrency Control for High-Performance Microkernels},
    address          = {Sydney, Australia},
    note             = {Available from publications page at \url{http://ts.data61.csiro.au/}},
    school           = {School of Computer Science and Engineering}
  }

Download

Served by Apache on Linux on seL4.