Se
denomina periféricos a los aparatos o dispositivos auxiliares e
independientes conectados a la unidad central de procesamiento de
una computadora.
Se consideran periféricos
tanto a las unidades o dispositivos a través de los cuales
la computadora se comunica con el mundo exterior, como a los sistemas
que almacenan o archivan la información, sirviendo de memoria auxiliar de
la memoria principal.
Se pueden clasificar en dos
grandes categorías:
- Dispositivos
de bloques: dispositivos
que almacenan la información en bloques de tamaño fijo (discos)
- Dispositivos
de caracteres: maneja
la información mediante un flujo de caracteres sin estructurarlos en
bloques (mouse, teclado, impresora)
Las principales
características de los dispositivos
de bloque son:
- La información se almacena en bloques de
tamaño fijo.
- Cada bloque tiene su propia dirección.
- Los tamaños más comunes de los bloques
van desde los 128 bytes hasta los 1.024 bytes.
- Se puede leer o escribir en un bloque de
forma independiente de los demás, en cualquier momento.
- Un ejemplo típico de dispositivos de
bloque son los discos.
Las principales características
de los dispositivos de carácter son:
- La información se transfiere como un
flujo de caracteres, sin sujetarse a una estructura de bloques.
- No se pueden utilizar direcciones.
- No tienen una operación de búsqueda.
- Un ejemplo típico de dispositivos de
carácter son las impresoras de línea, terminales, interfaces de una red,
ratones, etc.
Todos los dispositivos de
E/S se pueden agrupar en tres grandes grupos:
- Dispositivos de interfaz de usuario. Se
llama así a los dispositivos que permiten la comunicación entre los
usuarios y la computadora. Dentro de este grupo se incluyen todos los
dispositivos que sirven para proporcionar interfaz con el usuario, tanto
para entrada (ratón, teclado, etc.) como para salida (impresoras, pantalla,
etc.). Existen periféricos menos habituales, pero más sofisticados, tales
como un escáner, lectores de huella digital, lectores de cinta magnética,
instrumentos musicales digitales (MIDI), etc.
- Dispositivos de almacenamiento. Se
usan para proporcionar almacenamiento no volátil de datos y memoria. Su
función primordial es abastecer de datos y almacenamiento a los programas
que se ejecutan en la UCP. Según su capacidad y la inmediatez con que se
puede acceder a los datos almacenados en estos dispositivos, se pueden
dividir en almacenamiento secundario (discos y disquetes) y terciario
(cintas).
- Dispositivos de comunicaciones. Permiten
conectar a la computadora con otras computadoras a través de una red. Los
dos tipos de dispositivos más importantes de esta clase son los módem,
para comunicación vía red telefónica, y las tarjetas de interfaz a la red,
para conectar la computadora a una red de área local.
En cualquier caso, y sea
como sea el controlador, su misión es convertir los datos del formato interno
del dispositivo a uno externo que se ofrezca a través de una interfaz de
programación bien definida. Los controladores de dispositivo se suelen agrupar
en alguna de las siguientes categorías o clases:
- Adaptadores de audio (tarjetas de
sonido).
- Dispositivos de comunicación
(infrarrojos, módems, etc).
- Dispositivos de visualización; pantallas
(displays).
- Teclados.
- Ratón (“mouse” y otros señaladores
gráficos).
- Dispositivos multimedia.
- Dispositivos de Red.
- Impresoras.
- Almacenamiento
Algunos
dispositivos de entrada y salida
- Entrada:
Ø Teclado
Ø Ratón
Ø Joystick
Ø Lápiz
óptico
Ø Micrófono
Ø Webcam
Ø Escáner
Ø Escáner
de código de barras
- Salida:
Ø Monitor
Ø Altavoz
Ø Auriculares
Ø Impresora
Ø Plotter
Ø Proyector
- Entrada/salida (mixtos):
Ø Unidades
de almacenamiento: CD, DVD, Blu-ray, Memory cards, Disco Duro Externo, Disco
duro, Pendrive USB.
Ø Módem
Ø Router
Ø Pantalla
táctil
Ø Tarjeta
de red
Controladores de dispositivos
Un
controlador (instaladores) de dispositivos, normalmente llamado
controlador en inglés (device driver) es un programa que informático que
permite al sistema operativo interactuar con un periférico, haciendo una
abstracción del hardware del dispositivo y proporcionando una interfaz -
posiblemente estandarizada - para usarlo. Se puede esquematizar como un
manual de instrucciones que se indica al sistema operativo, cómo
debe controlar y comunicarse con un dispositivo en particular. Por lo
tanto es una pieza esencial, sin el cual, no se podría usar el hardware.
Los controladores de dispositivos son programas añadidos al núcleo del sistema
para gestionar periféricos y dispositivos oficiales.
Existen
tantos tipos de controladores como tipos de periféricos y es común más de
un tipo de controlador posible para el mismo dispositivo, cada uno
ofreciendo un nivel distinto de funcionalidades. Por ejemplo, aparte
de los oficiales (normalmente disponibles en la página web del fabricante se
pueden encontrar también los proporcionados por el sistema operativo o
también versiones no oficiales hechas por terceros.
Las
unidades de e / s generalmente constan de:
- Un componente
mecánico.
- Un componente
electrónico, el controlador del dispositivo o adaptador.
Muchos
controladores pueden manejar más de un dispositivo. El S. O. generalmente
trabaja con el controlador y no con el dispositivo.
La interfaz entre el controlador
y el dispositivo es con frecuencia de muy bajo nivel:
- La comunicación es mediante un flujo de bits en serie que:
- Comienza con un preámbulo.
- Sigue con una serie de bits (de un
sector de disco, por ej.).
- Concluye con una suma para verificación
o un código corrector de errores.
- El preámbulo:
- Se escribe al dar formato al disco.
- Contiene el número de cilindro y
sector, el tamaño de sector y otros datos similares.
El controlador debe:
- Convertir el flujo de bits en serie en
un bloque de bytes.
- Efectuar cualquier corrección de errores
necesaria.
- Copiar el bloque en la memoria
principal.
Cada controlador posee
registros que utiliza para comunicarse con la CPU:
- Pueden ser parte del espacio normal de
direcciones de la memoria: e
/ s mapeada a memoria.
- Pueden utilizar un espacio de
direcciones especial para la e / s, asignando a cada controlador una parte
de él.
El
S. O. realiza la e/s al escribir comandos en los registros de los controladores;
los parámetros de los comandos también se cargan en los registros de los
controladores.
Al aceptar el comando, la CPU puede dejar al controlador y dedicarse a otro trabajo.
Al aceptar el comando, la CPU puede dejar al controlador y dedicarse a otro trabajo.
Al terminar el comando, el
controlador provoca una
interrupción para permitir que el S. O.:
- Obtenga el control de la CPU.
- Verifique los resultados de la
operación.
Manejadores
de dispositivos
Cada dispositivo de E/S, o
cada clase de dispositivos, tiene un manejador asociado en el sistema
operativo.
Dicho manejador incluye:
código independiente del dispositivo para proporcionar al nivel superior del
sistema operativo una interfaz de alto nivel y el código dependiente del
dispositivo necesario para programar el controlador del dispositivo a través de
sus registros y datos. La tarea de un manejador de dispositivo es aceptar
peticiones en formato abstracto, de la parte del código de E/S independiente
del dispositivo, traducir dichas peticiones a términos que entienda el
controlador, enviar al mismo las órdenes adecuadas en la secuencia correcta y
esperar a que se cumplan.
Todos los manejadores tienen
una lista de peticiones pendientes por dispositivo donde se encolan las
peticiones que llegan de niveles superiores.
·
El manejador explora la lista de peticiones,
extrae una petición pendiente y ordena su ejecución.
·
La política de extracción de peticiones de la
lista es dependiente de manejador y puede ser FIFO.
·
Una vez enviada la petición al controlador,
el manejador se bloquea o no, dependiendo de la velocidad del dispositivo. Para
los lentos (discos) se bloquea esperando una interrupción. Para los rápidos
(pantalla, discos RAM, etcétera) responde inmediatamente.
·
Después de recibir el fin de operación,
controla la existencia de errores y devuelve al nivel superior el estado de
terminación de la operación. Si tiene operaciones pendientes en la cola de
peticiones, atiende a la siguiente, en caso de que le toque ejecutar después de
la operación de E/S. En caso contrario se bloquea.
Cada controlador posee uno
o más registros de dispositivos:
- Se utilizan para darle los comandos.
- Los manejadores de dispositivos proveen estos comandos y verifican su ejecución adecuada.
La labor de un manejador
de dispositivos es la de:
- Aceptar las solicitudes abstractas que le hace el software independiente del dispositivo.
- Verificar la ejecución de dichas solicitudes.
Si al recibir una
solicitud el manejador está ocupado con otra solicitud, agregara la nueva
solicitud a una cola de solicitudes pendientes.
La solicitud de e / s, por ej. Para un disco, se debe traducir de términos abstractos a términos concretos:
La solicitud de e / s, por ej. Para un disco, se debe traducir de términos abstractos a términos concretos:
·
Estimar
el lugar donde se encuentra en realidad el bloque solicitado.
·
Verificar
si el motor de la unidad funciona.
·
Verificar
si el brazo está colocado en el cilindro adecuado, etc.
·
Resumiendo: debe decidir cuáles son las operaciones
necesarias del controlador y su orden.
·
Envía
los comandos al controlador al escribir en los registros de dispositivo del
mismo.
·
Frecuentemente
el manejador del dispositivo se bloquea hasta que el controlador realiza cierto
trabajo; una interrupción lo libera de este bloqueo.
·
Al
finalizar la operación debe verificar los errores.
·
Si
todo está bien transferirá los datos al software independiente del dispositivo.
·
Regresa
información de estado sobre los errores a quien lo llamo.
·
Inicia
otra solicitud pendiente o queda en espera.
No hay comentarios.:
Publicar un comentario