Kernel/History
История
Здесь собраны устаревшие сведения про ядра в ALT Linux, некоторые из которых могут представлять исторический интерес (например, при столкновении с устаревшими версиями ALT). См. [[Kernels/..|этажом выше]], если это не ваш случай.
Версии и ветки
В дистрибутивах ALT Linux 2.x используется ядро 2.4 в качестве основного; ALT Linux 2.4 Master имеет поддержку 2.6.x и включает в себя экспериментальную (не рекомендуемую к применению) сборку 2.6.8. В Sisyphus с 4.10.2006 поддерживаются только ядра >2.6.9 по причине перехода на glibc-2.5.
SMP/UP
Начиная с версии 2.6.17, ядра в сизифе стали собираться в конфигурации т.н. SMP alternatives, что позволяет более гибко использовать возможности современных CPU (например, hotplug). Обратная сторона этого изменения - отказ от -up сборок ядер. Зато теперь можно избежать еще одного костыля :)
Пора на эту тему FAQ писать. На нынешних ядрах сборка как up _не имеет_ преимущества в скорости перед smp. Ибо соответствующий код в ядре выбирается при старте.
mithraen@
О поддержке большого объёма памяти
(подробнее см. здесь)
В данный момент ситуация такая:
- 2.4 (std-up, std-smp, vs-smp) из Master 2.4 поддерживают 4Gb (up) и 64Gb (smp)
- 2.6 из Sisyphus:
- std-smp, wks-smp, ovz-smp, vs-smp: 4Gb;
- std-pae : 64Gb
Причём в wks-smp применяется специальный патч 1gb_lowmem, уменьшающий потери производительности при использовании до 1Gb памяти включительно (HIGHMEM их вносит, предоставляя возможность работать с расширенной памятью как таковой).
Следует обратить внимание на то, что по крайней мере std*-smp ( и std26-smp) обычно собираются с опцией CONFIG_HIGHMEM64G, что даёт возможность использовать гигабайт и более памяти (в отличие от std*-up), но не работает на i586 (Pentium первого поколения и аналоги, включая VIA C3), т.к. используется режим Physical Address Extension (PAE), появившийся начиная с Pentium Pro. Внимание: старые Pentium M (400MHz FSB) также не имеют поддержки PAE!
Сейчас разделение таково: -smp -- для систем с поддержкой SMP alternatives и _без_ PAE, и -pae, собранный с CONFIG_HIGHMEM64G. Раньше еще практиковались т.н. -up сборки, для систем с одним процессором, каковые сборки сейчас неактуальны (см. выше).
patch-o-matic
Был приложен по необдуманной просьбе mike@ к 2.4.18 из ALM2.0, вследствие чего при очередном обновлении ядра в updates что-то где-то немного изменилось и разъехался ABI, вследствие чего команда iptables до пересборки падала по segmentation fault.
Старая таблица вариантов
эта таблица устарела и предлагается только в качестве исторического материала.
Были известны std, std26 (standard), om (OpenMosix), vs, vs26 (VirtualServer), wks, wks26, ll, ovz; из них om, vs, vs26 и ovz штатно собирались только для SMP-систем, остальные доступны для UP/SMP. По состоянию на 03.01.2007 в Sisyphus имеются:
Аббревиатура |
Поддерживаемые версии |
Особенности |
Назначение |
std |
2.6 (pae, smp) |
Стандартное и основное ядро дистрибутивов ALT Linux. При сборке используются патчи из -stable ядер и патчи, исправляющие какие-либо неприятности в работе железа. Note:: Существует также kernel-suspend2 подверсия ядра std-smp , поддерживаемая Shrek`ом, отличающиеся поддржкой suspend2 |
Сервера или рабочие станции, где важна безопасность или стабильность вопреки повышенной производительности и времени реакции на события |
wks |
2.6 (smp) |
Содержит патчи для повышения производительности и уменьшения времени реакции на события (lowlatency), поддержки badram, swsusp2, realtime-режима для jack, патчи для undervolt'а CPU на базе Centrino проекта linux-phc, а также файловой системы reiserfs4. Внимание! поддержка win4lin на сейчас в wks26 отсутствует (не требуется майнтейнеру, поддерживать же -- труд); в backports/3.0 наблюдается w4l26 на базе std26-up. |
Рабочие станции |
|
|
obsolete |
|
ovz |
2.6 (smp/pae?) |
Сборка с поддержкой технологии виртуализации OpenVZ. Еще приложен патч, позволяющий реализовать non-executable stack либо программно, либо процессорными средствами (на x86-64). |
Сервера или рабочие станции, где требуются повышенная безопасность и контроль ресурсов, а также запуск нескольких контекстов (возможно, с различными дистрибутивами Linux в них) |
##Summary:## и ##%description## соответствующих пакетов в Сизифе (
)
Сборка ядра
Устаревшие на данный момент инструкции по сборке своего ядра:
- Alexei Mezin;
- Afanasov Dmitry
- Sisyphus:devel/KernelCVS
- FAQ