Общие определения.

В оригинальном LINT на этом первый раздел и заканчивается. Но, по смыслу, в этом же разделе должны быть еще опции:
Из раздела HARDWARE: из раздела DEBUGGING:

machine "i386"

Говорит о том, что архитектура процессора из семейства Intel 386.
Обязательный параметр.

cpu "I386_CPU"
cpu "I486_CPU"
cpu "I586_CPU" # aka Pentium(tm)
cpu "I686_CPU" # aka Pentium Pro(tm)

"Подстройка" под конкретный тип процессора. Можно оставить только тот тип, который у вас реально стоит. Однако, если вы в дальнейшем захотите поменять процессор, или просто перетащить винчестер в машину с другим CPU, то могут возникнуть проблемы. Во всяком случае - ничего страшного не произойдет, если вы оставите здесь несколько разных строчек.
Обязательно должна быть хотя бы одна из этих строчек.

ident LINT

Это собственно имя конкретной конфигурации ядра. Можно поставить такое же, как название конфигурационного файла (MyConfig - например).
Но строчка должна быть обязательно.

maxusers 10

Вообще-то по смыслу - это максимальное количество юзеров, одновременно работающих на машине. Однако, исходя из этого количества вычисляется размер некоторых таблиц в ядре (количество одновременно работающих процессов, количество открытых файлов, количество буферов памяти и т.п.). Подробнее можно посмотреть в файле /usr/src/sys/conf/param.c Поэтому, даже если на вашей машине и не планируется много юзеров, но вы собираетесь запускать одновременно много приложений (сервер ftp, http, mail'овый, базы данных и т.п.), лучше сделать это число побольше.
Естественно, этот параметр - обязательный.

options "CHILD_MAX=128"

Максимальное число "порожденных" процессов, которых может создать "родительский" процесс.
По умолчанию - 40. Некоторые программы могут захотеть больше. (В оригинальном LINT в качестве примера приводится news-сервер, который открывает "процесс-потомок" для каждого клиента, который "прийдет" почитать ньюсы. Если таких пользователей прийдет достаточно много одновременно, то "процессов-потомков" может не хватить).
Короче, если обнаружите, что какая-либо задача сообщает, что не может "породить" дополнительный процесс - скорее всего надо менять этот параметр.

options "OPEN_MAX=128"

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

options MATH_EMULATE #Support for x87 emulation
options GPL_MATH_EMULATE #new math emulator

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

options FAILSAFE

Включает в ядро дополнительные проверки в критических местах. Естественно, уменьшается скорость некоторых операций, но повышается надежность.
Реально эта опция используется сейчас только в одном месте (по-моему) - в драйвере PCI-SCSI-контроллера. Но, возможно, в дальнейшем она может встретиться в других частях ядра.
Короче, скорее всего, не нужна.

options INCLUDE_CONFIG_FILE # Include this file in kernel

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

config kernel root on wd0 dumps on wd0

Эта строчка задает несколько параметров, важных при загрузке системы. Последнюю часть (dumps on ...) рекомендуют здесь не задавать, а пользоваться командой dumpon (см man dumpon).

Кроме того, заметьте, что wd0 - драйвер IDE-винчестеров. Если у вас SCSI-винчестер, то это слово нужно поменять на sd0. Ну и, возможно, номер винчестера у вас будет не 0.
Но строчка должна быть обязательно.

options "MAXMEM=(128*1024)"

Размер оперативной памяти машины.
Вообще-то, этот параметр читается при загрузке из BIOS, однако стандартная функция, считывающая из BIOS этот параметр ограничивает возможное значение числом 64M (а "расширенный" вариант этой функции разработчики не используют для экономии места в коде загрузчика).
Поэтому, если у вас размер ОЗУ больше 64M, то его надо указать явно в конфиге.

options USERCONFIG #boot -c editor

Включить в ядро "-editor" - редактор конфигурации "железа". Этот редактор можно вызвать при загрузке, введя на приглашение "Boot:" ключ . Редактор позволяет поменять для устройств базовый адрес, номер прерывания (irq) и флаги (если они есть). Кроме того, можно вообще исключить устройство из списка поддерживаемых ядром (естественно, код соответствующего драйвера в ядре останется, но устройство не будет проверяться при старте и, соответственно, не будет доступно при работе). Если вы не собираетесь менять "железную" конфигурацию машины, то этот редактор вам не очень-то нужен. Если вы правильно зададите все параметры в разделе HARDWARE, то все будет работать. Включать его в ядро имеет смысл, если вы собираетесь в ближайшем будущем добавлять новые "карточки" в машину. Только не забудьте включить все соответствующие драйвера в ядро (в разделе HARDWARE), так как этот редактор сам поддержку в код ядра, естественно, не добавляет.

options USERCONFIG_BOOT #imply -c and parse info area

Если в ядро включен "-c editor" (предыдущая опция), то эта строчка заставляет его запускаться всегда при загрузке, не не дожидаясь от вас соответствующего ключа. (Если вы сами инсталлировали систему, то, наверняка, уже видели - как это выглядит :-).
В нормальной работе - совершенно лишнее.

options VISUAL_USERCONFIG #visual boot -c editor

Если включен "-c editor", эта строчка добавляет его "visual" версию, которая намного приятнее и удобнее, чем старый вариант "командной строки".
Если уж вы решили включить в ядро "-с редактор", то с этой опцией конечно будет лучше.

Иван Паскаль [email protected]