martes, 29 de noviembre de 2011

Multiprogramacion

La Esencia de la multiprogramación propone que la CPU nunca se encuentra ociosa, es así como por ejemplo, si en su sistema se esta ejecutando un trabajo que estaba en cola, este tendrá que en algún momento pausar su ejecución por alguna razón(esperar que se introduzca un comando por teclado o algo por el estilo), la CPU seguirá activa siendo usada por el siguiente trabajo que esté listo para ejecutarse y así sucesivamente, y obviamente el trabajo inicial en algún momento retomara la CPU para continuar su ejecución.

                Para  poder llevar a cabo este complejo método de programación, es necesario una Planificación de CPU, con esto logramos que todos los programas que están listos para  ejecutarse sean conservados en la memoria  y se les pueda administrar la misma, además de elegir entre todos estos programas el que se va a ejecutar primero, cual después, el siguiente y así hasta el último.



                Existen dos formas de organizar las diferencias de  velocidades de ejecución entre la CPU y los dispositivos:

  •  Polling: La CPU está continuamente consultando a cada periférico si tiene algo que hace

  • Interrupciones: La CPU prioriza los procesos y cuando algún dispositivo necesita de la CPU, le     enviara una solicitud de interrupción, este procedimiento es inverso al Polling.

Tenemos Sistemas de Multiprogramación de Partición Fija, estos poseen espacios de almacenamiento fijo para los procesos que se encuentran en cola, por eso esos deben esperar que exista un bloque o mas de memoria con tamaño suficiente para ser atendido; en cambio en los Sistemas de Multiprogramación de Partición Variable, la memoria se divide en espacios variables de acuerdo a lo que exijan los procesos que sean almacenados en ella. 

No hay comentarios:

Publicar un comentario