Shortening Downtime of Reboot-Based Kernel Updates Using Dwarf

Ken TERADA  Hiroshi YAMADA  

IEICE TRANSACTIONS on Information and Systems   Vol.E101-D   No.12   pp.2991-3004
Publication Date: 2018/12/01
Online ISSN: 1745-1361
DOI: 10.1587/transinf.2017EDP7397
Type of Manuscript: PAPER
Category: Software System
OS kernel updates,  reboot,  software updates,  hypervisors,  

Full Text: PDF(1.3MB)>>
Buy this Article

Kernel updates are a part of daily life in contemporary computer systems. They usually require an OS reboot that involves restarting 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 a representative approach, can conduct kernel updates at runtime, its applicability is inherently limited. This paper describes Dwarf, which shortens downtime during kernel updates and covers more types of updates. 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.2, Linux 2.6.39, Linux 3.18.35, and Linux 4.1.6. Also, we conducted experiments using six applications, such as Apache, MySQL, and memcached, and the results demonstrate that Dwarf's downtime is 1.8 seconds in the shortest case and up to 10× shorter than that of the normal OS reboot.