Skip to content
OpenSolaris/Solaris: DTrace (mrmcd111b) episode artwork

EPISODE · Sep 6, 2008 · 53 MIN

OpenSolaris/Solaris: DTrace (mrmcd111b)

from Chaos Computer Club - archive feed (high quality) · host Ulrich Gräf

OpenSolaris/Solaris: Dtrace --------------------------------------------- Bei Sun Microsystems wurde beschlossen, Solaris in den OpenSource überzuführen. Dieser Prozess wurde im Juni 2005 angefangen. Heute befindet man sich in der Situation, dass es von Sun noch alte Distributionen von Solaris gibt, die nicht im OpenSource sind (Solaris ..., 8, 9 und 10) sowie die neuen Distributionen (OpenSolaris ) die schon OpenSource sind. Alle diese Distributionen lassen sich kostenfrei herunterladen und benutzen. Für die Solaris Distributionen ist voller Support und OpenSolaris 2008.05 ist eingeschränkter Support verfügbar. Der Support für OpenSolaris wird schrittweise ausgebaut werden. Der Nachfolger von Solaris 10 wird auf OpenSolaris basieren, der Source und voller Support wird verfügbar sein. (10 Min + 5 Min Diskussion) Dtrace - Dynamic Tracing ------------------------------------------------------------------- Dtrace ist ein Beispiel für die neuen Projekte im OpenSolaris, die schon Eingang in andere Betriebssysteme gefunden haben. Mit Dtrace wird die Sichtweise auf den Kernel bzw. auf die Arbeitsweise von Programmen verändert. Statt einzelne Prozesse bis zum Systemcall zu untersuchen ist mit Dtrace der gesamte Ablauf auch im Kernel beobachtbar. Dazu ist ein generelles System zum Beobachten von Kernel-Modulen erstellt worden, das zusätzlich immer auch den Kontext des rufenden User-Programms kennt. Daher sind einzelne Programme, zusammenarbeitende Programme oder auch der Ablauf im Kernel beobachtbar. Um solche Beobachtungen effizient zu ermöglichen wurden verschiedene Design-Entscheidungen getroffen: - Messungen dürfen keine Locks im Kernel nutzen - Daten müssen effizient verarbeitet werden - Der Overhead ohne Messungen muss minimal sein Realisiert wird Dtrace durch eine Bibliothek libdtrace, die die dtrace Kernel-Möglichkeiten verschiedenen Anwendungsprogrammen - auch eigenen - zur Verfügung stellt. Das Userland-Programm dtrace nutzt ebenfalls die libdtrace. Wie funktioniert dtrace? Mit einem D-Programm wird eine Anfrage gestartet. Die Sprache D ist C-artig und ist ähnlich wie die Sprache AWK limitiert. Ein D-Programm besteht aus Klauseln, die Datenwerte an spezifizierten Messpunkten im Kernel oder im Userprogramm nutzen können. Ob die Daten verarbeitet werden lässt sich mit Bedingungen pro Messpunkt einschränken. Aus den Daten kann man dann einfache Ausgaben, formatierte Ausgaben oder Statistiken erstellen, wobei die Statistikfunktionen Bestandteil von dtrace sind. Die Implementierung nutzt an jedem potentiellen Messpunkt eine Liste von Callback-Funktionen. Solange diese Liste leer ist ist der Overhead extrem klein. Wenn ein Messpunkt benutzt wird, dann wird eine Callback-Funktion addiert, die lediglich die Bedingung prüft und dann gegebenenfalls die benötigten Daten in einen zirkulären gesharten Puffer schreibt; das Schreiben erfolgt unsynchronisiert und daher sehr effizient Das Anwendungsprogramm liest regelmässig (1x pro Sekunde) die aufgelaufenen Daten aus dem gesharten Puffer. Gerade wenn viel gemessen wird, ist das Verhältnis von Lesevorgängen zu Daten sehr effizient. Ist weniger los, dann ist die Bearbeitung zwar weniger effizient, allerdings ist das nicht negativ zu bewerten, weil dann ja noch genug Ressourcen da sind. (20 Min + 10 Min Vorführung und Diskussion) about this event: https://mrmcd.net/schedule/mrmcd111b/events/2716.en.html

Episode metadata supplied by the publisher feed · Published Sep 6, 2008

Embed this episode

Ready to play

OpenSolaris/Solaris: DTrace (mrmcd111b)

0:00 53:34

No transcript for this episode yet

We transcribe on demand. Request one and we'll notify you when it's ready — usually under 10 minutes.

No similar episodes found.

No similar podcasts found.

Frequently Asked Questions

How long is this episode of Chaos Computer Club - archive feed (high quality)?

This episode is 53 minutes long.

When was this Chaos Computer Club - archive feed (high quality) episode published?

This episode was published on September 6, 2008.

Can I download this Chaos Computer Club - archive feed (high quality) episode?

Yes. Use the download control on the episode player to save the publisher-provided media file.
URL copied to clipboard!