ça veut dire quoi tout ça ?
Page 1 sur 1
thread, mutex, process, semaphore, event, ...
#2
Posté 30 janvier 2003 - 07:50
thread: C'est pour le multitache
mutex (je ne sais plus)
Process: c'est le nom du processus qui tourne
Semaphore: permet d'attendre la fin d'une fonction avant de continuer le programme
event: evenement
mutex (je ne sais plus)
Process: c'est le nom du processus qui tourne
Semaphore: permet d'attendre la fin d'une fonction avant de continuer le programme
event: evenement
Mes bons liens: Cliquez-ici - Top Astuce: Cliquez-ici -
Sinon, faites une recherche sur le forum /!\
Jawama- Classement internet -Hacks Navigateur - Coupe du Monde 2010
Sinon, faites une recherche sur le forum /!\
Jawama- Classement internet -Hacks Navigateur - Coupe du Monde 2010
#4
Posté 30 janvier 2003 - 07:59
Bon, si tu veux, un thread, c une tache, plus tu as de thread en route, plus tu as de taches en cours d'execution
Mes bons liens: Cliquez-ici - Top Astuce: Cliquez-ici -
Sinon, faites une recherche sur le forum /!\
Jawama- Classement internet -Hacks Navigateur - Coupe du Monde 2010
Sinon, faites une recherche sur le forum /!\
Jawama- Classement internet -Hacks Navigateur - Coupe du Monde 2010
#6
Posté 30 janvier 2003 - 11:31
mutex = mutual exclusion = exclusion mutuelle = multitâche coopératif = partage d'une ressource de manière exclusive
normalement, le thread est créé au niveau du noyau, le process est créé à l'intérieur d'un thread et peut partager ce thread avec d'autres process... si je me souviens bien de mes cours de systèmes...
un sémaphore, c'est comme ce qu'explique DraZ, c'est un phare au milieu de l'océan qui t'indique si la côté est là ou pas :-) (plus exactement, tu mets dedans ce que tu veux, et ca permet de signaler d'une appli à l'autre un evenement quelconque... genre le process "fiston" qui se fait dire "à table" par le process "maman"...)
normalement, le thread est créé au niveau du noyau, le process est créé à l'intérieur d'un thread et peut partager ce thread avec d'autres process... si je me souviens bien de mes cours de systèmes...
un sémaphore, c'est comme ce qu'explique DraZ, c'est un phare au milieu de l'océan qui t'indique si la côté est là ou pas :-) (plus exactement, tu mets dedans ce que tu veux, et ca permet de signaler d'une appli à l'autre un evenement quelconque... genre le process "fiston" qui se fait dire "à table" par le process "maman"...)
#7
Posté 30 janvier 2003 - 11:36
Un mutex est d'ailleurs un sémaphore un peu particulier... (un sémaphore d'exclusion mutuelle).
En gros c'est une variable, quand un process l'utilise il "prend le mutex" et le fait passer de 1 à 0, et ainsi personne d'autre peut le prendre. Donc si tu places ton mutex sur une zone mémoire par exemple, ou une interface série ou autre, tu seras sur qu'y'a pas plus d'un process qui l'utilise à la fois.
Un sémaphore plus généralement, comme dit Kewlcat, il me semble que c'est à peu près comme une variable globale, elle est accessible par tout le monde.
Tout ça c'est en rapport avec de l'info temps réel si je ne m'abuse
En gros c'est une variable, quand un process l'utilise il "prend le mutex" et le fait passer de 1 à 0, et ainsi personne d'autre peut le prendre. Donc si tu places ton mutex sur une zone mémoire par exemple, ou une interface série ou autre, tu seras sur qu'y'a pas plus d'un process qui l'utilise à la fois.
Un sémaphore plus généralement, comme dit Kewlcat, il me semble que c'est à peu près comme une variable globale, elle est accessible par tout le monde.
Tout ça c'est en rapport avec de l'info temps réel si je ne m'abuse
#8
Posté 30 janvier 2003 - 11:44
J'espère pas me planter totalement, et si c'est le cas, pas taper
Thread : c'est le fait décomposer un programmes en plusieurs processus. Je crois que c'est vraiment interressant surtout pour des config qui ont plusieurs processeurs. Sous linux, en tout cas, les threads servent à ce que les entrée/sortie ne bloquent pas le reste (enfin ce que j'ai compris, mais je commence vraiment un cours dessus que lundi
). Enfin je t'aide pas trop sans doute.
Mutex : mutual exclusion, c'est pour restreindre l'accès à une ressource (une imprimante, par exemple) à un seul processus à la fois sur un OS multitache (où plusieurs processus peuvent entrer en concurrence pour une ressource). Si la ressource est libre, il la bloque (pose de verrou), l'utilise puis déverouille, sinon il est gelé jusqu'à ce qu'elle se libère.
Sémaphore : extension du mutex à plusieurs utilisations. Par exemple, 2 imprimantes, qu'on utilise indifférement. La ressource imprimante peut alors être utilisé par 2 processus à la fois. Au niveau de l'implémentation, c'est un compteur, et la ressource est bloquée quand il arrive à 0 et le reste tant qu'aucun processus n'a libéré la ressource.
En gros, l'enjeu est de permettre l'utilisation de plusieurs ressources non ou peu partageable, en évitant l'interblocage (le processus 1 a verrouillé la ressource 1 et attends la ressource 2, le processus 2 a verrouillé la ressource 2 et attends la ressource 1), avec la plus grande efficacité possible (rapide et implémentable dans un processeur). Sinon, y a des tas d'algo, genre algorithme des banquiers et autres.
Event, je vois pas trop ce que c'est...
Thread : c'est le fait décomposer un programmes en plusieurs processus. Je crois que c'est vraiment interressant surtout pour des config qui ont plusieurs processeurs. Sous linux, en tout cas, les threads servent à ce que les entrée/sortie ne bloquent pas le reste (enfin ce que j'ai compris, mais je commence vraiment un cours dessus que lundi
Mutex : mutual exclusion, c'est pour restreindre l'accès à une ressource (une imprimante, par exemple) à un seul processus à la fois sur un OS multitache (où plusieurs processus peuvent entrer en concurrence pour une ressource). Si la ressource est libre, il la bloque (pose de verrou), l'utilise puis déverouille, sinon il est gelé jusqu'à ce qu'elle se libère.
Sémaphore : extension du mutex à plusieurs utilisations. Par exemple, 2 imprimantes, qu'on utilise indifférement. La ressource imprimante peut alors être utilisé par 2 processus à la fois. Au niveau de l'implémentation, c'est un compteur, et la ressource est bloquée quand il arrive à 0 et le reste tant qu'aucun processus n'a libéré la ressource.
En gros, l'enjeu est de permettre l'utilisation de plusieurs ressources non ou peu partageable, en évitant l'interblocage (le processus 1 a verrouillé la ressource 1 et attends la ressource 2, le processus 2 a verrouillé la ressource 2 et attends la ressource 1), avec la plus grande efficacité possible (rapide et implémentable dans un processeur). Sinon, y a des tas d'algo, genre algorithme des banquiers et autres.
Event, je vois pas trop ce que c'est...
Page 1 sur 1

Aide
Commencer un sujet
Ajouter une réponse


Multi-citation










