Руководство FreeBSD

         

Конфигурация ядра (kernel)


Замечание: Начиная с FreeBSD версии 5.0 и более поздних, userconfig был удален в пользу метода

device.hints(5). За более подробной информацией о

device.hints(5)

обращайтесь к

kernel это ядро операционной системы. В нем реализовано множество функций, включая доступ ко всем устройствам, которые могут быть в системе, таким как жесткие диски, сетевые карты, звуковые карты и т.д. Каждое устройство, поддерживаемое ядром FreeBSD имеет свой драйвер. У каждого драйвера есть имя из двух или трех букв, например sa для драйвера последовательного доступа SCSI, или sio для драйвера последовательного ввода-вывода (который управляет COM портами).

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

Такая проверка обычно называется тестированием устройства. К сожалению, это не всегда безопасно. Некоторые драйвера конфликтуют между собой, и проверка части оборудования иногда может привести другую часть в неработоспособное состояние. Это основное ограничение архитектуры PC.

Многие старые устройства называются ISA -- в противоположность PCI. Стандарт ISA требует, чтобы в каждом устройстве была прописана некоторая информация, обычно номер Interrupt Request Line (IRQ) и адрес порта ввода-вывода, которые используются драйвером. Эта информация обычно устанавливается с использованием перемычек на карте, или с помощью DOS утилиты.

Часто это вызывало проблемы, поскольку было невозможно использовать два устройства с одинаковыми IRQ или адресами портов.

Новые устройства поддерживают PCI стандарт, который не требует установки параметров вручную, так как устройства способны общаться с BIOS и договариваться, какие IRQ и адреса портов ввода-вывода использовать.

Если в вашем компьютере есть устройства ISA, FreeBSD драйвер для этого устройства должен быть настроен с IRQ и адресом порта установленными на карте. Для этого может понадобиться собрать сведения об оборудовании (Разд. 2.2.1).


К сожалению, номера IRQ и адреса портов, используемые некоторыми драйверами, конфликтуют. Это потому, что некоторые устройства ISA поставляются с конфликтующими номерами IRQ или адресами портов. По умолчанию драйвера FreeBSD предусмотрительно настроены для использования заводских установок, поэтому будут работать столько устройств, сколько возможно.

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

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

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

Возможно, это звучит гораздо сложнее чем есть на самом деле.

На показано главное меню конфигурации ядра. Мы рекомендуем выбрать опцию Start kernel configuration in full-screen visual mode, так как это самый простой интерфейс для нового пользователя.



Рисунок 2-1. Меню конфигурации ядра

Экран конфигурации ядра () поделен на четыре части:

Свернутый список устройств, помеченных как ``active'', поделен на группы, такие как Storage, и Network. Каждый драйвер показан в виде описания, имени из двух или трех букв, используемых IRQ и порта. В дополнение, если какой-либо активный драйвер конфликтует с другим активным драйвером, после имени драйвера пишется CONF.

Содержание раздела