Title :
LKL: The Linux kernel library
Author :
Purdila, Octavian ; Grijincu, Lucian Adrian ; Tapus, Nicolae
Author_Institution :
Comput. Sci. & Eng. Dept., Univ. Politeh. of Bucharest, Bucharest, Romania
Abstract :
The Linux kernel is a repository of high-quality, extensively reviewed and tested, but highly interconnected code. There have been several attempts to free this code and employ it to other uses, and, in each case, great amounts of resources were dedicated to decoupling the subsets that were needed from the rest of the kernel. Successful attempts faced significant maintenance issues, as small projects find themselves unable to keep pace with upstream kernel development. In time, differences between the extracted code and its mainline counterpart get bigger and it becomes very difficult to benefit from bug fixes, new features and improvements implemented in newer versions of the Linux kernel. The Linux kernel library (LKL) enables other projects to use code from the Linux kernel, without requiring them to isolate the needed pieces of code, separate them from other tightly knit components they may interact with, and extract them from the kernel. At the same time it allows LKL based applications to transparently make use of new features and bug fixes developed in the upstream version of the Linux kernel. Several proof-of-concept applications indicate that complete subsystems such as file system drivers or the networking stack can be easily used in applications running in environments as diverse as the Linux and Windows user space, or the Windows kernel space.
Keywords :
Application software; Computer bugs; Computer science; File systems; Kernel; Libraries; Linux; Operating systems; Project management; Testing; Linux kernel; operating systems; virtualization;
Conference_Titel :
Roedunet International Conference (RoEduNet), 2010 9th
Conference_Location :
Sibiu, Romania
Print_ISBN :
978-1-4244-7335-9
Electronic_ISBN :
2068-1038