Différence entre les systèmes de multiprogrammation et de partage de temps

Différence entre les systèmes de multiprogrammation et de partage de temps

Multiprogrammation vs systèmes de partage de temps

Le multiprogrammation est l'allocation de plus d'un programme simultané sur un système informatique et ses ressources. Le multiprogrammation permet d'utiliser efficacement le CPU en permettant à divers utilisateurs d'utiliser efficacement les appareils CPU et E / S. Le multiprogrammation garantit que le CPU a toujours quelque chose à exécuter, augmente ainsi l'utilisation du processeur. D'un autre côté, le partage du temps est le partage des ressources informatiques entre plusieurs utilisateurs en même temps. Étant donné que cela permettra à un grand nombre d'utilisateurs de travailler dans un seul système informatique en même temps, cela réduirait le coût de la fourniture de capacités informatiques.

Qu'est-ce que le système de multiprogrammation?

La multiprogrammation est la commutation rapide de CPU entre plusieurs programmes. Un programme est généralement composé de plusieurs tâches. Une tâche se termine généralement par une demande de déplacement de données qui nécessiteraient que certaines opérations d'E / S soient exécutées. Le multitâche était généralement effectué pour garder le CPU occupé, tandis que le programme en cours d'exécution fait des opérations d'E / S. Par rapport à d'autres instructions d'exécution, les opérations d'E / S sont extrêmement lents. Même si un programme contient un très petit nombre d'opérations d'E / S, la plupart du temps pris pour le programme est consacré à ces opérations d'E / S. Par conséquent, l'utilisation de ce temps d'inactivité et permettre à un autre programme d'utiliser le CPU à ce moment augmentera l'utilisation du processeur. Le multiprogrammation a été initialement développée à la fin des années 1950 en tant que caractéristique des systèmes d'exploitation et a été utilisé pour la première fois dans l'informatique MainFrame. Avec l'introduction de la mémoire virtuelle et des technologies de machines virtuelles, l'utilisation de la multiprogrammation a été améliorée.

Qu'est-ce que le système de partage de temps?

Le partage de temps, qui a été introduit dans les années 1960, est le partage des ressources informatiques entre plusieurs utilisateurs en même temps. Avec des systèmes de partage à temps, plusieurs terminaux sont attachés à un seul serveur dédié ayant son propre CPU. Les actions / commandes exécutées par le système d'exploitation d'un système de partage de temps ont une période de temps très courte. Par conséquent, le processeur est affecté aux utilisateurs des terminaux pendant une courte période, donc un utilisateur d'un terminal a l'impression qu'elle a un CPU dédié à elle derrière son terminal. La courte période dont une commande est exécutée sur un système de partage de temps est appelée une tranche de temps ou un quantum temporel. Avec le développement d'Internet, les systèmes de partage de temps sont devenus plus populaires car les fermes de serveurs coûteuses pourraient héberger un très grand nombre de clients partageant les mêmes ressources. Étant donné que les sites Web fonctionnent principalement dans des rafales d'activité suivies de périodes de temps d'inactivité, le temps au ralenti d'un client pourrait être utilisé efficacement par l'autre, sans que aucun d'entre eux ne remarque le retard.

Quelle est la différence entre le système de multiprogrammation et le système de partage de temps?

La principale différence entre le multiprogrammation et le partage du temps est que le multiprogrammation est l'utilisation efficace du temps du CPU, en permettant à plusieurs programmes d'utiliser le CPU en même temps, mais le partage du temps est le partage d'une installation informatique par plusieurs utilisateurs qui souhaitent utiliser la même installation en même temps. Chaque utilisateur sur un système de partage de temps obtient son propre terminal et a le sentiment qu'elle utilise le CPU seul. En fait, les systèmes de partage de temps utilisent le concept de multiprogrammation pour partager le temps du CPU entre plusieurs utilisateurs en même temps.