Communications inter-processusCommunications inter-processusCours SR (Systemes et Reseaux) I5TC1Licence L3 InformatiqueOlivier Togni David Gross-AmblardLe2i / IEM / uB12 octobre 20091 de 55Communications inter-processusCommunications inter-processus inter-processusSignauxLes tubesExclusion mutuelleRessources critiquesSection critiqueTechniques d’exclusion mutuelleApplication : lecteur-redacteur, producteur-consommateurInterblocageAspects techniques2 de 55Communications inter-processus inter-processusSignauxSignauxSignal = outil de base de la noti cation d’evenement.Fonctionnent sur un schema essentiellement asynchrone.Noyauprocess ou shellPSex: killAclavierC−cDe fa con simpli e, quand le signal arrive, le noyau interrompt leprocessus qui declenche alors son gestionnaire de signaux (handler)pour reagir de fa con appropriee.3 de 55Communications inter-processus inter-processusSignauxSignauxLes signaux utilises initialement plut^ ot pour la gestion d’erreurs ontvu leur r^ole s’etendre dans les versions plus recentes d’Unix. Ils ontneanmoins de serieuses limitations :I Ils coutent^ cher : ils sont lances par un appel systeme, lerecepteur est interrompu, sa pile d’execution est modi ee, lehandler prend la main, la pile d’execution est restauree.I En nombre limite : de l’ordre de 20 a 60, dont seulement deuxsignaux pour la programmation utilisateur (les autres signauxsont utilises par le systeme lui m^eme) ...