Lo primero que debes entender; una CPU de un solo núcleo es capaz de ejecutar solo un programa a la vez. De Verdad.
Multiprogramación significa mantener varios programas en la memoria a la vez. Solo un programa de aquellos en la memoria puede ejecutarse a la vez. Cuando el programa actualmente en ejecución tiene que detenerse temporalmente por un tiempo, el sistema operativo cambiará la CPU para ejecutar otro programa en la memoria. Las razones para que un programa se detenga incluyen la lectura / escritura del disco duro (que es muy lento en relación con la velocidad de la CPU) y la espera de la entrada del usuario (incluso más lenta).
La multitarea es una extensión de la multiprogramación. En la multitarea, el sistema operativo hace que la CPU cambie rápidamente entre todos los programas en la memoria. Ejecutará un programa por un momento, luego cambiará a otro y lo ejecutará un poco, luego cambiará a otro y lo ejecutará un poco más. El cambio es muy muy rápido, en orden de milisegundos. Al hacerlo, crea la ilusión de que todos los programas se ejecutan al mismo tiempo.
- ¿Debería el ser humano continuar desarrollando la ciencia y crear tecnología más moderna en el futuro? ¿O es lo suficientemente fácil para la vida de hoy?
- ¿Qué se entiende por Internet de las cosas (IoT)?
- ¿Los televisores curvos serán el futuro de la televisión?
- ¿Es realmente posible tener un traje blindado como Iron Man?
- ¿Qué opinas sobre Apis Cor. ¿Impresión 3D de casas?
En este momento, la mayoría de los sistemas operativos y CPU son capaces de realizar múltiples tareas, por lo tanto, la multiprogramación rara vez se usa. Esa podría ser la razón por la que muchas personas nunca escucharon o no están seguras de qué es la multiprogramación.