Light-weight kernel instrumentation framework using dynamic binary translation

被引:0
作者
Dongwoo Lee
Inhyuk Kim
Jeehong Kim
Hyung Kook Jun
Won Tae Kim
Sangwon Lee
Young Ik Eom
机构
[1] Sunkyunkwan University,College of Information and Communication Engineering
[2] Electronics and Telecommunications Research Institute,Software Research Laboratory
来源
The Journal of Supercomputing | 2013年 / 66卷
关键词
Dynamic binary translation; Instrumentation; Light-weight framework;
D O I
暂无
中图分类号
学科分类号
摘要
Mobile platforms such as Android and iOS, which are based on typical operating systems, have been widely adopted in various computing devices from smart phones even to smart TVs. Along with this, the necessity of kernel instrumentation framework has also grown up for efficient development and debugging of a kernel itself and its components. Although the existing approaches are providing some information about the kernel state including physical register value and primitive memory map, it is hard for the developers to understand and exploit the information. Moreover, the excessive analysis overhead in the existing approach makes them impractical to be used in real systems. Meanwhile, there have been a few studies on analyzing the user-level applications using dynamic binary translation and they are now widely used. In this paper, by extending this idea of dynamic binary translation for user-level applications to the kernel, we propose a new dynamic kernel instrumentation framework. Our framework focuses on the modules such as device drivers, rather than the kernel itself, since the modules comprise a large portion of OS development. Because of the frequent execution of kernel modules, the dynamic kernel instrumentation framework should guarantee the quality of the translated target code. However, costly optimizations to achieve high execution performance are rather harmful to the overall performance. Therefore, in order to improve performance of both translations, we suggest light-weight translator based on pseudo-machine instruction representation and tabular-base translation instead of typical intermediate representation. We implement our framework on Linux system, and our experimental evaluations show that it could quite effectively instrument the target with nominal overhead.
引用
收藏
页码:1613 / 1628
页数:15
相关论文
共 10 条
[1]  
Gereaux A(2005)Linux kernel debugging Dr Dobb’s J 30 51-126
[2]  
Graham S(1982)Gprof: a call graph execution profiler ACM SIGPLAN Not 17 120-100
[3]  
Kessler P(2007)Valgrind: a framework for heavyweight dynamic binary instrumentation ACM SIGPLAN Not 42 89-57
[4]  
Mckusick M(2000)The Linux trace toolkit Linux J 73 54-164
[5]  
Nethercote N(2004)Adaptive code unloading for resource-constrained JVMs ACM SIGPLAN Not 39 155-undefined
[6]  
Seward J(undefined)undefined undefined undefined undefined-undefined
[7]  
Yaghmour K(undefined)undefined undefined undefined undefined-undefined
[8]  
Dagenais M(undefined)undefined undefined undefined undefined-undefined
[9]  
Zhang L(undefined)undefined undefined undefined undefined-undefined
[10]  
Krintz C(undefined)undefined undefined undefined undefined-undefined