[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Что такое Load average и почему для одного процесса он может быть >> 1



On Fri, Aug 14, 2009 at 04:34:22PM +0400, Ed wrote:
> Stanislav Maslovski wrote:
>> On Fri, Aug 14, 2009 at 09:32:07AM +0300, Nick wrote:
>>   
>>> 13 августа 2009 г. 23:20 пользователь Ed (spied@yandex.ru) написал:
>>>     
>>>> немного другой пример - делаю на тормозную usb fash:
>>>> dd if=/dev/zero of=/dev/sdc
>>>> la растёт до 4 и выше.
>>>> почему? больше никто к /dev/sdc не обращается.
>>>>       
>> Для ленивых привожу формулу (а-ля TeX):
>>
>> L_{i+1} = q L_i + (1 - q)(N_r + N_u)
>>   
>
> так и не понял, как с помощью этой формулы при записи в один поток  
> получатся LA>4

Когда процессов в runqueue (N_r) больше, чем 1, load average может
быть больше, чем один. Чтобы runqueue заполнилась, надо систему
порядочно нагрузить. Заполнение runqueue происходит потому, что под
нагрузкой процессы не успевают выполнить текущую работу за
отведенный квант и заснуть.

Не стоит также забывать, что в линуксе куча kernel threads в добавок к
процессам в userspace.

-- 
Stanislav


Reply to: