summaryrefslogtreecommitdiffstats
path: root/doc/SystemTap_Tapset_Reference/en-US/Introduction.xml
blob: 31e8a784f8c3fb37f6f780e70878bc48e8f6655c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
<?xml version='1.0'?>
<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
]>

<chapter id="introduction">
  <title>Introduction</title>
  <para>
    SystemTap provides free software (GPL) infrastructure to simplify the
    gathering of information about the running Linux system. This assists
    diagnosis of a performance or functional problem. SystemTap eliminates the
    need for the developer to go through the tedious and disruptive instrument,
    recompile, install, and reboot sequence that may be otherwise required to
    collect data.
  </para>

  <para>
    SystemTap provides a simple command line interface and scripting language
    for writing instrumentation for a live running kernel. The instrumentation
    makes extensive use of the probe points and functions provided in the
    <firstterm>tapset</firstterm> library. This document describes the various
    probe points and functions.
  </para>
  
<section id="format">
	<title>Tapset Name Format</title>
	
<para>In this guide, tapset definitions appear in the following format:</para>

<screen>
name:return (parameters)
	definition
</screen>
	
<para>
	The <replaceable>return</replaceable> field specifies what data type the tapset extracts 
	and returns from the kernel during a probe (and thus, returns).
	Tapsets use 2 data types for <replaceable>return</replaceable>: 
	<literal>long</literal> (tapset extracts and returns an integer) and 
	<literal>string</literal> (tapset extracts and returns a string). 
</para>

<para>
	In some cases, tapsets do not have a <replaceable>return</replaceable> value. This
	simply means that the tapset does not extract anything from the kernel. This is common among 
	asynchronous events such as timers, exit functions, and print functions.
</para>
	


<!--
<varlistentry>
<term></term>
<listitem>
	<para></para>
</listitem>
</varlistentry>
-->

</section>
  
  
</chapter>