Vor dem Mmap- findet sich ein Fstat-Aufruf mit dem Dateideskriptor 3, der von dem darüber befindlichen Open stammt. Vielleicht haben Sie sich schon gewundert, wieso in den Strace-Logs die File-Handles immer mit 3 beginnen. Die Antwort darauf ist, dass die Zahlen von 0 bis 2 bereits vergeben sind: 0 ist die Standardeingabe (Stdin), 1 ist die Standardausgabe (Stdout) und 2 die Standardfehlerausgabe (Stderr).
Fstat liefert detaillierte Informationen über eine Datei. Das erste Argument des Systemaufrufs ist der Dateideskriptor. Danach folgt der Inhalt einer Struktur namens
»stat
«
. Strace zeigt zwar nicht alles an, wie die Punkte bereits andeuten, aber sie enthält immerhin die User- und Gruppen-ID des Eigentümers, die Device-ID, das letzte Modifikationsdatum und so weiter. Mehr davon zeigt Strace, wenn Sie es mit dem Schalter
»-v
«
aufrufen. Zu sehen sind die Dateirechte und die Größe in Bytes.
Die Rechteangabe entspricht derjenigen von Chmod, also zeigt das 0644 in Zeile 8 Leserechte für User und Gruppe sowie Schreib- und Ausführungsrechte für den User an. Davor steht noch ein Flag, das den Dateityp (Verzeichnis, Datei und so weiter) angibt:
»S_IFREG
«
steht für eine reguläre Datei.
Bisher diente der Schalter
»-o
«
nur dazu, die Ausgabe von Strace in eine Datei zu schreiben. Für fortgeschrittene Anwendungen kennt Strace auch noch ein paar andere Optionen. So verfolgt Strace mit
»-f
«
auch die Kindprozesse, die das Programm erzeugt. Der Schalter
»-F
«
macht das Gleiche mit Kindprozessen, die mit Vfork erzeugt wurden, einer etwas leichtgewichtigeren Fork-Variante, die nicht alle Prozessinformationen des Elternprozesses kopiert.