Softerra Компьютерра | Ferrа | Инфо-Бизнес | Домашний компьютер | Game.exe 
Softerra - лучший русский сайт о софте
Rambler's Top100

 Статья рубрики "Linuxоид"

Конфигурирование ядра linux и повышение его производительности

В статье рассмотрены все этапы компилирования ядра, а также приведены рекомендации по повышению производительности системы.

[06.11.2001, Денис Колисниченко, dhsilabs@mail.ru]

Страница 1 из 2
  1  2  Следующая страница >>

Я использую версию ядра 2.2.17 поставляемую с дистрибутивом Mandrake, но основные принципы останутся теми же

Конфигурирование ядра
Processor type and features
Loadable module support
General setup
PnP support
Block devices
Networking options
SCSI support
Network device support
IrDA, USB support
Filesystems
Sound
Компилирование ядра


Итак, приступим.

Убедитесь, что у вас установлены исходники ядра и пакет заголовков:
kernel-2.2.17-21mdk.i586.rpm
kernel-headers-2.2.17-21mdk.i586.rpm

Перейдите в каталог, который содержит исходники ядра. Обычно это
/usr/src/linux или /usr/src/linux-2.2.17 (По сути linux - это ссылка на каталог linux-2.2.17)
Все действия нужно выполнять под root'ом.

cd /usr/src/linux

Затем нужно ввести одну из команд:
# make config
# make menuconfig
# make xconfig

В первом случае вам будет задан ряд вопросов (кстати, очень длинный), на который вам предстоит ответить.
Я рекомендую make menuconfig - это намного удобнее. В этом случае вы можете редактировать конфигурацию ядра с помощью меню. xconfig аналогичен menuconfig, только предназначен для запуска из-под Х.

menuconfig

Menuconfig

Перед внесением изменений в файл конфигурации ядра, сохраните его под
другим именем - Save Configuration to an Alternative File

Во время конфигурирования ядра вы можете включать или исключать некоторые функции из состава ядра или же сделать нужную вам функцию модулем, т.е. в состав ядра данная функция включена не будет, но она будет использоваться при необходимости, например, если вы добавите в систему устройство, то будет подключен нужный модуль (при условии, что вы его откомпилировали)

Наша задача - повышение производительности системы, этого можно достичь, если точно сконфигурировать ядро и исключить из его состава ненужный код.

Processor type and features

Здесь можно указать тип процессора и функции, например поддержка памяти более 1GB, MTRR, эмулирование математического сопроцессора.

Очень важно указать тип процессора: после того, как я правильно указал тип своего процессора производительность повысилась примерно в 1.5 раза, особенно это стало ощутимо при загрузке системы.

Данная функция используется для оптимизации работы процессора. Если вы укажите тип процессора, например 486, 586, Pentium, PPro ядро не обязательно будет запускаться на более ранней архитектуре. Например, если вы укажите Pentium, ядро будет работать на PPro (хотя медленнее), но нет никакой гарантии, что оно запуститься на 486.

Следующие типы рекомендованы для получения наибольшей производительности:
386 Процессоры производства AMD/Cyrix/Intel 386DX/DXL/SL/SLC/SX
Cyrix 486DLC/DLC2, UMC 486SX-S
486/Cx486 AMD/Cyrix/Intel/IBM DX4, 486DX/DX2/SL/SX/SX2 AMD/Cyrix 5x86
NexGen Nx586, UMC U5D или U5S
586/K5/5x86/6x86 обычные (самые первые) процессоры Pentium, AMD K5
Pentium/K6/TSC Intel Pentium/Pentium MMX, AMD K6,K6-3D
PPro/6x86MX Intel Pentium II/Pro, Cyrix/IBM 6x86MX, MII
В моем случае ядро было оптимизировано под 586/K5, после того
как я установил PPro Linux заработал быстрее. Я использую Intel Celeron 433A

Объем памяти - установите 1GB, если, конечно, у вас менее 1GB.

Math emulation

Включите эту опцию, если вы используете один из процессоров: 386SX/DX/SL/SLC без 80387, 486SL/SX/SX2

SMP (Symmetric multi-processing support)

Скорее всего у вас установлен один процессор и эту опцию вам нужно будет отключить - зачем включать лишний код в ядро?

Loadable module support

Если вы планируете использовать загружаемые модули, включите все функции. Можно создать компактную версию ядра, которая вообще не использует модули, а поддержка всех необходимых устройств будет включена непосредственно в ядро. В этом случае можно отключить все функции в этой секции.

General setup

BIGMEM

Поддержка памяти более 1GB

Networking support

Включите эту опцию, даже если вы не планируете работу в сети. Функции печати в Linux требуют сетевой поддержки.

PCI support

Поддержка шины PCI.

PCI quirks

Эту опцию нужно использовать, если у вас неисправна BIOS. Некоторые BIOS содержат ошибки, которые могут привести к сбоям при работе с PCI. Эта опция должна исправить эту ошибку. Если вы неуверенны, включите ее. Позже можно будет поэкспериментировать - если же BIOS исправна, эту функцию можно спокойно отключить и тем самым внести вклад в повышение производительности системы.

PCI bridge optimization (experimental)

Оптимизация моста PCI - для любителей экспериментов. Система может работать нестабильно. Попробовать можно, но я бы не стал жертвовать надежностью ради производительности.

Backward-compatible /proc/pci

Старые версии ядра поддерживали файл /proc/pci, который содержит перечень всех PCI-устройств. Некоторые программы используют этой файл, например, для сбора информации о системе. В новых ядрах используется файл /proc/bus/pci. Для поддержки обратной совместимости рекомендуется включить эту опцию. Если вы ее отключите, то у вас будет только один (новый) интерфейс /proc/bus/pci

MCA support

MCA - шина передачи данных, разработанная IBM - использовалась в системах PS1/PS2. Снята с производства и не используется.

System V IPC

Просто включите эту опцию. Более подробно вы можете прочитать на сайте metalab

BSD Process accounting

При включении этой опции программы пользовательского уровня будут информировать ядро о времени своего создания, владельце, использовании памяти и терминалов. Данную опцию рекомендуется включить.

Sysctl support

Sysctl позволяет изменять параметры ядра без перекомпилирования во время загрузки. Поддержка sysctl увеличивает размер ядра на 8Кб. Если ядро, которое вы компилируете, не предназначено для дисков загрузки/восстановления, включите эту опцию.

Kernel support for a.out/ELF/MISC/JAVA binaries

Linux-программы используют ELF-формат. Поэтому его нужно включить в состав ядра, а остальные использовать в качестве модулей.

Parallel port support

Поддержка параллельного порта.

PC-style hardware

Вы должны включить эту опцию (или хотя бы модулизировать ее), если вы используете параллельный порт типа PC. Все IBM PC-совместимые компьютеры и некоторые Alpha используют этот тип порта.

Support foreign hardware

Включите эту опцию, если вы используете другой (не PC) тип параллельного порта.

Advanced Power Management (APM) BIOS support

Поддержка расширенного управления питанием: ATX, "green"-устройства (например, VESA-мониторы). Если вам нужно отключить эту функцию во время загрузки, введите в качестве параметра ядра apm=off

При возникновении проблем проверьте следующее:

  1. наличие достаточного количества свопа, а также убедитесь, что раздел подкачки включен
  2. передайте ядру инструкцию no-hlt
  3. попробуйте отключить поддержку сопроцессора (инструкция no387)
  4. передайте ядру инструкцию floppy-nodma
  5. убедитесь, что процессор не "разогнан"
  6. установите новый вентилятор для процессора

Страница 1 из 2
  1  2  Следующая страница >>
Обсудить статью в форуме

<< Предыдущая статья рубрикиСледующая статья рубрики >>
("Mandrake 8.1: Linux для гедонистов")("Рукопись, найденная в бутылке: глава I")
Вернуться к оглавлению рубрики
Денис Колисниченко
dhsilabs@mail.ru
 

Вниманию вебмастеров: использование данной статьи возможно только в соответствии
с правилами использования материалов сайта "Софтерра"


 Новые статьи на сайте

Просмотр DVD фильмов на FreeBSD

Несколько плееров для просмотра DVD в FreeBSD и немного теории

[29.10.2002, Станислав Лапшанский, "Linuxоид"]


Разбиение дисков и инсталляция Linux на LVM (часть 2)

Установка линукс на два диска с логическими томами...

[25.10.2002, Владимир Холманов, "Linuxоид"]


Домашняя фабрика грез. Часть 2

О представлении цветного изображения и прочем.

[24.10.2002, Алексей Стахнов, "Технологии"]


Более ранние статьи >>



 Новости софта

И защищает, и "расшаривает"... [17:58, 14.10.2002]

SolidShare - полезная программа для пользователей интернета


"Тощий" браузер [17:49, 14.10.2002]

Slim Browser 3.1 улучшает функциональность IE


Нужно-ненужная программа [16:05, 14.10.2002]

"Программа без особого назначения"


Более ранние новости >>



 Игры и мультимедиа. Новости

1с и Activision решили сотрудничать [18:06, 11.10.2002]

Фирма "1С" будет издавать серию игр от компании Activision в России, на территории стран СНГ и Балтии


Семнадцатый Чемпионат по онлайновым "СамоГонкам" [18:04, 11.10.2002]

В понедельник начнется настоящая игра


Распродажа пирамид [11:48, 10.10.2002]

"Пирамида. Gold Edition" в продаже


Более ранние новости >>



 Новости свободных систем

Lcrzo 4.16 [14:48, 16.10.2002]

Модифицированы некоторые модули...


KDE 3.1... забегая вперед [14:37, 16.10.2002]

Грядут большие перемены...


mnoGoSearch 3.2.7 [10:37, 15.10.2002]

Есть изменения...


Более ранние новости >>



 Пресс-релизы

Электронная цифровая подпись для Microsoft Office [15:43, 21.3.2002]

Компания MultiSoft анонсирует свою разработку – программный продукт «ЭЦП для Microsoft Office», обеспечивающую целостность и авторство электронных документов Word и Excel при их хранении и распространении через локальную или глобальную сеть.


Компания «БИФИТ» на форуме «Инфобизнес-2002» [14:14, 21.3.2002]

На проходившем с 12 по 15 марта форуме «Инфобизнес-2002» компания «БИФИТ» представила свою новую разработку iBank 2 - передовое решение для электронного банкинга.


Конвертирование позитива в негатив [13:16, 21.3.2002]

Группа разработчиков Invention Pilot, Inc выпустила новый программный продукт – Silver Pilot.


Более ранние новости >>






Информация о сервере
Copyright (c) 2000 ИД "Компьютерра"
Email: inform@softerra.ru
Телефон: (095) 232-22-63
Рейтинг@Mail.ru Создание сервера (с) 2000 Individ
Работает на Saitistika
Карта сайта
Главная страница