Die Argumente für sysinfo-Prüfpunkte lauten:
arg0 |
Der Wert, um den die statistische Angabe zu erhöhen ist. Bei den meisten Prüfpunkten beträgt der Wert dieses Arguments stets 1, bei einigen kann das Argument andere Werte annehmen. |
arg1 |
Ein Zeiger auf den aktuellen Wert der zu erhöhenden statistischen Angabe. Dieser Wert ist eine 64-Bit-Größe, die um den Wert in arg0 erhöht wird. Durch Dereferenzierung dieses Zeigers können die Verbraucher die aktuelle Gesamtzahl der zum Prüfpunkt gehörigen statistischen Angabe ermitteln. |
arg2 |
Ein Zeiger auf die Struktur cpu_t, die für die CPU steht, auf der die statistische Angabe erhöht werden soll. Diese Struktur ist in <sys/cpuvar.h> definiert, ist aber Bestandteil der Kernel-Implementierung und sollte als „Private“ betrachtet werden. |
Der Wert von arg0 beträgt bei den meisten sysinfo-Prüfpunkten 1. Die Prüfpunkte readch und writech setzen arg0 jedoch auf die Anzahl der gelesenen bzw. geschriebenen Byte. Mit diesem Leistungsmerkmal lässt sich, wie das folgende Beispiel zeigt, die Größe von Lesezugriffen nach Namen der ausführbaren Datei ermitteln:
# dtrace -n readch'{@[execname] = quantize(arg0)}' dtrace: description 'readch' matched 4 probes ^C xclock value ------------- Distribution ------------- count 16 | 0 32 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 1 64 | 0 acroread value ------------- Distribution ------------- count 16 | 0 32 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 3 64 | 0 FvwmAuto value ------------- Distribution ------------- count 2 | 0 4 |@@@@@@@@@@@@@ 13 8 |@@@@@@@@@@@@@@@@@@@@@ 21 16 |@@@@@ 5 32 | 0 xterm value ------------- Distribution ------------- count 16 | 0 32 |@@@@@@@@@@@@@@@@@@@@@@@@ 19 64 |@@@@@@@@@ 7 128 |@@@@@@ 5 256 | 0 fvwm2 value ------------- Distribution ------------- count -1 | 0 0 |@@@@@@@@@ 186 1 | 0 2 | 0 4 |@@ 51 8 | 17 16 | 0 32 |@@@@@@@@@@@@@@@@@@@@@@@@@@ 503 64 | 9 128 | 0 Xsun value ------------- Distribution ------------- count -1 | 0 0 |@@@@@@@@@@@ 269 1 | 0 2 | 0 4 | 2 8 |@ 31 16 |@@@@@ 128 32 |@@@@@@@ 171 64 |@ 33 128 |@@@ 85 256 |@ 24 512 | 8 1024 | 21 2048 |@ 26 4096 | 21 8192 |@@@@ 94 16384 | 0 |
Der Provider sysinfo setzt arg2 als einen Zeiger auf cpu_t, eine interne Struktur der Kernel-Implementierung. Die sysinfo-Prüfpunkte werden auf der CPU ausgelöst, auf der die Statistik inkrementiert wird. Mit der Komponente cpu_id der Struktur cpu_t bestimmen Sie die relevante CPU.