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