_ RU.LINUX (2:5077/15.22) ___________________________________________ RU.LINUX _
From : Zahar Kiselev 2:5030/382.1 28 Nov 99 20:16:02
Subj : Издевательство над планировщиком
________________________________________________________________________________
Hello, All!
Поспорили мы тут с приятелем - чем отличается планировщик у линукса и
планировщик у Sun`а. Он сказал, что на Сане кроме всего прочего еще и кванты
времени меньше, и от этого время реакции программ на внешние события
меньше(например на попытку передать что-нибудь по сетевому соединению).
Делать мне было сегодня как всегда нечего, и я решил над линуксовым
планировщиком поиздеваться - если есть исходник, то почему бы в него не влезть?
Ядро у меня установлено 2.0.38 и на него наложен патч QNX-style scheduler -
полезная штука, надо сказать...
Hашел я в файле sched.h константу:
#define DEF_PRIORITY (200*HZ/1000) /* 200 ms time slices */
и отгрыз от нее один ноль, так что получилось
#define DEF_PRIORITY (20*HZ/1000) /* 20 ms time slices */
Перекомпилировал ядро и начал к своей машине через Самбу доступать.
Есть у меня программка под дос, которая в точности изображает из себя
копирование очень большого файла кнопкой F5 в нортоне - специально когда-то
написал чтобы с секундомером не сидеть. Как оказалось - она очень полезна при
отладке сети под 1С-бухгалтерию, так как та тоже большие файлы качает
туда-сюда.
Так вот обычно у меня эта программка показывала 952кб/сек при записи на диск
линуксовой машины(чтение осмысленно не померить - у виндов кэш и получается
13мб/сек, что конечно бред). Если запустить две моих программки с двух машин -
то можно было увидеть например 930кб/сек. А сейчас, после издевательства над
планировщиком, обнаружилась _обратная_ ситуация - _одна_ запущенная программка
показывает 930кб/сек, а _две_ вместе с двух машин - обычные 952кб/сек. Вот и
думайте что хотите. Завтра посмотрю как это скажется на работе 1С-бухгалтерии.
Может быть пропадет ситуация, когда один комп, формирующий длинный отчет,
слегка притормаживает всех остальных?
Понятно, что в самом линуксе ничего существенного не изменилось(во всяком
случае без измерений не заметно).