Der Provider sysinfo stellt Prüfpunkte für die Felder unter der Bezeichnung sys in der Kernelstatistik bereit: Ein Prüfpunkt von sysinfo wird ausgelöst, unmittelbar bevor der entsprechende sys-Wert erhöht wird. Das folgende Beispiel zeigt, wie mithilfe des Befehls kstat(1M) sowohl die Namen als auch die aktuellen Werte der mit sys bezeichneten Kernelstatistiken angezeigt werden können.
$ kstat -n sys module: cpu instance: 0 name: sys class: misc bawrite 123 bread 2899 bwrite 17995 ... |
Die sysinfo-Prüfpunkte sind in Tabelle 23–1 beschrieben.
Tabelle 23–1 sysinfo-Prüfpunkte
bawrite |
Prüfpunkt, der immer kurz vor der asynchronen Ausgabe eines Puffers an ein Gerät ausgelöst wird. |
bread |
Prüfpunkt, der immer dann ausgelöst wird, wenn ein Gerät einen Puffer physisch ausliest. bread wird ausgelöst, nachdem der Puffer vom Gerät angefordert wurde, aber noch vor der Blockierung in Erwartung der Durchführung. |
bwrite |
Prüfpunkt, der immer kurz vor der synchronen oder asynchronen Ausgabe eines Puffers an ein Gerät ausgelöst wird. |
idlethread |
Prüfpunkt der ausgelöst wird, wenn eine CPU die Leerlaufschleife betritt. |
intrblk |
Prüfpunkt der ausgelöst wird, wenn ein Interrupt-Thread blockiert wird. |
inv_swtch |
Prüfpunkt, der ausgelöst wird, wenn ein laufender Thread gezwungen ist, die CPU aufzugeben. |
lread |
Prüfpunkt, der immer dann ausgelöst wird, wenn ein Gerät einen Puffer logisch ausliest. |
lwrite |
Prüfpunkt, der immer dann ausgelöst wird, wenn ein Puffer logisch auf ein Gerät geschrieben wird. |
modload |
Prüfpunkt der bei jedem Laden eines Kernelmoduls ausgelöst wird. |
modunload |
Prüfpunkt der bei jedem Entfernen eines Kernelmoduls aus dem Speicher ausgelöst wird. |
msg |
Prüfpunkt, der bei jedem msgsnd(2)- oder msgrcv(2)-Systemaufruf, aber noch vor der Durchführung der Message-Queue-Operationen ausgelöst wird. |
mutex_adenters |
Prüfpunkt, der bei jedem Versuch ausgelöst wird, eine belegte adaptive Sperre zu erlangen. Wenn dieser Prüfpunkt ausgelöst wird, wird auch einer der Prüfpunkte adaptive-block oder adaptive-spin des Providers lockstat ausgelöst. Ausführliche Informationen finden Sie in Kapitel 18Der Provider lockstat. |
namei |
Prüfpunkt, der ausgelöst wird, wenn ein Name im Dateisystem gesucht (lookup) wird. |
nthreads |
Prüfpunkt, der bei jeder Erzeugung eines Threads ausgelöst wird. |
phread |
Prüfpunkt, der ausgelöst wird, wenn ein Raw-E/A-Lesezugriff ansteht. |
phwrite |
Prüfpunkt, der ausgelöst wird, wenn ein Raw-E/A-Schreibzugriff ansteht. |
procovf |
Prüfpunkt, der ausgelöst wird, wenn ein neuer Prozess nicht erzeugt werden kann, da dem System keine Prozesstabelleneinträge mehr zur Verfügung stehen. |
pswitch |
Prüfpunkt, der ausgelöst wird, wenn eine CPU von der Ausführung des einen zur Ausführung eines anderen Threads wechselt. |
readch |
Prüfpunkt, der nach jedem erfolgreichen Lesezugriff ausgelöst wird, aber noch bevor die Kontrolle wieder an den den Lesezugriff durchführenden Thread übergeben wird. Ein Lesezugriff kann über die Systemaufrufe read(2), readv(2) oder pread(2) erfolgen. arg0 enthält die Anzahl der Byte, die erfolgreich gelesen wurden. |
rw_rdfails |
Prüfpunkt, der immer dann ausgelöst wird, wenn ein Versuch stattfindet, eine Lesesperre auf eine Leser/Schreiber-Sperre zu legen, wenn die Sperre entweder von einem Schreiber belegt ist oder gefordert wird. Wenn dieser Prüfpunkt ausgelöst wird, wird auch der Prüfpunkt rw-block des Providers lockstat ausgelöst. Ausführliche Informationen finden Sie in Kapitel 18Der Provider lockstat. |
rw_wrfails |
Prüfpunkt, der immer dann ausgelöst wird, wenn ein Versuch stattfindet, eine Schreibsperre auf eine Leser/Schreiber-Sperre zu legen, wenn die Sperre entweder von Lesern oder einem anderen Schreiber belegt ist. Wenn dieser Prüfpunkt ausgelöst wird, wird auch der Prüfpunkt rw-block des Providers lockstat ausgelöst. Ausführliche Informationen finden Sie in Kapitel 18Der Provider lockstat. |
sema |
Prüfpunkt, der bei jedem semop(2)-Systemaufruf, aber noch vor der Durchführung etwaiger Semaphor-Operationen ausgelöst wird. |
sysexec |
Prüfpunkt, der bei jedem exec(2)-Systemaufruf ausgelöst wird. |
sysfork |
Prüfpunkt, der bei jedem fork(2)-Systemaufruf ausgelöst wird. |
sysread |
Prüfpunkt, der bei jedem Systemaufruf von read(2), readv(2) oder pread(2) ausgelöst wird. |
sysvfork |
Prüfpunkt, der bei jedem vfork(2)-Systemaufruf ausgelöst wird. |
syswrite |
Prüfpunkt, der bei jedem Systemaufruf von write(2), writev(2) oder pwrite(2) ausgelöst wird. |
trap |
Prüfpunkt, der bei jedem Prozessor-Trap ausgelöst wird. Beachten Sie, dass einige Prozessoren, insbesondere Varianten von UltraSPARC, bestimmte leichtgewichtige Traps über einen Mechanismus behandeln, der diesen Prüfpunkt nicht auslöst. |
ufsdirblk |
Prüfpunkt, der ausgelöst wird, wenn ein Verzeichnisblock aus dem UFS-Dateisystem ausgelesen wird. Ausführliche Informationen zu UFS finden Sie unter ufs(7FS). |
ufsiget |
Prüfpunkt, der bei jedem Abruf eines Inodes aufgerufen wird. Ausführliche Informationen zu UFS finden Sie unter ufs(7FS). |
ufsinopage |
Prüfpunkt, der ausgelöst wird, nachdem ein Incore-Inode ohne zugehörige Datenseiten zur Wiederverwendung freigegeben wurde. Ausführliche Informationen zu UFS finden Sie unter ufs(7FS). |
ufsipage |
Prüfpunkt, der ausgelöst wird, nachdem ein Incore-Inode mit zugehörigen Datenseiten zur Wiederverwendung freigegeben wurde. Dieser Prüfpunkt wird ausgelöst, nachdem die zugehörigen Datenseiten auf die Festplatte entleert wurden. Ausführliche Informationen zu UFS finden Sie unter ufs(7FS). |
writech |
Prüfpunkt, der nach jedem erfolgreichen Schreibzugriff ausgelöst wird, aber noch bevor die Kontrolle wieder an den den Schreibzugriff durchführenden Thread übergeben wird. Ein Schreibzugriff kann über die Systemaufrufe write(2), writev(2) oder pwrite(2) erfolgen. arg0 enthält die Anzahl der Byte, die erfolgreich geschrieben wurden. |
xcalls |
Prüfpunkt, der immer kurz vor einem gegenseitigen Aufruf ausgelöst wird. Ein gegenseitiger Aufruf ist der Mechanismus des Betriebssystems, über den eine CPU den sofortigen Einsatz einer anderen CPU fordert. |