Bis vor kurzem dachte ich, dass der Lastdurchschnitt (wie zum Beispiel oben gezeigt) ein gleitender Durchschnitt der n letzten Werte der Anzahl der Prozesse im Zustand "lauffähig" oder "lauffähig" ist. Und n wäre durch die "Länge" des gleitenden Durchschnitts definiert worden: Da der Algorithmus zur Berechnung des Lastdurchschnitts alle 5 Sekunden auszulösen scheint, wäre n 12 für den 1-minütigen Lastdurchschnitt, 12 × 5 für den 5-minütigen Lastdurchschnitt und 12 × 15 für den 15-Minuten-Lastdurchschnitt.
Aber dann habe ich diesen Artikel gelesen: http://www.linuxjournal.com/article/9001 . Der Artikel ist ziemlich alt, aber der gleiche Algorithmus ist heute im Linux-Kernel implementiert. Der Lastdurchschnitt ist kein gleitender Durchschnitt, sondern ein Algorithmus, für den ich keinen Namen kenne. Trotzdem habe ich einen Vergleich zwischen dem Linux-Kernel-Algorithmus und einem gleitenden Durchschnitt für eine imaginäre periodische Last gemacht:
.
Es gibt einen großen Unterschied.
Schließlich sind meine Fragen:
- Warum wurde diese Implementierung im Vergleich zu einem wahren gleitenden Durchschnitt gewählt, der für jedermann eine echte Bedeutung hat?
- Warum jeder von "1min load average" spricht, da viel mehr als die letzte Minute vom Algorithmus berücksichtigt wird. (mathematisch gesehen das ganze Maß seit dem Hochfahren; in der Praxis unter Berücksichtigung des Rundungsfehlers - immer noch viele Maßnahmen)