Title :
Diagnosys: automatic generation of a debugging interface to the Linux kernel
Author :
Bissyande, Tegawende F. ; Reveillere, L. ; Lawall, Julia L. ; Muller, Gunter
Author_Institution :
Univ. of Bordeaux, Bordeaux, France
Abstract :
The Linux kernel does not export a stable, well-defined kernel interface, complicating the development of kernel-level services, such as device drivers and file systems. While there does exist a set of functions that are exported to external modules, this set of functions frequently changes, and the functions have implicit, ill-documented preconditions. No specific debugging support is provided. We present Diagnosys, an approach to automatically constructing a debugging interface for the Linux kernel. First, a designated kernel maintainer uses Diagnosys to identify constraints on the use of the exported functions. Based on this information, developers of kernel services can then use Diagnosys to generate a debugging interface specialized to their code. When a service including this interface is tested, it records information about potential problems. This information is preserved following a kernel crash or hang. Our experiments show that the generated debugging interface provides useful log information and incurs a low performance penalty.
Keywords :
Linux; operating system kernels; program debugging; user interfaces; Diagnosys; Linux kernel; debugging interface automatic generation; external modules; kernel crash; kernel maintainer; kernel-level services; log information; Debugging; Device drivers; Diagnosys; Linux; Wrappers;
Conference_Titel :
Automated Software Engineering (ASE), 2012 Proceedings of the 27th IEEE/ACM International Conference on
Conference_Location :
Essen
Print_ISBN :
978-1-4503-1204-2
DOI :
10.1145/2351676.2351686