¿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 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 (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.
Es una estructura organizada jerarquicamente cada una construidas de menor a mayor.
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.
Los
procesos de usuario emiten peticiones de E/S al sistema operativo. Cuando un
proceso solicita una operacion de E/S, el sistem operativo prepara dicha
operacion y bloquea al proceso hasta que se recibe una interrupcion del
controlador del dispositivo indicando que la operacion esta completa.
En
el manejo de los dispositivos de E/S es necesario, introducir dos nuevos
terminos:
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 leido y la CPU
va a iniciar inmediatamente la operacion 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 habra terminado de
leerlos. La CPU podra empezar el proceso de los ultimos datos leidos, 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 caracteristica utilizada en la mayoria de los sistemas operativos.
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.
No hay comentarios.:
Publicar un comentario