web-dev-qa-db-fra.com

Différence entre multitâche, multithreading et multitraitement?

Quelle est la différence entre multitâche, multiprogrammation et multitraitement

Cela vient régulièrement pour mes examens de système d’exploitation et je ne trouve pas de bonne réponse ..__ Je connais pas mal le multitâche et la multiprogrammation, mais je dois le confirmer.

63
Jaison Varghese

Wikipédia en paraphrasant:

Multiprogrammation - Un ordinateur exécutant plusieurs programmes à la fois (tout comme Excel et Firefox simultanément) http://en.wikipedia.org/wiki/Multiprogramming

Multitraitement - Un ordinateur utilisant plusieurs processeurs à la fois http://en.wikipedia.org/wiki/Multiprocessing

Multitasking - Tâches partageant une ressource commune (telle que 1 CPU) http://fr.wikipedia.org/wiki/Multitasking#Multithreading

  • Ainsi, quelque chose comme le multithreading est une extension du multitâche.
79
Casey Patton

Multiprogrammation: Plusieurs tâches/programmes/travaux/processus peuvent résider dans la mémoire principale à un moment donné. Cette capacité du système d'exploitation s'appelle la multiprogrammation.

Multitâche: Plusieurs tâches/programmes/travaux/processus peuvent résider dans la même CPU à un moment donné. Cette capacité du système d'exploitation s'appelle le multitâche.

30
Rajendra Uppal

Aucune des réponses ci-dessus, à l'exception de celle de M. Vaibhav Kumar, n'est claire ou non ambiguë. [désolé, pas d'offense]

La programmation multiple et les tâches sont les mêmes concept de tâche de commutation dans le processeur, la différence est dans le concept et la raison de la commutation.

MProgramming: pour ne pas laisser le processeur inactif lorsque la tâche active nécessite plus de temps IO ou toute autre réponse autre que celle du processeur, le processeur se charge et travaille sur une autre tâche qui n'attend pas IO et prêt pour le traitement.

MTasking: même après le MPrograming, l'utilisateur peut avoir l'impression qu'une seule tâche est en cours d'exécution et qu'une autre attend simplement de venir au processeur. Ainsi, la tâche active est également permutée de la CPU active et maintenue de côté. Une autre tâche est alors introduite dans la CPU pour une très petite fraction du temps humain [seconde], et elle est à nouveau transférée à la tâche précédente. De cette façon, l'utilisateur aura l'impression que les deux tâches sont actives dans la CPU en même temps. Mais en réalité, chaque tâche n’est active qu’une fois à un temps de calcul donné [en micro ou nano secondes]

Et MProcessing est, comme mon ordinateur a quad core, donc j'utilise 4 processeurs à la fois, ce qui signifie que 4 instances de multiprogrammation différentes se produisent dans ma machine. Et ces 4 processeurs font un autre grand nombre de MTasking.

Alors MProcessing> MProgramming> Mtasking

Et MThreading n une autre rupture de chaque tâche. cela aussi pour donner à l'utilisateur une vie heureuse. Ici, plusieurs tâches [comme Word doc et Media Player] ne viennent pas en image, mais de petites tâches subordonnées telles que la coloration du texte dans Word et la vérification orthographique automatique dans Word font partie du même exécutable Word. 

je ne sais pas si j'ai pu clarifier toutes les confusions ... 

16
Manas

Multiprogrammation - Les tâches à exécuter sont chargées dans un pool. Un certain nombre de ces travaux sont chargés dans la mémoire principale et l'un d'entre eux est sélectionné dans le pool pour être exécuté par la CPU. Si, à un moment donné, le programme en cours se termine ou nécessite les services d'un périphérique, le contrôle de la CPU est attribué au travail suivant du pool. Lorsque les programmes se terminent, davantage de tâches sont chargées dans la mémoire pour exécution et le contrôle de la CPU passe à une autre tâche en mémoire. De cette manière, la CPU exécute toujours un programme ou une partie de celui-ci au lieu d'attendre une imprimante, un lecteur de bande ou une console. 

Multi-traitement - exécution simultanée de plusieurs programmes ou séquences d'instructions par des CPU séparées sous contrôle intégré

système multitâche - exécution simultanée ou entrelacée de deux tâches ou plus par une seule CPU. 

Système multi-utilisateurs - Système informatique dans lequel plusieurs terminaux se connectent à un ordinateur hôte qui gère les tâches de traitement.

4
Jay Halani

Multiprogrammation: Cela signifie qu’il faut exécuter plusieurs programmes sur un ordinateur. Ici, l’utilisateur ne peut pas interagir avec le système, tout est décidé par le système d’exploitation.

Multitâche: Il s’agit d’une extension logique de la multiprogrammation. Cela signifie l’exécution de plusieurs tâches sur un ordinateur. La commutation entre les tâches est si rapide que l’utilisateur peut interagir avec le système.

Multithreading: Généralement vu quand plus de clients accèdent au serveur.

4
sangita

Multiprogrammation et multitâche; les deux résolvent des problèmes différents, bien qu’ils utilisent une méthode similaire pour passer d’un processus à l’autre.

Multiprogrammation : Nous avons constaté au début que certains processus devaient parfois utiliser des périphériques (par exemple: E/S), auquel cas la CPU restait inactive. Pour utiliser le processeur plus efficacement, il a été envisagé de disposer de plusieurs processus en mémoire. Ainsi, si un processus en cours d'exécution nécessite un périphérique, un autre processus peut utiliser le processeur. C'était l'idée derrière la multiprogrammation.

Multitasking : Il est nécessaire que plusieurs processus apparaissent en même temps pour l'utilisateur final. Donc, cela est simulé en basculant entre ces processus et en les faisant fonctionner simultanément sur le CPU. C'est multitâche.

4
vaibhav kumar

Multitâche - Il est également appelé partage de temps, car plusieurs tâches (ou processus) peuvent être changés régulièrement, à un moment donné, de sorte que l'utilisateur puisse avoir la vue qu'il fonctionne simultanément.

Multi-threading - Pour enrichir l'expérience utilisateur, les tâches (dans un processus unique) sont ensuite divisées en sous-tâches. Ces sous-tâches peuvent alors fonctionner dans un environnement multitâche.

Multi-traitement - Il s'agit du processus consistant à avoir plusieurs processeurs pour exécuter un processus (ou un programme), dans un temps donné. Cela diminue le temps de calcul.

Multi-programmation - Il est généralement utilisé dans les systèmes d'exploitation par lots. Ici, le travail (ou processus) obtient le processeur et la mémoire complets pendant l'exécution. La programmation multiple est le système dans lequel de nombreux programmes différents sont chargés dans la mémoire principale de l'ordinateur et le premier commence à s'exécuter. Lorsqu'il termine son exécution (c'est-à-dire en état d'exécution) et attend un périphérique (c'est-à-dire en attente), le processus suivant commence à s'exécuter. Cela contraste avec le multitâche, auquel cas chaque tâche se voit attribuer un créneau temporel (également appelé quantum ) pour son exécution.

3
Palak Jain

Multithreading Le multithreading étend l'idée du multitâche aux applications, de sorte que vous pouvez subdiviser des opérations spécifiques au sein d'une application unique en threads individuels.

2
VIKASH MAINANWAL

Multiprogramming - Un ordinateur exécutant plusieurs programmes à la fois (comme exécuter Excel et Firefox simultanément)

Multi-traitement - Un ordinateur utilisant plusieurs processeurs à la fois

Multiprogrammation - Plusieurs tâches/programmes/travaux/processus peuvent résider dans la mémoire principale à un moment donné. Cette capacité du système d'exploitation s'appelle la multiprogrammation.

Multitasking : plusieurs tâches/programmes/travaux/processus peuvent résider dans la même CPU à un moment donné. Cette capacité du système d'exploitation s'appelle le multitâche.

Système multi-utilisateurs - Système informatique dans lequel plusieurs terminaux se connectent à un ordinateur hôte qui gère les tâches de traitement.

Multitâche - Il s'agit essentiellement d'une multiprogrammation dans le contexte d'un environnement interactif mono-utilisateur, dans lequel le système d'exploitation bascule entre plusieurs programmes en mémoire principale afin de donner l'illusion que plusieurs d'entre eux sont exécutés simultanément. Les algorithmes de planification couramment utilisés pour le multitâche sont les suivants: Round-Robin, Planification prioritaire (files d'attente multiples), Shortest-Process-Next.

MULTIPROCESSING, c'est comme si le système d'exploitation traitait les différentes tâches en mémoire principale de manière à donner l'heure à chacune des tâches, lorsqu'une autre tâche est occupée pour une tâche telle que le fonctionnement des E/S. Ainsi, tant qu’au moins un travail doit être exécuté, le processeur ne reste jamais inactif. et ici il est automatiquement géré par le système d'exploitation, 

2
user3887153

Multiprogramming - Dans un système de multiprogrammation, plusieurs programmes chargés en mémoire principale sont prêts à être exécutés. Un seul programme à la fois est capable d’obtenir que la CPU exécute ses instructions pendant que tous les autres attendent leur tour. L’idée principale de la multiprogrammation est de maximiser l’utilisation du temps CPU . Supposons que le processus en cours exécute une tâche d’E/S, le système d’exploitation peut alors interrompre ce processus et laisser le contrôle à l’un des autres programmes de la mémoire principale. sont prêts à être exécutés (c'est-à-dire commutation de contexte de processus) . De cette manière, le système ne perd pas de temps CPU en attendant que la tâche d'E/S soit terminée.

Multitraitement - Le multitraitement est la capacité d'un système d'exploitation à exécuter plusieurs processus simultanément sur une machine multiprocesseur. Dans un système multitraitement, un ordinateur utilise plusieurs processeurs à la fois.

Multitâche - Le multitâche est la capacité d'un système d'exploitation à exécuter plusieurs tâches simultanément sur un seul processeur. Ces tâches multiples partagent des ressources communes telles que le processeur et la mémoire. Dans un système multitâche, la CPU passe d’une tâche à la suivante si rapidement que toutes les tâches s’exécutent en même temps.

Il existe des différences entre le multitâche et la multiprogrammation. Une tâche dans un système multitâche n'est pas un programme d'application complet, mais elle peut être transformée en "fil d'exécution" lorsqu'un processus est divisé en sous-tâches. Chaque tâche plus petite ne pirate pas le processeur jusqu'à ce qu'elle se termine, ils partagent une petite partie du temps processeur appelé Quantum. Les systèmes d'exploitation multiprogrammes et multitâches sont des systèmes à temps partagé.

Multithreading - Le multithreading est l'extension du multitâche. Le multithreading est la capacité d'un système d'exploitation à subdiviser l'opération spécifique au sein d'une application unique en plusieurs threads. Chacun de ces threads peut être exécuté en parallèle. Le système d'exploitation divise le temps de traitement non seulement entre différentes applications, mais également entre chaque thread au sein d'une application.

1
Himanshu Mahajan

Multiprogramming - Ce terme est utilisé dans le contexte des systèmes de traitement par lots. Vous avez plusieurs programmes simultanément dans la mémoire principale. La CPU planifie un temps pour chacun.

C'est à dire. soumettre plusieurs tâches et toutes sont chargées en mémoire et exécutées selon un algorithme de planification. Les algorithmes de planification de système de traitement par lots courants incluent: Premier arrivé, premier servi, Premier travail, Premier temps, Temps restant, Premier temps.

Multitasking - Il s'agit essentiellement d'une multiprogrammation dans le contexte d'un environnement interactif pour un utilisateur unique, dans lequel le système d'exploitation bascule entre plusieurs programmes en mémoire principale afin de donner l'illusion que plusieurs d'entre eux s'exécutent simultanément. Les algorithmes de planification couramment utilisés pour le multitâche sont les suivants: Round-Robin, Planification prioritaire (files d'attente multiples), Shortest-Process-Next.

0
the979kid

MULTIPROCESSING, c'est comme si le système d'exploitation traitait les différentes tâches en mémoire principale de manière à donner l'heure à chacune des tâches, lorsqu'une autre tâche est occupée pour une tâche telle que le fonctionnement des E/S. Ainsi, tant qu’au moins un travail doit être exécuté, le processeur ne reste jamais inactif. Et ici, il est automatiquement géré par le système d'exploitation, sans interaction de l'utilisateur avec l'ordinateur. 

Mais lorsque nous parlons de MULTITASKING, l’utilisateur est effectivement impliqué dans différents travaux comme celui de dragueur de mines ou de vérification du courrier ou autre. Le processeur exécute plusieurs tâches en basculant entre elles, mais la commutation est tellement rapide que l'utilisateur a l'illusion que les deux applications s'exécutent simultanément. 

La différence principale entre mp et mt réside donc dans le fait que, dans mp, le système d’exploitation gère différentes tâches dans la mémoire principale de telle sorte que, si une tâche attend quelque chose, elle sera immédiatement exécutée. De plus, l'utilisateur est en interaction avec le système et obtient l'illusion du fait que les deux applications ou l'une des applications s'exécutent simultanément.

0
Rajdeep

Multiprogrammation - Plus que sur la tâche dans la mémoire principale.

Muntitasking - Plus d'un programme exécuté simultanément. c'est plus d'un programme dans la CPU. 

0
Raj

Dans un système multiprogramming , plusieurs programmes chargés en mémoire principale sont prêts à être exécutés. Un seul programme à la fois est capable d’obtenir que la CPU exécute ses instructions pendant que tous les autres attendent leur tour. L'idée principale de la multiprogrammation est de maximiser l'utilisation du temps de calcul. Supposons que le processus en cours exécute une tâche d’E/S, le système d’exploitation peut alors interrompre ce processus et laisser le contrôle à l’un des autres programmes de mémoire principale prêts à être exécutés (c.-à-d. Commutation du contexte du processus). De cette manière, le système ne perd pas de temps processeur en attendant que la tâche d'E/S soit terminée.

Multitraitement - Le multitraitement est la capacité d'un système d'exploitation à exécuter plusieurs processus simultanément sur une machine multiprocesseur. Dans un système multitraitement, un ordinateur utilise plusieurs processeurs à la fois.

Multitâche - Le multitâche est la capacité d'un système d'exploitation à exécuter plusieurs tâches simultanément sur un seul processeur. Ces tâches multiples partagent des ressources communes telles que le processeur et la mémoire. Dans un système multitâche, la CPU passe d’une tâche à la suivante si rapidement que toutes les tâches s’exécutent en même temps.

Il existe des différences entre le multitâche et la multi-programmation. Une tâche dans un système multitâche n'est pas un programme d'application complet, mais elle peut faire référence à un "fil d'exécution" lorsqu'un processus est divisé en sous-tâches. Chaque tâche plus petite ne pirate pas le processeur jusqu'à ce qu'elle se termine, ils partagent une petite partie du temps processeur appelé Quantum. Les systèmes d'exploitation multi-programmation et multi-tâches sont des systèmes à temps partagé.

Multi threading - Le multi threading est l'extension du multitâche. Le multi-threading est la capacité d'un système d'exploitation à subdiviser l'opération spécifique au sein d'une seule application en plusieurs threads. Chacun de ces threads peut être exécuté en parallèle. Le système d'exploitation divise le temps de traitement non seulement entre différentes applications, mais également entre chaque thread au sein d'une application.

0
acharya sushant

Multi-programmation: -

Plusieurs processus (tâches) peuvent résider à la fois dans la mémoire principale. En principe, il est conçu pour réduire les pertes de ressources processeur lors des opérations d'E/S, par exemple: si un travail est en cours d'exécution et nécessite une opération d'E/S. Les opérations d'E/S sont effectuées à l'aide de DMA et le processeur affecte à un autre travail de la file d'attente des travaux jusqu'à l'opération I/O du travail1 terminée. puis job1 continue encore. De cette façon, cela réduit le gaspillage de la CPU.

0
jack

Plusieurs threads peuvent exister dans un même processus. Les threads appartenant au même processus partagent la même zone mémoire (peuvent lire et écrire dans les mêmes variables et peuvent interférer les uns avec les autres). Au contraire, différents processus vivent dans des zones de mémoire différentes et chacun a ses propres variables. Pour communiquer, les processus doivent utiliser d'autres canaux (fichiers, canaux ou sockets).

Si vous souhaitez paralléliser un calcul, vous aurez probablement besoin du multithreading, car vous voulez probablement que les threads coopèrent sur la même mémoire.

En termes de performances, les threads sont plus rapides à créer et à gérer que les processus (car le système d'exploitation n'a pas besoin d'allouer une nouvelle zone de mémoire virtuelle), et la communication inter-thread est généralement plus rapide que la communication inter-processus. Mais les threads sont plus difficiles à programmer. Les threads peuvent interférer les uns avec les autres et écrire dans la mémoire de chacun, mais la façon dont cela se produit n'est pas toujours évidente (en raison de plusieurs facteurs, principalement la réorganisation des instructions et la mise en cache de la mémoire). à vos variables.

La source

0
Revanth Kumar

Multi-programmation: -

Plusieurs processus (tâches) peuvent résider à la fois dans la mémoire principale. En principe, il est conçu pour réduire les pertes de ressources processeur lors des opérations d'E/S, par exemple: si un travail est en cours d'exécution et nécessite une opération d'E/S. Les opérations d'E/S sont effectuées à l'aide de DMA et le processeur affecte à un autre travail de la file d'attente des travaux jusqu'à l'opération I/O du travail1 terminée. puis job1 continue encore. De cette façon, cela réduit le gaspillage de la CPU.


Multi-Tâches: -

Dans ce type de système d'exploitation, plusieurs tâches (processus) sont exécutées simultanément (simultanément, cela ne signifie pas que la tâche s'exécute exactement au même moment .. car le multitâche n'implique pas de parallélisme) . Dans ce système, une nouvelle tâche démarre avant les autres la tâche terminée dépend de la technique de planification de la CPU utilisée && tous les processus partagent des ressources communes.


Multi-traitement: - 

Utilisez 2 processeurs ou plus dans un seul processeur. Donc, la tâche peut s’exécuter en parallèle. Mais une certaine synchronisation est nécessaire. 

0
Sudhanshu Patel

Multiprograming

Exécuter plus d’un programme avec dans une application pour effectuer une tâche donnée.

Exemple : Sous MS Word, Rédaction d'un document et envoi d'un courrier électronique

Multitâche

Exécuter plus d'une application pour effectuer une tâche donnée.

Exemple : écouter une chanson, jouer à un jeu, travailler simultanément avec MS Word, Excel et d'autres applications

Multitraitement  

Exécution de plus d'une instruction via un processeur.

Exemple Lorsque vous créez un fichier, l'ordinateur prend par défaut l'heure et la date.

0
Kirtish Srivastava

Fondamentalement La multi-programmation est un concept dans lequel vous exécutez plusieurs programmes simultanément, supposons que vous exécutiez deux programmes tels que chrome (navigateur) et calculatrice (application système).

Multi-traitement est l'endroit où un utilisateur utilise plusieurs processeurs pour accomplir une tâche.

Pour savoir Multi threading nous avons besoin de savoir ce qu'est un thread. Un thread est fondamentalement une partie d'un programme en cours d'exécution dans le programme. Le meilleur exemple de fil est constitué par les onglets d'un navigateur. Si vous avez 5 onglets qui sont ouverts et utilisés, alors le programme crée en réalité 5 threads du programme, ce concept est appelé multi-threading.

0
Tuhin