jueves, 5 de julio de 2018


ADMINISTRACIÓN DE ENTRADA Y SALIDA

¿Que es una estructura?

la estructura de datos su función es organizar los conjuntos datos elementales, para poder tener una fácil actualización, manipulación y para poder cumplir su trabajo correctamente. un dato elemental es la mínima información que tiene un sistema, la estructura generalmente es modular, cada modulo cumple una función determinada y se comunica con los demás módulos.


Estructura simple o sistema monolitico

El sistema MS-DOS es, sin duda, el mejor sistema operativo para microcomputadoras. Sin embargo, sus interfaces y niveles de funcionalidad no están bien definidos. Los programas de aplicación pueden acceder a operaciones básicas de entrada / salida para escribir directamente en pantalla o discos. Este libre acceso, hace que el sistema sea vulnerable, ya que un programa de aplicación puede eliminar por completo un disco rígido por alguna falla. Además este sistema, también esta limitado al hardware sobre el que corre.
 Otra estructura simple es la utilizada por la versión 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 programación de CPU, el administrador de memoria y otras funciones del sistema operativo que responden a las llamadas del sistema enunciadas anteriormente. 
 Es una forma  de relacion entre el kernel y el software  
los sistmas opertivos que usaron este sistemafuron freedbsd, unix y linux



Estructura por capas

La modularizacion de un sistema se puede presentar de diferentes formas, la mas utilizada es por capas, la cual consiste en dividir el sistema operativo en un numero de capas, la capa de menor nivel es el hardware y la de mayor nivel es la interfaz de usuario. la principal ventaja es que cada capa cumple con ciertas funciones y servicios que brindan a las otras capas esto ayuda a una mejor organización y una depuración mas fácil, cada capa se implementa solo utilizando las operaciones provistas por la capa de nivel inferior, una capa no necesita saber como se implementa solo necesita saber que operaciones puede realizar,

Estructura de datos en 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.
Manejadores de dispositivos o drivers.
Software de EIS independiente de los dispositivos
Interfaz del sistema operativo.

El sistema operativo
El sistema operativo estructura el software de gestión de E/S de esta forma para ofrecer a los usuarios una serie de servicios de E/S independientes de los dispositivos. Esta independencia implica que deben emplearse los mismos servicios y operaciones de E/S para leer datos de un disquete, de un disco duro, de un CD-ROM o de un teclado. 

En el manejo de los dispositivos de E/S es necesario, introducir dos nuevos términos:

BUFFERING (uso de memoria interna)

Trata de mantener ocupados tanto la CPU como los dispositivos de E/S. Los datos se leen y se almacenan en un buffer, una vez que los datos se han leído y la CPU va a iniciar inmediatamente la operación con ellos, el dispositivo de entrada es introducido para iniciar inmediatamente la siguiente lectura.

La CPU y el dispositivo de entrada permanecen ocupados. Cuando la CPU este libre para el siguiente grupo de datos, el dispositivo de entrada habrá terminado de leerlos. La CPU podrá empezar el proceso de los últimos datos leídos, mientras el dispositivo de entrada iniciara la lectura de los datos siguientes.

SPOOLING

Esta forma de procesamiento de denomina spooling, utiliza el disco como un buffer muy grade para leer tan por delante como sea posible de los dispositivos de entrada y para almacenar los ficheros hasta que los dispositivos de salida sean capaces de aceptarlos.
Es una característica utilizada en la mayoría de los sistemas operativos.

Manejadores de interrupción

Los manejadores de interrupción se encargan de tratar las interrupciones que generan los controladores 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).

Los manejadores de interrupción suelen hacer algo más que comunicar el evento al manejador de dispositivo. Cuando una interrupción ocurre muy frecuentemente, caso del reloj, o cuando la cantidad de información a transferir es muy pequeña, caso del teclado, sería muy costoso comunicar siempre el evento al manejador de dispositivo asociado. En estos casos, el propio manejador de interrupción registra la ocurrencia del evento, bien mediante el incremento de una variable global para el reloj o la acumulación de caracteres en un buffer del teclado. La notificación al manejador se hace únicamente cada cierto número de ocurrencias del evento, en el caso del reloj, o activando unflag que indica que hay datos en el buffer del teclado.


No hay comentarios:

Publicar un comentario