4.1 Dispositivos y
Manejadores de dispositivos: device drivers
Dispositivos E/S:
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.
Los principales
dispositivos 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.
4.2 Mecanismos y funciones de los manejadores de
dispositivos: device drivers.
- El controlador es el componente más importante desde el punto de vista del sistema operativo, ya que constituye la interfaz del dispositivo con el bus de la computadora y es el componente que se ve desde la CPU.
- El Sistema Operativo generalmente trabaja con el controlador y no con el dispositivo
E/S programada: El procesador emite una orden de E/S de parte de un proceso a un modulo de E/S; el proceso espera entonces a que termine la operación, antes de seguir.
4.3 Estructuras de datos para manejo de dispositivos.
Una Estructura de Datos es una forma
de organizar un conjunto de datos elementales con el objetivo de facilitar su
manipulación.
Un dato elemental es la mínima información que se
tiene en un sistema.
Los procesos de usuario emiten peticiones de entrada/salida
al sistema operativo. Cuando un proceso solicita una operación de E/S, el
sistema operativo prepara dicha operación y bloquea al proceso hasta que se
recibe una interrupción del controlador del dispositivo indicando que la
operación está completa. Las peticiones se procesan de forma estructurada en
las siguientes capas:
MANEJADORES DE INTERRUPCIÓN
Después de dar servicio a un dispositivo ejecutando su
rutina de servicio de interrupción (RSI) asociada, el procesador reanuda la
actividad desde el punto de la interrupción.
Las interrupciones deben ocultarse en lo más profundo
de las entrañas del S.O. La forma de esconderlo es que cada proceso que inicie
una operación de E/S ser bloquea hasta que termine la E/S y ocurra la
interrupción . El proceso se puede bloquear asi mismo mediante un DOWN en un
semáforo, un WAIT en una variable de condición o un PECEIVE en un mensaje.
4.4
Operaciones de Entrada /salida
Tanto en la E/S programada como la basada en
interrupciones, la UCP debe encargarse de la transferencia de datos una vez que
sabe que hay datos disponibles en el controlador.
Una mejora importante para incrementar la concurrencia
entre la UCP y la E/S consiste en que el controlador del dispositivo se pueda
encargar de efectuar la transferencia de datos, liberando de este trabajo a la
UCP, e interrumpir a la UCP sólo cuando haya terminado la operación completa de
E/S. Esta técnica se denomina acceso directo a memoria (DMA, Direct
Memory Access).
Cuando se
utiliza acceso directo a memoria, es el controlador el que se encarga
directamente de transferir los datos entre el periférico y la memoria
principal. Esta técnica funciona de la siguiente manera: cuando el procesador
desea que se imprima un bloque de datos, envía una orden al controlador
indicándole la siguiente información:
Tipo de operación: lectura o escritura.
•
Periférico
involucrado en la operación.
•
La dirección de memoria desde la que se va a leer o a la que va a escribir
directamente con el controlador de dispositivo (dirección).
•
El número de bytes a transferir (contador).
Existen
varias operaciones, las más importantes son las siguientes:
Lectura: el
canal transfiere a memoria principal un bloque de palabras de tamaño
especificado en el campo nº de palabras, en orden ascendente de direcciones,
empezando en la dirección especificada en el campo dirección del dato.
Escritura: el
canal transfiere datos de memoria principal al dispositivo. Las palabras se
transfieren en el mismo orden que en la operación de lectura.
Control: se utiliza
esta orden para enviar instrucciones específicas al dispositivo de E/S, como
rebobinar una cinta magnética, etc.
Bifurcación: cumple
en el programa de canal la misma función que una instrucción de salto en un
programa normal. El canal ejecuta las CCW en secuencia, salvo cuando aparece
una CCW de este tipo, que utiliza el campo dirección del dato como la dirección
de la siguiente CCW a ejecutar.
La unidad
de Entrada/Salida (E/S) soporta estas funciones, realizando las
comunicaciones del computador (memoria) con el mundo exterior (periféricos).
Los dispositivos periféricos que se pueden conectar a un computador se suelen
clasificar en cuatro grandes grupos:
Dispositivos
de presentación de datos. Son dispositivos con los que interactúan los
usuarios, portando datos entre éstos y la máquina, por ejemplo, ratón, teclado,
pantalla, impresora, etc.
Dispositivos
de almacenamiento de datos. Son dispositivos que forman parte de la jerarquía
de memoria del computador. Interactúan de forma autónoma con la máquina, aunque
también sirven para el intercambio de datos con el usuario, por ejemplo, los
discos magnéticos.
Dispositivos
de comunicación con otros procesadores. Permiten la comunicación con
procesadores remotos a través de redes, por ejemplo, las redes de área local o
global.
Dispositivos
de adquisición de datos. Permiten la comunicación con sensores y actuadores que
operan de forma autónoma en el entorno del computador. Se utilizan en sistemas
de control automático de procesos.
No hay comentarios:
Publicar un comentario