Sistemas multiprogramación frente a tiempo compartido
La multiprogramación es la asignación de más de un programa concurrente en un sistema informático y sus recursos. La multiprogramación permite usar la CPU de manera efectiva al permitir que varios usuarios usen la CPU y los dispositivos de E/S de manera efectiva. La multiprogramación se asegura de que la CPU siempre tenga algo que ejecutar, así que aumenta la utilización de la CPU. Por otro lado, el tiempo compartido es compartir los recursos informáticos entre varios usuarios al mismo tiempo. Dado que esto permitirá que una gran cantidad de usuarios trabajen en un solo sistema informático al mismo tiempo, reduciría el costo de proporcionar capacidades informáticas.
¿Qué es el sistema de multiprogramación??
La multiprogramación es el cambio rápido de CPU entre varios programas. Un programa generalmente se compone de varias tareas. Una tarea generalmente termina con alguna solicitud para mover datos que requerirían que se ejecutaran algunas operaciones de E/S. La multitarea se realizó comúnmente para mantener la CPU ocupada, mientras que el programa de ejecución actualmente está realizando operaciones de E/S. En comparación con otras instrucciones de ejecución, las operaciones de E/S son extremadamente lentas. Incluso si un programa contiene un número muy pequeño de operaciones de E/S, la mayoría de las veces tomadas para el programa se dedica a esas operaciones de E/S. Por lo tanto, usar este tiempo de inactividad y permitir que otro programa utilice la CPU en ese momento aumentará la utilización de la CPU. La multiprogramación se desarrolló inicialmente a fines de la década de 1950 como una característica de los sistemas operativos y se utilizó por primera vez en la computación mainframe. Con la introducción de la memoria virtual y las tecnologías de máquinas virtuales, se mejoró el uso de la multiprogramación.
¿Qué es el sistema de tiempo compartido??
El tiempo compartido, que se introdujo en la década de 1960, es el intercambio de recursos informáticos entre varios usuarios al mismo tiempo. En los sistemas de intercambio de tiempo, se adjuntan varios terminales a un solo servidor dedicado que tiene su propia CPU. Acciones/comandos ejecutados por el sistema operativo de un sistema de tiempo compartido tienen un período de tiempo muy corto. Por lo tanto, la CPU se asigna a los usuarios en las terminales por un corto período de tiempo, por lo que un usuario en una terminal tiene la sensación de que tiene una CPU dedicada a ella detrás de su terminal. El corto período de tiempo en que se ejecuta un comando en un sistema de tiempo compartido se llama una porción de tiempo o un tiempo cuántico. Con el desarrollo de Internet, los sistemas de intercambio de tiempo se han vuelto más populares ya que las costosas granjas de servidores podrían alojar una gran cantidad de clientes que comparten los mismos recursos. Dado que los sitios web operan principalmente en explosiones de actividad seguidas de períodos de tiempo de inactividad, el tiempo de ralentí de un cliente podría ser utilizado de manera efectiva por el otro, sin que ninguno de ellos note el retraso.
¿Cuál es la diferencia entre el sistema multiprogramado y el sistema de intercambio de tiempo??
La principal diferencia entre la multiprogramación y el tiempo compartido es que la multiprogramación es la utilización efectiva del tiempo de la CPU, al permitir que varios programas usen la CPU al mismo tiempo, pero el tiempo compartido es compartir una instalación informática de varios usuarios que desean usar la misma instalación al mismo tiempo. Cada usuario en un sistema de tiempo compartido obtiene su propio terminal y tiene la sensación de que está usando la CPU sola. En realidad, los sistemas de tiempo compartido utilizan el concepto de multiprogramación para compartir el tiempo de la CPU entre múltiples usuarios al mismo tiempo.