Threads and input/output in the Synthesis kernel
Henry Massalin, Calton Pu
Abstract
The Synthesis operating system kernel combines several techniques
to provide high performance, including kernel code synthesis,
fine-grain scheduling, and optimistic synchronization. Kernel code
synthesis reduces the execution path for frequently used kernel
calls. Optimistic synchronization increases concurrency within the
kernel. Their combination results in significant performance
improvement over traditional operating system
implementations. Using hardware and software emulating a SUN 3/160
running SUNOS, Synthesis achieves several times to several dozen
times speedup for Unix kernel calls and context switch times of 21
microseconds or faster.