В Linux считается, что среднее значение нагрузки составляет 1 мин /5 мин/15 мин. Формула, используемая ядром, фактически является экспоненциальным скользящим средним.
Если мы определяем cpuload(1)
как первое вычисление нагрузки cpu 1min и active()
как функцию, возвращающую число процессов в состоянии "running" или "runnable" в системе, тогда формула, используемая Ядро для вычисления n-й загрузки процессора 1min:
cpuload(0)
равно 0; это значение, хранящееся в памяти перед первым выполнением cpuload()
.
Мой вопрос: как был выбран весовой коэффициент 2 -5.log2 (e)/60? По-моему, 2 -5/60 было бы лучше, потому что 1мин был бы периодом полураспада числа процессов (потому что (2 -5/60)) 12= 1/2).
Может быть, полезно, если я напишу явную формулу cpuload(n)
в дополнение к приведенному выше рекурсивному определению (щелкните правой кнопкой мыши, чтобы увидеть его в полном размере):