You are on page 1of 17

ADMINISTRACIN

DE
ENTRADA/SALIDA
Administracin de Entrada y 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. Tambin debe proporcionar una interfaz sencilla y fcil 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). El cdigo de E/S
representa una fraccin importante del sistema operativo total. La forma en que administra la
E/S es el tema que nos enfocaremos.
En computacin, entrada/salida, tambin abreviado E/S o I/O (del original en ingls
input/output), es la coleccin de interfaces que usan las distintas unidades funcionales
(subsistemas) de un sistema de procesamiento de informacin para comunicarse unas con otras,
o las seales (informacin) enviadas a travs de esas interfaces.
Se define una transferencia elemental de informacin como la transmisin de una sola
unidad de informacin (normalmente un byte) entre el procesador y el perifrico o viceversa.
Para efectuar una transferencia elemental de informacin son precisas las siguientes funciones:
Establecimiento de una comunicacin fsica entre el procesador y el perifrico para la
transmisin de la unidad de informacin.
Control de los perifricos, en que se incluyen operaciones como prueba y modificacin del
estado del perifrico.
Se pueden clasificar en dos grandes categoras:
1. Dispositivos de bloque.
2. Dispositivos de carcter
Administracin de Entrada y Salida
Las principales caractersticas de los dispositivos de bloque son:
- La informacin se almacena en bloques de tamao fijo.
- Cada bloque tiene su propia direccin.
- Los tamaos ms 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 dems, en cualquier
momento.
- Un ejemplo tpico de dispositivos de bloque son los discos.
Las principales caractersticas de los dispositivos de carcter son:
-La informacin se transfiere como un flujo de caracteres, sin sujetarse a una estructura de bloques.
- No se pueden utilizar direcciones.
- No tienen una operacin de bsqueda.
- Unos ejemplos son las impresoras de lnea, terminales, interfaces de una red, ratones, etc.
Administracin de Entrada y Salida
Todo el cdigo que depende de los dispositivos aparece en los manejadores de dispositivos.
Manejadores de Dispositivos
Cada controlador posee uno o ms registros de dispositivos:
Se utilizan para darle los comandos.
Los manejadores de dispositivos proveen estos comandos y verifican su ejecucin 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 ejecucin de dichas solicitudes.
Si al recibir una solicitud el manejador esta ocupado con otra solicitud, agregara la nueva solicitud a
una cola de solicitudes pendientes.
Manejadores de Dispositivos
La solicitud de e / s, por ej. para un disco, se debe traducir de trminos abstractos a trminos concretos:
El manejador de disco debe:
Estimar el lugar donde se encuentra en realidad el bloque solicitado.
Verificar si el motor de la unidad funciona.
Verificar si el brazo esta colocado en el cilindro adecuado, etc.
Resumiendo: debe decidir cuales son las operaciones necesarias del controlador y su
orden.
Enva 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 interrupcin lo libera de este bloqueo.
Manejadores de Dispositivos
Al finalizar la operacin debe
verificar los errores.
Si todo esta o.k. transferir los
datos al software independiente
del dispositivo.
Regresa informacin de estado
sobre los errores a quien lo
llamo.
Inicia otra solicitud pendiente o
queda en espera.
Manejadores de Dispositivos
Funciones generalmente realizadas por el software independiente del dispositivo:
Interfaz uniforme para los manejadores de dispositivos.
Nombres de los dispositivos.
Proteccin del dispositivo.
Proporcionar un tamao de bloque independiente del dispositivo.
Uso de buffer.
Asignacin de espacio en los dispositivos por bloques.
Asignacin y liberacin de los dispositivos de uso exclusivo.
Informe de errores.
Funciones de los Manejadores de Dispositivos
Las funciones bsicas 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.
El software independiente del dispositivo asocia los nombres simblicos de los dispositivos
con el nombre adecuado.
Un nombre de dispositivo determina de manera nica el nodo-i de un archivo especial:
Este nodo-i contiene el nmero principal del dispositivo, que se utiliza para localizar el manejador
apropiado.
El nodo-i contiene tambin el nmero secundario de dispositivo, que se transfiere como
parmetro al manejador para determinar la unidad por leer o escribir.
Funciones de los Manejadores de Dispositivos
El software independiente del dispositivo debe:
Ocultar a los niveles superiores los diferentes
tamaos de sector de los distintos discos.
Proporcionar un tamao uniforme de los
bloques, por ej.: considerar varios sectores fsicos
como un solo bloque lgico.
Funciones de los Manejadores de Dispositivos
Qu es una estructura?
Los sistemas operativos actuales son grandes y complejos, estos deben poseer una ingeniera
correcta para su fcil actualizacin y para que puedan cumplir su funcin correctamente. La
estructura es generalmente modular, cada modulo cumple una funcin determinada e
interacta con los dems mdulos.
Estructura simple
El sistema MS-DOS es, sin duda, el mejor sistema operativo para micro-computadoras.
Sin embargo, sus interfaces y niveles de funcionalidad no estn bien definidos. Los programas
de aplicacin pueden acceder a operaciones bsicas de entrada / salida para escribir
directamente en pantalla o discos. Este libre acceso, hace que el sistema sea vulnerable, ya que
un programa de aplicacin puede eliminar por completo un disco rgido por alguna falla.
Estructura de datos para Manejo de Dispositivos
Adems este sistema, tambin esta limitado al hardware sobre el que corre.
Otra estructura simple es la utilizada por la versin original de UNIX, esta consiste de dos
partes separadas, el kernel y los programas de sistemas . El kernel fue posteriormente
separado en manejadores (drivers) de dispositivos y una serie de interfaces. El kernel provee el
sistema de archivos, la programacin de CPU, el administrador de memoria y otras funciones
del sistema operativo que responden a las llamadas del sistema enunciadas anteriormente.
Estructura por capas (layers)
Las nuevas versiones de UNIX se disearon para hardware mas avanzado. Para dar mayor
soporte al hardware, los sistemas operativos se dividieron en pequeas partes. Ahora los
sistemas operativos tienen mayor control sobre el hardware y las aplicaciones que se ejecutan
sobre este.
Estructura de datos para Manejo de Dispositivos
La modularizacin de un sistema se puede presentar de varias formas, la mas utilizada es
la de capas, la cual consiste en dividir al sistema operativo en un numero de capas. La capa de
menor nivel es el hardware y la de mayor nivel es la interfaz con el usuario.
La principal ventaja es que cada capa cumple con una serie de funciones y servicios que
brinda a las otras capas, esto permite una mejor organizacin del sistema operativo y una
depuracin mas fcil de este.
Cada capa se implementa solo utilizando las operaciones provistas por la capa de nivel
inferior. Una capa no necesita saber como se implementan estas funciones, solo necesita saber
que operaciones puede realizar.
Estructura de datos para Manejo de Dispositivos
Funciones que realizan
Vamos a sealar las funciones que debe realizar un computador para ejecutar trabajos de
entrada/salida:
- Direccionamiento o seleccin del dispositivo que debe llevar a cabo la operacin de E/S.
- Transferencia de los datos entre el procesador y el dispositivo (en uno u otro sentido).
- Sincronizacin y coordinacin de las operaciones.
Esta ultima funcin es necesaria debido a la deferencia de velocidades entre los dispositivos y
la CPU y a la independencia que debe existir entre los perifricos y la CPU (por ejemplo, suelen
tener relojes diferentes).
Operaciones de Entrada/Salida
Se define una transferencia elemental de informacin como la transmisin de una sola unidad
de informacin (normalmente un byte) entre el procesador y el perifrico o viceversa. Para
efectuar una transferencia elemental de informacin son precisas las siguientes funciones:
- Establecimiento de una comunicacin fsica entre el procesador y el perifrico para la
transmisin de la unidad de informacin.
- Control de los perifricos, en que se incluyen operaciones como prueba y modificacin del
estado del perifrico. Para realizar estas funciones la CPU gestionara las lneas de control
necesarias.
Definiremos una operacin 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
realizacin de una operacin de E/S se deben efectuar las siguientes funciones:
Operaciones de Entrada/Salida
- Recuento de las unidades de informacin transferidas (normalmente bytes) para reconocer el
fin de operacin.
- Sincronizacin de velocidad entre la CPU y el perifrico.
- Deteccin de errores (e incluso correccin) mediante la utilizacin de los cdigos necesarios
(bits de paridad, cdigos de redundancia cclica, etc.)
- Almacenamiento temporal de la informacin. Es ms eficiente utilizar un buffer temporal
especfico para las operaciones de E/S que utilizan el rea de datos del programa.
- Conversin de cdigos , conversin serie/paralelo, etc.
Operaciones de Entrada/Salida

You might also like