<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=DTrace</id>
	<title>DTrace - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=DTrace"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=DTrace&amp;action=history"/>
	<updated>2026-05-28T16:51:13Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=DTrace&amp;diff=2099273&amp;oldid=prev</id>
		<title>imported&gt;SchlurcherBot: Bot: http → https</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=DTrace&amp;diff=2099273&amp;oldid=prev"/>
		<updated>2026-04-18T17:19:12Z</updated>

		<summary type="html">&lt;p&gt;Bot: http → https&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Infobox Software&lt;br /&gt;
| Name = DTrace&lt;br /&gt;
| Logo = &lt;br /&gt;
| Screenshot = [[Datei:DTrace on Windows v10.0.19041.1 1115x966.png|350px]]&lt;br /&gt;
| Beschreibung = &amp;lt;!-- Beschreibung des Screenshots! --&amp;gt;&lt;br /&gt;
| Maintainer = &lt;br /&gt;
| Hersteller = [[Sun Microsystems]]&lt;br /&gt;
| Management = &lt;br /&gt;
| AktuelleVersion = Sun D 1.20&lt;br /&gt;
| AktuelleVersionFreigabeDatum = &lt;br /&gt;
| AktuelleVorabVersion = &lt;br /&gt;
| AktuelleVorabVersionFreigabeDatum = &lt;br /&gt;
| Betriebssystem = [[Unixoides System|Unixoide]], [[Microsoft Windows]]&lt;br /&gt;
| Programmiersprache = &lt;br /&gt;
| Kategorie = Analyse, Diagnose&lt;br /&gt;
| Lizenz = [[CDDL]]&lt;br /&gt;
| Deutsch = nein&lt;br /&gt;
| Website = [https://dtrace.org dtrace.org]&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;DTrace&amp;#039;&amp;#039;&amp;#039; (Dynamic Tracing) ist ein von [[Sun Microsystems]] entwickeltes Systemwerkzeug zur Kernel- und Anwendungsanalyse in Echtzeit. Ursprünglich für [[Solaris (Betriebssystem)|Solaris]] entwickelt, ist es mittlerweile auf mehrere [[Unixoides System|Unix-ähnliche]] Systeme portiert.&lt;br /&gt;
&lt;br /&gt;
DTrace bietet Inspektionsmöglichkeiten in laufende Prozesse, [[Arbeitsspeicher]], [[Prozessorzeit]], Dateisystem und Netzwerkressourcen.&lt;br /&gt;
&lt;br /&gt;
== Beschreibung ==&lt;br /&gt;
DTrace wurde entwickelt, um Anwendungen und das Betriebssystem selbst zu optimieren und Fehler zu beheben. Somit ist es ein [[Programmierwerkzeug]] zum &amp;#039;&amp;#039;Debugging&amp;#039;&amp;#039;, es arbeitet aber nicht mit [[Haltepunkt (Programmierung)|Haltepunkt]]en wie ein klassischer [[Debugger]].&lt;br /&gt;
&lt;br /&gt;
Überwachungsprogramme werden in der Programmiersprache D geschrieben (nicht zu verwechseln mit der [[D (Programmiersprache)|Programmiersprache „D“]]). D ist eine Teilmenge aus [[C (Programmiersprache)|C]], welche mit zusätzlichen Befehlen, Variablen und eingebauten Funktionen (built-ins) für die Prozessüberwachung erweitert wurde. D-Programme ähneln vom Aufbau her der Programmiersprache [[awk]]. Sie bestehen aus einer Liste von Prüfungssonden, wobei jede Prüfungssonde mit einer Aktion verbunden sein kann. Immer wenn die Bedingungen einer Sonde erfüllt sind, wird die damit verbundene Aktion ausgeführt. Eine typische Prüfungssonde ist zum Beispiel das Öffnen einer Datei, das Starten eines Prozesses oder wenn eine Maschineninstruktion an einer bestimmten Hauptspeicheradresse ausgeführt wird.&lt;br /&gt;
&lt;br /&gt;
Besondere Aufmerksamkeit wurde dem sicheren Einsatz in einer produktiven Umgebung gewidmet. Deshalb sind z.&amp;amp;nbsp;B. in der Programmiersprache D keine Schleifen zugelassen. Obwohl DTrace den auszuführenden Code (im Kernel oder in der Anwendung) verändert, verlangsamt es selbst bei mehreren tausend Prüfungssonden das System nur geringfügig, wenn die Prüfungssonden durchlaufen werden, und sonst gar nicht. Außerdem können für Anwendungen neue Sonden auch zur [[Laufzeit (Informatik)|Laufzeit]] hinzugefügt werden.&amp;lt;ref&amp;gt;https://www.freebsd.org/doc/de/books/handbook/dtrace.html&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Beispiele ==&lt;br /&gt;
DTrace-Skripte können direkt in der Kommandozeile aufgerufen werden. Deren Ausgabe erfolgt immer auf dem Standard-Ausgabestrom.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# Neuer Prozess mit Argumenten,&lt;br /&gt;
dtrace -n &amp;#039;proc:::exec-success { trace(curpsinfo-&amp;gt;pr_psargs); }&amp;#039; &lt;br /&gt;
# Dateien wurden von einem Prozess geöffnet,&lt;br /&gt;
dtrace -n &amp;#039;syscall::open*:entry { printf(&amp;quot;%s %s&amp;quot;,execname,copyinstr(arg0)); }&amp;#039; &lt;br /&gt;
# Anzahl der System Prozedur aufrufe eines Programmes,&lt;br /&gt;
dtrace -n &amp;#039;syscall:::entry { @num[execname] = count(); }&amp;#039; &lt;br /&gt;
# Anzahl der System Prozedur aufrufe des Systems,&lt;br /&gt;
dtrace -n &amp;#039;syscall:::entry { @num[probefunc] = count(); }&amp;#039; &lt;br /&gt;
# Anzahl der System Prozedur aufrufe eines Prozesses,&lt;br /&gt;
dtrace -n &amp;#039;syscall:::entry { @num[pid,execname] = count(); }&amp;#039; &lt;br /&gt;
# Benötigter Speicherplatz eines Prozesses,&lt;br /&gt;
dtrace -n &amp;#039;io:::start { printf(&amp;quot;%d %s %d&amp;quot;,pid,execname,args[0]-&amp;gt;b_bcount); }&amp;#039; &lt;br /&gt;
# Anzahl der Seiten, die durch den Prozess ausgelagert wurden,&lt;br /&gt;
dtrace -n &amp;#039;vminfo:::pgpgin { @pg[execname] = sum(arg0); }&amp;#039;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Oft besteht der größte Teil eines DTrace-Skripts nur aus der formatierten Ausgabe der Ergebnisse. Über 200 Beispiele von [[Open Source|Open-Source]]-DTrace-Skripten können im DTraceToolkit mitsamt Dokumentation und Demonstration gefunden werden.&amp;lt;ref&amp;gt;{{Webarchiv|text=DTraceToolkit |url=http://hub.opensolaris.org/bin/view/Community+Group+dtrace/dtracetoolkit |wayback=20100531234220 }}, hub.opensolaris.org&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Unterstützte Plattformen ==&lt;br /&gt;
DTrace wurde im November 2003 veröffentlicht und ist seit Januar 2005 Teil von [[Solaris (Betriebssystem)|Solaris]]. DTrace war die erste Kernkomponente von Solaris, welche für [[Open Solaris]] unter die [[CDDL|Common Development and Distribution License]] gestellt wurde. &lt;br /&gt;
&lt;br /&gt;
DTrace wurde auf [[FreeBSD]]&amp;lt;ref&amp;gt;https://www.freebsd.org/releases/7.1R/announce.html&amp;lt;/ref&amp;gt;, [[NetBSD]],&amp;lt;ref&amp;gt;https://mail-index.netbsd.org/source-changes/2010/02/21/msg006855.html&amp;lt;/ref&amp;gt; [[QNX]]&amp;lt;ref&amp;gt;https://raichoo.blogspot.com/2008/08/dtrace-berall.html&amp;lt;/ref&amp;gt; und [[Microsoft Windows]] portiert.&lt;br /&gt;
&lt;br /&gt;
Apple hat für [[Mac OS X Leopard|Mac OS X 10.5 Leopard]] DTrace, zusammen mit einer grafischen Oberfläche namens [[Instruments]]&amp;lt;ref&amp;gt;{{Webarchiv | url=http://www.apple.com/macosx/developertools/instruments.html | wayback=20071024144916 | text=&amp;#039;&amp;#039;Mac OS X Leopard - Instruments&amp;#039;&amp;#039;}}&amp;lt;/ref&amp;gt;, 40 Überwachungssonden-Skripten, Tools zum Untersuchen von Festplattenzugriff (iosnoop) und der Prozessausführung (execsnoop), als Teil der Entwicklungsumgebung [[Xcode]] portiert. Im Gegensatz zu den anderen Plattformen, auf die DTrace portiert wurde, enthält Mac OS X ein [[Flag (Informatik)|Flag]] (P_LNOATTACH), welches ein Programm aktivieren kann, damit der jeweilige Prozess nicht mehr von Debuggingsoftware wie DTrace und [[GNU Debugger|gdb]] untersucht werden kann. In der ursprünglichen Umsetzung auf Mac OS X hatte dies jedoch Auswirkungen auf unabhängige Prüfungssonden zur Überwachung der Systeminformationen, denn solange ein Programm lief, welches dieses Flag gesetzt hatte, waren die Systemprüfsonden nutzlos, da sie nicht mehr ausgelöst wurden.&amp;lt;ref&amp;gt;{{Webarchiv|text=Adam Leventhal&amp;#039;s Weblog: Mac OS X and the missing probes |url=http://blogs.sun.com/ahl/entry/mac_os_x_and_the |wayback=20080121052917 }}, blogs.sun.com&amp;lt;/ref&amp;gt; Dieses Problem wurde einige Monate später mit Mac OS X 10.5.3 behoben.&amp;lt;ref&amp;gt;{{Webarchiv|text=Adam Leventhal&amp;#039;s Weblog: Apple updates DTrace |url=http://blogs.sun.com/ahl/entry/apple_updates_dtrace |wayback=20080618200535 }}, blogs.sun.com&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Autoren und Auszeichnungen ==&lt;br /&gt;
DTrace wurde von Bryan Cantrill, Mike Shapiro und Adam Leventhal entwickelt. Im Jahr 2005 wurden die Autoren aufgrund der Innovationen von Info World und Technology Review geehrt.&amp;lt;ref&amp;gt;{{Webarchiv|text=DTrace and Predictive Self-Healing herald Sun’s future |url=http://www.infoworld.com/t/business/innovation-alive-and-well-in-2005-482 |wayback=20100327024540 }}, infoworld.com&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;http://www.technologyreview.com/tr35/Profile.aspx?Cand=T&amp;amp;TRID=91&amp;lt;/ref&amp;gt; Des Weiteren erhielt DTrace den Hauptpreis des Wall Street Journals 2006 Innovation Awards Wettbewerbs.&amp;lt;ref&amp;gt;http://online.wsj.com/public/article/SB115755300770755096-R2Ct41cQ4ZIPMwk4_xh0xU_HnQI_20061011.html?mod=tff_main_tff_top&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;https://www.pro-linux.de/news/1/10218/dtrace-mit-innovationspreis-ausgezeichnet.html&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{SORTIERUNG:Dtrace}}&lt;br /&gt;
[[Kategorie:Sun Microsystems]]&lt;br /&gt;
[[Kategorie:Freie Systemsoftware]]&lt;br /&gt;
[[Kategorie:Unix-Software]]&lt;br /&gt;
[[Kategorie:MacOS-Software]]&lt;br /&gt;
[[Kategorie:Solaris-Software]]&lt;br /&gt;
[[Kategorie:Programmierung]]&lt;br /&gt;
[[Kategorie:Testen (Software)]]&lt;/div&gt;</summary>
		<author><name>imported&gt;SchlurcherBot</name></author>
	</entry>
</feed>