summaryrefslogtreecommitdiffstats
path: root/documentation/profile-manual/arch.rst
diff options
context:
space:
mode:
Diffstat (limited to 'documentation/profile-manual/arch.rst')
-rw-r--r--documentation/profile-manual/arch.rst29
1 files changed, 29 insertions, 0 deletions
diff --git a/documentation/profile-manual/arch.rst b/documentation/profile-manual/arch.rst
new file mode 100644
index 0000000000..73cd0c29e5
--- /dev/null
+++ b/documentation/profile-manual/arch.rst
@@ -0,0 +1,29 @@
+.. SPDX-License-Identifier: CC-BY-SA-2.0-UK
+
+*************************************************************
+Overall Architecture of the Linux Tracing and Profiling Tools
+*************************************************************
+
+Architecture of the Tracing and Profiling Tools
+===============================================
+
+It may seem surprising to see a section covering an 'overall
+architecture' for what seems to be a random collection of tracing tools
+that together make up the Linux tracing and profiling space. The fact
+is, however, that in recent years this seemingly disparate set of tools
+has started to converge on a 'core' set of underlying mechanisms:
+
+- static tracepoints
+- dynamic tracepoints
+
+ - kprobes
+ - uprobes
+
+- the perf_events subsystem
+- debugfs
+
+.. admonition:: Tying it Together
+
+ Rather than enumerating here how each tool makes use of these common
+ mechanisms, textboxes like this will make note of the specific usages
+ in each tool as they come up in the course of the text.