4.2 Mecanismos y funciones de los manejadores de dispositivos: device drivers
¿Qué es una estructura?
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 modulo
cumple una función determinada e interactúa con los demás módulos.
Estructura simple
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.
Estructura por capas (layers)
Las nuevas versiones de UNIX se diseñaron para hardware mas avanzado. Para
dar mayor soporte al hardware, los sistemas operativos se dividieron en pequeñas
partes. Ahora los sistemas operativos tienen mayor control sobre el hardware y las
aplicaciones que se ejecutan sobre este.
La modularizacion 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 organización del
sistema operativo y una depuración mas fácil 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.
Comentarios
Publicar un comentario