Sistemas
operativos Multiproceso
Algunos sistemas
ejecutan sólo un único proceso, otros sistemas ejecutan múltiples procesos a
lavez. La mayoría de las computadoras están basadas en un único procesador, y
un procesador puede ejecutar sólo una instrucción cada vez. Por lo tanto, como
es posible que un único procesador ejecute procesos múltiples? La respuesta
inmediata es que no lo hace de ese modo. El procesador ejecuta un proceso por
un periodo pequeño de tiempo, y entonces se mueve al próximo proceso y así
continuamente. Como el procesador ejecuta millones de instrucciones por
segundo, da la impresión de que muchos procesos están siendo ejecutados al
mismo tiempo.
En un sistema
operativo que soporta más de un proceso a la vez, algún mecanismo debe ser
usado para intercalar tareas. Hay dos maneras para hacer este cambio:
- Escalonamiento por Cooperación: indica que una tarea que está siendo ejecutada actualmente dejará voluntariamente en algún momento el procesador y permitirá que otros procesos sean ejecutados.
- Escalonamiento por Prioridades: significa que una tarea corriente será interrumpida y el procesador se dedica a otro proceso en estado de espera.
El problema
del cambio por cooperación es que un proceso podría tardar y así denegar la
ejecución de otros procesos. Un ejemplo de un sistema de cooperación es el
Sistema Operativo Windows de 16 bits (antiguos). El escalonamiento por
prioridades es mejor. Da respuestas a todos los procesos y ayuda a prevenir el
“cuelgue” de los equipos. Windows Server es un ejemplo de tal sistema operativo.
Escalonamiento
(Scheduling)
La decisión de
cuál es el próximo proceso que debe ser ejecutado es llamado escalonamiento
(scheduling), y puede ser hecho de una gran variedad de maneras. Los
escalonamientos por cooperación generalmente son muy simples, ya que los
procesos son organizados en una fila circular (ROUND ROBIN). Cuando el proceso
actual termina, va hacia el fin de la fila. El proceso que queda primero en la
fila es ejecutado, y todos los procesos se mueven un lugar hacia arriba en la fila.
Eso provee una medida justa, pero no impide que un proceso monopolice el
sistema.
0 comentarios:
Publicar un comentario