Capas Del Software de e

5
CAPAS DEL SOFTWARE DE E/S MANEJADORES DE INTERRUPCIONES: Su principal objetivo es que el usuario no debe darsecuenta de los manejos de bajo nivel para los casos en que el dispositivo está ocupado y se debe suspender el proceso o sincronizar algunas tareas. MANEJADORES DE DISPOSITIVOS: El driver es el software que se comunica con el hardwarede E/S. Existe un driver para cada controlador que tengamos conectado a la computadora. Driver: Es el único software que conoce las características del dispositivo. Programa al controlador imprimiendo ensus registros. Se encarga de traducir peticiones del nivel superior. Encola las peticiones que van llegando para que eldriver las trate más tarde. Por ejemplo , si el sistema tiene tipos diferentes de discos duros, al usuario las diferencias técnicas entre ellos no ledeben importar, y los drivers le deben ofrecer el mismo conjunto de rutinas para leer y escribir datos. SOFTWARE DE E/S INDEPENDIENTE DEL DISPOSITIVO: En esta capa se agrupa la mayor parte del software deE/S. Las funciones básicas de este nivel son: Presentar una interfaz uniforme a los programas de usuario ; la misma operación de entrada o de salidaindependientemente del dispositivo al que se desea acceder. Identificar al dispositivo a partir del nombre simbólico ; asignándoles nombres a los dispositivos.

Transcript of Capas Del Software de e

Page 1: Capas Del Software de e

CAPAS DEL SOFTWARE DE E/S•MANEJADORES DE INTERRUPCIONES:Su principal objetivo es que el usuario no debe darsecuenta de los manejos de bajo nivel para los casos en que el dispositivo está ocupado y se debe suspender el proceso o sincronizar algunas tareas.•MANEJADORES DE DISPOSITIVOS:El driver es el software que se comunica con el hardwarede E/S. Existe un driver para cada controlador que tengamos conectado a la computadora.Driver:Es el único software que conoce las características del dispositivo. Programa al controlador imprimiendo ensus registros. Se encarga de traducir peticiones del nivel superior. Encola las peticiones que van llegando para que eldriver las trate más tarde.  Por ejemplo, si el sistema tiene tipos diferentes de discos duros, al usuario las diferencias técnicas entre ellos no ledeben importar, y los drivers le deben ofrecer el mismo conjunto de rutinas para leer y escribir datos.

 SOFTWARE DE E/S INDEPENDIENTE DEL DISPOSITIVO: En esta capa se agrupa la mayor parte del software deE/S. Las funciones básicas de este nivel son: •Presentar una interfaz uniforme a los programas de usuario ; la misma operación de entrada o de salidaindependientemente del dispositivo al que se desea acceder. •Identificar al dispositivo a partir del nombre simbólico ; asignándoles nombres a los dispositivos. •Protección de los dispositivos ; debe disponer de un sistema que permita determinar quien tiene accesoa qué dispositivos.•Tamaño de bloque;a los dispositivos de bloque los trata como si todos tuvieran el mismo tamaño de bloque (conocido como bloque lógico). El driver de cada uno de ellos es el encargado de comprobar si a cadauno de ellos le corresponde 1 o más sectores del disco. •Almacenamiento Intermedio;

Page 2: Capas Del Software de e

Si se solicita información de un bloque que está cargado en el caché sulectura no se ordena al driver pero si no está cargado en caché se ordena la lectura del bloque completo.(lecturas por adelantado).SOFTWARE DE E/S EN ESPACIO DE USUARIO:Una porción pequeña del software de E/S se ejecuta a nivel deusuario. Consiste en bibliotecas que se enlazan con los programas de usuario. También el sistema de spooling o áreas detrabajo encolados, permite conseguir una explotación concurrente de dispositivos de acceso exclusivo, como por ejemplo la impresora.Técnicas para realizar la E/SE/S Programada.El procesador emite el mandato de E/S, a petición de un proceso, al módulo de E/S. El proceso espera a que termine laoperación antes de continuar.E/S dirigida por Interrupciones.El procesador emite el mandato de E/S de un proceso y continúa ejecutando instrucciones del mismo u otro proceso. Elmódulo de E/S envía un interrupción cuando está prepara para transmitir.Acceso directo a memoria ( DMA).Existe un módulo DMA que controla el intercambio de datos entre la memorial principal y el módulo de E/S.El procesador manda una petición de transferencia de bloque de datos al módulo de DMA. El procesador esinterrumpido sólo luego que el bloque entero ha sido transferido La unidad de DMA es capaz de imitar al procesador,tomando el control del bus del sistema tal como lo hace un procesador. La unidad de DMA necesita hacerlo paratransferir los datos desde y hacia la memoria usando el bus del sistema.Técnicas para realizar la E/S: DMA1)- Cuando el procesador quiere leer o escribir un bloque de datos, envía un mandato al módulo de DMAespecificándole la siguiente información:•Si se trata de una operación de lectura o escritura, utilizando la línea de control de lectura o escrituraque existe entre le procesador y el módulo de DMA.•La dirección del dispositivo de E/S, comunicándoselo mediante las líneas de datos.•La dirección inicial de memoria que se pretende leer o escribir, comunicándoselo mediante las líneasde datos y almacenándose en el registro de direcciones del módulo de E/S.•El número de palabras que se van a leer o escribir, comunicándoselo de nuevo mediante las líneas dedatos y almacenándose en el registro contador de datos.Toma el control del sistema desde la CPU para transferir datos desde y hacia la memoria a través del bus delsistema. Se utiliza el robo de ciclos para transferir datos a través del bus del sistema. El ciclo de instrucción sesuspende para dar paso a la transferencia de datos. La CPU espera un ciclo del bus. No existe interrupción alguna: nosalva el contexto.2)- A continuación el computador continúa con otro trabajo. El módulo de E/S transfiere el bloque completo de datos, palabra a palabra, directamente desde la memoria o hacia ella, sin pasar por el procesador. Cuando se completa latransferencia, el módulo DMA envía una señal de interrupción al procesador. Por tanto el procesador está involucradosolo al principio y al final de la transferencia. El DMA se conecta albusdel sistema para poder transferir los datos entrelos dispositivos de entrada/salida y la memoria principal. Por esta razón, debe compartirlo con el procesador, siendocapaz de ‘robarle’ a éste ciclos debus. El DMA obliga al procesador a que suspenda temporalmente lo que estáhaciendo justo antes de que éste precise elbus

Page 3: Capas Del Software de e

del sistema. La figura siguiente se muestra en qué momentos el DMA

  puede suspender al procesador durante el ciclo de una instrucción. Una vez que el procesador está suspendido, el DMAutiliza el ciclo debusrobado para transferir una palabra, devolviendo inmediatamente el control al procesador. Esimportante señalar que el procesador no se ve interrumpido, ya que no debe guardar el contexto del proceso que estáejecutando, simplemente se ve inactivo durante el ciclo debusque el DMA realiza la transferencia. Aunque la actividaddel procesador se ralentiza, este esquema es mucho más eficiente que todos los anteriores. Sin embargo, el rendimientodel DMA depende de su configuración dentro del propio sistema. Existen distintas alternativas de diseño, el esquema delas cuales, se puede apreciar en las siguientes figuras. A continuación describiremos en qué consisten básicamente estasconfiguraciones.Estructura de DMA: de bus sencillo

Page 4: Capas Del Software de e

•Estructura sencilla y barata.•El módulo realiza la transferencia entre Memoria y los dispositivos de E/S a través del módulo DMA, por lo que consume 2 ciclos de bus por cada palabra transferida, como en la E/S programada, una para peticiónde transferencia y otra para la transferencia misma.•El robo de ciclos hace que la CPU ejecute más lentamente.•El número de ciclos de bus requeridos se puede acortar mediante la integración de las funciones delDMA y de la E/S.•Debe haber un camino entre el módulo de DMA y el módulo de E/S que no pasen por el bus delsistema.•El modulo DMA está conectado directamente a uno o más bloques de E/S, de modo que latransferencia de datos no emplea el bus del sistema.•El intercambio de datos entre DMA y los módulos de E/S se realiza fuera del bus de sistemaEstructura de DMA: bus de E/S•Los módulos de E/S están conectados al DMA mediante un bus.•La configuración es fácilmente ampliable.•El intercambio de datos entre DMA y los módulos de E/S se realiza fuera del bus de sistema