Монолитное ядро — это ядро, в котором все необходимые драйверы в него вкомпилированы. Недостатком такого ядра является необходимость пересобирать ядро операционной системы при появлении новых аппаратных устройств, а достоинством – сравнительно небольшой объем ядра операционной системы и повышенная ее производительность. Мы рассмотрим компиляцию и модульного ядра, и монолитного.
Для чего пересобирают ядро? Каковы аргументы «за» и "против"?
«За» компиляцию ядра операционной системы
Рассмотрим аргументы «за».
• Основная причина для самостоятельной компиляции ядра – выход новых версий ядра операционной системы Linux. Как правило, в новых версиях добавляются новые функциональные возможности и исправляются замеченные ошибки. К сожалению, большинство сборщиков дистрибутивов отстают в выпусках «фирменных» ядер операционной системы, а иногда даже делают доступным новую версию ядра операционной системы только с выходом новой версии дистрибутива.
• Пересборка ядра используется для оптимизации ядра операционной системы Linux конкретно под имеющийся набор аппаратных средств – процессора, чипсета материнской платы, контроллеров, сетевых плат, видеокарт и т. п.
• Компиляцию ядра осуществляют так же для включения специфических свойств ядра , которые появляются в нем после наложения специальных «заплаток» – (патчей), разрабатываемых отдельными программистами или группами. Обычно эти свойства связаны с безопасностью системы или с функционированием экзотических аппаратных средств. Наиболее известен вариант «альтернативного» ядра от Алана Кокса (Alan Кох).
• Самостоятельно компилировать экспериментальные ядра с новыми возможностями приходится потому, что разработчики дистрибутивов их не тестируют и не выпускают с ними инсталляционные пакеты. Следует помнить, что экспериментальные ядра не всегда стабильны, и с новыми возможностями можно получить набор ошибок, правда зачастую не критичных для функционирования системы.
«Против» компиляции ядра операционной системы
Против компиляции ядра операционной системы есть столько же пунктов (если не больше), сколько и «за».
• Для того чтобы скомпилировать ядро операционной системы, необходимо много знать из различных областей администрирования: особенности настройки и функционирования сетей, поддержка аппаратуры, периферии, файловых систем, специфического программного обеспечения и др.
• При неправильно сконфигурированном или неверно установленном новом ядре операционной системы (это вытекает из предыдущего пункта) получаем проблемы вплоть до полной потери работоспособности операционной системы.
• Это противоречит принципу "работает – не трогай". Если ядро операционной системы работает устойчиво и его функционирование всех удовлетворяет – зачем его компилировать?
• Если вы решили уменьшить объем ядра операционной системы, изъяв все лишнее, не забудьте: почти все свойства ядра операционной системы вынесены в загружаемые модули, поэтому сэкономить удастся только пятьдесят-сто килобайт.
Утилиты конфигурирования ядра операционной системы Linux
Если вы все-таки решились скомпилировать ядро операционной системы Linux, перед вами встанет вопрос – как сконфигурировать его параметры? Можно, конечно, изучить исходные тексты ядра операционной системы, но это займет не менее одной-двух недель. Есть и более легкие способы – сделать это при помощи специальных утилит:
• xconfig – утилита по конфигурированию параметров ядра в графической системе X Window (рис. 16.1). Как можно видеть из рисунка – простая, понятная, легкая в использовании;
Рис. 16.1. xconfic
• menuconfig – простая текстовая утилита с системой меню для конфигурации ядра операционной системы (рис. 16.2). Передвигаясь по пунктам меню, достаточно удобно настраивать ядро операционной системы;
Рис. 16.2. menuconfig
• config – старейшая текстовая утилита для конфигурирования ядра операционной системы (рис. 16.3). Требует минимального количества ресурсов и библиотек, однако неудобна в эксплуатации. Нельзя вернуться назад и отредактировать предыдущие пункты, необходимо закончить конфигурирование (или прервать) и начать его заново. На сегодняшний день практически не применяется.
Рис. 16.3. config
Процесс компиляции ядра
Как обычно, к компиляции ядра операционной системы следует предварительно подготовиться – создать загрузочную дискету. Для этого зайти в систему пользователем root и выполнить команду:
/sbin/mkbootclisk kernelversion
Читать дальше
Конец ознакомительного отрывка
Купить книгу