Was genau meinst du? Ich übersetze aus der man uptime: "System load averages is the average number of processes that are either in a runnable or uninterruptable state." "Der System-Load-Durchschnitt ist die durchschnittliche Anzahl von Prozessen, die entweder im "runnable" oder "uninterruptable" State sind."
Huch, dein alter Beitrag war eigentlich richtig (jetzt, wo ich es nochmal lese), nur das größer-als-Zeichen war vertauscht, ich würde es wohl so umformulieren:
Loadaverage < N - es gibt durchschnittlich N Prozesse die gerade im "runnable" State sind - laufen gerade oder warten auf Ausführung - oder "uninterruptible" - wartet auf IO. Und uptime gibt den Durchschnitt der vergangenen 1,5,15 Minuten an.
So erscheint das für mich logisch und nachvollziehbar ☺
Interessant wäre nun die "Sampling" Rate von uptime, also wie oft in der Minute wird geprüft, wieviele Prozesse das betrifft.
EDIT: Zur Vervollständigung, die loadaverage wird alle 5 Sekunden ermittelt. (theoretisch - in Wirklichkeit ist es komplizierter)
Das ganze kann gut im Linux Source verfolgt werden. Ausgangspunkt ist das procfs fs/proc/loadavg.c - Dort wird die Funktion get_avenrun() aufgerufen - diese Funktion ermittelt anscheinend die average load. Diese ist in linux/sched.h definiert und wird in kernel/sched/core.c implementiert - dort steht "once every LOAD_FREQ" - das ist bei mir alle 5 Sekunden. (LOAD_FREQ ist in sched.h definiert). Das ganze ist allerdings relativ kompliziert implementiert, steht auch im source wieso usw, usf.
Cool, danke ☺
Glaub ich hab jetzt alles soweit verstanden und weiter sollten wir auch nicht gehen, am Sourcecode hab ich eigentlich kein Interesse.
mfg