Estructuras de datos para manejo de dispositivos (ensayo)
Introducción
Los
sistemas operativos actuales son grandes y complejos, estos deben poseer una
ingeniería correcta para su fácil actualización y para que puedan cumplir su
función correctamente. La estructura es generalmente modular, cada módulo
cumple una función determinada e interactúa con los demás módulos.
Una
computadora necesita de entradas para poder generar salidas y éstas se dan a
través de dos tipos de dispositivos periféricos existentes: Dispositivos
periféricos de entrada y dispositivos periféricos de salida. La buena
administración de entrada y salidas es que sean de regímenes definibles, con
sus variaciones y transformaciones.
En el presente tema, se mostrarán las operaciones de entrada y salida de un ordenador, en la cual se darán a conocer los procesos de operaciones de entrada y salida de información de un dispositivo hacia el ordenador o viceversa. A si como también los diversos tipos y estructuras de dispositivos, los cuales son clasificados como dispositivos de Entrada / Salida.
Desarrollo
Estructura simple
Un
sistema monolítico es un tipo de núcleo de un sistema operativo (un conjunto de
procedimientos). Estos sistemas tienen un núcleo grande y complejo, que engloba
todos los servicios de un sistema. Está programado de forma no modular, y tiene
un rendimiento mayor que un micronúcleo.
Estructura por capas
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. 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
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.
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. 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, como
el caso de un reloj, o cuando la cantidad de información a transferir es muy
pequeña, como la de un 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, 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.
Conclusión
La
interfaz de un computador junto con los demás dispositivos del mundo exterior
gira en torno a la arquitectura de E/S. Esta interfaz sirve como medio para
enlazar o comunicar todos los dispositivos externos directamente con el S.O,
para que le proporcione toda la información necesaria y oportuna que permita
administrar en tiempo y forma todas las actividades de E/S de manera eficaz.
La
tarea de un manejador de dispositivo es aceptar peticiones en formato
abstracto, de la parte del código de E/S independiente del dispositivo,
traducir dichas peticiones a términos que entienda el controlador, enviar al
mismo las órdenes adecuadas en la secuencia correcta y esperar a que se cumplan.
Comentarios
Publicar un comentario