Manual de FreeBSD
Anterior | Capítulo 8. Configuración del kernel de FreeBSD | Siguiente

# 8.6. El fichero de configuración

Actualizado a FreeBSD 6.X por Joel Dahl.

El formato de un fichero de configuración es bastante simple. Cada línea contiene una palabra clave con uno o más argumentos. Para simplificar, hay muchas líneas que solamente contienen un argumento. Cualquier cosa detrás de un `#` se considerará un comentario y en consecuencia será ignorado. Las siguientes secciones describen todas las palabras clave en el orden en el que aparecen en `GENERIC`. Si quiere una lista exhaustiva de de opciones dependientes de arquitectura y de dispositivos puede consultar el fichero `NOTES` en el mismo directorio donde está el fichero `GENERIC`. Si quiere ver las opciones independientes de arquitectura consulte `/usr/src/sys/conf/NOTES`.

> Nota: Puede generar un fichero que contenga todas las opciones disponibles en un kernel. Esto es algo que solamente se usa para hacer pruebas. Si quiere generarlo ejecute, como `root`, lo siguiente:

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

A continuación veremos un ejemplo de fichero de configuración de un kernel `GENERIC` al que se han añadido comentarios adicionales donde se ha visto que era necesario abundar un poco para mayor claridad. Este ejemplo es igual (o, en el peor de los casos, casi igual) que la copia del mismo que tiene usted en `/usr/src/sys/`i386`/conf/GENERIC`.

    machine        i386

Esta es la arquitectura de la máquina. Debe ser `alpha`, `amd64`, `i386`, `ia64`, `pc98`, `powerpc` o `sparc64`.

    cpu          I486_CPU
    cpu          I586_CPU
    cpu          I686_CPU

Las opciones anteriores definen el tipo de CPU que haya en su sistema. Puede dejar varias líneas de CPU (si, por ejemplo, no está seguro de usar `I586_CPU` o `I686_CPU`), pero si está personalizando su kernel es mucho mejor que solamente ponga la CPU que tenga. Si no está seguro de la CPU que tiene busque en los mensajes de arranque que se guardan en `/var/run/dmesg.boot`.

    ident          GENERIC

Este es el identificador del kernel. Modifíquelo para que cuadre con el nombre que le haya dado a su kernel, es decir, ``MIKERNEL`` si ha seguido los ejemplos anteriores. El valor que asigne a la cadena `ident` será el que se muestre cuando arranque con su kernel, así que es útil darle a su kernel un nombre distintivo que permita distinguirlo fácilmente de otros, por ejemplo, si está compilando un kernel experimental.

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

device.hints(5) se usa para configurar opciones de controladores de dispositivo. La ubicación por defecto en la que loader(8) buscará durante el arranque es `/boot/device.hints`. Si usa la opción `hints` puede compilar el contenido de `device.hints` en su kernel, lo que hará innecesario crear ese fichero en `/boot`.

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

El proceso normal de compilación en FreeBSD incluye información de depuración de errores si se compila un kernel con la opción `-g`, que activa la información de depuración de errores al pasar a gcc(1).

    options          SCHED_4BSD         # 4BSD scheduler

El planificador de tareas tradicional y por omisión de FreeBSD. Déjelo como está.

    options          PREEMPTION         # Enable kernel thread preemption

Permite que hilos que están en el kernel puedan asociarse con hilos cuya prioridad sea más alta. Ayuda con la interactividad y permite que los hilos interrumpidos puedan ejecutarse antes en lugar de tener que esperar.

    options          INET              # InterNETworking

Networking. Deje esto como está, incluso si no tiene en mente conectar la máquina a una red. Muchos programas necesitan al menos disponer de lo que se llama «loopback networking» (esto es, poder efectuar conexiones de red con su propia máquina) así que tener esto es obligatorio.

    options          INET6             # IPv6 communications protocols

Activa los protocolos de comunicación IPv6.

    options          FFS               # Berkeley Fast Filesystem

El sistema de ficheros básico para discos duros. Debe dejarlo como está si pretende poder arrancar desde disco duro.

    options          SOFTUPDATES       # Enable FFS Soft Updates support

Activa Soft Updates en el kernel, lo que acelerará los accesos de escritura a sus discos. Esta funcionalidad la facilita el kernel, pero debe activarse para cada disco de forma específica. Revise la salida de mount(8) y verá si Soft Updates está activado en los discos de su sistema. Si no aparece la opción `soft-updates` actívela mediante tunefs(8) (para sistemas de ficheros ya existentes) o newfs(8) (en el caso de sistemas de ficheros nuevos).

    options          UFS_ACL           # Support for access control lists

Esta opción activa en el kernel las listas de control de acceso. Consiste en el uso de atributos extendidos y UFS2 junto con las características que se describen detalladamente en la Sección 14.12. Las ACL por omisión están activadas, y no deben desactivarse del kernel una vez que hayan sido usadas en un sistema de ficheros puesto que eliminará las listas de control de acceso y el modo en el que se protegen esos ficheros de un modo totalmente fuera de control.

    options          UFS_DIRHASH       # Improve performance on big directories

This option includes functionality to speed up disk operations on large directories, at the expense of using additional memory. You would normally keep this for a large server, or interactive workstation, and remove it if you are using FreeBSD on a smaller system where memory is at a premium and disk access speed is less important, such as a firewall.

    options          MD_ROOT           # MD is a potential root device

Esta opción permite que la partición raíz esté en un disco virtual basado en memoria.

    options          NFSCLIENT         # Network Filesystem Client
    options          NFSSERVER         # Network Filesystem Server
    options          NFS_ROOT          # NFS usable as /, requires NFSCLIENT

NFS, el sistema de ficheros en red. Salvo que tenga intención de montar particiones de sistemas de ficheros UNIX® de un servidor a través de TCP/IP puede comentar estas opciones.

    options          MSDOSFS           # MSDOS Filesystem

El sistema de ficheros MS-DOS®. Salvo que tenga en mente montar particiones de disco duro con formato DOS durante el arranque puede comentar esta opción. En caso de necesidad esta funcionalidad se cargará automáticamente. También tiene a su `emulators/mtools`, que le permitirá acceder a disquetes DOS sin tener que montarlos y desmontarlos (y ni siquiera requiere `MSDOSFS`).

    options          CD9660            # ISO 9660 Filesystem

El sistema de ficheros ISO 9660 para CDROM. Coméntelo si no tiene unidad CDROM o solamente monta CD muy de vez en cuando; cuando lo necesite el sistema lo cargará dinámicamente. Los CD de sonido no utilizan este sistema de ficheros.

    options          PROCFS            # Process filesystem (requires PSEUDOFS)

El sistema de ficheros de procesos. Es un sistema de ficheros “simulado” que se monta en `/proc` y permite a programas como ps(1) suministrar más información sobre qué procesos están ejecutándose. En la mayoaría de los casos no es necesario usar `PROCFS`, puesto que la mayoría de las herramientas de monitorización y depuración han sido adaptadas para que funcionen sin `PROCFS`. De hecho aunque lo instale el sistema no lo montará por omisión.

    options          PSEUDOFS          # Pseudo-filesystem framework

Los kernel 6.X pueden usar `PSEUDOFS` al utilizar `PROCFS`.

    options          GEOM_GPT          # GUID Partition Tables.

Con esta opción se puede tener una gran cantidad de particiones en un único disco.

    options          COMPAT_43         # Compatible with BSD 4.3 [KEEP THIS!]

Compatibilidad con 4.3BSD. Déjelo como está; ciertos programas pueden comportarse de formas muy extrañas si comenta esta opción.

    options          COMPAT_FREEBSD4   # Compatible with FreeBSD4

FreeBSD 5.X en sistemas i386™ y Alpha necesita esta opción para poder usar aplicaciones compiladas en versiones antiguas de FreeBSD que utilizan, por tanto, llamadas al sistema más antiguas. Esta opción no es necesaria en plataformas en las que funciona FreeBSD desde 5.X, como ia64 y Sparc64®.

    options          COMPAT_FREEBSD5   # Compatible with FreeBSD5

Esta opción hace falta en sistemas FreeBSD 6.X y versiones posteriores para poder ejecutar aplicaciones compiladas en FreeBSD 5.X, que usan interfaces de llamada al sistema FreeBSD 5.X.

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

Hace que el kernel haga una pausa de 5 segundos antes de probar los dispositivos SCSI del sistema. Si solamente tiene discos IDE puede ignorar esta opción, o también puede asignarle un valor menos para evitar el retardo en el arranque. Si lo hace y FreeBSD tiene problemas para reconocer dispositivos SCSI en el sistema es obvio que tendrá que incrementar el valor.

    options          KTRACE            # ktrace(1) support

Activa las trazas en el kernel, algo muy útil para la depuración de errores.

    options          SYSVSHM           # SYSV-style shared memory

Facilita memoria compartida System V. El uso más habitual es la extensión XSHM de X, que utiliza la mayoría de programas que hacen uso intensivo de los gráficos para incrementar la velocidad. Si usa X es casi seguro que le vendrá bien esta opción.

    options          SYSVMSG           # SYSV-style message queues

Mensajes System V. Esta opción añade solamente unos cuantos bytes al kernel.

    options          SYSVSEM           # SYSV-style semaphores

Semáforos System V. No es demasiado frecuente que se utilicen, pero solamente añaden unos cuantos cientos de bytes al kernel.

> Nota: La opción `-p` de ipcs(1) le mostrará una lista de procesos que estén utilizando características System V.

    options         _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions

Extensiones en tiempo real añadidas en 1993 POSIX®. Ciertas aplicaciones de la Colección de Ports las utilizan, por ejemplo StarOffice™.

    options          KBD_INSTALL_CDEV  # install a CDEV entry in /dev

This option is required to allow the creation of keyboard device nodes in `/dev`.

    options          ADAPTIVE_GIANT    # Giant mutex is adaptive.

Giant es un mecanismo de exclusión mutua («sleep mutex») que protege un gran conjunto de recursos del kernel. Hoy en dia no es asumible tener un cuello de botella así por el impacto que tiene en el rendimiento, así que está siendo reemplazado por bloqueos que protegen los recursos de manera individual. `ADAPTIVE_GIANT` hace que Giant sea incluido en un conjunto de «mutextes» que va rotando Esto es, cuando un hilo quiere bloquear el Giant mutex (pero ya está bloqueado por un hilo de otra CPU) el primer hilo seguirá ejecutándose a la espera de que se libere el bloqueo. Generalmente el hilo volverá al estado de reposo y esperará hasta que aparezca otra oportunidad de ejecutarse. Si no está seguro de lo que está haciendo es mejor que deje esta opción tal y como está.

> Nota: Tenga en cuenta que en FreeBSD 8.0-CURRENT y versiones siguientes todos los «mutexes» son adaptables por omisión, salvo que se use la opción `NO_ADAPTIVE_MUTEXES`. El resultado evidente que es Giant es adaptable por omisión, así que la opción `ADAPTIVE_GIANT` ha sido eliminada de la configuración.

    device          apic               # I/O APIC

El dispositivo apic activa la E/S APIC en la entrega de interrupciones. El dispositivo apic puede usarse tanto en kernels para un procesador (UP) como para sistemas multiprocesador (SMP). Si añada `options SMP` funcionará en sistemas multiprocesador.

> Nota: El dispositivo apic existe solamente en la arquitectura i386, de modo que no debe usarse esta línea en otras arquitecturas.

    device          eisa

Use esta opción si tiene una placa base EISA. Activa la detección automática y permite la configuración de todos los dispositivos que estén en el bus EISA.

    device          pci

Use esta opción si tiene una placa PCI. Permite la detección automática de tarjetas PCI y permite la configuración entre el bus ISA y el PCI.

    # Floppy drives
    device          fdc

Este dispositivo es el controlador de la unidad de disquetes.

    # ATA and ATAPI devices
    device          ata

Este controlador permite utilizar dispositivos ATA y ATAPI. Si añade al kernel one `device ata` éste detectará cualquier dispositivo ATA/ATAPI PCI que conecte a una máquina moderna.

    device          atadisk                 # ATA disk drives

Si usa `device ata` tendrá que añadir también esto para poder usar unidades de disco ATA.

    device          ataraid                 # ATA RAID drives

Si usa `device ata` tendrá que añadir también esto para poder usar unidades de disco ATA RAID.

    device          atapicd                 # ATAPI CDROM drives

Si usa `device ata` tendrá que añadir también esto para poder usar unidades ATAPI CDROM.

    device          atapifd                 # ATAPI floppy drives

Si usa `device ata` tendrá que añadir también esto para poder usar unidades de disquete ATAPI.

    device          atapist                 # ATAPI tape drives

Si usa `device ata` tendrá que añadir también esto para poder usar unidades de cinta ATAPI.

    options         ATA_STATIC_ID           # Static device numbering

Con esta opción hace que el número de controladores sea estático; si no se usa los números de dispositivo se asignan dinámicamente.

    # SCSI Controllers
    device          ahb        # EISA AHA1742 family
    device          ahc        # AHA2940 and onboard AIC7xxx devices
    options         AHC_REG_PRETTY_PRINT    # Print register bitfields in debug
                                            # output.  Adds ~128k to driver.
    device          ahd        # AHA39320/29320 and onboard AIC79xx devices
    options         AHD_REG_PRETTY_PRINT    # Print register bitfields in debug
                                            # output.  Adds ~215k to driver.
    device          amd        # AMD 53C974 (Teckram DC-390(T))
    device          isp        # Qlogic family
    #device         ispfw      # Firmware for QLogic HBAs- normally a module
    device          mpt        # LSI-Logic MPT-Fusion
    #device         ncr        # NCR/Symbios Logic
    device          sym        # NCR/Symbios Logic (newer chipsets + those of `ncr')
    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

Controladoras SCSI. Coméntelas si no las tiene en su sistema. Si en su sistema tiene solamente unidades IDE puede borrarlas todas. Las líneas `*_REG_PRETTY_PRINT` son opciones de depuración de errores de sus respectivos controladores de dispositivo.

    # SCSI peripherals
    device          scbus      # SCSI bus (required for SCSI)
    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)

Periféricos SCSI. Estos también puede borrarlos sin problemas si no los tiene en su sistema o si solamente tiene hardware IDE.

> Nota: El controlador USB umass(4) (y unos cuantos controladores más) utilizan el subsistema SCSI aunque no sean dispositivos SCSI reales. No elimine el subsistema SCSI del kernel si va a utilizar cualquiera de estos controladores.

    # 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 options
    device          hptmv      # Highpoint RocketRAID 182x
    device          rr232x     # Highpoint RocketRAID 232x
    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
    device          aac        # Adaptec FSA RAID
    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

Controladoras RAID que pueden utilizarse en FreeBSD. Si no las tiene en su sistema puede borrarlas.

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

El controlador de teclado (`atkbdc`) ofrece servicios de E/S con teclados AT y ratones PS/2. El controlador de teclado (`atkbd`) y el controlador de ratón PS/2 (`psm`) necesitan este dispositivo.

    device          atkbd      # AT keyboard

El controlador `atkbd`, junto con el controlador `atkbdc`, permiten utilizar el teclado AT 84 u otros tipos de teclados AT mejorados que se conecten mediante el controlador de teclado AT.

    device          psm        # PS/2 mouse

Utilice este dispositivo si conecta su ratón en el puerto PS/2.

    device          kbdmux        # keyboard multiplexer

Funcionalidad básica para múltiples teclados. Si no tiene en mente usar más de un teclado en el sistema puede borrar esta línea sin mayor problema.

    device          vga        # VGA video card driver

El controlador de la tarjeta gráfica.

    device          splash     # Splash screen and screen saver support

«Splash screen» en el arranque. Los salvapantallas necesitan este dispositivo.

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

`sc` por omisión es el controlador de dispositivo de la consola; se parece mucho a una consola de SCO. Dado que muchos programas de pantalla completa acceden a la consola a través de la biblioteca de bases de datos de terminal `termcap` no tiene demasiada importancia si usa `vt`, el controlador de consola compatible `VT220`. Cuando acceda al sistema asigne a su variable `TERM` el valor `scoansi`si los programas a pantalla completa tienen algún problema para acceder a la consola.

    # Enable this for the pcvt (VT220 compatible) console driver
    #device          vt
    #options         XSERVER          # support for X server on a vt console
    #options         FAT_CURSOR       # start with block cursor

El controlador de dispositivo VT220-compatible; es compatible con VT100/102, anterior a él. Funciona bien en ciertos sistemas portátiles que adolecen de incompatibilidad de harware con `sc`. Asigne a su variable de entorno `TERM` el valor `vt100` o `vt220` cuando acceda al sistema. Este controlador le puede ser de utilidad si tiene que acceder a gran cantidad de máquinas a través de una red, una situación en la que suele suceder que `termcap` o `terminfo` no están ahí para que las use `sc`. `vt100`, por el contrario, debería aparecer en práticamente cualquier plataforma.

    device          agp

Utilice esta opción si tiene en el sistema una tarjeta AGP. Activará AGP y también AGP GART si su tarjeta puede usarla.

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

Gestión avanzada de la energía. Muy útil en sistemas portátiles. Viene desactivada por omisión en el kernel `GENERIC` .

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

Controlador del reloj para eventos de gestión de la energía, como APM y ACPI.

    # PCCARD (PCMCIA) support
    # PCMCIA and cardbus bridge support
    device          cbb               # cardbus (yenta) bridge
    device          pccard            # PC Card (16-bit) bus
    device          cardbus           # CardBus (32-bit) bus

Dispositivos PCMCIA. Si el sistema es portátil necesita tener esto activado.

    # Serial (COM) ports
    device          sio               # 8250, 16[45]50 based serial ports

Estos son los puertos serie a los que se conoce como puertos `COM` en entornos MS-DOS/Windows®.

> Nota: Si tiene un módem interno en `COM4` un puerto serie en `COM2` tendrá que asignar a la IRQ del módem el 2 (por razones técnicas ignotas IRQ2 = IRQ 9) para que pueda acceder al dispositivo desde FreeBSD. Si tiene una tarjeta serie multipuerto consulte la página de manual de sio(4) si quiere más detalles sobre los valores que debe añadir a `/boot/device.hints`. Algunas tarjetas gráficas (sobre todo las que usan chips S3) utilizan direcciones IO del tipo `0x*2e8` y dado que muchas tarjetas serie de baja calidad no decodifican correctamente el espacio de direcciones de 16 bits chocan con estas tarjetas, haciendo que el puerto `COM4` sea prácticamente inútil.

> Es necesario que cada puerto serie tenga una IRQ única (salvo que use una tarjeta multipuerto que permita compartir interrupciones), así que las IRQ de `COM3` y de `COM4` no se pueden utilizar.

    # Parallel port
    device          ppc

El interfaz del puerto paralelo de bus ISA.

    device          ppbus      # Parallel port bus (required)

El bus del puerto paralelo.

    device          lpt        # Printer

Permite usar el puerto paralelo para conectar impresoras.

> Nota: Necesitará disponer de los tres anteriores para poder utilizar impresoras mediante el puerto paralelo.

    device          plip       # TCP/IP over parallel

Este controlador es para la interfaz de red a través del puerto paralelo.

    device          ppi        # Parallel port interface device

La E/S de propósito general (conocida también como “puerto geek”) + E/S IEEE1284.

    #device         vpo        # Requires scbus and da

Este dispositivo se usa con unidades Iomega Zip. Necesita `scbus` y `da` . El mejor rendimiento se alcanza con el uso de los puertos en modo EPP 1.9.

    #device         puc

Puede utilizar este dispositivo si tiene una tarjeta PCI “tonta” (por puerto serie o paralelo) que funcione mediante el controlador puc(4).

    # PCI Ethernet NICs.
    device          de         # DEC/Intel DC21x4x (“Tulip”)
    device          em         # Intel PRO/1000 adapter Gigabit Ethernet Card
    device          ixgb       # Intel PRO/10GbE Ethernet Card
    device          txp        # 3Com 3cR990 (“Typhoon”)
    device          vx         # 3Com 3c590, 3c595 (“Vortex”)

Diversos controladores para tarjetas de red PCI. Puede borrar todas las que no estén en su sistema.

    # 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

El poder utilizar bus MII es necesario para ciertas tarjetas Ethernet PCI 10/100, más concretamente las que usan transceptores compatibles con MII o implementan interfaces de control de transceptores que funcionan como si fueran MII. Si incluye `device miibus` al kernel dispondrá de la API miibus genérica y todos los controladores PHY, incluyendo uno que hará funcionar hardware que, siendo del tipo PHY, no está bajo ninguno de los controladores PHY específicos.

    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          fxp        # Intel EtherExpress PRO/100B (82557, 82558)
    device          lge        # Level 1 LXT1001 gigabit ethernet
    device          msk        # Marvell/SysKonnect Yukon II Gigabit 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 'lnc')
    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”)

Controladores que utilizan el código del controlador de bus 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          lnc        # NE2100, NE32-VL Lance Ethernet cards
    device          sn         # SMC's 9000 series of Ethernet chips
    device          xe         # Xircom pccard Ethernet

    # ISA devices that use the old ISA shims
    #device         le

Controladores Ethernet ISA. Consulte `/usr/src/sys/`i386`/conf/NOTES` para más detalles sobre qué tarjetas hace funcionar qué controlador.

    # Wireless NIC cards
    device          wlan            # 802.11 support

802.11 genérico. Necesitará esta línea si va a usar redes inalámbricas.

    device          wlan_wep        # 802.11 WEP support
    device          wlan_ccmp       # 802.11 CCMP support
    device          wlan_tkip       # 802.11 TKIP support

Criptografía en dispositivos 802.11. Necesita estas líneas si quiere utilizar criptografía y protocolos de seguridad 802.11.

    device          an         # Aironet 4500/4800 802.11 wireless NICs.
    device          ath             # Atheros pci/cardbus NIC's
    device          ath_hal         # Atheros HAL (Hardware Access Layer)
    device          ath_rate_sample # SampleRate tx rate control for ath
    device          awi        # BayStack 660 and others
    device          ral        # Ralink Technology RT2500 wireless NICs.
    device          wi         # WaveLAN/Intersil/Symbol 802.11 wireless NICs.
    #device         wl         # Older non 802.11 Wavelan wireless NIC.

Diversas tarjetas inalámbricas.

    # Pseudo devices
    device   loop          # Network loopback

El dispositivo de «loopback» para TCP/IP. Si accede por telnet o FTP or FTP to `localhost` también conocido como `127.0.0.1`) lo hará a través de este dispositivo. Es imprescindible tenerlo en el sistema.

    device   random        # Entropy device

Generador de números criptográficamente seguro.

    device   ether         # Ethernet support

`ether` solo es necesario si tiene alguna tarjeta Ethernet. Incluye código genérico del protocolo Ethernet.

    device   sl            # Kernel SLIP

`sl` permite utilizar SLIP. Ha sido sustituido casi totalmente por PPP, que es más fácil de usar, está mejor capacitado para la conexión de módem a módem y es, en general, claramente mejor.

    device   ppp           # Kernel PPP

Este dispositivo incluye en el kernel la capacidad de gestionar conexiones de llamada entrante «dial-up». Hay también una versión de PPP implementada como aplicación de usuario; utiliza `tun` y ofrece más flexibilidad y características como la llamada bajo petición.

    device   tun           # Packet tunnel.

Este dispositivo lo usa el software PPP de usuario. Consulte la sección sobre PPP de este mismo libro.

    device   pty           # Pseudo-ttys (telnet etc)

Este dispositivo es una “pseudoterminal”, o un puerto de entrada al sistema simulado. Se usa en sesiones entrantes de `telnet` y `rlogin`; también lo usan xterm y otras aplicaciones, entre las que encontramos a Emacs.

    device   md            # Memory “disks”

Pseudodispositivos de disco basados en memoria.

    device   gif           # IPv6 and IPv4 tunneling

Este dispositivo implementa túneles de IPv6 sobre IPv4, IPv4 sobre IPv6, IPv4 sobre IPv4 e IPv6 sobre IPv6. El dispositivo `gif` se puede clonar a sí mismo, así que los nodos de dispositivo se van creando a medida que van haciendo falta.

    device   faith         # IPv6-to-IPv4 relaying (translation)

Este pseudodispositivo captura paquetes que se le hayan enviado y los dirige hacia el dæmon de traducción IPv4/IPv6.

    # The `bpf' device enables the Berkeley Packet Filter.
    # Be aware of the administrative consequences of enabling this!
    # Note that 'bpf' is required for DHCP.
    device   bpf           # Berkeley packet filter

El filtro de paquetes de Berkeley. Este pseudodispositivo permite poner interfaces de red en modo promíscuo, lo que significa que capturan todos los paquetes que circulen por una red broadcast (por ejemplo una Ethernet). Dichos paquetes pueden guardarse en disco para su posterior examen mediante tcpdump(1) (el análisis con tcpdump(1) no puede hacerse directamente también).

> Nota: El dispositivo bpf(4) también lo usa dhclient(8) para obtener direcciones IP del encaminador (gateway) por omisión. Si usa DHCP deje esta opción como está.

    # USB support
    device          uhci          # UHCI PCI->USB interface
    device          ohci          # OHCI PCI->USB interface
    device          ehci          # EHCI PCI->USB interface (USB 2.0)
    device          usb           # USB Bus (required)
    #device         udbp          # USB Double Bulk Pipe devices
    device          ugen          # Generic
    device          uhid          # “Human Interface Devices”
    device          ukbd          # Keyboard
    device          ulpt          # Printer
    device          umass         # Disks/Mass storage - Requires scbus and da
    device          ums           # Mouse
    device          ural          # Ralink Technology RT2500USB wireless NICs
    device          urio          # Diamond Rio 500 MP3 player
    device          uscanner      # Scanners
    # USB Ethernet, requires mii
    device          aue           # ADMtek USB Ethernet
    device          axe           # ASIX Electronics USB Ethernet
    device          cdce          # Generic USB over Ethernet
    device          cue           # CATC USB Ethernet
    device          kue           # Kawasaki LSI USB Ethernet
    device          rue           # RealTek RTL8150 USB Ethernet

Diversos dispositivos USB.

    # FireWire support
    device          firewire      # FireWire bus code
    device          sbp           # SCSI over FireWire (Requires scbus and da)
    device          fwe           # Ethernet over FireWire (non-standard!)

Diversos dispositivos Firewire.

Tiene más información y una lista con más dispositivos que funcionan en FreeBSD consulte `/usr/src/sys/`i386`/conf/NOTES`.

## 8.6.1. Configuraciones con grandes cantidades de memoria (PAE)

Las máquinas que tienen configuraciones con grandes cantidades de memoria necesitan acceder a más de 4 gigabytes de espacio de direcciones KVA (User+Kernel Virtual Address). Debido a esta limitación Intel añadió a las CPU Pentium® Pro y modelos posteriores la posibilidad de acceso al espacio de direcciones físicas de 36 bits.

PAE (Physical Address Extension) a las CPU Intel® Pentium Pro y los modelos posteriores configuraciones de memoria de hasta 64 gigabytes. Para poder aprovechar esto en FreeBSD existe la opción del kernel `PAE`, disponible en todas las versiones modernas de FreeBSD. A causa de esta limitación de memoria en los Intel no hay nada que distinga de algún modo la memoria situada por debajo del límite de los 4 gigabytes. La memoria que esté por encima de los 4 gigabytes se coloca en el «pool» de memoria disponible.

Si quiere activar PAE en el kernel tiene que añadir la siguiente liínea al fichero de configuración del kernel:

    options            PAE

> Nota: En FreeBSD PAE solamente existe en procesadores Intel IA-32. Hemos de advertirle de que PAE no ha sido probado todo lo necesario, así que debe considerarse de calidad beta, sobre todo si se le compara con otras características de FreeBSD.

PAE en FreeBSD tiene varias limitaciones:

- Un solo proceso no puede acceder a más de 4 gigabytes de espacio VM.

- No puede cargar módulos KLD en un kernel que tenga PAE activado debido a las diferencias existentes entre el «framework» de compilación del módulo y el del kernel mismo.

- Los controladores de dispositivo que utilizan el interfaz bus_dma(9) pueden provocar corrupción de datos en un kernel con PAE activado, una excelente razón para no utilizarlos. Esta es la razón de que FreeBSD incorpore un fichero de configuración de un kernel `PAE` del que se han extraído todos los módulos que se sabe que no funcionan en un kernel con PAE activado.

- Algunos «system tunables» determinan el uso de recursos de memoria basándose en la memoria física disponible. Estos «tunables» pueden asignar más memoria de la que realmente debieran debido a que el sistema PAE está íntimamente ligado a cantidades bastante importantes de memoria. Un ejemplo de esto es la sysctl `kern.maxvnodes`, que controla el número máximo de vnodes permitidos en el kernel. Le recomendamos que ajuste este y otros tunables dentro valores razonables.

- Es posible que tenga que aumentar el espacio virtual de direcciones del kernel (el KVA) o reducir la cantidad de recursos exclusivos del kernel que se utilicen exhaustivamente (ver más arriba) para evitar que KVA literalmente se ahogue. La opción del kernel `KVA_PAGES` permite incrementar el espacio KVA.

Si quiere saber más sobre la estabilidad del sistema consulte la página de manual de tuning(7). La página de manual de pae(4) contiene información actualizada sobre PAE y FreeBSD.

Anterior | Inicio | Siguiente
Compilación e instalación de un kernel personalizado | Subir | Qué hacer si algo va mal

Puede descargar éste y muchos otros documentos desde ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

Si tiene dudas sobre FreeBSD consulte la documentación antes de escribir a la lista <questions@FreeBSD.org>.
Envíe sus preguntas sobre la documentación a <doc@FreeBSD.org>.