Замечание: Эта функция присутствует только во FreeBSD 5.0 и последующих версиях, но не в более ранних.
Во время начального запуска системы загрузчик loader(8) производит чтение файла device.hints(5). В этом файле хранится необходимая для загрузки ядра информация, задаваемая в виде переменных, которую иногда называют хинтами для устройств (''device hints''). Эти ''хинты устройств'' используются драйверами устройств для их конфигурации.
Хинты для устройств могут быть также заданы в приглашении начального загрузчика Стадии 3. Переменные могут быть добавлены при помощи команды set, удалены посредством unset и просмотрены командой show. В этот момент могут быть также переопределены переменные, заданные в файле /boot/device.hints. Хинты для устройств, введённые в начальном загрузчике, не сохраняются, и при следующей перезагрузке будут утеряны.
После загрузки системы для выдачи значений всех переменных можно воспользоваться командой kenv(1).
Синтаксически в файле /boot/device.hints в каждой строке определяется по одной переменной, в качестве метки начала комментария используется стандартный символ ''#''. Строки строятся следующим образом:
hint.driver.unit.keyword="value"
Синтаксис для начального загрузчика Стадии 3 таков:
set hint.driver.unit.keyword=value
driver определяет имя драйвера устройства, unit соответствует порядковому номеру модуля устройства, а keyword является ключевым словом хинта. В качестве ключевых слов могут применяться следующие опции:
at: задаёт шину, к которой подключено устройство.
port: задаёт начальный адрес используемого диапазона ввода/вывода (I/O).
irq: задаёт используемый номер запроса на прерывание.
drq: задаёт номер канала DMA.
maddr: задаёт физический адрес памяти, занимаемый устройством.
flags: устанавливает различные битовые флаги для устройства.
disabled: если установлено в значение ''1'', то устройство не используется.
Драйверы устройств могут поддерживать (и даже требовать) другие хинты, здесь не перечисленные, поэтому рекомендуется просматривать справочные страницы по этим драйверам. Для получения дополнительной информации обратитесь к страницам справки по device.hints(5), kenv(1), loader.conf(5) и loader(8).
Пред. | Начало | След. |
Взаимодействие с ядром во время загрузки | Уровень выше | Init: инициализация управления процессами |
Этот, и другие документы, могут быть скачаны с ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.