Линус Торвальдс выпустил новое ядро 2.6.24, в котором есть огромное количество приятных изменений:
Улучшена производительность планировщика процессов CFS, появилась возможность объединять процессы в группы и назначать им приоритет (Fair Group Scheduling);
Поддержка "бестактового" (tickless) режима работы для архитектур x86-64 (радуются владельцы ноутбуков с x86-64 ядрами), PPC, UML, ARM и MIPS;
Новый способ управления WiFi устройствами, добавлена поддержка новой подсистемы WiFi и новых WiFi карт;
Уменьшена фрагментация страниц памяти;
Добавлена возможность авторизации USB устройств (т.е. вы сами решаете, какие будут работать в системе, а какие получат Permission Denied);
"Грязные" страницы памяти теперь разделены по устройствам ввода-вывода, что в некоторых ситуациях может в разы улучшить пропускную способность системы IO;
(Ура!) Теперь можно копировать точки монтирования (mount --bind) в режиме "только для чтения" - возможность, очень полезная для безопасности;
Заново объединены архитектуры x86 и x86-64, в связи с чем убрано огромное количество ранее продублированного кода;
> Кто-нибудь объяснит что такое tickless? Это гибкое управление частотой процессора что-ли или чего другое? Частотой afaik уже давно можно было управлять из линукса. Если не в ваниле, так в разных патчах.
Нет, к частоте процессора это не имеет прямого отношения.
Tick - это "periodic timer interrupt". А в tickless ядре его нет --- оно просыпается только когда нужно, каждый раз динамически перепрограммируя время следующего срабатывания таймера (ну и от интераптов других девайсов, естественно).
Собственно на x86 архитектуре эта фича появилась уже несколько релизов назад, и именно благодаря ей стала иметь смысл и появилась например программа powertop, которая как раз и измеряет число интераптов в секунду, и в tickless ядре, особенно при бездействии, оно может быть маленьким, намного меньше значения HZ (timer interrupt frequency)
...ну и все это дает возможность процессору уходить в режимы глубокого сна на более длинные промежутки времени, и в конечном итоге экономить power. lesswatts!
> Tick - это "periodic timer interrupt". А в tickless ядре его нет --- оно просыпается только когда нужно, каждый раз динамически перепрограммируя время следующего срабатывания таймера (ну и от интераптов других девайсов, естественно).
Спасибо за объяснение. А почему оно не работает в 32 битном режиме x86?
> Спасибо за объяснение. А почему оно не работает в 32 битном режиме x86?
Как уже сказали, там оно появилось уже несколько релизов назад. Например статдартные дебиановские ядра:
$ grep NO_HZ /boot/config-2.6.*
/boot/config-2.6.22-3-686:CONFIG_NO_HZ=y
/boot/config-2.6.22-3-686-bigmem:CONFIG_NO_HZ=y
/boot/config-2.6.23-1-686-bigmem:CONFIG_NO_HZ=y