2016-07-30 4 views
1

enter image description hereскорость в секунду на интервал обновления менее чем второй

Давайте, например, здесь, посмотрите на этот виджет. Он читает sysfs, точнее файлы:

/sys/class/net/wlan0/statistics/tx_bytes 
/sys/class/net/wlan0/statistics/rx_bytes 

и отображает полосу пропускания в мегабитах второго. Теперь, упражнение, виджет установлен для обновления каждые 1/4 секунды, 250 мс. Как, может ли виджет рассчитать скорость в секунду, если секунда не прошла? Умножает ли число с 4? Что такое дрель?

+0

похоже ширина/(1/4) = 4 * ширина –

+0

Да, это простая математика. Я предполагаю, что это не точное представление пропускной способности. – Gala

+0

Это, вероятно, среднее значение по нескольким образцам, иначе число будет слишком быстро меняться, чтобы наблюдать. 'Средние (n выборок с интервалом 250 мс) x 4' –

ответ

1

Значения, считанные с tx_bytes и rx_bytes, всегда являются текущими. Виджет просто должен прочитать значения каждые 250 мс и запомнить как минимум последние 4 значения. При каждом обновлении разность между текущим значением и значением, считанным 1 секунда назад, может быть взята, деленная на 125 000 и правильно сообщается как пропускная способность в мегабитах в секунду.