Expose v2 Threads Multithreading Hyperthreading C Motivation ?? Notions générales Threading Multithreading Hyperthreading CMotivation Une application est généralement mise en ?uvre comme un processus distinct avec un ou plusieurs threads de contrôle CNoti
Threads Multithreading Hyperthreading C Motivation ?? Notions générales Threading Multithreading Hyperthreading CMotivation Une application est généralement mise en ?uvre comme un processus distinct avec un ou plusieurs threads de contrôle CNotions générales Processeur CPU Circuit électronique à l'intérieur de l'ordinateur qui gère toutes les instructions qu'il reçoit du matériel et des logiciels en cours d'exécution sur l'ordinateur Processus Opération complexe exécutable par un ordinateur et dé ?ni par ? Ensemble d'instructions à exécuter ? Espace d'adressage en mémoire vive pour stocker les données ? Autres ressources comme des descripteurs de ?chier des ports réseau etc C ?ur CORE Unité de traitement qui reçoit des instructions pour e ?ectuer des actions en fonction des instructions Système d ? exploitation Ensemble de programmes qui dirige l'utilisation des ressources d'un ordinateur par des logiciels applicatifs CEtat d ? un processus Les états successifs d'un processus sont généralement représentées par un diagramme d'état ? Initialisation C'est le premier état d'un processus Il y attend que l'ordonnanceur le place dans l'état prêt ce qui peut prendre plus ou moins longtemps ? Prêt ou en attente le processus a été chargé en mémoire centrale et attente son exécution sur le processeur ? Elu ou exécution Le processus est en cours d'exécution par le processeur ? Endormi ou bloqué Le processus a été interrompu ou attend un événement ? Terminé Le processus est terminé c'est-à-dire soit le résultat est connu soit le programme a été forcé de s'arrêter Initialisation Prêt en attente Terminé Endormi bloqué Elu exécution CThread Les threads sont généralement présentés en premier lieu comme des processus allégés ne réclamant que peu de ressources pour les changements de contexte La vision du programmeur est d'ailleurs plus orientée sur ce dernier point que sur la simplicité de commutation des t? ches Le mot thread peut se traduire par ?l d'exécution ? c'est-à-dire un déroulement particulier du code du programme qui se produit parallèlement à d'autres entités en cours de progression Les di ?érents threads d'une application partagent un même espace d'adressage en ce qui concerne leurs données CTypes des Threads ? Threads utilisateurs User Les threads utilisateurs sont des threads qui ne sont pas liés au système d'exploitation Ceux-ci sont gérés à l'intérieur d'un processus par une bibliothèque logicielle Celle-ci s'occupe de la création et la suppression des threads ainsi que de leur ordonnancement Le système d'exploitation ne peut pas les ordonnancer et n'a donc pas besoin de mémoriser les informations des threads Par contre chaque thread doit se partager le temps alloué au processus lors de l'ordonnancement ? Threads noyaux Kernel Les threads noyaux sont gérés par le système d'exploitation qui peut les créer les détruire ou les ordonnancer L'ordonnancement est donc plus e ?cace vu que chaque thread est ordonnancé tel quel Il est donc nécessaire de disposer d'une table des threads pour mémoriser les contextes d'exécution et les informations de chaque thread CAvantages et Inconvénients Les programmes qui utilise les threads sont plus rapide que les programmes architecturés classiquement les machines comportant plusieurs
Documents similaires










-
66
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Aucune attribution requise- Détails
- Publié le Jul 19, 2022
- Catégorie Industry / Industr...
- Langue French
- Taille du fichier 31.3kB