Вы находитесь на странице: 1из 6

GESTION DE ENTRADA Y SALIDA Introduccin Analizar el desempeo de un sistema de E/S resulta ms complejo que el propio rendimiento del procesador,

esto se debe a la gran variedad de dispositivos de E/S que hay y a las aplicaciones de los mismos; hacindose difcil hallar una solucin gral. y consistente. El tema a desarrollar trata sobre el estudio de los dispositivos de E/S y su organizacin de acuerdo a su funcionamiento, como base de los S.O.; profundizando ciertos aspectos como el diseo de los mismos, atendiendo a: sus objetivos y la forma de estructurar las funciones de E/S. Interesan tambin el uso de BUFFERS (almacenamiento intermedio), utilizado para equiparar las velocidades intermedias del sistema informatico y la de los dispositivos de E/S, HARDWARE afectados y la sincronizacin de operaciones entre los mismos, todo ello monitoreado por SOFTWARE adecuados. Por otra parte, se analiza tambin el impacto de los discos en el rendimiento del sistema y porque es la forma de E/S ms importante, se divisara que hay dos mtodos mas usados en el rendimiento de E/S a discos, la PLANIFICACIN y la CACHE DE DISCO, se comenzara por desarrollar un modelo de rendimiento de E/S de los discos y se examinaran varias tcnicas aplicadas para mejorar el rendimiento. La Funcin principal de un S.O.: controlar todos los dispositivos de E/S de la computadora. El Subsistema de E/S se encarga de 1. Emitir rdenes a los dispositivos 2. Captar las interrupciones 3. Manipular Errores 4. presentar una interfaz

Adems de proporcionar una interfaz entre dispositivos y resto del sistema. Los Sistemas Operativos controlan los dispositivos de E/S por tres razones: a) La interfaz de hardware para la mayora de los perifricos es relativamente cruda (necesita Software complejo para controlarlos y utilizarlos). b) Los perifricos son recursos compartidos (el S.O. debe protegerlos para que los accesos sean Correctos y seguros). c) El Sistema Operativo proporciona una interfaz consistente, uniforme y flexible para todos los Perifricos (permite a los usuarios referenciar a los dispositivos por el nombre y realizar Operaciones de alto nivel sin necesidad de conocer la configuracin de la mquina). Objetivos del software de E/S 1- Independencia de dispositivo Se debe poder acceder a los dispositivos de E/S sin tener que especificar previamente de qu tipo de dispositivo se trata Como en los disp. de bloques: disquetes, discos duros, cdroms, usb El SO debe resolver los problemas causados por usar diferentes dispositivos, que requieren rdenes distintas para manejarlos 2- Nombres uniformes para los dispositivos El nombre de un fichero o dispositivo debe ser simplemente una cadena o un entero, y no depender del dispositivo 3- Manejo de errores Deben manejarse tan cerca del hardware como sea posible subsanar todos los errores posibles comunicando los no subsanables a los procesos de usuario.

4. Conversin de transferencias asncronas (controladas por interrupciones) en sncronas (por bloqueo) Casi toda E/S fsica es asncrona: la CPU inicia la transferencia y realiza otra tarea hasta que llega una interrupcin Sin embargo, es ms sencillo escribir los programas si las operaciones de E/S son bloqueantes El SO ha de hacer que las operaciones que son controladas por interrupciones parezcan bloqueantes para el programador. 5- Comparticin de recursos Debe permitir la comparticin de ciertos dispositivos (como los discos) Pero al mismo tiempo debe garantizar el uso exclusivo de otros (como las impresoras) 6- Uso de buffers Debe proporcionar almacenamiento temporal en memoria para evitar prdida de datos (teclado) o acelerar dispositivos (discos) Principios del hardware de E/S 2.1. Diferencias entre dispositivos de E/S. Clasificacin Existen gran cantidad de perifricos de E/S que difieren en aspectos de: Velocidad de transferencia de informacin (por ejemplo, en un disco magntico est en torno a los 10 millones de c.p.s., mientras que en un teclado ronda los 50 c.p.s.). Unidad de transferencia (puede ser carcter, palabra, byte, registro, bloque, ). Representacin de los datos (distintas formas de codificacin para diferentes soportes de E/S). Operaciones permitidas (distintos perifricos, distintos tipos de operaciones. Por ejemplo, una cinta magntica se puede rebobinar, pero el papel de una impresora no). Condiciones de error (distintos perifricos tienen distintas causas de error. Por ejemplo, error de paridad, tarjeta arrugada, ). Los perifricos de E/S se pueden clasificar en dos categoras: a) Dispositivos de bloques: Almacenan la informacin en bloques de tamao fijo, cada uno con una direccin propia (permite leer, escribir o buscar un bloque sin dependencia de los dems). Por ejemplo: Disco magntico. b) Dispositivos de caracteres: Aceptan o entregan un flujo de caracteres sin considerar estructuras de bloques. No son direccionables y, por tanto, no permiten operaciones de bsqueda. Por ejemplo: Impresora, terminales, cintas de papel, interfaz de redes. Algunos dispositivos no encajan bien en esta clasificacin. Por ejemplo: El reloj del sistema, que emite interrupciones cada cierto intervalo de tiempo. Comportamiento: entrada, salida, almacenamiento. Tasa de transferencia: tasa de peak de transferencia entre dispositivos y memoria. El siguiente cuadro hace referencia, a las grandes diferencias entre las clases de dispositivos: DISPOSITIVO TECLADO COMPORTAMIENTO Entrada CLASIFICACION Carcter TASA KB/SEG. 0,01

MOUSE SCANNER VOS (Salida) IMPRESORA (Lnea) IMPRESORA (Lser) MODEM RED LAN FLOPPY CD CINTA MAGNETICA DISCO MAGNETICO

" " Salida " " Entrada / salida " Almacenamiento " " "

" " " " " " " Bloque " " "

0,02 400 0,6 1,0 200 2,0-8,0 500-6000 100 1000 2000 2000-10000

2.2. Controladores de dispositivos Programa de mas bajo nivel que se encarga de los detalles que son dependientes del dispositivo. Estos Controladores (tambin llamados adaptadores de dispositivos) son la parte electrnica de los perifricos, el cual puede tener la forma de una tarjeta o un circuito impreso integrado a la tarjeta maestra de la Computadora. Por ejemplo, existen controladores de discos que se venden por separado y que se insertan en una ranura de la computadora, o existen fabricantes de computadoras que integran esa funcionalidad en la misma tarjeta en que viene la unidad central de procesamiento (tarjeta maestra). Los controladores de dispositivos generalmente trabajan con voltajes de 5 y 12 volts con el dispositivo propiamente, y con la computadora a travs de interrupciones. Estas interrupciones viajan por el 'BUS' de la computadora y son recibidos por el CPU el cual a su vez pondr en ejecucin algn programa que sabr qu hacer con esa seal. A ese programa se le llama 'MANEJADOR DE DISPOSITIVO' (device driver). Algunas veces el mismo controlador contiene un pequeo programa en una memoria de solo lectura o en memoria de acceso aleatoria no voltil y re-escribible que interacta con el correspondiente manejador en la computadora.

Para intercambiar datos o seales entre la computadora y los controladores, muchas veces se usan registros o secciones predefinidas de la memoria de la computadora. A este esquema se le llama 'manejo de entrada - salida mapeado por memoria' (memory mapped I/O). Por ejemplo, para una IBM PC se muestran los vectores de interrupcin y las direcciones para la entrada -salida. CONTROLADOR RELOJ TECLADO DISCO DURO IMPRESORA MONITOR MONO MONITOR COLOR DISCO FLEXIBLE DIRECCIN(HEX) 040 - 043 060-063 320-32F 378-37F 380-3BF 3D0-3DF 3F0-3F7 VECTOR DE INTERRUPCIN 8 9 13 15 14

Las unidades de E/S constan de dos partes: una mecnica y otra electrnica (controlador de dispositivo o adaptador). El S.O. casi siempre trata con los controladores y no con los dispositivos. La comunicacin entre la CPU y los controladores se realiza: En muchos minis y micros mediante un sistema de bus simple En grandes computadoras mediante buses mltiples y procesadores especializados en la E/S, llamados Canales de E/S Cada controlador tiene un conjunto de registros (conocidos como Puerto de E/S) que se usan para la comunicacin con la CPU. Bsicamente: 1. Registros de datos (bfer de E/S) Registros de rdenes Registros de estado Ejemplos de puertos son los puertos paralelos, los puertos serie, los puertos USB, Las direcciones de los puertos de E/S pueden: estar incluidas en las direcciones de memoria, estar en un espacio de direcciones aparte, llamado Espacio de E/S. El S.O. realiza la E/S escribiendo comandos en los registros de los controladores. La E/S se realiza generalmente guiada por interrupciones, segn los siguientes pasos: El S.O. solicita una operacin a un controlador. El controlador inicia la operacin (la CPU puede asignarse a otro proceso). La operacin del controlador finaliza. El controlador enva una interrupcin para informar del resultado. El S.O. comprueba los resultados de la operacin y obtiene los resultados y el estado del dispositivo leyendo uno o ms bytes de informacin de los registros del controlador.

Principios del software de E/S La idea bsica es organizar el software de E/S en una serie de capas de forma que podamos ocultar las peculiaridades y complejidades del hardware a los usuarios. Objetivos del software de E/S Independencia de los dispositivos: Debe ser posible escribir programas que se puedan utilizar con archivos (en disquete o en disco duro) o sobre otros dispositivos sin tener que modificar los programas para cada caso. Uniformidad en los nombres de dispositivo: El dispositivo se debe poder identificar mediante un nmero o una cadena de caracteres y no debe depender del dispositivo. Los programas harn referencia al dispositivo mediante su identificador asociado, siendo el S.O. el encargado de detectar el dispositivo real al que se est haciendo referencia. Distinguir el tipo de transferencias: sncronas (bloqueado) o asncronas (dirigido por interrupciones). La mayora de la E/S fsica es asncrona, es decir, la CPU solicita la Operacin y hace cualquier otra cosa hasta que recibe la interrupcin de fin de la operacin solicitada.

Los programas de usuario se bloquean hasta que el S.O. recibe las operaciones asociadas a la interrupcin. Manipulacin de errores: Los errores se deben gestionar tan cerca del hardware como sea posible. Si el controlador detecta un problema en la lectura, intentar corregirlo (por ejemplo, haciendo otra lectura); si no puede, lo har el driver del dispositivo (por ejemplo, vuelve a leer el bloque). Slo si las capas inferiores no pueden solucionar el error, se informar a las capas superiores (usuario). Tratamiento uniforme de los perifricos: El S.O. debe manipular todos los tipos de dispositivos evitando los problemas que pueden presentar. Por ejemplo, existen dispositivos compartidos (como el disco duro) y dedicados (como la impresora), y el S.O. debe tratarlos como tales sin que el usuario tenga constancia de estas distinciones. Estos objetivos se pueden lograr estructurando el software de E/S en 4 capas: 1. Manipulador de interrupciones 2. Drivers de dispositivos 3. Software de E/S independiente de los dispositivos 4. Software a nivel de usuario Drivers de dispositivos Un driver es un proceso o conjunto de instrucciones que controlan un dispositivo. Contiene el cdigo dependiente del dispositivo, es decir, conoce todas las peculiaridades del dispositivo. Cada driver manipula un tipo de dispositivo o, a lo sumo, una clase de dispositivos ligeramente diferentes (como es el caso de los terminales). Los drivers utilizan los registros del controlador de dispositivos para ejecutar un comando o comprobar que se ha ejecutado apropiadamente. La funcin del driver es aceptar demandas del software independiente de los dispositivos y comprobar si la demanda se est ejecutando. Software de E/S independiente de los dispositivos Parte del software de E/S es independiente del dispositivo. La frontera exacta entre los drivers y el software de E/S independiente del dispositivo depende del sistema. Funciones del software de E/S independiente del dispositivo: Realizar funciones de E/S comunes a todos los dispositivos y proporcionar una interfaz uniforme al software de usuario. Estas funciones son: o Asignar nombres a los dispositivos y asociarlos con el driver adecuado. o Establecer mecanismos de proteccin en el acceso a los dispositivos (permiso de acceso apropiado para cada dispositivo). Esto evita que los usuarios no autorizados tengan acceso a ciertos dispositivos. o Suministrar un tamao de bloque independiente del dispositivo. Es decir, ocultar la posibilidad de que diferentes discos tengan distintos tamaos de sector o las diferencias entre las unidades de transferencia.

Вам также может понравиться