Différence entre le multitraitement symétrique et asymétrique
Contenu
- Tableau de comparaison
- Définition du multitraitement symétrique
- Définition du multitraitement asymétrique
- Conclusion:
Il existe deux types de multitraitement, le multitraitement symétrique et le multitraitement asymétrique. Le système de multitraitement a plusieurs processeurs et ils peuvent exécuter plusieurs processus simultanément. Dans le multitraitement symétrique, les processeurs partagent la même mémoire. Dans le multitraitement asymétrique, il existe un processeur principal qui contrôle la structure de données du système. La principale différence entre le multitraitement symétrique et asymétrique est que dans Multi-traitement symétrique tous les processeurs du système exécutent des tâches dans le système d'exploitation. Mais en Multi-traitement asymétrique seule la tâche d'exécution du processeur maître dans le système d'exploitation.
Vous pouvez différencier les multiprocesseurs symétriques et les multiprocesseurs asymétriques sur certains autres points abordés dans le tableau de comparaison présenté ci-dessous.
- Tableau de comparaison
- Définition
- Différences Clés
- Conclusion
Tableau de comparaison
Base de comparaison | Multi-traitement symétrique | Multi-traitement asymétrique |
---|---|---|
De base | Chaque processeur exécute les tâches dans le système d'exploitation. | Seul le processeur maître exécute les tâches du système d'exploitation. |
Processus | Le processeur prend les processus dans une file d'attente commune prête, ou il peut y avoir une file d'attente privée prête pour chaque processeur. | Le processeur maître affecte des processus aux processeurs esclaves, ou bien certains processus sont prédéfinis. |
Architecture | Tous les processeurs du multitraitement symétrique ont la même architecture. | Tous les processeurs en multitraitement asymétrique peuvent avoir une architecture identique ou différente. |
la communication | Tous les processeurs communiquent avec un autre processeur par une mémoire partagée. | Les processeurs n'ont pas besoin de communiquer car ils sont contrôlés par le processeur maître. |
Échec | Si un processeur tombe en panne, la capacité de calcul du système diminue. | Si un processeur maître échoue, un esclave est dirigé vers le processeur maître pour poursuivre l'exécution. Si un processeur esclave échoue, sa tâche est commutée sur d'autres processeurs. |
Facilité | Le multiprocesseur symétrique est complexe car tous les processeurs doivent être synchronisés pour maintenir l'équilibre de la charge. | Le multiprocesseur asymétrique est simple, car le processeur principal accède à la structure de données. |
Définition du multitraitement symétrique
Multi-traitement symétrique est celui dans lequel tout le processeur exécute les tâches dans le système d'exploitation. Il a pas de maître-esclave relation comme multi-traitement asymétrique. Tous les processeurs ici, communiquent en utilisant le la memoire partagée.
Les processeurs commencent à exécuter les processus à partir de la file d'attente commune commune. Chaque processeur peut également disposer de sa propre file d'attente privée de processus prêts à exécuter. Il doit être pris en charge par le planificateur que deux processeurs n'exécutent pas le même processus.
Le multitraitement symétrique est approprié l'équilibrage de charge, meilleur tolérance aux fautes et réduit également les chances de CPU goulot. Il est complexe car la mémoire est partagée entre tous les processeurs. En multitraitement symétrique, une défaillance du processeur entraîne capacité informatique réduite.
Définition du multitraitement asymétrique
Multi-traitement asymétrique a la Maître d'esclave relation entre les processeurs. Il existe un processeur maître qui contrôle le processeur esclave restant. Le processeur maître attribue des processus à un processeur esclave, ou ils peuvent avoir une tâche prédéfinie à exécuter.
Le processeur principal contrôle le Structure de données. le Planification des processus, I / O le traitement et les autres activités du système sont contrôlés par le processeur maître.
En cas de défaillance d'un processeur maître, un processeur parmi les processeurs esclaves est chargé par le processeur maître de poursuivre l'exécution. En cas de défaillance d'un processeur esclave, l'autre processeur esclave prend en charge son travail. Le multitraitement asymétrique est Facile comme il n'y a qu'un seul processeur qui contrôle la structure de données et toutes les activités du système.
- Le point le plus distinctif entre le multitraitement symétrique et asymétrique est que les tâches dans le système d'exploitation ne sont gérées que par le processeur maître dans le multitraitement asymétrique. En revanche, tous les processeurs du multitraitement symétrique exécutent les tâches dans le système d'exploitation.
- Dans le multitraitement symétrique, chaque processeur peut avoir sa propre file d'attente privée de processus prêts, ou bien prendre en charge des processus d'une file d'attente commune commune. Mais, dans le multitraitement asymétrique, le processeur maître attribue des processus aux processeurs esclaves.
- Tous les processeurs du multitraitement symétrique ont la même architecture. Mais la structure des processeurs en multiprocesseur asymétrique peut différer.
- Les processeurs en multitraitement symétrique communiquent entre eux par la mémoire partagée. Toutefois, les processeurs en multitraitement asymétrique n'ont pas besoin de communiquer entre eux car ils sont contrôlés par le processeur maître.
- En cas de défaillance du processeur maître, un processeur esclave est tourné vers le processeur maître pour poursuivre l'exécution. Toutefois, si un processeur en multitraitement symétrique échoue, la capacité de calcul du système est réduite.
- Le multiprocesseur asymétrique est simple car seul le processeur maître accède à la structure de données, tandis que le multiprocesseur symétrique est complexe car tous les processeurs doivent fonctionner en synchronisation.
Conclusion:
Les multiprocesseurs augmentent la vitesse du système, car on peut exécuter plusieurs processus simultanément. Le multitraitement asymétrique est simple, un seul processeur (maître) peut accéder à la structure de données. Bien que le multitraitement symétrique soit complexe, la structure de données est partagée entre tous les processeurs et tous les processeurs doivent fonctionner en synchronisation.