Операционная система Free BSD


Этапы процесса перегенерации


В общем виде этот процесс выглядит так:

  • установить исходные коды ядра (как правило их устанавливают в процессе инсталляции системы);
  • составить свою конфигурацию ядра (конфигурационный файл);
  • запустить программу config, которая создаст необходимые файлы *.h и *.c в соответствии с вашей конфигурацией;
  • скомпилировать новое ядро с помощью программы make;
  • установить новое ядро (make install);
  • перезагрузиться.

Теперь рассмотрим эти пункты более подробно.

Установка исходных кодов ядра.

Прежде всего, посмотрите в директорию /usr/src/sys если она не пустая, то все что вам нужно уже на месте. И вы можете спокойно перейти к следующему пункту.

В противном случае, вам надо взять из дистрибутива нужные файлы и установить их. Это легко можно проделать с помощью команды /stand/sysinstall. Более подробно, см. раздел "Инсталляция системы".

Составление конфигурационного файла.

Перейдите в директорию /usr/src/sys/i386/conf.

Здесь имеются два конфигурационных файла GENERIC и LINT. Первый представляет собой конфигурацию того ядра, которое установилось у вас при инсталляции системы. Вы можете посмотреть в нем, что именно может ваше текущее ядро.

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

Вам необходимо составить свой конфигурационный файл. Его название значения не имеет. Можете назвать его, например, myKERNEL. Обычно ему дают то же название, что и доменное имя машины, либо (удобно, если вы заготавливаете несколько ядер для выполнения разных задач) - FIRST (SECOND, THIRD и т.п.).

В качестве основы для нового файла вы можете использовать один из уже имеющихся файлов - GENERIC или LINT.

Если вы возьмете за основу GENERIC, то вам придется убрать оттуда описания всех лишних устройств и дописать необходимые вам options.

Если же вы возьмете за основу LINT, то все редактирование будет заключаться в удалении всего ненужного.


- Начало -  - Назад -  - Вперед -