Dynamic Tracing with DTrace & SystemTap
Copyright © 2011-2016 Sergey Klyaus
This work is licensed under the Creative Commons Attribution-Noncommercial-ShareAlike 3.0 License. To view a copy of this license, visit https://creativecommons.org/licenses/by-nc-sa/3.0/ or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
Other formats: PDF (cheatsheets), PDF (full), PDF (no sources), EPUB (no sources)
Introduction
Module 1: Dynamic tracing tools. dtrace and stap tools
Module 2: Dynamic tracing languages
- Introduction
- Probes
- Arguments
- Context
- Predicates
- Types and Variables
- Pointers
- Strings and Structures
- Associative arrays and aggregations
- Time
- Printing and speculations
- Tapsets & translators
Module 3: Principles of dynamic tracing
- Applying tracing
- Dynamic code analysis
- Profiling
- Performance analysis
- Pre- and post-processing
- Vizualization
Module 4: Operating system kernel tracing
- Process management
- Process scheduler
- Virtual Memory
- Virtual File System
- Block Input-Output
- Asynchronicity in kernel
- Network Stack
- Synchronization primitives
- Interrupt handling and deferred execution
Module 5: Application tracing
Appendix A. Exercise hints and solutions
Appendix B. Lab setup