From: eugene.loh@oracle.com
To: dtrace@lists.linux.dev, dtrace-devel@oss.oracle.com
Subject: [PATCH 10/20] doc: Fix anchor links for explanation/
Date: Fri, 26 Sep 2025 15:05:47 -0400 [thread overview]
Message-ID: <20250926190557.8485-10-eugene.loh@oracle.com> (raw)
In-Reply-To: <20250926190557.8485-1-eugene.loh@oracle.com>
From: Eugene Loh <eugene.loh@oracle.com>
Signed-off-by: Eugene Loh <eugene.loh@oracle.com>
---
.../explanation/dtrace-components-and-terminology.md | 8 ++++----
doc/userguide/index.md | 8 ++++----
2 files changed, 8 insertions(+), 8 deletions(-)
diff --git a/doc/userguide/explanation/dtrace-components-and-terminology.md b/doc/userguide/explanation/dtrace-components-and-terminology.md
index 1d7a35076..eccb02f9e 100644
--- a/doc/userguide/explanation/dtrace-components-and-terminology.md
+++ b/doc/userguide/explanation/dtrace-components-and-terminology.md
@@ -7,7 +7,7 @@ DTrace is a framework that dynamically traces data into buffers that are read by
**Parent topic:**[DTrace Concepts](../explanation/dtrace-concepts.md)
-## Probes {#concept_terms_probes}
+## Probes
DTrace works by using *probes* that identify particular instrumentation in the kernel or within a user space application, or which can be used to identify interval counters or performance event counters. Events such as when particular code is run or when a specific counter is incremented cause a probe to fire and DTrace can perform functions that are bound to the event in a program or script. For example, a probe can fire when a particular file is opened and a DTrace program can print information related to the event that can be useful for debugging or resolving an issue. Equally, at the moment that DTrace starts or ends any tracing activity, the `BEGIN` and `END` probes dedicated to these actions always fire.
@@ -66,7 +66,7 @@ dtrace:::BEGIN
Probes aren't required to have a module and function. The dtrace `BEGIN`, `END` and `ERROR` probes are good examples of this because these probes don't correspond to any specific instrumented program function or location. Instead, these probes are used for more abstract concepts, such as the idea of the end a tracing request. Other probes, such as those made available by the [Profile Provider](../reference/dtrace_providers_profile.md) or the [CPC Provider](../reference/dtrace_providers_cpc.md), also don't include module or function identifiers in their descriptions.
-## D Programs {#concept_terms_programs}
+## D Programs
You can bind a set of processing instructions called statements to one or more DTrace probes, so that when a probe fires, the specified statements are run to perform some required functionality. The set of enabled probes, the statements, and any conditions that might be evaluated when the probe fires, can all be collated into a *D program*.
@@ -102,7 +102,7 @@ Wed 22 Feb 11:54:51 GMT 2023
The program probe description matches all system call functions at the entry point. The program predicate evaluates a *built-in variable*, `execname`, against a string using an operator. The clause includes an *aggregation*, `@reads`, that's used to gather data about the firing probe. In this case, the aggregation stores a counter that increments every time the probe fires and the predicate resolves. The counter is implemented by the `count()` *function* and stores count values for each system call probe function. See [D Program Syntax Reference](../reference/d_program_syntax_reference.md) for more information on program structure and syntax.
-## Aggregations {#concept_terms_aggregations}
+## Aggregations
*Aggregations* can be used to reduce large bodies of data to smaller, meaningful statistical metrics. Many common functions that are used to understand a set of data are aggregating functions. These functions include the following:
@@ -121,7 +121,7 @@ Although you could code an application to calculate an aggregation for a set of
DTrace aggregation functions apply to the data as it's traced, so that the dataset doesn't need to be stored and the aggregation is always available as events occur. In this way, aggregation functions are more efficient and exact, and avoid overwrites. See [Aggregations](../reference/aggregation.md) for more information.
-## Speculation {#concept_terms_speculation}
+## Speculation
While predicates can be used to filter out uninteresting events, they're only useful if you already know which events you need to filter. Because DTrace is often used to help debug particular system behaviors, DTrace includes a set of *speculation* functions that can be used to trace data speculatively.
diff --git a/doc/userguide/index.md b/doc/userguide/index.md
index 57425becc..8a0050819 100644
--- a/doc/userguide/index.md
+++ b/doc/userguide/index.md
@@ -14,10 +14,10 @@
- [DTrace Concepts](explanation/dtrace-concepts.md)
- [About DTrace](explanation/dtrace-about.md)
- [DTrace Components and Terminology](explanation/dtrace-components-and-terminology.md)
- - [Probes](explanation/dtrace-components-and-terminology.md#concept_terms_probes)
- - [D Programs](explanation/dtrace-components-and-terminology.md#concept_terms_programs)
- - [Aggregations](explanation/dtrace-components-and-terminology.md#concept_terms_aggregations)
- - [Speculation](explanation/dtrace-components-and-terminology.md#concept_terms_speculation)
+ - [Probes](explanation/dtrace-components-and-terminology.md#probes)
+ - [D Programs](explanation/dtrace-components-and-terminology.md#d-programs)
+ - [Aggregations](explanation/dtrace-components-and-terminology.md#aggregations)
+ - [Speculation](explanation/dtrace-components-and-terminology.md#speculation)
- [DTrace Command Reference](reference/dtrace_command_reference.md)
- [About the dtrace Command](reference/dtrace_command_desc.md)
- [dtrace Command Options](reference/dtrace_command_options.md)
--
2.47.3
next prev parent reply other threads:[~2025-09-26 19:06 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-09-26 19:05 [PATCH 01/20] Fix comment since pkt_addr is not NULL eugene.loh
2025-09-26 19:05 ` [PATCH 02/20] doc: Add a space eugene.loh
2025-10-23 19:50 ` [DTrace-devel] " Elena Zannoni
2025-09-26 19:05 ` [PATCH 03/20] doc: Add separator lines to cpc Markdown tables eugene.loh
2025-10-23 19:51 ` [DTrace-devel] " Elena Zannoni
2025-09-26 19:05 ` [PATCH 04/20] doc: Convert stability attribute tables to Markdown for readability eugene.loh
2025-10-23 19:52 ` [DTrace-devel] " Elena Zannoni
2025-09-26 19:05 ` [PATCH 05/20] doc: Remove duplicate id eugene.loh
2025-09-26 19:05 ` [PATCH 06/20] doc: Clean up dangling anchor links eugene.loh
2025-09-26 19:05 ` [PATCH 07/20] doc: Remove internal ID definition at top of file eugene.loh
2025-10-22 3:03 ` Eugene Loh
2025-09-26 19:05 ` [PATCH 08/20] doc: Fix anchor links for built-in variables eugene.loh
2025-09-26 19:05 ` [PATCH 09/20] doc: Fix anchor links for providers eugene.loh
2025-09-26 19:05 ` eugene.loh [this message]
2025-09-26 19:05 ` [PATCH 11/20] doc: Fix anchor links for how-to/ eugene.loh
2025-09-26 19:05 ` [PATCH 12/20] doc: Fix anchor links for reference/ eugene.loh
2025-09-26 19:05 ` [PATCH 13/20] doc: Clean up the table for string relational operators eugene.loh
2025-09-26 19:05 ` [PATCH 14/20] doc: Link to "Character Escape Sequences" table eugene.loh
2025-09-26 19:05 ` [PATCH 15/20] doc: Clean up profile unit table eugene.loh
2025-09-26 19:05 ` [PATCH 16/20] doc: Clean up undefined anchor links eugene.loh
2025-09-26 19:05 ` [PATCH v2 17/20] doc: Add IP provider documentation eugene.loh
2025-10-09 17:03 ` Kris Van Hees
2025-10-09 21:00 ` Eugene Loh
2025-10-09 21:45 ` Kris Van Hees
2025-10-09 22:28 ` Eugene Loh
2025-09-26 19:05 ` [PATCH 18/20] doc: Add TCP " eugene.loh
2025-10-24 8:24 ` Alan Maguire
2025-09-26 19:05 ` [PATCH 19/20] doc: Add UDP " eugene.loh
2025-10-24 8:18 ` Alan Maguire
2025-09-26 19:05 ` [PATCH 20/20] doc: Add rawfbt " eugene.loh
2025-10-07 15:23 ` [PATCH 01/20] Fix comment since pkt_addr is not NULL Kris Van Hees
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250926190557.8485-10-eugene.loh@oracle.com \
--to=eugene.loh@oracle.com \
--cc=dtrace-devel@oss.oracle.com \
--cc=dtrace@lists.linux.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox