Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

lab.MIT.03

.pdf
Скачиваний:
7
Добавлен:
19.02.2016
Размер:
413.94 Кб
Скачать

Лабораторная работа № 3

Компиляция ядра ОС FreeBSD Unix

Краткие теоретические сведения

Ядро – это основная часть операционной системы FreeBSD. Оно обеспечивает базовую функциональность операционной системы: создает процессы и управляет ими, распределяет память и обеспечивает доступ к файлам и периферийным устройствам. Ядро – это совокупность модулей операционной системы, которые постоянно находятся в оперативной памяти для более эффективной организации вычислительного процесса. При формировании состава ядра необходимо учитывать два противоречивых требования. В состав ядра должны войти наиболее часто используемые системные модули. Количество модулей должно быть таковым, чтобы объем памяти, занимаемый ядром, был не слишком большим.

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

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

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

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

-меньшее время загрузки;

-уменьшение объема оперативной памяти, которую занимает ядро;

-поддержка дополнительных устройств, отсутствующих в ядре GENERIC.

Сборка и установка пользовательского ядра

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

В каталоге /usr/src/sys, который доступен также как /sys, будет происходить сборка пользовательского ядра. Этот каталог содержит множество каталогов, представляющих собой различные части ядра, но наиболее важными являются каталоги /usr/src/sys/arch/conf, в котором находится конфигурационный файл ядра и

/usr/src/sys/compile, в котором собирается ядро (arch может быть i386, alpha, amd64, ia64, powerpc, sparc64 или рс98). Все, что находится внутри каталога определенной архитектуры, относится только к этой архитектуре; остальной код является машинно-независимым и общим для всех платформ, на которые FreeBSD может быть перенесена. Версии FreeBSD до 5.Х поддерживали только архитектуры i386, alpha и рс98.

Замечание: в примерах подразумевается использование архитектуры i386.

Если каталог /usr/src/sys отсутствует, это означает, что исходные коды ядра (src/sys) не были установлены. Для их установки используется утилита sysinstall (/stand/sysinstall во FreeBSD версий младше, чем 5.2). Для настройки и компиляции нового ядра необходимо выполнить следующие действия.

1. Перейти в каталог /usr/src/sys/i386/conf и скопировать файл конфигурации GENERIC в файл с выбранным именем. Например:

#cd /usr/src/sys/i386/conf

#ср GENERIC MYKERNEL

2.Открыть файл MYKERNEL в любом текстовом редакторе, например ee и внести необходимые изменения.

3.Собрать и установить новое ядро. Существует два способа, которые позволяют это сделать.

1

Способ 1. Сборка и установка ядра традиционным способом.

1.Выполнить утилиту config для того, чтобы сгенерировать исходные коды ядра.

# /usr/sbin/config MYKERNEL

2.Перейти в каталог, в котором собирается ядро.

# cd ../compile/MYKERNEL

Для FreeBSD версий более ранних, чем 5.0, вместо этого необходимо выполнить:

#cd ../../compile/MYKERNEL

3. Собрать ядро.

#make cleandepend

#make depend

#make

4. Установить новое ядро.

# make install

Способ 2. Сборка и установка ядра новым способом (требуется дополнительно установить исходные коды src/base).

1.Перейти в каталог /usr/src.

# cd /usr/src

2.Собрать ядро.

#make buildkernel KERNCONF=MYKERNEL

3. Установить новое ядро.

#make installkernel KERNCONF=MYKERNEL

Во FreeBSD 4.2 и в более ранних, необходимо заменить KERNCONF= на KERNEL.

По умолчанию, при построении ядра, все модули ядра так же будут пересобраны. Если необходимо обновить ядро быстрее или построить только определённые модули, то нужно отредактировать файл /etc/make.conf перед началом процесса сборки ядра:

MODULES_OVERRIDE = linux acpi sound/sound sound/driver/ds1 ntfs

Эта переменная устанавливает список модулей, которые нужно построить вместо построения всех модулей. Также можно собрать ядро без модулей, для этого в файл /etc/make.conf необходимо добавить строчку

NO_MODULES="YES".

Новое ядро будет скопировано в каталог /boot/kernel как /boot/kernel/kernel, а старое ядро будет перемещено в /boot/kernel.old/kernel. Теперь необходимо перезагрузить систему для того, чтобы использовать новое ядро.

Во FreeBSD 4.X и более ранних, ядро устанавливается в /kernel, модули в /modules, а старое ядро сохраняется в /kernel.old. Другие файлы, относящиеся к процессу загрузки, такие как загрузчик loader и его конфигурационные файлы, размещаются в /boot. Модули сторонних производителей могут быть помещены в

/modules.

Определить состав оборудования можно, прочитав содержимое файла /var/run/dmesg.boot после загрузки ядра GENERIC

FreeBSD содержит набор утилит для определения установленного оборудования: dmesg(8), pciconf(8), atacontrol(8) и camcontrol(8). Утилита dmesg(8) предназначена для вывода на экран последних сообщений ядра. В процессе загрузки операционной системы ядро определяет оборудование. Информация об этом может быть найдена при помощи данной утилиты. Однако в процессе работы системы информация, помещённая в dmesg(8), может быть вытеснена новыми сообщениями ядра. Чтобы всегда иметь доступ к начальным, «загрузочным» сообщениям ядра, можно обратиться к файлу /var/run/dmesg.boot. Для более точного определения списка установленного оборудования средствами файла /var/run/dmesg.boot рекомендуется загружать ядро GENERIC.

Конфигурационный файл

Формат конфигурационного файла достаточно прост. Каждая строка представляет собой ключевое слово и один или более аргументов. Для простоты большинство строк содержат только один аргумент. Всё, что следует за символом # является комментарием и игнорируется. Ниже описываются параметры, в порядке, в котором они появляются в GENERIC, хотя некоторые родственные параметры сгруппированы вместе в одном разделе (например, сетевые средства), даже, если на самом деле они разбросаны по всему файлу GENERIC. Полный список архитектурно-зависимых параметров и устройств находится в файле NOTES в том же каталоге, что и GENERIC. Архитектурно независимые параметры находятся в /usr/src/sys/conf/NOTES.

NOTES не существует во FreeBSD 4.X. Детальное описание параметров и устройств из GENERIC находится в файле LINT. Структура конфигурации ядра во FreeBSD 5.Х прошла через множество серьезных изменений. Одно из таких изменений – перемещение параметров конфигурации драйверов в hints, и теперь они могут быть изменены и загружены динамически во время загрузки системы, а в LINT их больше нет. По этой и другим причинам LINT был переименован в NOTES и в основном по-прежнему соответствует своему назначению: информирование пользователей о

2

доступных параметрах.

Во FreeBSD 5.X и более поздних версиях можно создать LINT, выполнив:

# cd /usr/src/sys/i386/conf && make LINT

Это пример конфигурационного файла ядра GENERIC с различными дополнительными комментариями для

FreeBSD 7.2-RELEASE.

#

#GENERIC -- Generic kernel configuration file for FreeBSD/i386

#For more information on this file, please read the handbook section on

#Kernel Configuration Files:

#

#http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-

config.html

#The handbook is also available locally in /usr/share/doc/handbook

#if you've installed the doc distribution, otherwise always see the

#FreeBSD World Wide Web server (http://www.FreeBSD.org/) for the

#latest information.

#

#An exhaustive list of options and more detailed explanations of the

#device lines is also present in the ../../conf/NOTES and NOTES files.

#If you are in doubt as to the purpose or necessity of a line, check first

#in NOTES.

#

# $FreeBSD: src/sys/i386/conf/GENERIC,v 1.474.2.17.2.1 2009/04/15 03:14:26 kensmith Exp $

cpu

I486_CPU

cpu

I586_CPU

cpu

I686_CPU

Эта опция указывает тип процессора, который используется в системе. В конфигурационном файле может быть несколько вхождений этой опции, но для пользовательского ядра лучше указывать только тот тип процессора, который установлен в системе. Чтобы узнать тип установленного процессора, можно воспользоваться файлом /var/run/dmesg.boot, в котором содержится протокол загрузки системы.

Поддержка типа I386_CPU все ещё существует в исходных текстах FreeBSD, но по умолчанию отключена в ветках -STABLE и -CURRENT. Это означает, что для того, чтобы установить FreeBSD на систему с процессором i386, можно использовать следующие способы.

1.Установить более раннюю версию FreeBSD.

2. Собрать систему и ядро на более новой машине и установить на 386 используя уже собранные файлы в /usr /obj.

ident GENERIC

Этот параметр определяет идентификатор ядра. Необходимо, чтобы он соответствовал названию файла конфигурации ядра, например MYKERNEL. Значение, которое присваивается параметру ident будет выводиться в процессе загрузки, поэтому полезно давать новым ядрам разные имена для того, чтобы отличать их друг от друга.

# To statically compile in device wiring instead of /boot/device.hints #hints "GENERIC.hints" # Default places to look for devices.

device.hints(5) используются для настройки параметров драйверов устройств. Путь по умолчанию, который loader(8) будет проверять при загрузке – /boot/device.hints. Используя опцию hints можно статически включить эти параметры в ядро. В этом случае не требуется создавать файл device.hints в каталоге /boot.

makeoptions DEBUG=-g # Build kernel with gdb(1) debug symbols

Обычный процесс сборки FreeBSD включает генерацию отладочной информации (опцию -g gcc(1)) при сборке ядра. Того же самого эффекта можно добиться используя опцию config(8) -g, в случае, если используется «традиционный» способ сборки ядра.

options

SCHED_ULE

# ULE scheduler

3

Новый планировщик FreeBSD, который был специально разработан для SMP, но отлично работает также и на однопроцессорных системах. Для замены на стандартный планировщик необходимо заменить SCHED_ULE на SCHED_4BSD в файле конфигурации ядра.

options

PREEMPTION

# Enable kernel thread preemption

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

options

INET

# InterNETworking

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

options

INET6

# IPv6 communications protocols

Включает поддержку коммуникационных протоколов IPv6.

options

SCTP

# Stream Control Transmission Protocol

Включает поддержку протокола SCTP.

 

options

FFS

# Berkeley Fast Filesystem

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

options

SOFTUPDATES

# Enable FFS Soft Updates support

Этот параметр включает в ядре технологию Soft Updates, которая повышает скорость записи на диск. Несмотря на то, что эта технология включена в ядре, она должна быть включена для каждого диска.

options

UFS_ACL

# Support for access control lists

Этот параметр включает в ядре поддержку списков управления доступом (ACL). Основывается на использовании расширенных атрибутов и UFS2. ACL включен по умолчанию и не должен выключаться. Иначе: списки управления доступом будут удалены, если они использовались в файловой системе и нарушена защита файлов.

options

UFS_DIRHASH

# Improve performance on big directories

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

options

UFS_GJOURNAL

# Enable gjournal-based UFS journaling

Включает ведение gjournal журнала для UFS файловой системы.

options

MD_ROOT

# MD is a potential root device

Этот параметр включает поддержку использования дисков в памяти для корневой файловой системы.

options

NFSCLIENT

# Network Filesystem Client

options

NFSSERVER

# Network Filesystem Server

options

NFSLOCKD

# Network Lock Manager

options

NFS_ROOT

# NFS usable as /, requires NFSCLIENT

Сетевая файловая система. Если не планируется монтировать разделы с файлового сервера UNIX через ТСР/IР, можно исключить этот параметр из конфигурационного файла ядра.

options

MSDOSFS

# MSDOS Filesystem

4

Файловая система MS-DOS. Если не планируется монтировать DOS разделы жесткого диска в момент загрузки, то можно закомментировать этот параметр. Необходимый модуль автоматически загрузится при первом монтировании DOS раздела. Кроме того, пакет emulators/mtools позволяет получить доступ к DOS дискам без необходимости их монтировать и размонтировать.

options

CD9660

# ISO 9660 Filesystem

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

options

PROCFS

# Process filesystem

Файловая система процессов. Это «виртуальная» файловая система монтируемая в /prос, которая позволяет таким приложениям, как ps выдавать больше информации о запущенных процессах. Во FreeBSD 5.X и выше, использование PROCFS не требуется, так как большинство мониторинговых и отладочных инструментов было адаптировано для работы без PROCFS: в отличие от FreeBSD 4.X, новые системы FreeBSD 5.X по умолчанию не монтируют файловую систему процессов. Более того, ядра 6.X-CURRENT, которые используют PROCFS, должны также включать поддержку PSEUDOFS:

options

PSEUDOFS

# Pseudo-filesystem framework

Ядра 6.X, которые используют PROCFS, должны также включать поддержку PSEUDOFS.

options

GEOM_PART_GPT

# GUID Partition Tables

Этот параметр делает возможным наличие большого количества разделов на одном диске.

options

GEOM_LABEL

#

Provides labelization

options

COMPAT_43TTY

#

BSD 4.3 TTY compat [KEEP THIS!]

Совместимость с 4.3 BSD. Для некоторых приложений наличие этого параметра обязательно.

options

COMPAT_FREEBSD4

# Compatible with FreeBSD4

options

COMPAT_FREEBSD5

# Compatible with FreeBSD5

options

COMPAT_FREEBSD6

# Compatible with FreeBSD6

Эти параметры требуется во FreeBSD 7.X для платформ i386 и alpha для поддержки приложений, собранных на младших версиях FreeBSD, которые используют старые интерфейсы вызовов. Рекомендуется использовать данный параметр во всех системах на платформах i386 и alpha, в которых могут запускаться старые приложения. Платформы, поддержка которых появилась только во FreeBSD 5.X, например, ia64 и sparc64, не требуют этого параметра.

options

SCSI_DELAY=5000 # Delay (in ms) before probing SCSI

Этот параметр заставляет ядро приостановиться на 5 секунд перед тем, как идентифицировать каждое устройство SCSI в системе. Если установлены только жесткие диски IDE, то можно закомментировать этот параметр.

options

KTRACE

# ktrace(1) support

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

options

SYSVSHM

# SYSV-style shared memory

Этот параметр предоставляет поддержку разделяемой памяти System V. Наиболее распространенное применение этого параметра – расширение XSHM в X, которое многие приложения, интенсивно работающие с графикой, будут автоматически использовать для повышения скорости работы. Если используется X, то этот параметр необходимо оставить.

options

SYSVMSG

# SYSV-style message queues

Поддержка сообщений System V.

5

options

SYSVSEM

# SYSV-style semaphores

Поддержка семафоров System V.

Замечание: утилита ipcs с параметром р покажет все процессы, которые используют любую из этих возможностей System V.

options

_KPOSIX_PRIORITY_SCHEDULING# POSIX P1003_1B real-time extensions

Расширения реального времени, добавленные 1993 POSIX. Определенные приложения из коллекции используют их, например StarOffice.

options

KBD_INSTALL_CDEV

# install a CDEV entry in /dev

Этот параметр относится к клавиатуре. Он добавляет CDEV в /dev.

options

ADAPTIVE_GIANT

# Giant mutex is adaptive

Giant – имя механизма защиты («спящего» мьютекса) для крупных наборов ресурсов ядра. Этот параметр можно оставить без изменения.

options

STOP_NMI

# Stop CPUS using NMI instead of IPI

options

AUDIT

# Security event auditing

#options

KDTRACE_HOOKS

# Kernel DTrace hooks

# To make an SMP kernel, the next two lines are needed

options

SMP

# Symmetric MultiProcessor Kernel

Включает поддержку SMP в ядре.

 

device

apic

# I/O APIC

Устройство apic разрешает использование набора I/O APIC для распределения прерываний. Оно может быть использовано как с однопроцессорными, так и с многопроцессорными ядрами (для последних наличие apic является обязательным). Для поддержки многопроцессорности необходимо добавить параметр:

# CPU frequency control device cpufreq

Включает управление частотой процессора.

# Bus support. device eisa

Этот параметр включает автоопределение и конфигурирование всех устройств на шине EISA.

device pci

Этот параметр включает автоопределение карт PCI и проксирование из шины PCI в шину ISA.

#Floppy drives

 

device

fdc

 

Контроллер флоппи-диска.

 

#ATA and ATAPI devices

 

device

ata

 

Этот драйвер поддерживает все устройства АТА и ATAPI.

device

atadisk

# АТА disk drives

Эта строка необходима вместе с device ata для поддержки дисков АТА.

device

ataraid

# АТА RAID drives

6

Эта строка необходима вместе с device ata для поддержки дисков АТА RAID.

device

atapicd

# ATAPI CDROM drives

Поддержка приводов ATAPI CDROM. Используется вместе с device ata.

device

atapifd

# ATAPI floppy drives

Поддержка флоппи-приводов ATAPI. Используется вместе с device ata.

device

atapist

# ATAPI tape drives

Поддержка ленточных приводов ATAPI (стримеров). Используется вместе с device ata.

options

ATA_STATIC_ID

# Static device numbering

Заставляет драйвер нумеровать устройства статически; в противном случае происходит динамическая нумерация.

# SCSI Controllers

# EISA AHA1742 family

device

ahb

device

ahc

# AHA2 94 0 and onboard AIC7xxx devices

options

AHC_REG_PRETTY_PRINT

# Print register bitfields in debug

device

ahd

 

# output. Adds ~128k to driver

# AHA39320/29320 and onboard AIC79xx devices

options

AHD_REG_PRETTY_PRINT

# Print register bitfields in debug

device

amd

# AMD

# output. Adds ~215k to driver

53C974 (Teckram DC-390(T))

device

hptiop

# Highpoint RocketRaid 3xxx series

device

isp

# Qlogic family

#device

ispfw

# Firmware for QLogic HBAsnormally a module

device

mpt

# LSI-Logic MPT-Fusion

device

ncr

# NCR/Symbios Logic

device

sym

# NCR/Symbios Logic (newer chipsets)

device

trm

# Tekram DC395U/UW/F DC315U adapters

device

adv

# Advansys SCSI adapters

device

adw

# Advansys wide SCSI adapters

device

aha

# Adaptec 154x SCSI adapters

device

aic

# Adaptec 15[012]x SCSI adapters, AIC-6[23]60

device

bt

# Buslogic/Mylex MultiMaster SCSI adapters

device

ncv

# NCR

53C500

device

nsp

# Workbit Ninja SCSI-3

device

stg

# TMC 18C30/18C50

Контроллеры SCSI. Необходимо закомментировать те устройства, которых нет в системе. Если в системе находятся исключительно IDE устройства, то можно удалить все эти строки.

#SCSI peripherals

# SCSI bus (required for SCSI)

device

scbus

device

ch

# SCSI media changers

device

da

# Direct Access (disks)

device

sa

# Sequential Access (tape etc)

device

cd

# CD

device

pass

# Passthrough device (direct SCSI access)

device

ses

# SCSI Environmental Services (and SAF-TE)

Периферийные устройства SCSI. Необходимо закомментировать те устройства, которых нет в системе. Если в системе находятся исключительно IDE устройства, то можно удалить все эти строки.

Замечание: USB umass(4) драйвер (и некоторые другие драйверы) используют подсистему SCSI, хотя и не являются настоящими SCSI устройствами. Следовательно, необходимо сохранить поддержку SCSI, если какой-либо из этих драйверов включен в конфигурацию ядра.

7

# RAID controllers interfaced to the SCSI subsystem

device

amr

# AMI MegaRAID

device

arcmsr

# Areca SATA II RAID

device

asr

# DPT SmartRAID V, VI and Adaptec SCSI RAID

device

ciss

# Compaq Smart RAID 5*

device

dpt

# DPT Smartcache III, IV - See NOTES for

device

hptmv

# options

# Highpoint RocketRAID 182x

device

iir

# Intel Integrated RAID

device

ips

# IBM (Adaptec) ServeRAID

device

mly

# Mylex AcceleRAID/eXtremeRAID

device

twa

# 3ware 9000 series PATA/SATA RAID

#RAID controllers

# Adaptec FSA RAID

device

aac

device

aacp

# SCSI passthrough for aac (requires CAM)

device

ida

# Compaq Smart RAID

device

mfi

# LSI MegaRAID SAS

device

mlx

# Mylex DAC960 family

device

pst

# Promise Supertrak SX6000

device

twe

# 3ware ATA RAID

RAID-контроллеры. Необходимо закомментировать те устройства, которых нет в системе. Если в системе находятся исключительно IDE устройства, то можно удалить все эти строки.

#atkbdc0 controls both the keyboard and the PS/2 mouse device atkbdc # AT keyboard controller

Контроллер клавиатуры atkbdc предоставляет средства ввода/вывода для клавиатуры AT и PS/2 устройств. Этот контроллер необходим драйверу клавиатуры atkbd и PS/2 устройствам psm.

device

atkbd

# AT keyboard

Драйвер atkbd вместе с контроллером atkbdc предоставляет доступ к клавиатуре AT.

device

psm

# PS/2 mouse

Поддержка PS/2 устройств (манипулятор мышь).

device

kbdmux

# keyboard multiplexer

Поддержка мультиплексора клавиатур.

 

device

vga

# VGA video card driver

Драйвер видеокарты.

 

#splash screen/screen saver

# Splash screen and screen saver support

device

splash

Заставка при загрузке. Хранители экрана также требуют этого устройства. Во FreeBSD 4.X используется строка pseudo-device splash.

#syscons is the default console driver, resembling an SCO console device sc

sc – это драйвер консоли по умолчанию, который имитирует консоль SCO. Так как большая часть консольных полноэкранных приложений обращаются к консоли через терминальную библиотеку termcap, не имеет существенного значения, используется этот драйвер, либо драйвер vt, который является VT220-совместимым драйвером консоли. Если возникают какие-либо проблемы с приложениями, работающими с этим драйвером консоли, необходимо установить переменную окружения term в значение scoansi.

device

agp

# support several AGP chipsets

8

Этот параметр включает поддержку AGP и AGP GART.

#Power management support (see NOTES for more options) device apm

Поддержка Advanced Power Management. Чаще всего используется в лэптопах, хотя в ядре generic FreeBSD 5.X и выше отключена по умолчанию.

#Add suspend/resume support for the i8254. device pmtimer

Устройство таймера для управления энергопотреблением, АРМ и ACPI.

#PCCARD (PCMCIA) support

#PCMCIA and cardbus bridge support

device

cbb

# cardbus (yenta) bridge

device

pecard

# PC Card (16-bit) bus

device

cardbus

# CardBus (32-bit) bus

Поддержка PCMCIA.

 

# Serial (COM) ports

# 8250, 16 [45]50 based serial ports

device

sio

device

uart

# Generic UART driver

Четыре последовательных порта, которые известны как COM порты в мире MS-DOS и Windows.

Каждый последовательный порт требует уникального IRQ (кроме тех случаев, когда используется мультипортовая карта, которая поддерживает совместное использование прерываний), поэтому значения IRQ по умолчанию для COM3 и COM4 не могут быть использованы.

#Parallel port device ppc

Интерфейс параллельного порта на шине ISA.

device ppbus

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

device lpt

#Parallel port bus (required)

#Printer

Поддержка принтеров на параллельном порту.

Замечание: три последних устройства необходимы для поддержка принтеров по параллельном порту.

device

plip

# TCP/IP over parallel

Драйвер ТСР/IР через параллельный порт.

device

ppi

# Parallel port interface device

Поддержка ввода/вывода общего назначения («geek port») + IEEE1284 ввода/вывода.

device

vpo

# Requires scbus and da

Драйвер привода Iomega Zip. Требует наличия scbus и da. Наилучшая производительность достигается с портами в режиме ЕРР 1.9.

#device puc

Поддержка «простой» последовательной или параллельной PCI карта.

#PCI Ethernet NICs.

# DEC/Intel DC21x4x ("Tulip")

device

de

9

device

em

# Intel PRO/1000 adapter Gigabit Ethernet Card

device

igb

# Intel PRO/1000 PCIE Server Gigabit Family

device

ixgb

# Intel PRO/10GbE Ethernet Card

device

le

# AMD Am7900 LANCE and Am79C9xx PCnet

device

txp

# 3Com 3cR990 ("Typhoon")

device

vx

# 3Com 3c590, 3c595 ("Vortex")

Драйвера сетевых карт PCI.

#PCI Ethernet NICs that use the common MII bus controller code.

#NOTE: Be sure to keep the 'device miibus' line in order to use these NICs! device miibus # MII bus support

Поддержка шины MII требуется для некоторых PCI 10/100 Ethernet карт, которые используют MII-совместимые передатчики или реализуют интерфейс управления передатчиком, который имитирует MII. Добавление device miibus в конфигурационный файл ядра включает поддержку стандартного API miibus и всех драйверов PHY, включая стандартный для тех PHY, которые не обрабатываются специфическим образом конкретным драйвером.

device

age

# Attansic/Atheros L1 Gigabit Ethernet

device

age

# Attansic/Atheros L1 Gigabit Ethernet

device

ale

# Atheros AR8121/AR8113/AR8114 Ethernet

device

bce

# Broadcom BCM5706/BCM5708 Gigabit Ethernet

device

bfe

# Broadcom BCM440x 10/100 Ethernet

device

bge

# Broadcom BCM570xx Gigabit Ethernet

device

dc

# DEC/Intel 21143 and various workalikes

device

et

# Agere ET1310 10/100/Gigabit Ethernet

device

fxp

# Intel EtherExpress PRO/100B (82557, 82558)

device

jme

# JMicron JMC250 Gigabit/JMC260 Fast Ethernet

device

lge

# Level 1 LXT1001 gigabit Ethernet

device

msk

# Marvell/SysKonnect Yukon II Gigabit Ethernet

device

nfe

# nVidia nForce MCP on-board Ethernet

device

nge

# NatSemi DP83820 gigabit Ethernet

#device

nve

# nVidia nForce MCP on-board Ethernet Networking

device

pcn

# AMD Am79C97x PCI 10/100 (precedence over 'le')

device

re

# RealTek 8139C+/8169/8169S/8110S

device

rl

# RealTek 8129/8139

device

sf

# Adaptec AIC-6915 (``Starfire'')

device

sis

# Silicon Integrated Systems SiS 900/SiS 7016

device

sk

# SysKonnect SK-984x & SK-982x gigabit Ethernet

device

ste

# Sundance ST201 (D-Link DFE-550TX)

device

stge

# Sundance/Tamarack TC9021 gigabit Ethernet

device

ti

# Alteon Networks Tigon I/II gigabit Ethernet

device

tl

# Texas Instruments ThunderLAN

device

tx

# SMC EtherPower II (83c170 ``EPIC'')

device

vge

# VIA VT612x gigabit Ethernet

device

vr

# VIA Rhine, Rhine II

device

wb

# Winbond W89C840F

device

xl

# 3Com 3c90x (``Boomerang'', ``Cyclone'')

Драйвера, которые используют контроллер шины MII.

#ISA Ethernet NICs. pccard NICs included.

device

cs

# Crystal Semiconductor CS89x0 NIC

#'device ed' requires 'device miibus'

device

ed

# NE[12]000, SMC Ultra, 3c503, DS8390 cards

device

ex

# Intel EtherExpress Pro/10 and Pro/10+

device

ep

# Etherlink III based cards

device

fe

# Fujitsu MB8696x based cards

device

ie

# EtherExpress 8/16, 3C507, StarLAN 10 etc.

device

sn

# SMCs 9000 series of Ethernet chips

device

xe

# Xircom pccard Ethernet

Драйвера сетевых карт ISA.

 

#Wireless NIC cards

# 802.11 support

device

wlan

10

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]