Shadow Kernels: A General Mechanism For Kernel Specialization in Existing Operating Systems
Chick, Oliver RA
MetadataShow full item record
Chick, O. R., Carata, L., Snee, J., Balakrishnan, N., & Sohan, R. (2015). Shadow Kernels: A General Mechanism For Kernel Specialization in Existing Operating Systems. APSys https://doi.org/10.1145/2797022.2797027
Existing operating systems share a common kernel text section amongst all processes. It is not possible to perform kernel specialization or tuning such that different applications execute text optimized for their kernel use despite the benefits of kernel specialization for performance guided optimization, exokernels, kernel fastpaths, and cheaper hardware access. Current specialization primitives involve system wide changes to kernel text, which can have adverse effects on other processes sharing the kernel due to the global side-effects. We present shadow kernels: a primitive that allows multiple kernel text sections to coexist in a contemporary operating system. By remapping kernel virtual memory on a context-switch, or for individual system calls, we specialize the kernel on a fine-grained basis. Our implementation of shadow kernels uses the Xen hypervisor so can be applied to any operating system that runs on Xen.
This work was principally supported by internal funds from the Computer Laboratory at the University of Cambridge; and also by the Engineering and Physical Sciences Research Council [grant number EP/K503009/1].
External DOI: https://doi.org/10.1145/2797022.2797027
This record's URL: https://www.repository.cam.ac.uk/handle/1810/248815
Licence URL: http://creativecommons.org/licenses/by/4.0/