Skip to main content

GILK: A Dynamic Instrumentation Tool for the Linux Kernel

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2324))

Abstract

This paper describes a dynamic instrumentation tool for the Linux Kernel which allows a stock Linux kernel to be modified while in execution, with instruments implemented as kernel modules. The Intel x86 architecture poses a particular problem, due to variable length instructions, which this paper addresses for the first time. Finally we present a short case study illustrating its use in understanding i/o behaviour in the kernel. The source code is freely available for download.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Ariel Tamches and Barton P. Miller. Fine-grained dynamic instrumentation of commodity operating system kernels. In Operating Systems Design and Implementation, pages 117–130, 1999.

    Google Scholar 

  2. Ariel Tamches and Barton P. Miller. Using dynamic kernel instrumentation for kernel and application tuning. The International Journal of High Performance Computing Applications, 13(3):263–276, Fall 1999.

    Article  Google Scholar 

  3. Ariel Tamches. Fine-Grained Dynamic Instrumentation of Commodity Operating System Kernels. PhD thesis, University of Wisconsin, 2001.

    Google Scholar 

  4. James R. Larus and Thomas Ball. Rewriting executable files to measure program behavior. Software — Practice and Experience, 24(2):197–218, February 1994.

    Google Scholar 

  5. James R. Larus and Eric Schnarr. EEL: machine-independent executable editing. ACM SIGPLAN Notices, 30(6):291–300, June 1995.

    Google Scholar 

  6. Han Bok Lee and Benjamin G. Zorn. BIT: A tool for instrumenting Java bytecodes. In Proceedings of the USENIX Symposium on Internet Technologies and Systems (ITS-97), pages 73–82, Berkeley, December 8–11 1997. USENIX Association.

    Google Scholar 

  7. Amitabh Srivastava and Alan Eustace. Atom: A system for building customized program analysis tools. ACM SIGPLAN Notices, 29(6):196–205, June 1994.

    Google Scholar 

  8. Michael Beck et al. Linux kernel internals. Addison-Wesley, Reading, MA, USA, second edition, 1998.

    Google Scholar 

  9. P. Harrison T. Field, U. Harder. Analysis of network traffic in switched ethernet systems. http://xxx.soton.ac.uk/abs/cs.PF/0107001, 2001.

  10. Gilk: A dynamic instrumentation tool for the linux kernel, http://www.doc.ic.ac.uk/~djp1/gilk.html

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2002 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Pearce, D.J., Kelly, P.H.J., Field, T., Harder, U. (2002). GILK: A Dynamic Instrumentation Tool for the Linux Kernel. In: Field, T., Harrison, P.G., Bradley, J., Harder, U. (eds) Computer Performance Evaluation: Modelling Techniques and Tools. TOOLS 2002. Lecture Notes in Computer Science, vol 2324. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-46029-2_16

Download citation

  • DOI: https://doi.org/10.1007/3-540-46029-2_16

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-43539-6

  • Online ISBN: 978-3-540-46029-9

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics