1 |
Programmation Réactive Synchrone, Langage et Contrôle des RessourcesDabrowski, Frederic 22 June 2007 (has links) (PDF)
La notion de système réactif désigne des systèmes qui maintiennent une<br />interaction permanente avec un environnement donné. La famille des<br />langages synchrones regroupe un des langages de programmation<br />dédiés à la conception de tels systèmes. De manière générale, ces langages<br />permettent de décrire le comportement de composants parallèles qui<br />s'exécutent de manière synchrone, relativement à une horloge logique sur<br />laquelle repose un mécanisme de diffusion instantanée de l'information.<br />La conception de ces langages permet un ordonnancement statique des composants<br />parallèles et une compilation des programmes vers du code séquentiel, des<br />automates à états finis ou des circuits. En contrepartie, les contraintes<br />imposées sur ces langages limitent leur utilisation à des domaines très<br />spécifiques. La programmation réactive désigne un paradigme de programmation<br />qui repose sur une relaxation de ces contraintes. Ce paradigme de<br />programmation, inspiré plus particulièrement par le langage Esterel, propose<br />un type de programmation concurrente plus général ayant pour objectif la<br />réalisation, par exemple, de controleurs "event driven", d'interfaces graphiques<br />, de simulations physiques, de service web et de jeux multi-joueurs.<br />Ce document porte sur la notion de logiciel sur dans le cadre de la<br />programmation réactive.<br />Dans la première partie, nous nous intéressons à la question du<br />controle statique des ressources nécessaires à l'exécution d'un programme<br />pour une algèbre de processus synchrone inspirée par le paradigme réactif.<br />Dans la seconde partie, nous nous intéressons à la question de<br />l'utilisation de la programmation réactive pour le développement<br />d'applications adaptées aux architectures multicores.<br />Plus précisèment, nous nous reposerons sur une analyse statique<br />des programmes permettant d'étendre dans un cadre plus générale<br />(vrai concurrence) les avantages d'une approche purement coopérative<br />de l'ordonnancement des threads choisie par plusieurs implémentations<br />de langages basés sur le paradigme réactif.
|
Page generated in 0.1047 seconds