Multiprogramación

De Wiki de Sistemas Operativos
Revisión del 02:10 23 feb 2011 de 95.22.180.239 (discusión) (solucionar errata en ejemplo gráfico)
Saltar a: navegación, buscar

La multiprogramación es una técnica multiplexación que permite la ejecución simultánea de múltiples procesos en un único procesador. En realidad, esta técnica produce una ilusión de paralelismo, de manera que parece que todos los procesos se están ejecutando a la vez. Sin embargo, hay un único proceso ejecutandose en el procesador a la vez.

El siguiente diagrama de ejemplo representa el uso del procesador por tres procesos:

                   Uso del procesador

proceso A | ----        ----        ----
proceso B |     ----        ----        ----
proceso C |         ----        ----        ----
          --------------------------------------

                                             ->
                                          tiempo

Como se puede observar en el ejemplo anterior, los procesos alternan periodos de en los que progresan en su actividad, cuando están asignados al procesador, con periodos de inactividad, en los que no progresan en absoluto.

Si los periodos de inactividad son los suficientemente pequeños como para que el usuario del sistema operativo no los note, que en práctica se traduce a periodos de inactividad de menos de 100ms, el efecto causado es una ilusión de paralelismo.