An Overview of Scheduling in the FreeBSD Kernel

Marshall Kirk McKusick <mckusick@freebsd.org>

This talk describes the schedulers available in the FreeBSD kernel: the current ULE scheduler, the real-time scheduler, and the historic 4BSD scheduler. It focuses on the design and implementation details of the default ULE scheduler. It also describes the recent changes that add support for the non-uniform memory access (NUMA) configurations of high-performance servers.

Marshall Kirk McKusick

Dr. Marshall Kirk McKusick’s work with Unix and BSD development spans four decades. It begins with his first paper on the implementation of Berkeley Pascal in 1979, goes on to his pioneering work in the eighties on the BSD Fast File System, the BSD virtual memory system, the final release of 4.4BSD-Lite from the University of California at Berkeley Computer Systems Research Group, and carries on with his work on FreeBSD. A key figure in Unix and BSD development, his experiences chronicle not only the innovative technical achievements but also the interesting personalities and philosophical debates in Unix over the past forty years.