Compressing Dynamic Data Structures in Operating System Kernels
Haifeng He,
Saumya Debray,
Gregory Andrews
Department of Computer Science
University of Arizona
Tucson, AZ 85721, U.S.A.
Abstract
Embedded systems are becoming increasingly complex and there is a
growing trend to deploy complicated software systems such as
operating systems and databases in embedded platforms. It is especially
important to improve the efficiency of memory usage in embedded
systems because these devices often have limited physical memory.
Previous work on improving the efficiency of memory usage in OS kernels
has mostly focused on reducing the size of code and global data in the
OS kernel.
This paper, by contrast, presents {\em dynamic data structure
compression}, a complementary approach that reduces the runtime
memory footprint of dynamic data structures. A prototype
implementation for the Linux kernel reduces the memory consumption of
the slab allocators in Linux by about 17.5% when running the
MediaBench suite, while incurring only minimal increases in
execution time (1.9%).