Login
Newsletter
Werbung

Mi, 17. November 2010, 19:35

Software::Kernel

trace: Vorgänge im Linux-System besser verstehen

Eine Neuentwicklung der Kernelentwickler Thomas Gleixner und Ingo Molnar verspricht, Vorgänge im Linux-System besser als herkömmliche Tools veranschaulichen zu können. Eine erste Version steht allen Interessenten zur Nutzung bereit.

Das unter dem Namen »trace« vorgestellte Tool bietet nach Angaben von Thomas Gleixner eine Möglichkeit, die Vorgänge im Linux-System besser untersuchen und verfolgen zu können. Zwar existiert bereits mit Tools wie »strace« eine Möglichkeit, Systemvorgänge zu tracen, doch ist diese laut Gleixner nicht zufriedenstellend. Lediglich Tools wie PowerTop oder LatencyTop geben Informationen preis, die seinen Anforderungen entsprechen.

»trace« soll nun diese Lücke füllen und Anwendern eine einfache Möglichkeit zum Untersuchen des Systems bieten. Als Grundlage dient dem Tool dabei die eigentlich zur Geschwindigkeitsmessung vorgestellte Perf-Architektur, die einen leichteren Zugriff auf Kernel-Interna ermöglicht und bereits von Haus aus diverse Profiling-Werkzeuge mit sich bringt. Manche der Funktionen sind bereits im Kernel implementiert, andere wiederum müssen allerdings erst installiert werden. Gleixner empfiehlt deshalb die Installation des tip-Kernels, um die volle Funktionalität von »trace« testen zu können. Die Mindestvoraussetzung auf der Kernel-Seite stellt dabei die Unterstützung von Syscall-Events (CONFIG_FTRACE_SYSCALLS) dar.

Die Philosophie des neuen Tools ist, dass zuerst Informationen über ein System gesammelt und zu einem späteren Zeitpunkt ausgewertet werden. Dabei spielt es keine Rolle, um welche Informationen es sich handelt. »trace« kommt sowohl mit einzelnen Prozessen als auch Gruppen von Prozessen, systemweiten Aufrufen und CPU-Aufrufen klar. Es erfasst Systemaufrufe, Tasks-Events (Fork, Clone, Exit), Page-Faults sowie mmap- und Scheduler-Events. Demenstprechend kann das Tool im Gegensatz zu strace bei Page-Faults das komplette Mapping einschließlich des Stacks und Heaps aufschlüsseln. Existierende Sessions oder Traces können zudem zu einem späteren Zeitpunkt untersucht und den eigenen Bedürfnissen entsprechend gefiltert werden.

Wie Gleixner in seiner Ankündigung schreibt, steht »trace« auf dem Anfang der Entwicklung und soll in der Zukunft sukzessive ausgebaut werden. Unter anderem ist geplant, dass es Netzwerk- oder Block-IO-Events berücksichtigt und mehr Trace-Points vor allem auf höherer Ebene bietet.

Werbung
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung