Dwarf: Shortening Downtime of Reboot-Based Kernel Updates

Abstract
Kernel updates are a part of daily life in contemporary computer systems. They usually require an OS reboot that involves the restart of not only the kernel but also all of the running applications, causing downtime that can disrupt software services. This downtime issue has been tackled by numerous approaches. Although dynamic translation of the running kernel image, which is the representative approach, can conduct kernel updates at runtime, its applicable updates are inherently limited. This paper describes Dwarf, which shortens downtime during kernel updates and covers more types of updates. Dwarf is designed to reboot the kernel for its updates but make the downtime as short as possible, requiring no preparation of additional machines and shared disks. Dwarf launches the newer kernel in the background on the same physical machine and forces the kernel to inherit the running states of the older kernel. We implemented a prototype of Dwarf on Xen 4.5.0, Linux 4.1.6, and Linux 2.6.39. Also, we conducted experiments using realworld applications, such as MySQL and memcached, and the results demonstrate that Dwarf's downtime is up to 8× shorter than that of the normal OS reboot.

This publication has 10 references indexed in Scilit: