Preparación para el examen LPI 101

Tema 101
Arquitectura y Hardware

Créditos y licencia de uso

Coordinación:

Manuel Guillán (xLekOx) lpi@xlekox.org

Traducción:

Miguel Castiella (ruton) mcastillea@euskaltel.com

Pere Catalan (arGos) sageta77@hotmail.com

Dani Donisa (kasei) kasei@flashmail.com

Carmen Eugenio (nemrac) meneiro@ono.com

Manuel Guillán (xLekOx) lpi@xlekox.org

Maquetación y corrección:

Gustavo Álvarez (gus) gustavoalvarez@loxica.net

Manuel Guillán (xLekOx) lpi@xlekox.org

Versión 1.0 (15-03-2005 19:00)

Distribuido por FreeUOC (www.freeuoc.org) bajo licencia: Attribution-NonCommercial-ShareAlike2.0 de commons creative

http://creativecommons.org/licenses/by-nc-sa/2.0/

ÍNDICE

Índice de contenido

Tema 101
Arquitectura y Hardware	1

Créditos y licencia de uso	2

ÍNDICE	3

Tema 101.1
Configurando la BIOS	5

Introducción	6

Arquitectura del sistema	7

BIOS	7

Tema 101.3
Configurando la tarjeta de red y las tarjetas de sonido	9

Introducción	10

Usando Adaptadores de Red	11

Tarjetas de sonido	12

Tema 101.4
Dispositivos SCSI	14

Introducción	15

Unidades de disco bajo Linux	16

Requerimientos del controlador del disco duro.	17

Dispositivos SCSI: Introducción	17

Controladoras SCSI	18

Los terminadores	18

Los RAID y los números de unidad lógica	18

Tema 101.5
Configurando diferentes tarjetas en el PC	19

Introducción	20

Dispositivos PCI	21

Especificando los dispositivos PCI	21

Recursos de los dispositivos PCI	21

Dispositivos ISA	22

Tema 101.6
Configurando dispositivos de comunicación	23

Introducción	24

El comando setserial	25

Tema 101.7
Configurando dispositivos USB	26

Introducción	27

Introducción a Linux USB	28

Activando USB	28

UHCI, OHCI, EHCI	28

Los últimos pasos	28

Montando usbdevfs	29

HOTPLUG	29

Bibliografia y enlaces recomendados	30

Tema 101.1
Configurando la BIOS

Introducción

En este capítulo se verá muy por encima el papel de la BIOS en el ordenador, si bien hay mucha información sobre la misma, no es el propósito principal del curso LPI.

Este tema tiene un peso (importancia) de 1 de cara al examen final de la certificación LPI 101. El total de la suma de pesos de todos los temas es de 106.

Arquitectura del sistema

GNU/Linux existe en multitud de plataformas, cada una mostrando su propia idiosincrasia en configuración y administración de dispositivos. La arquitectura más extendida sobre la que corre GNU/Linux es familia de microprocesadores Intel y compatibles, pero también corre en arquitecturas que van desde Compaq Alpha (también conocida como DEC), en procesadores basados en tecnología RISC y en procesadores Motorola 68k.

Con el amplio soporte en procesadores se hace disponible también el soporte a una gran variedad de arquitecturas de bus, entre las que se encuentran:

ISA/VLB/EISA y PCI: usadas por la gran mayoría de PC's del mercado, desde los AT hasta los ATX.

PS/2 y MCA: bus usados por los IBM PS/2, tecnología incompatible con la anterior AT Bus o ISA usados por el resto de PC's.

VME: arquitectura de bus basada en los procesadores de la familia Motorola 68k. Ampliamente usado desde entornos comerciales hasta militares, pasando por la industria.

Todas estas arquitecturas pueden no estar disponibles en las distribuciones genéricas de GNU/Linux, o bien necesitar de controladores (drivers) específicos y algo de configuración tanto sobre la arquitectura del procesador como del bus. Quizá se haga necesario echar una visita a la página del fabricante o proveedor en busca de información sobre la arquitectura en concreto si planeas instalar GMU/Linux bajo arquitecturas diferentes de Intel/ISA. Los portátiles añaden una nueva dificultad debido a la especialización de su diseño de hardware, convirtiendo en una dura prueba la tarea de conseguir que GNU/Linux se ejecute correctamente. Todos estos problemas tienen que ver con el tipo de modelos específicos de las tarjetas de sonido, vídeo, red y buses PCMCIA o CardBus de los portátiles.

Este capítulo se centra en la arquitectura Intel y compatibles, principalmente porque el examen también lo hace.

Antes de entrar en materia, debes aprender a usar el sistema de ficheros virtual /proc, ya que puede proporcionar información acerca del hardware instalado en tu sistema. Por ejemplo: /proc/interrupts identifica las líneas de petición de interrupción (IRQ) de tu sistema y su estado. /proc/cpuinfo da información sobre el o los procesadores instalados en el sistema, su velocidad, modelo, etc.
/proc/pci devolverá un listado de los dispositivos conectados al bus PCI. Estos y otros ficheros serán de gran ayuda en el momento de instalar y configurar el sistema.

BIOS

La BIOS (de Basic Input / Output System) proporciona la interface entre el hardware y el sistema operativo. Todas las peticiones para realizar actividades sobre el hardware que pueda hacer el sistema operativo, como acceder a una disquetera, se realizan a través de la BIOS del sistema.

Hoy en día la BIOS y su configuración varia mucho de un sistema a otro. Un sistema nuevo que use el bus PCI y AGP o el nuevo PCI-Express tiene configuraciones que no existen en antiguos sistemas poseedores de la tecnología de bus ISA o EISA. Sin ir más lejos, los diferentes fabricantes de chips BIOS (Award, AMI, etc) usan diferentes interfaces de usuario para configurarlas. Saber configurar la BIOS de nuestro sistema es esencial, aunque a menudo implique tener a mano el manual de nuestra placa base.

GNU/Linux coge muy poca información de la BIOS. Los parámetros de los discos duros actualmnte no se usan, y la información se toma directamente del disco duro y los controladores. Antiguamente había que habilitar el modo LBA para discos duros con más de 1024 cilindros para que fueran bien reconocidos por el sistema.

Puede ser interesante también habilitar/deshabilitar ciertos componentes integrados de la placa base, como puede ser la tarjeta de sonido si disponemos de otra mejor que no esté integrada.

Cambiar la fecha y la hora de la BIOS si es importante, ya que afecta el reloj de hardware y, por consiguiente, altera la fecha y hora devuelta por nuestro sistema operativo.

Tema 101.3
Configurando la tarjeta de red y las tarjetas de sonido

Introducción

En este capítulo se verá como ver la configuración de la tarjeta de red, y si es correcto su funcionamiento así como la configuración de la tarjeta de sonido, el tema da mucho de si, aunque no es el objetivo profundizar en estos conocimientos de cara al examen 101.

Este tema tiene un peso (importancia) de 1 de cara al examen final de la certificación LPI 101. El total de la suma de pesos de todos los temas es de 106.

Usando Adaptadores de Red

Los adaptadores de red Ethernet son muy variados en tipos, precios y soporte. La tarjeta más comúnmente usada, de bajo coste, y que se puede encontrar en muchos ordenadores, es la 3C501. Sin embargo estas tarjetas están en desventaja en comparación con los adaptadores nuevos, que van bajando su precio mes a mes. En consecuencia, es conveniente comprobar la lista de hardware soportado antes de comprar una tarjeta de red (Network Interface Card – NIC).

Los adaptadores de red más comunes, incluidas las tarjetas PCMCIA, son detectadas y configuradas durante la instalación. Si estas no son detectadas se requiere al usuario para que seleccione la marca y modelo de tarjeta que tiene instalada.

En ocasiones, la NIC no se configura por defecto y debe ser activada usando opciones adicionales, incluyendo IRQ, I/O y direcciones de memoria. Con estos valores se informa al kernel como se debe comunicar con la NIC y en consecuencia como activar la red.

Cuando el sistema de red ya está operativo, se puede comprobar el módulo de red cargado por la interface en los mensajes del boot, estos mensajes son accesibles mediante el comando dmesg:

#dmesg | grep eth0

eth0: RealTek RTL8139 at 0xec00, 00:05:1c:03:95:7a, IRQ 11

eth0: Identified 8139 chip type 'RTL-8139C'

eth0: link up, 10Mbps, half-duplex, lpa 0x0000

Una vez la instalación se ha completado y el sistema es reiniciado, el kernel inicializa la NIC y activa la red. La configuración correcta de la NIC se lleva a cabo con el comando ifconfig, que es usado para comprobar y cambiar los parámetros actuales de la red.

Si la NIC no funciona bajo Linux, se debe reiniciar el sistema con DOS y usar las herramientas de localización de problemas y diagnóstico proporcionadas por el fabricante para comprobar si la tarjeta funciona bajo DOS y si los parámetros usados por Linux son correctos.

Se pueden comprobar las operaciones de la NIC usando el comando ifconfig, que reporta y permite cambiar la configuración de la interface de red. Consideremos el siguiente ejemplo:

[root@localhost chare]# ifconfig -a

eth0 Link encap:Ethernet HWaddr 00:A0:24:64:6A:49

inet addr:192.168.0.4 Bcast:192.168.0.255 Mask:255.255.255.0

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

RX packets:199481 errors:0 dropped:0 overruns:0 frame:0

TX packets:245591 errors:0 dropped:0 overruns:0 carrier:0

collisions:931 txqueuelen:1000

Interrupt:11 Base address:0xec00

lo Link encap:Local Loopback

inet addr:127.0.0.1 Mask:255.0.0.0

inet6 addr: ::1/128 Scope:Host

UP LOOPBACK RUNNING MTU:16436 Metric:1

RX packets:1423 errors:0 dropped:0 overruns:0 frame:0

TX packets:1423 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:0

En este ejemplo el sistema tiene una NIC física (eht0) y el adaptador loopback (lo). Los parámetros de eth0 informan sobre su IP y si está funcionando o no:

eth0 Link encap:Ethernet HWaddr 00:A0:24:64:6A:49

inet addr:192.168.0.4 Bcast:192.168.0.255 Mask:255.255.255.0

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

La dirección IP para la interface es 192.168.0.4, y está funcionando. Se puede verificar usando más comandos como ping y arp. Usando arp, se determina qué otros adaptadores de red son visibles en la LAN:

[root@localhost chare]# arp -a

win98-2 (192.168.0.3) at 00:80:C6:F1:FA:C9 [ether] on eth0

win98-1 (192.168.0.2) at 00:60:97:59:53:B8 [ether] on eth0

li-gw (192.168.0.1) at 00:00:81:F3:05:9A [ether] on eth0

Con esta información, se puede saber que la interface eth0 esta recibiendo paquete correctamente. La salida del comando arp muestra el nombre del host (hostname) y sus direcciones IP y MAC. Se puede comprobar también el correcto funcionamiento de la tarjeta usando el comando ping para contactar con otro sistema de la red:

[root@localhost chare]# ping 192.168.0.3

PING 192.168.0.3 (192.168.0.3): 56 data bytes.

64 bytes from 192.168.0.3: icmp_seq=0 ttl=128 time=2.8 ms

64 bytes from 192.168.0.3: icmp_seq=1 ttl=128 time=0.9 ms

--- 192.168.0.3 ping statistics ---

2 packets transmitted, 2 received, 0% packet loss

round-trip min/avg/max = 0.9/1.8/2.8 ms

Esto confirma el correcto funcionamiento de nuestra NIC y que está configurada para transmitir y recibir datos en la red.

Tarjetas de sonido

Las tarjetas de sonido han sido tradicionalmente difíciles de instalar en Linux; no obstante, con el incremento de número de drivers soportados, esta tarea se ha simplificado. El comando sndconfig se usad para configurar la tarjeta de sonido y verificar su funcionamiento. Para usar sndconfig (herramienta escrita y liberada per Red Hat Software) es necesario ser root.

El comando sndconfig intenta encontrar y auto configurar (plug-and-play PnP) los dispositivos instalados en el sistema. Si la tarjeta de sonido no es PCI ni PnP, se deberá seleccionar desde el menú. El listado de tarjetas únicamente se muestra si sndconfig no puede identificar la tarjeta.

En este ejemplo, la tarjeta instalada es una ISA, no PnP. Como el sistema no puede determinar la configuración del hardware que se está usando, se le deberá indicar. En este caso es posible seleccionar los valores (port I/O, IRQ y DMA) para la tarjeta de sonido. Estos valores serán almacenados por sndconfig, que iniciará dos pruebas de sonido. Si los valores no so correctos, el driver de sonido no se podrá comunicar con la tarjeta, en consecuencia no se oirá nada. Igual que el comando setserial, sndconfig no configura la tarjeta sino el driver de sonido. Uno de los test de sonido es un archivo wave, y el otro un MIDI. Si se pueden oír ambos, se han configurado correctamente driver y tarjeta.

La tarjeta está instalada y el driver de sonido configurado cuando durante el boot se muestran mensajes similares a estos:

Soundblaster audio drive Copyright © by Hannu Savolainen

1993-1996

SB 4.12 detected OK (220)

YM3812 and OPL-3 driver Copyright © by Hannu Savolainen,

Rob Hooft 1993-1996

Estos detalles identifican la tarjeta de sonido y los drivers cargados para soportarla. Como se ha mencionado, siempre que la tarjeta física tenga la misma configuración que el driver , se podrán oír los test de sonido, indicando ésto que el dispositivo se ha configurado correctamente.

Tema 101.4
Dispositivos SCSI

Introducción

En este capítulo se verá como trata GNU/Linux las unidades de disco IDE y SCSI.

Este tema tiene un peso (importancia) de 1 de cara al examen final de la certificación LPI 101. El total de la suma de pesos de todos los temas es de 106.

Unidades de disco bajo Linux

GNU/Linux soporta muchos tipos de discos y formatos. Cualquier disco duro SCSI o IDE podrá funcionar bajo Linux, así como disquetera, CD-ROMs, CD-Rs, discos Zip® y Jaz®, y otros tipos de medios removibles. Estos medios pueden contener sistemas de ficheros estándar de Linux ext2, FAT, FAT32, NTFS, así como otros tipos de ficheros. Esta flexibilidad hace que Linux coexista perfectamente con otros sistemas operativos en sistemas con multi-arranque.

Los discos duros más comúnmente instalados en los ordenadores personales son IDE (Integrated Device Electronics). Estos discos tienen una interfaz relativamente simple, y la mayoría de los "smarts" del disco están dentro del disco en sí mismo. El estándar IDE permite a los proveedores de discos vender su producto a un precio muy atractivo. También se usan en PCs los discos Small Computer System Interface (SCSI, pronunciado "escasi") SCI es un viejo estándar para conectar periféricos; sin embargo, las versiones modernas SCSI son bastante rápidas y flexibles.

En general los discos IDE ofrecen funciones razonables a un precio bajo, lo que es altamente apetecible para los productos al consumidor. Una sencilla interfaz IDE puede albergar dos unidades de disco en un sistema. Uno se llamará maestro y el otro el esclavo (una desafortunada denominación habitual). La mayoría de ordenadores tienen una interfaz IDE primaria y secundaria. Juntas, albergan cuatro dispositivos (maestro primario, esclavo primario, maestro secundario, esclavo secundario). Como mínimo, estos dispositivos serán el disco duro, el CD-ROM, dejando dos posiciones disponibles para el CD-R, Zip, tape o otro dispositivo IDE. Añadiendo controladoras IDE adicionales o subsistemas IDE especializados podemos expandir las capacidades de los PC's.

En comparación con IDE, SCSI ofrece funciones excelentes, menor uso de la CPU y un plan de conexión mucho más flexible capaz de manejar hasta 15 dispositivos en un simple bus.

Estas utilidades permiten a los sistemas SCSI crecer según se requiera sin tener que reconfigurar hardware. Desafortunadamente, SCSI normalmente implica mayor coste, lo que reduce la demanda de SCSI en el mercado de PC's.

Típicamente, se considera IDE apropiado para el uso en oficina. SCSI se usa para servidores, para estaciones de trabajo y en situaciones en las que lo que interesa es la capacidad de expansión.

Dispositivos de disco duro.

Por defecto, GNU/Linux define un dispositivo de ficheros IDE como sigue:

/dev/hda - Primary master IDE - IDE primario maestro (habitualmente el disco duro)

/dev/hdb- Primary slave IDE - IDE primario esclavo

/dev/hdc - Secondary master IDE - IDE secundario maestro (frecuentemente el CD-ROM)

/dev/hdd - Secondary slave IDE - IDE secundario esclavo

Los dispositivos de ficheros SCSI son similares, excepto que no hay limitación de cuatro dispositivos:

/dev/sda - Primer disco SCSI

/dev/sdb - Segundo disco SCSI

/dev/sdc - Tercer disco SCSI (y así los siguientes)

Bajo GNU/Linux, un ordenador típico con un único disco duro en el inferfaz IDE primario y un único CD-ROM en el IDE secundario tendría

disk drive /dev/hda

CD-ROM /dev/hdc.

En el examen:

Se debe estar preparado para identificar dispositivos IDE y SCSI basados en sus definiciones de dispositivos.

Requerimientos del controlador del disco duro.

GNU/Linux soporta casi todos los tipos de controladores de disco duro, excepto los nuevos ultra o los controladores propietarios. Casi cualquier controlador estancar IDE, MFM, RLL, o ESDI debería trabajar sin problemas. Si se introduce un nuevo estándar más rápido, se deberá esperar un poco a que salga un driver para el mismo.

GNU/Linux también maneja los controladores SCI estupendamente. La mayoría de vendors SCSI como ADaptec, Ultrastor, Future Domain, Western Digital, u otros no deberían plantear problemas. La mayoría de controladoras SCSI tienen una BIOS a la que se puede acceder durante el arranque y usar para configurar el controlador. Antes de instalar un nuevo sistema linux ir a la BIOS y asegurarse detecta los IDs SCSI de todos los periféricos SCSI. El orden de los IDs SCSI determina la denominación en linux de los dispositivos. Se debe prestar especial atención a los IDs SCSI 0 y 1, dado que son normalmente los dispositivos de los cuales se intenta por orden arrancar el sistema.

Si se instala un nuevo disco duro en unsistema SCSI se requerirá formatear a bajo nivel el disco antes de su uso. Revisar la documentación de la controladora para ver si ese es el caso. Para formatear el disco a bajo nivel, usar la herramienta suministrada con la BIOS del controlador SCSI.

Muchos controladores nuevos SCSI pueden configurarse para arrancar desde cualquier ID SCSI, pero asegurarse cuál de ellos está configurado como de arranque.

Dispositivos SCSI: Introducción

Existen dos grandes estándares de dispositivos de almacenamiento: el estándar ATA (comúnmente conocidos como dispositivos IDE) y el estándar SCSI. El estándar SCSI es muy usado en entornos de servidor, viejos modelos Apple o estaciones Unix.

El estándar SCSI se usa como interfase para dispositivos de “streaming” y de bloques como son discos duros, cintas de backup, lectores CDROM, etc.

El estándar SCSI es muy superior frente al estándar ATA. Mientras que el estándar ATA está limitado a un máximo de solo cuatro dispositivos, el estándar SCSI permite conectar tantos dispositivos como permita la tarjeta controladora del bus SCSI. Además, los discos SCSI poseen un rendimiento muy superior a los disco ATA, en velocidad y en ancho de banda.

Controladoras SCSI

Algunas de esas controladoras poseen una BIOS propia que se encarga del control de los dispositivos conectados a ella y actúa de interfase entre los dispositivos SCSI y el resto del sistema. Entre otras cosas, la SCSI-BIOS se encarga , durante el arranque, de identificar los dispositivos conectados a ella, asignándoles un identificador tener en cuenta que la tarjeta controladora también reserva un identificador para ella (generalmente el id 7).

Si la controladora no posee una SCSI-BIOS, debemos ser nosotros los que asignemos un identificador libre al dispositivo manualmente.

Durante el arranque de GNU/Linux se muestra la configuración usada por el controlador SCSI así como los dispositivos detectados, y el identificador que está usando. Evidentemente, podemos volver a ver el log de arranque en cualquier momento usando:

#dmesg | more

Es importante señalar que los PC's no vienen con controladora SCSI integrada sino que debe ser adquirida aparte como una tarjeta PCI o ISA. Uno de los fabricantes más conocidos de controladoras SCSI es Adaptec, que viene soportada de serie en la gran mayoría de distribuciones Linux.

Los terminadores

Los buses SCSI poseen un terminador de bus, este marca su final. Este terminador también actúa como filtro eliminando ruido de las señales del bus. La controladora SCSI también actúa como terminador en uno de los extremos.

Aunque existen terminadores externos que se acoplan a las terminaciones de los cables del bus SCSI, muchos dispositivos SCSI vienen con un terminador interno que entra en funcionamiento al conectar un dispositivo en algún extremo del cable mientras la controladora termina el otro extremo.

Los RAID y los números de unidad lógica

Existe un tipo de dispositivos llamados RAID que permiten usar diversas unidades de forma redundante para formar un sólo volumen lógico y compartiendo un mismo identificador SCSI.

Cada una de las unidades posee un número de unidad lógica o lun (de “logical unit number”) que acompaña al identificador SCSI.

En concreto los diversos tipos de RAID proporcionan una cierta redundancia de los datos. La redundancia total y la capacidad de regeneración de la información en caso de sustitución de alguna unidad, depende del número de volúmenes y del tipo de RAID instalado.

Bajo Linux, estos dispositivos se nombran como un dispositivo SCSI corriente (sda, sdb, etc).

Tema 101.5
Configurando diferentes tarjetas en el PC

Introducción

En este capítulo se verá como configurar diversas tarjetas desde las diferentes bahías de expansión de las placas base.

Este tema tiene un peso (importancia) de 3 de cara al examen final de la certificación LPI 101. El total de la suma de pesos de todos los temas es de 106.
Nota: El contenido de este capítulo puede estar desfasado en la actualidad.

Dispositivos PCI

En esta sección vamos a profundizar en los detalles de los dispositivos PCI bajo GNU/Linux. Activar los dispositivos PCI es bastante directo. Sólo hay que estar seguro de que se tiene activada la opción “PCI Support” en “General Setup” de la configuración del núcleo. También es recomendable la opción “PCI device name database”, lo cual permitirá ver los nombre en inglés de los dispositivos PCI que soporta Linux (a parte del número oficial de ID del dispositivo PCI). Con estar seguro de que las opciones mencionadas están activas, Linux está preparado para trabajar con dispositivos PCI.

Sólo queda activar el driver especifico para el tipo de tarjeta que se está instalando en el sistema. Por ejemplo, se debería de activar “Creative SBLive!” (en la categoría “Sound”) si se está instalando una tarjeta SoundBlaster Live!, y se deberá activar "3c590/3c900 series (592/595/597) "Vortex/Boomerang" en la categoría/subcategoría "Network device support/Ethernet (10 or 100Mbit)" si se está instalando una tarjeta de red 3Com 3c905c.

Especificando los dispositivos PCI

Para ver la información de los dispositivos PCI que tienes instalados, se puede teclear:

#cat /proc/pci

para ver la información de los bare-bones o teclear:

#lspci -v

para ver algo más entendible y detallado.

El comando lspci es parte del paquete pciutils, cuyos fuentes están disponibles en http://atrey.karlin.mff.cuni.cz/~mj/pciutils.html. Por norma general es suficiente con la versión de pciutils que viene en cada distribución. Cuando tecleas lspci -v, se pueden ver muchos dispositivos PCI que seguramente no se sepa ni que existían en el PC. A menudo, muchos de esos dispositivos son aquellos que vienen instalados en la placa base. Estos dispositivos pueden desactivarse (o activarse si no están activos) en la BIOS del ordenador pulsando delete o F2 cuando está arrancando el ordenador. El paquete pciutils también contiene un programa llamado setpci, que es para cambiar algunas de las opciones de los dispositivos PCI incluyendo el estado latente del dispositivo. Más información en “man lspci” y “man setpci”.

Recursos de los dispositivos PCI

Para poder trabajar, los dispositivos PCI necesitan aprovecharse de otros dispositivos del sistema, como las interrupciones. Muchos dispositivos PCI se aprovechan de las interrupciones para mandar una señal al procesador para indicarle que tienen cierta información que procesar. Para ver que interrupciones están siendo usadas en el sistema, se puede ver el fichero /proc/interrups tecleando:

#cat /proc/interrupts.

CPU0 0: 3493317 XT-PIC timer 1: 86405 XTibm.com/developerWorks

La primera columna lista el número de IRQ, la segunda cuantas interrupciones han sido procesadas por el núcleo para esta IRQ y la última columna identifica el “nombre corto” del dispositivo asociado a esa IRQ. Varias dispositivos pueden compartir IRQ si es necesario.

En el directorio /proc también encontramos información útil sobre dispositivos tanto PCI como ISA en los siguientes “archivos”:

/proc/dma -> Lista de canales ISA DMA (direct memory access)

/proc/interrupts -> Es usado para mostrar el listado de interrupciones de cada IRQ

/proc/ioports -> Listado de los puertos de entrada-salida actualmente registrados

/proc/pci -> Listado de todos los dispositivos encontrados durante la inicialización del kernel y su	configuración

Más información acerca del sistema /proc en:

http://linuxreviews.org/man/proc/

http://www.linuxforum.com/linux-filesystem/proc.html

Dispositivos ISA

Para los dispositivos ISA, se requiere un archivo de configuración creado con la utilidad pnpdump que se encuentra en /etc/isapnp.conf . Este fichero se genera con dicha utilidad, no se encuentra en ningún rpm o paquete, porque solamente se puede aplicar a cada sistema en concreto y la configuración de cada tarjeta.

La configuración se hacen dos pasos:

#isapnp /etc/isapnp.conf

Con esta orden el sistema trata de configurar las tarjetas ISA

#pnpdump > /etc/isapnp.conf

Es el paso de la configuración para que la configuración queda grabada para posteriores sesiones.

El proceso más detallado: http://www.linux-sxs.org/housekeeping/pnpdump.html

Tema 101.6
Configurando dispositivos de comunicación

Introducción

Este capítulo es prácticamente el mismo que el 101.5, por lo que se verá muy brevemente el uso de setserial

Este tema tiene un peso (importancia) de 1 de cara al examen final de la certificación LPI 101. El total de la suma de pesos de todos los temas es de 106.

El comando setserial

El comando setserial se emplea para obtener información de los puertos, o bien para configurarlos. Esta información incluye el puerto de entrada/salida que está usando una IRQ en particular o un puerto de serie.

Durante el arranque solamente los puertos COM 1-4 son inicializados, usando los puertos I/O y los valores IRQ por defecto. Para cambiar esa configuración por defecto o bien añadir nuevas entradas, se usa el comando setserial.

Las configuraciones estándar son:

Para los puertos COM:

/dev/ttys0 (COM1), port 0x3f8, irq 4

/dev/ttys1 (COM2), port 0x2f8, irq 3

/dev/ttys2 (COM3), port 0x3e8, irq 4

/dev/ttys3 (COM4), port 0x2e8, irq 3

Para los IRQ:

IRQ 0 Timer channel 0

IRQ 1 Keyboard

IRQ 2 Cascade for controller 2

IRQ 3 Serial port 2

IRQ 4 Serial port 1

IRQ 5 Parallel port 2 (Reserved in PS/2)

IRQ 6 Floppy diskette

IRQ 7 Parallel port 1

IRQ 8 Real-time clock

IRQ 9 Redirected to IRQ2

IRQ 10 Reserved

IRQ 11 Reserved

IRQ 12 Reserved (Auxillary device in PS/2)

IRQ 13 Math coprocessor

IRQ 14 Hard disk controller

IRQ 15 Reserved

Se puede encontrar más información en la página del manual “man setserial”

Tema 101.7
Configurando dispositivos USB

Introducción

Este capítulo trata sobre los dispositivos USB y los comandos que facilitan el uso de los mismos.

Este tema tiene un peso (importancia) de 1 de cara al examen final de la certificación LPI 101. El total de la suma de pesos de todos los temas es de 106.
Nota: El contenido de este capítulo puede estar desfasado en la actualidad.

Introducción a Linux USB

Cuando se configura el núcleo, se ve una sección llamada “USB support” que contiene opciones USB, conocido como Bus serie universal. USB es relativamente una nueva forma de conectar periféricos al PC. Hoy en día, hay ratones, teclados, controladores de juegos, impresoras, modems, etc como dispositivos USB. Como el soporte para USB de GNU/Linux es realmente temprano, muchos usuarios Linux jamas han utilizado dispositivos USB en sus sistemas o no están muy al día de como los soporta Linux. El siguientes paneles darán una pequeña introducción de como ayuda GNU/Linux a iniciarse.

Activando USB

Para activar el soporte USB Linux, se debe ir a la categoría “USB Support” y activar la opción . Los siguientes pasos pasos de instalación pueden ser confusos. En particular, se tiene que seleccionar el Controlador USB adecuado para cada sistema. Las opciones son “EHCI”, “UHCI, “UHCI (driver alternativo)“ y “OHCI”. Estos nombres pueden provocar la confusión de cual escoger.

UHCI, OHCI, EHCI

Para entender que es “EHCI” y sus “amigos”, primero se tiene que saber que todas las placas madres para que soporten USB tiene que tener instalada una controladora USB. Este chipset en particular se encarga de interactuar con el dispositivo USB que se introduce en el equipo y se preocupa de todos los pequeños detalles necesarios para que el dispositivo USB se pueda comunicar con el resto del equipo.

Los drivers USB de Linux tienen tres opciones de controladores USB diferentes porque hay tres tipos de chips USB en una placa base y una tarjeta PCI. El driver “EHCI” está diseñado para dar soporte a los chips que implementan el nuevo protocolo de alta velocidad USB 2.0. El driver “OHCI” está diseñado para dar soporte USB en máquinas no PC, así como en placas base de PC SIS y Ali. El driver “UHCI” está diseñado para soportar el resto controladoras USB que se pueden encontrar en casi todo el resto de placas base de PC, incluidas Intel y Via. Simplemente tienes que seleccionar el driver “?HCI” que quieres activar. Si quieres puedes activar “ECHI” y “UHCI” (pueden trabajar juntas) y desactivar “OHCI” para estar seguro.

Los últimos pasos

Una vez que se ha activado “USB support” y el controlador apropiado hay muy pocas cosas más que hacer para introducir un USB y que funcione. Se tiene que activar “Preliminary USB device file system” y estar seguro de que se activa cualquier driver especifico de dispositivo USB que se vaya a usar con el sistema GNU/Linux. Por ejemplo, para activar un dispositivo de juegos se activa “USB Human interface Device (full HID) support”. Y también se activa “Input core support” y “joystick support” dentro de la sección “Input core support”.

Montando usbdevfs

Una vez que se reinicie el nuevo núcleo con soporte USB, se debe de montar el fichero de dispositivo USB en /proc/bus/usb tecleando el siguiente comando:

# mount -t usbdevfs none /proc/bus/usb

Si se quiere que el sistema de ficheros de dispositivos USB funcione automáticamente cuando el equipo arranque, se añade la siguiente linea a /etc/fstab antes de la linea de /proc:

none /proc/bus/usb usbdevfs defaults 0 0

Este paso es innecesario en muchas distribuciones, ya que detectan automáticamente si usbdevfs está activo en el núcleo y monta automáticamente usbdevs si es posible.

Todos los dispositivos USB se montarán en el sistema de archivos /proc/bus/usb y puede usarse con la aplicación adecuada..

Cada dispositivo se “verá” como un fichero, por ejemplo:

/proc/bus/usb/001/005

Para asegurarse de que el driver apropiado se cargo para el dispositivo USB se puede usar el comando usbmodules:

#usbmodules [opciones]

Por ejemplo:

#usbmodules --device /proc/bus/usb/001/001

#usbmodules --device /proc/bus/usb/001/005 –mapfile /etc/hotplug/usb.handman

Los módulos por defecto que se cargan están en /lib/modules/<kernel-version>/modules.usbmap.

Todos los drivers se guardan en el directorio /lib/modules/<kernel-version>/kernel/drivers/usb/

HOTPLUG

El paquete hotplug ayuda en la administración de dispositivos conectados “en caliente”. Por ejemplo añadiendo un nuevo elemento al sistema (camara digital) o bien quitando hardware ya existente, hotplug se encargará de hacer que ese dispositivo esté disponible para el sistema.

El directorio donde se almacenan las configuraciones es /etc/hotplug

/etc/hotplug/*.rc -> Detección de elementos en frio, es decir que ya están conectados en el momento del arranque del sistema.

/etc/hotplug/*.agent -> Estos archivos son los encargados de cargar los módulos del nucleo correspondiente y llamar a los parámetros proporcionados por el usuario en caso de haberlos.

Bibliografia y enlaces recomendados

LPIC 1 Certification Bible (Bible) by Angie Nash, Jason Nash

John Wiley & Sons; Bk&CD-Rom edition (July 1, 2001) ISBN: 0764547720
LPI Linux Certification in a Nutshell by Jeffrey Dean
O'Reilly & Associates; 1st ed edition (May 15, 2001) ISBN: 1565927486
CramSession's LPI General Linux Part 1 : Certification Study Guide
CramSession.com; ISBN: B000079Y0V; (August 17, 2000)

Referencias Unix Reviews

http://www.unixreview.com/documents/s=7459/uni1038932969999/

Página LPI: www.lpi.org

Apuntes IBM: http://www-106.ibm.com/developerworks/edu/l-dw-linux-lpir21-i.html

Manuales GPL: http://www.nongnu.org/lpi-manuals/

Tema 101 Arquitectura y Hardware

Página 2 de 30

Tema 101 LPI

2004-07-21T14:39:00