Capítulo 5. Controladores, puertos e interrupciones

Instalación y Mantenimiento de Servicios de Internet

I.E.S. Murgi

Curso 2006-2007

Jose L. Berenguel Gómez

Índice

¿Qué son los controladores, puertos e interrupciones?

Un poco de historia.

Los dispositivos periféricos.

Tipos de periféricos.

Estructura de los dispositivos periféricos.

Interfaces de usuarios.

Los puertos

Índice

Las interrupciones.

Plug-and-play.

La tarjeta de red.

Procesos de arranque.

Proceso Init en Debian GNU/Linux

Carga del registro del sistema de Windows

Herramientas de control.

Syslog en Debian GNU/Linux.

Visor de sucesos en Windows.

1. ¿Qué son los controladores, puertos e interrupciones?

Para que los dispositivos periféricos funcionen en el sistema, se requiere una serie de componentes capaces de poner de acuerdo al periférico y al ordenador.

Se conectan en zonas específicas para que cuando intervengan o requieran la atención del procesador, éste sepa qué periférico a realizado dicha petición.

Estos componentes son, entre otros: controladores, puertos de entrada/salida y las interrupciones.

2. Un poco de historia

1981. IBM lanza el PC

CPU Intel 8088 a 4,77 Mhz

Controladora de video e impresora.

Cinta de casette para el almacenamiento.

En la siguiente versión se sustituyó la cinta de caste por un disco flexible de 160 kb.

IBM propició que otras empresas fabricasen tarjetas de expansión para los PC

1983. Se presenta el IBM PC XT: disco duro 10 MB, controladora, tarjeta de video, ...

2. Un poco de historia

1984. Surge el BUS AT. Este se conviertió en uno de los estandares más utilizados en los últimos años: el BUS ISA. Los AT poseían:

CPU Intel 80286 hasta 20 Mhz

RAM

Controladora de vídeo gráfico

Comunicaciones RS-232-C (serie)

Varias controladoras: impresora, disquetera, discos

Ranuras o slots para ampliaciones.

2. Un poco de historia

1992. Aparece el bus local VESA, que permitía la conexión directa de dispositivos a la CPU.

1993. Aparece el BUS PCI (Peripheral Component Interconnect, Interconexión de Componentes Periféricos).

Aparecen otros tipos de buses como el USB (Universal Serie Bus), y tecnologías sin cables como AirPort, Bluetooth, IrDa, etc.

3. Los dispositivos periféricos

Son los dispositivos físicos de un ordenador que potencian la capacidad de este y permiten la entrada y salida de datos.

De entrada: aportan datos al ordenador

De salida: aportan los datos procesados por la CPU.

De entrada/salida: realizan ambas funciones.

A) Tipos de periféricos

Se pueden clasificar de acuerdo a diferentes criterios.

3. Los dispositivos periféricos

A) Tipos de periféricos

Según el tipo de información que manejan:

Modo bloque: manejan información con tamaño predefinido y fijo (tarjetas de red)

Modo carácter: manejan datos por caracteres, sin un tamaño predefinido (módem).

Según su función:

Interfaces: permite la comunicación entre el usuario y el ordenador

Soporte de almacenamiento: contiene información.

Componentes de transmisión o comunicación: permite la comunicación con dispositivos remotos

3. Los dispositivos periféricos

B) Estructura de los dispositivos periféricos

El S.O. es el responsable de enviar órdenes, determinar que dispositivo debe actuar, controlar errores, ...gestionado todo de forma optimizada.

La comunicación no es púramente digital, ya que los periféricos son mecanismos físicos.

La instalación de un periférico requiere de la conexión a la placa base del ordenador para que exista la comunicación física entre ambos.

Esta misión la realizan las controladoras.

3. Los dispositivos periféricos

B) Estructura de los dispositivos periféricos

Para comunicarse con el ordenador, requieren de una parte software, llamada controlador o driver.

Los driver son suministrados por los fabricantes.

Para GNU/Linux estos drivers eran desarrollados por personas de manera independiente.

Podemos obtener una lista de dispositivos compatibles con linux en: http://www.compatiblelinux.org

4. Interfaces de usuarios

Las interfaces destinadas al usuario final son medios de interacción y comunicación entre el software y el hardware, a través del S.O.

Proporcionan un entorno amigable y sencillez de uso.

Desde el punto de vista del usuario, pueden ser:

Texto: Las órdenes y las respuestas se visualizan como cadenas de caracteres (DOS, GNU/Linux)

Gráficas: La información se muestra en bloques o pantallas, llamadas ventanas (Mac OS, Windows, Gnome o KDE).

5. Los puertos

Los periféricos se conectan al ordenador mediante puertos de entrada/salida.

Los ordenadores suelen incluir los siguientes:

Dos puertos PS/2 normalmente para ratón y teclado

Un puerto serie

Un puerto paralelo

Dos o más puerstos USB.

También son usuales ya: puerto de vídeo, juegos, conectores para altavoces y micrófono, conector de red y modem, o puerto FireWire.

6. Las interrupciones

Cuando un dispositivo necesita procesar información, o el ordenador requiere el servicio de un dispositivo se genera una petición denominada petición de interrupción (IRQ o Interrupt Request).

Las interrupciones son el mecanismo por el cual los dispositivos de E/S piden la intervención de la CPU.

6. Las interrupciones

Se atienden por orden de prioridad:

Excepciones del procesador.

Interrupciones software (trap).

Interrupciones hardware no enmascarables.

Instrucciones hardware enmascarables.

Los dispositivos periféricos utilizan las interrupciones hardware.

6. Las interrupciones

A) Funcionamiento

La interrupción se origina con la petición de algún dispositivo.

Se ejecuta una función para dar servicio a esa interrupción (ISR o Interrupt Service Routine).

La ubicación de estas rutinas está apuntada desde el vector de interrupción, que se carga durante el inicio del sistema en una tabla de 1024 bytes (256 vectores de 4 bytes).

6. Las interrupciones

A) Funcionamiento

El modelo presentado por Intel en el 8088 reservaba los 5 primeros vectores para uso interno del procesador (excepciones). Los 27 siguientes para uso reservado (sin especificar).

Existen tres elementos que hacen posible la llegada de una interrupción a la CPU:

Líneas específicas o IRQ en el bus de control.

Controlador de interrupciones PIC.

Patillas del procesador dedicadas a las interrupciones.

6. Las interrupciones

A) Funcionamiento

Las interrupciones hardware siguen un orden:

El periférico modifica el nivel de su línea IRQ

La señal es recogida por el PIC que la clasifica y envia otra señal a una de las patillas del procesador.

El procesador recoge la petición y pregunta por el tipo de interrupción.

El PIC asigna un número de servicio que coloca en el bus de datos, llegando al punto inicial del proceso.

Se puede paralizar una interrupción por otra de mayor prioridad.

6. Las interrupciones

B) Líneas de petición de interrupción

Existe líneas específicas en el bus de control para las interrupciones.

Desde el modelo PC AT se utilizan 16 líneas (IRQx) repartidas entre 2 PIC unidos en cascada.

No todas poseen contacto con el bus ya que son asignadas de forma fija (NMI, teclado, temp.)

La instalación de un dispositivo conlleva la asignación de una IRQ. Esto se hacía manualmente, actualmente por software (PnP).

7. Plug-and-Play

Plug-and-play (PnP) significa “enchufar y listo”.

Permite que las tarjetas de expansión se configuren automáticamente.

PnP necesita de los siguientes elementos:

Dispositivos PnP: Se identifican así mismo así como sus necesidades de recursos en el sistema.

BIOS PnP: Inicializa los dispositivos anteriores en el arranque.

Sistema Operativo PnP: Contínua el proceso iniciado por la BIOS. Identifica los dispositivos y recoge las necesidades de recursos de los mismos.

8. La tarjeta de red

La tarjeta de red, adapatador o NIC (Network Interface Card) es el interfaz físico entre el sistema informático y el medio físico de transmisión de la señal a la red.

Puede ser una tarjeta separada, independiente del sistema, pero ya es habitual que las placas base la incorporen

Un equipo puede tener varias tarjetas de red.

La tarjeta se conecta al equipo a través del slot correspondiente.

8. La tarjeta de red

Los más utilizados son PCI, PCMCIA y USB.

Es conveniente asegurarse de la disponibilidad y fiabilidad de drivers para el S.O. utilizado.

Calidad y disposición del servicio técnico.

Tipo de interfaz de conexión al medio.

Configuración de la tarjeta

Se utiliza tecnología PnP de modo que el sistema configura todos los parámetros necesarios.

9. Procesos de arranque

El bootloader, o cargador de inicio es el responsable de seguir arrancando la máquina después de que la BIOS haya iniciado el proceso.

Es propio de un S.O: NtLoader de Windows, LILO (LInux LOader) o GRUB (GRand Unified Bootloader) de GNU/Linux.

Puede haber varios gestores de arranque en el sistema, esto permite que halla diferentes sistemas operativos instalados en la misma máquina.

El paso siguiente es la detección del hardware, la carga de los drivers y el arranque de los servicios.

9. Procesos de arranque

A) Proceso Init en Debian GNU/Linux

Init es el proceso responsable del arranque del resto de procesos en GNU/Linux.

Lo hace según el fichero /etc/inittab

Se indica el runlevel por defecto.

Para observar todos los procesos que se están ejecutando en un momento determinado es posible utilizar el comando ps.

Para observar una evolución en tiempo real: top

9. Procesos de arranque

B) Carga del registro del sistema de Windows.

Arranca con el fichero NTDETECT.COM

NTOSKRNL.EXE detecta el hardware.

Se muestra la elección del perfil de hardware.

Arranca el núcleo del SO (NTOSKRNL.EXE)

NtLoader recibe la información del hardware para cargar la capa de abstracción de los dispositivos, la clave de registro y los drivers.

Procesos de inicio: Inicio/ejecutar/msconfig/pestaña inicio

10. Herramientas de control

Para resolver situaciones de error, es necesario disponer de información que detalle donde y cuando ocurre el error.

Cada S.O. implementa un sistema propio de informes.

A) Syslog en Debian GNU/Linux

Syslog: sistema de información de eventos.

El registro se guarda en una serie de archivos.

Se puede configurar syslogd para que envíe los eventos a un servidor central.

10. Herramientas de control

A) Syslog en Debian GNU/Linux

Las entradas proporcionan: fecha, hora, nombre de la máquina y programa que genera el evento.

Archivo de configuración: /etc/syslog.conf

Se pueden usar comodines en el archivo: kern.* -/var/log/kern.log

Informes por defecto en /var/log

Para leer los informes debemos pertenecer al grupo de usuarios adm.

10. Herramientas de control

B) Visor de sucesos en Windows

Herramienta gráfica de Widows para gestionar incidencias.

Tipos de registros: de aplicación, de seguridad y del sistema.

Para abrir el visor de sucesos en Windows XP: Inicio/Configuracion/Panel de Control/Herramientas Administrativas/

2006-09-27T10:04:54