О версиях ядра Linux (-mm, -ac и другие)
Date: Wed, 30 Mar 2005 18:44:57 +0400
Organization: 3OS, OSRC
X-Mailer: Ximian Evolution 1.4.6
From: Roman I Khimov <khimov@m*****.ru>
Subject: Re: Версии ядра Linux
Приветствую!
В Срд, 30.03.2005, в 15:26, Игнатьев Александр пишет:
> У меня есть такой вопрос. Хочу разобраться окончательно с версиями ядра Linux.
> А то с ними, особенно в последнее время, творится что-то неладное.
Ооо... Шикарная тема. :)
> К ней есть патчи - bk. Скажем 2.6.11-bk10. Какова функция этих патчей? Исправление
> багов? Добавление новой функциональности?
bk - это снимки (snapshot) дерева разработки Линуса. Они делаются раз в
день, если не ошибаюсь (может два). Идеально для тестирования, но
использовать в работе ядра -bk не рекомендуется.
> Недавно появилась еще одна версия ядра - 2.6.11.6. А это что такое?
Ветка 2.6.x.y (aka -stable) содержит в себе исправления обнаруженных
ошибок в стабильных 2.6.x, которые реально вызывают проблемы. Конкретные
исправления конкретных ошибок. Фактически, это must have.
Эта ветка в чем-то схожа с -hf (hotfix), которую ведет Вилли Торреу
(если не ошибаюсь) для 2.4.x.
> И что в итоге ставить? И какой смысл в появлении этой новой субверсии? Исправление
> багов и появление новой функциональност опять? Зачем 2 параллельные ветки?
2.6.x.y не содержит в себе никакой новой функциональности. Это только
исправления ошибок.
> А еще есть и 2.6.11.6-bk3 для полного счастья тем кто еще не запутался. При
> том на linux.org это версия лежит, что называется на пповерхности, а на kernel.org
> - ее нет (на главной странице).
Ориентируйтесь на kernel.org, плохого не предложат. :) Вообще, такой
гибрид я вижу впервые, хотя это, скорее всего слепок разрабатываемой
ветки 2.6.x.y. С другой стороны - там настолько малое количество патчей,
что даже странно видеть такое.
> 2.6.12-rc1 - это что-то вроде кандидат-релиза новог ядра я так понимаю? Новое
> ядро в фазе тестирования. А в принципе еще может быть и такое чудо - 2.6.12-pre1
> А это что? Пререлиз ядра? И в чем между ними принципиальная разница?
Вот тут все хуже. В ветке 2.4.x Марсело Тосатти поддерживает строгий
порядок - "-pre" это предварительные версии, которые включают в себя
изменения и новшества относительно предыдущей стабильной версии и
которые войдут в следующий стабильный релиз. Что здесь важно - "-pre" у
Марсело означает недостаточно оттестированные релизы, предназначенные
именно для целей тестирования. А вот "-rc" уже являются
стабилизированными и оттестированными "-pre", которые совсем-совсем
скоро станут новыми официальными релизами. Как правило, последний -rc
отличается от финальной версии только изменением двух строчек в
Makefile, говорящих, что это и есть уже 2.4.x.
Но это все в 2.4, у Марсело. С Линусом и 2.6 все сложнее. :) Линус в
последнее время вообще перестал выпускать -pre версии, полагая, что
таким образом -rc оттестирует большее количество народа и к финальному
релизу все ошибки будут устранены. Однако ж, теперь рекомендовать
ставить -rc на рабочие машины становится сложно, поскольку стабильными
они не являются. То есть, на самом деле, являются, но где-то в районе
-rc{2,3,4,5}, все решает тот момент, когда Линус скажет что-нибудь
вроде:
===========================
I'd _really_ like to calm down for a final 2.6.11 now, so please note
anything really important I missed, but keep the rest pending. And give
this a good testing..
===========================
Вот тут-то и можно начинать использовать -rc более плотно. Проблема в
том, что сей знак распространяется не очень далеко за пределы LKML и
люди либо боятся тестировать -rc вообще и потом кричат, когда финальный
релиз содержит ошибки, либо сгоряча хватают первый попавшийся -rc{1,2} и
потом кричат, что у них ничего не работает и переходят в категорию
первых. На osrc.info я такие вещи указываю, так что буде желание узнать,
а стоит ли брать патч на тестирование - заглядывайте.
> 2.6.11.6 накладывается на 2.6.11 (никак не на 2.6.11.5 что, возможно, было
бы
> логичней)
Здесь промежуточные (2.6.x.y1-2.6.x.y2) патчи настолько мизерные, что их
публикуют целиком в LKML, ну а я их размещаю так же, целиком, на
osrc.info.
> Плюс еще существуют неофициальные патчи, добавляющие функциональность ядру.
Может
> быть из этой оперы расскажите о каких-нибудь, посоветуете чего.
А вот тут все еще интереснее. :)
Существует отличная ветка Эндрю Мортона - "-mm". Сия ветка собирает в
себя все возможные патчи, которые есть в природе (потому говорят, что
она содержит "wild patches"), там они варятся, тестируются и потом
плавно переходят в основную ветку Линуса. Сегодня очень многое попадает
к Линусу именно через фильтр -mm. Посему ветка экспериментальная,
тестировать хорошо, постоянно использовать - должны быть причины.
Впрочем, поддержка ReiserFS4 и FUSE - причины достаточные. :)
http://kernel.org/pub/linux/kernel/people/akpm/patches/2.6/
Существует отличная ветка Кона Коливаса - "-ck". Там включены патчи к
диспетчерам процессора и ввода/вывода, обещается улучшенная отзывчивость
системы. Ветка достаточно стабильная, несмотря на то, что сам Кон
рекомендует употребить коньяка перед загрузкой такого ядра. ;) Ядро
2.6.11-ck2 у меня сейчас работает на одной машине - вполне неплохо.
uptime у нее уже скоро неделя будет, немного, но для домашней машины
тоже показатель. Чисто субъективно, с этим ядром при параллельной
компиляции меньше дергается музыка (на Celeron 488 c 96 МБ памяти,
иксами и KDE в придачу).
http://ck.kolivas.org/patches/2.6/
Существует ветка Алана Кокса - "-ac". Исправления плюс дополнения для
некоторых железок. Насколько я понял, это ядро используется как базовое
для Fedora и RHEL.
http://kernel.org/pub/linux/kernel/people/alan/linux-2.6/
Ветка Андреса Саломона "-as" призвана стабилизировать ядро. Испольуется
как база для ядер Debian. Правда, с появлением 2.6.x.y несколько теряет
свою актуальность и, возможно, скоро прекратит свое существование.
http://www.acm.cs.rpi.edu/~dilinger/patches/
Существует еще одна интересная ветка "-tiny". Она нацелена на уменьшение
занимаемого ядром дискового пространства и, самое главное, памяти. Также
в ней содержатся некоторые функции, полезные для ограниченных в ресурсах
систем, таких как встраиваемые системы, старые 386-е и наладонные
компьютеры. На мой взгляд - прекрасный хакерский патч, которому место в
официальной ветке (хотя бы частично, что касается конфигурации). Он
делает доступными некоторые штуки, например, с ним можно вырубить
поддержку режима V86 в ядре и сэкономить аж целых 6 КБ. :)
http://selenic.com/tiny/
Да, чуть не забыл! К ветке Эндрю Мортона существует еще один набор
патчей - "-jedi". Он призван исправить ошибки в -mm (а -mm ядро может
запросто даже не скомпилироваться).
ftp://ftp.c9x.org/pub/linux-kernel/
Есть еще расширения реального времени для Linux:
http://redhat.com/~mingo/realtime-preempt/
Фух, ну вроде бы основные ветки упомянул. :) На самом же деле,
естественно, это далеко не все доступные патчи/ветки. Да, пора это уже
отдельным мануалом оформлять... :)
А вообще - тестируйте, люди, ядра! Хотя бы -rc'шки. Просто скачать,
пропатчить, скомпилировать, потестировать, в случае неудачи - написать
отч0т согласно документу "REPORTING-BUGS", лежащему в исходниках. Потом
меньше проблем будет с официальным релизом у всех.
--
Roman.
http://www.3os.ru/ http://www.osrc.info/
gpg --recv-keys 0xE5E055C3
-*-----
Название листа "Linux: разрешение вопросов, перспективы и общение";
Написать в лист: mailto:comp.soft.linux.discuss-list@subscribe.ru
Адрес правил листа http://subscribe.ru/catalog/comp.soft.linux.discuss/rules
Номер письма: 17419; Возраст листа: 614; Участников: 1350
Адрес сайта рассылки: http://www.linuxrsp.ru
Адрес этого письма в архиве: http://subscribe.ru/archive/comp.soft.linux.discuss/msg/342525
Источник