Trustworthy Systems

Efficient concurrency control for high-performance microkernels


Anna Lyons

    School of Computer Science and Engineering
    Sydney 2052, Australia


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

    address          = {Sydney, Australia},
    author           = {Anna Lyons},
    month            = jul,
    note             = {Available from publications page at \url{}},
    paperUrl         = {},
    school           = {School of Computer Science and Engineering},
    title            = {Efficient Concurrency Control for High-Performance Microkernels},
    year             = {2011}