Clasificacion De Sistemas Operativos
Enviado por javieromoshiroi • 6 de Diciembre de 2012 • 1.935 Palabras (8 Páginas) • 848 Visitas
CLASIFICACION DE LOS SISTEMAS OPERATIVOS:
Los sistemas operativos los podemos clasificar en:
• Sistemas operativos monotarea: Sólo pueden manejar un proceso, es decir , las
tareas deben ejecutarse una tras otra. Por ejemplo, el sistema DOS es monotarea,
al no poder ejecutar varias aplicaciones simultáneamente, aunque existieron varios
intentos de añadirle esta capacidad.
• Sistemas operativos multitarea:
La computadora puede procesar varias tareas al mismo tiempo. Podemos distinguir:
• Conmutación de contextos: Es un tipo simple de multitarea en el que
dos o más aplicaciones se cargan al mismo tiempo, pero sólo se procesa la que
se encuentra en primer plano, que es la que está utilizando el usuario. Cuando el
usuario cambia de aplicación , se produce un intercambio entre ambas tareas, pasando
la aplicación activa a segundo plano, efectuándose un almacenamiento del estado en el que
se encuentra. Por otro lado la aplicación que estaba en segundo plano pasa a reanudar
su procesamiento recuperando la situación en la que se había detenido.
• Multitarea cooperativa: Las tareas en segundo plano reciben tiempo de proceso
durante los tiempos muertos de la tarea que se encuentra en primer plano. Esto ocurre
cuando dicha aplicación espera información del usuario para poder continuar.
• Multitarea de tiempo compartido: Cada tarea recibe un tiempo de procesamiento
durante una fracción de segundo. Se puede establecer un orden de prioridades entre las tareas
o simplemente seguir un orden secuencial. Dado que el sentido temporal del usuario es
mucho más lento que la velocidad de procesamiento del ordenador , las operaciones de
multitarea en tiempo compartido parecen ser simultáneas. Todos los sistemas operativos
actuales (Linux, toda la familia Windows, Mac OS, OS/2 de IBM¼) utilizan esta técnica.
En concreto, el sistema operativo Windows, y alguno de los mencionados anteriormente,
crean un entorno de ejecución propio e independiente para cada tarea, como si cada
aplicación corriese en una máquina independiente llamada máquina virtual. Cada una de
de estas máquinas virtuales posee sus correspondientes dispositivos virtuales, que
representan a cada uno de los recursos del ordenador (memoria, disco duro, impresora¼).
Por ejemplo , cuando un programa ejecuta la instrucción de impresión , se realiza
sobre laimpresora virtual de su máquina virtual. Esta petición es recibida por el sistema operativo,
que está coordinando todos los dispositivos virtuales y lanza el comando sobre la
impresora real. Esto facilita enormemente la programación de aplicaciones, ya que se
realiza sobre dispositivos virtuales, siendo el sistema operativo elencargado final de realizar la
operación.
• Sistemas operativos monousuario: Sólo pueden atender a un único usuario, que es el
que haya iniciado sesión en el sistema. Esto ocurreen el sistema operativo DOS e incluso en el
actual Windows XP y sus predecesores.
• Sistemas operativos multiusuario:
Pueden atender simultáneamente las peticiones de dos o más usuarios, que comparten los
recursos del sistema informático al que se conectan.
Este tipo de sistemas se emplean especialmente en redes, ya que cada usuario necesita
de un terminal independiente para conectarse con el equipo que tiene instalado el sistema.
Esto ocurre con Linux o la familia Windows 2003 y predecesores.
Funcionamiento del Gestor de Hardware
Los objetivos principales al desarrollar nuestro algoritmo de gestión de HW fueron un
tiempo de ejecución reducido, para producir una sobrecarga pequeña, y una mínima fragmentación de la FPGA. Por ello no se consideran técnicas tales como defragmentación y
compresión de tareas durante tiempo de ejecución.
Fig. 1. Estructura del Gestor HW
Como muestra la fig. 1, el gestor HW está formado por tres componentes principales: el
Planificador, el Asignador, y el Gestor de Área, y usa tres estructuras básicas:
• Una lista de tareas en ejecución, Lr
.
• Una cola de tareas en espera, Qw donde las tareas entrantes se almacenan cuando no
hay espacio suficiente en la FPGA para su inserción inmediata.
• Un conjunto de Listas de Vértices, VLS, que describe todo el espacio libre de la FPGA.
Cada componente de VLS es una lista de vértices VL que describe un fragmento independiente de espacio contiguo libre en la FPGA: VLS = {VL1, VL2, ... , VLk}
Cuando una tarea nueva llega, el Asignador consulta el conjunto de listas VLS, recorriendo
cada VLi
, comprobando las posibles inserciones de tarea en los vértices marcados como
candidatos, hasta que finaliza VLS. Cada VLi
...