Está en la página 1de 7

UNIDAD IV.

ADMINISTRACION DE ENTRADA /SALIDA

Una de las principales funciones de un sistema operativo es controlar todos los dispositivos de E/S
(entrada/salida) del computador. Debe enviar los comandos a los dispositivos, atrapar interrupciones y
manejar errores. También debe proporcionar una interfaz sencilla y fácil de usar entre los dispositivos y
el resto del sistema. En la medida de lo posible, la interfaz deberá ser la misma para todos los
dispositivos (independiente del dispositivo.

En computación, entrada/salida, también abreviado E/S o I/O (del original en inglés input/output), es la
colección de interfaces que usan las distintas unidades funcionales (subsistemas) de un sistema de
procesamiento de información para comunicarse unas con otras, o las señales (información) enviadas a
través de esas interfaces.

Las entradas son las señales recibidas por la unidad, mientras que las salidas son las señales enviadas
por ésta. El término puede ser usado para describir una acción; "realizar una entrada/salida" se refiere a
ejecutar una operación de entrada o de salida.

4.1. DISPOSITIVOS Y MANEJADORES DE DISPOSITIVOS. (Device Drivers).

El sistema de E/S es la parte del sistema operativo que se ocupa de facilitar el manejo de los dispositivos
de E/S ofreciendo una visión lógica simplificada de los mismos que pueda ser usada por otros
componentes del sistema operativo (como el sistema de archivos) o incluso por el usuario.

Todo el código que depende de los dispositivos aparece en los manejadores de dispositivos.

Cada controlador posee uno o más registros de dispositivos:

 Facilitar el manejo de los dispositivos de E/S.


 Optimizar la E/S del sistema, proporcionando mecanismos de incremento de prestaciones
donde sea necesario.
  Proporcionar dispositivos virtuales que permitan conectar cualquier tipo de dispositivo físico
  Permitir la conexión de dispositivos nuevos de E/S, solventando de forma automática su
instalación
 Conexión de un dispositivo de E/S a una computadora
 Periféricos o dispositivos de E/S. Elementos que se conectan a la unidad central de proceso a
través de las unidades de entrada/salida.
 Controladores de dispositivos o unidades de E/S. Se encargan de hacer la transferencia de
información entre la memoria principal y los periféricos. 

DISPOSITIVOS DE 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:

1. Dispositivos de bloques:
Dispositivos que almacenan la información en bloques de tamaño fijo (discos)

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.

2. 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 CARACTERES 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.
 Unos ejemplos típicos 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 CPU. 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.

CONTROLADORES DE DISPOSITIVOS:

Un controlador (instaladores) de dispositivos, normalmente llamado controlador en inglés (device


driver) es un programa 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.

4.2. MECANISMOS Y FUNCIONES DE LOS MANEJADORES DE DISPOSITIVOS

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.

TECNICAS DE E/S

 E/S programada: El procesador emite una orden de E/S de parte de un proceso a un módulo de
E/S; el proceso espera entonces a que termine la operación, antes de seguir.

 E/S dirigida por interrupciones: El procesador emite una orden de E/S de parte de un proceso,
continua la ejecución de las instrucciones siguientes y el módulo de E/S lo interrumpe cuan do
completa su trabajo. Las instrucciones siguientes pueden ser del mismo proceso, si no es
necesario para este esperar la terminación de E/S. en otro caso, el proceso se suspende a la
espera de la interrupción, mientras se realiza otro trabajo.

 Acceso Directo a la Memoria (DMA): un módulo de DMA controla el intercambio de datos entre
la memoria principal y un módulo de E/S. El procesador envía una petición de transferencia de
un bloque de datos al módulo DMA y se interrumpe solo cuando se ha transferido el bloque
entero.

El controlador al ser una parte crítica del sistema operativo, el fallo de un controlador puede ser más
grave que otros errores de software, pudiendo bloquear el ordenador o incluso dañar el hardware.
Debido a que el hardware es (necesariamente) indeterminista, encontrar y solucionar un fallo en un
controlador es una tarea complicada ya que no sólo hay que monitorizar el programa, sino también el
propio dispositivo.

A medida que han evolucionado los sistemas informáticos, se ha producido tendencia crecientes en la
complejidad y sofisticación de cada componente individual. En ninguno de los puntos es más evidente
que en la función de E/S. la etapa de su evolución puede resumirse como lo siguiente:

1.- El procesador controla directamente los dispositivos periféricos.

2.- Se añade un controlador o módulo de E/S. El procesador utiliza E/S programada sin
interrupciones.

3.- Se añade un controlador o modulo. Pero empleándose interrupciones.

4.- El módulo de E/S recibe el control directo de la memoria, a través de DMA, Ahora puede
mover un bloque de datos a la memoria o desde la misma sin que intervenga el procesador.

5.- se mejora el módulo de E/S hasta llegar a ser un procesador separado con un conjunto de
instrucciones especializadas para E/S.

6.- El módulo de E/S posee su propia memoria local y es, de hecho un computador
independiente.

FUNCIONES DE LOS MANEJADORES DE DISPOSITIVOS

Funciones generalmente realizadas por el software independiente del dispositivo:

 Interfaz uniforme para los manejadores de dispositivos.


 Nombres de los dispositivos.
 Protección del dispositivo.
 Proporcionar un tamaño de bloque independiente del dispositivo.
 Uso de buffer.
 Asignación de espacio en los dispositivos por bloques.
 Asignación y liberación de los dispositivos de uso exclusivo.
 Informe de errores.

Las funciones básicas del software independiente del dispositivo son:

 Efectuar las funciones de e / s comunes a todos los dispositivos.


 Proporcionar una interfaz uniforme del software a nivel usuario.

4.3. ESTRUCTURA DE DATOS PARA EL MANEJO DE DISPOSITIVOS.

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

 Software de E/S es independiente de los dispositivos. Este software está formado por la parte de alto
nivel de los manejadores, el gestor de cache, el gestor de bloques y el servidor de archivos.
 Interfaz del sistema operativo. Llamadas al sistema que usan las aplicaciones de usuario.

Se encargan de tratar las interrupciones que generan los controla dores de dispositivos una vez que
éstos están listos para la transferencia de datos o bien han leído o escrito los datos de memoria principal
en caso de acceso directo a memoria. Para tratar dicha interrupción se ejecuta el correspondiente
manejador de interrupción cuyo efecto es el de salvar los registros, comunicar el evento al manejador
del dispositivo y restaurar la ejecución de un proceso (que no tiene por qué ser el interrumpido).

Es decir, es una subrutina callback en un sistema operativo o en un controlador de dispositivo cuya


ejecución es desencadenada por la recepción de una interrupción. Los manejadores de instrucciones
tienen una multitud de funciones, que varían basadas en el motivo por el cual la interrupción fue
generada y la velocidad en la cual el manejador de interrupciones completa su tarea.

Estos manejadores pueden ser iniciados por interrupciones de hardware o de software, y son usados
para servir a los dispositivos de hardware y transiciones entre modos protegidos de operación como los
llamados de sistema.
MANEJADORES DE DISPOSITIVOS

 Contiene el código dependiente del dispositivo.


 Cada manejador contiene sus colas.

4.4 OPERACIONES DE ENTRADA / SALIDA

Funciones que realizan los dispositivos de


entrada / salida

 Direccionamiento o selección del dispositivo que debe llevar a cabo la operación de E/S.
 Transferencia de los datos entre el procesador y el dispositivo (en uno u otro sentido).
 Sincronización y coordinación de las operaciones.

Esta última función es necesaria debido a la deferencia de velocidades entre los dispositivos y la CPU y a
la independencia que debe existir entre los periféricos y la CPU.

Se define una transferencia elemental de información como la transmisión de una sola unidad de
información (normalmente un byte) entre el procesador y el periférico o viceversa.

Para efectuar una transferencia elemental de información son precisas las siguientes funciones:

 Establecimiento de una comunicación física entre el procesador y el periférico para la


transmisión de la unidad de información.
 Control de los periféricos, en que se incluyen operaciones como prueba y modificación del
estado del periférico. Para realizar estas funciones la CPU gestionara las líneas de control
necesarias.

Se define una operación de E/S como el conjunto de acciones necesarias para la transferencia de un
conjunto de datos (es decir, una transferencia completa de datos). 

Para la realización de una operación de E/S se deben efectuar las siguientes funciones:

 Recuento de las unidades de información transferidas (normalmente bytes) para reconocer el


fin de operación.
 Sincronización de velocidad entre la CPU y el periférico.
 Detección de errores (e incluso corrección) mediante la utilización de los códigos necesarios
(bits de paridad, códigos de redundancia cíclica, etc.)
 Almacenamiento temporal de la información. Es más eficiente utilizar un buffer temporal
específico para las operaciones de E/S que utilizan el área de datos del programa.
 Conversión de códigos, conversión serie/paralelo, etc.

También podría gustarte