340 research outputs found

    Conception d'un générateur d'intergiciels temps réel embarqués dans l'automobile.

    Get PDF
    Les applications temps réel sont des applications dont la correction ne dépend pas seulement du résultat produit, mais aussi de la date à laquelle il est produit. Par exemple, dans le domaine de l'automobile, lors d'un freinage, la force à appliquer sur les freins est évaluée par une application (ABS : AntiBlockier System, système évitant de bloquer les roues au freinage, permettant ainsi de conserver la direction du véhicule). Il existe donc des contraintes de délai de réaction entre la demande de l'utilisateur et la consigne appliquée sur les freins. Dans ce domaine, des applications de plus en plus complexes sont aujourd'hui développées. Elles sont souvent distribuées sur plusieurs calculateurs, parfois hétérogènes, et doivent coopérer avec d'autres applications, elles aussi distribuées. Afin de maîtriser cette complexité, on développe classiquement une couche logicielle appelée intergiciel (middleware). Cette couche a pour but de masquer l'hétérogénéité des supports d'exécution et la distribution des applications. Elle propose aux applications un ensemble de services standards pour communiquer et interagir avec le système d'exploitation, tout en garantissant une qualité de service temporelle. Notre objectif est de mettre en oeuvre une technique pour la génération d'intergiciels de communication embarqués pour l'automobile. Le cadre d'utilisation de nos travaux est la conception de systèmes embarqués dans les véhicules. Plus précisément, cette approche permet de concevoir un générateur d'un ensemble de tâches implémentant cette couche de communication pour un type d'application donnée. Pour cela, elle prend en compte l'ensemble des événements requis et offerts par l'application tout en assurant la qualité de service requise par cette dernière (propriétés temps réel), et en minimisant la surcharge due à l'exécution de l'intergiciel. Les travaux présentés visent la réalisation d'un générateur d'intergiciels optimisés, et abordent deux aspects : la conception générique des architectures d'implémentation du générateur et de l'intergiciel, et le déploiement de l'intergiciel généré sur une plateforme temps réel. Constituant un framework technique, l'architecture d'implémentation est optimisée dans le sens où l'intergiciel est adapté à l'environnement d'exécution (le système d'exploitation OSEK/VDX OS et le réseau CAN), et minimise son utilisation des ressources disponibles. Elle apporte une réponse, d'une part, au niveau de la spécification d'une architecture logicielle (construite à l'aide de design patterns), et, d'autre part, à la manière dont cette architecture est déployée sur une plateforme concrète (sous la forme d'un ensemble de tâches). Quant au déploiement de l'intergiciel, il est réalisé sur une architecture matérielle de microcontrôleurs (PIC)

    Spécification des objets partagés dans les systèmes répartis sans-attente

    Get PDF
    In large scale distributed systems, strong consistency criteria like sequential consistency and linearizability are often very expensive or even unachievable. This thesis investigates the best ways to specify the objects that are still possible to implement in these systems. We assert that it is still possible to separate their specification in two complementary facets: an abstract data type that specifies the functional aspect of the operations and a weak consistency criterion that describes the level of quality of service ensured by the object in its distributed environment. We illustrate these concepts by an implementation in the D programming language: abstract data types are described by classes in the program and consistency criteria are taken from a list in the CODS library.We also draw up a map of the space of weak consistency criteria, organised around three families of primary criteria (state locality, eventual consistency and validity) and three families of secondary criteria (update consistency, pipelined consistency and serializability). Each secondary criterion strenghtens two primary criteria, but the three criteria can not be implemented together in considered systems. We also study the effects of causality on these families.Dans les systèmes répartis à très grande échelle, les critères de cohérence forts comme la cohérence séquentielle et la linéarisabilité sont souvent trop coûteux, voire impossibles à obtenir. Dans cette thèse, nous nous posons la question de la spécification des objets que l'on peut tout de même obtenir. Nous soutenons qu'il est toujours possible de séparer leur spécification en deux facettes : un type de données abstrait qui spécifie l'aspect fonctionnel des opérations et un critère de cohérence faible qui décrit la qualité de service garantie par l'objet dans son environnement réparti. Nous illustrons ces concepts par une mise en oeuvre dans le langage D : les types de données abstraits sont les classes du programme et les critères de cohérence sont choisis dans une liste fournie par la bibliothèque CODS. Nous dressons une carte de l'espace des critères faibles organisée autour de trois familles de critères primaires (localité d'état, convergence et validité) et trois familles de critères secondaires (cohérence d'écritures, cohérence pipeline et sérialisabilité). Chaque critère secondaire renforce deux critères primaires, mais les trois critères primaires ne peuvent pas être implémentés ensembles dans les systèmes considérés. Nous étudions également l'effet de la causalité sur ces familles

    DĂ©ploiement d'applications patrimoniales en environnements de type informatique dans le nuage

    Get PDF
    L'objectif de cette thèse est d'offrir une solution de bout en bout permettant de décrire et de déployer de façon fiable une application distribuée dans un environnement virtualisé. Ceci passe par la définition d'un formalisme permettant de décrirer une application ainsi que son environnement d'exécution, puis de fournir les outils capable d'interpéter ce formalisme pour déployer (installer, instancier et configurer) l'application sur une plate-forme de type cloud computing.Cloud computing aims to cut down on the outlay and operational expenses involved in setting up and running applications. To do this, an application is split into a set of virtualized hardware and software resources. This virtualized application can be autonomously managed, making it responsive to the dynamic changes affecting its running environment. This is referred to as Application Life-cycle Management (ALM). In cloud computing, ALM is a growing but immature market, with many offers claiming to significantly improve productivity. However, all these solutions are faced with a major restriction: the duality between the level of autonomy they offer and the type of applications they can handle. To address this, this thesis focuses on managing the initial deployment of an application to demonstrate that the duality is artificial. The main contributions of this work are presented in a platform named VAMP (Virtual Applications Management Platform). VAMP can deploy any legacy application distributed in the cloud, in an autonomous, generic and reliable way. It consists of: a component-based model to describe the elements making up an application and their projection on the running infrastructure, as well as the dependencies binding them in the applicative architecture; an asynchronous, distributed and reliable protocol for self-configuration and self-activation of the application; mechanisms ensuring the reliability of the VAMP system itself. Beyond implementing the solution, the most critical aspects of running VAMP have been formally verified using model checking tools. A validation step was also used to demonstrate the genericity of the proposal through various real-life implementations.SAVOIE-SCD - Bib.électronique (730659901) / SudocGRENOBLE1/INP-Bib.électronique (384210012) / SudocGRENOBLE2/3-Bib.électronique (384219901) / SudocSudocFranceF

    Conception et évaluation de performance d'un Bus applicatif, massivement parallèle et orienté service.

    Get PDF
    Enterprise Service Bus (ESB) est actuellement l'approche la plus prometteuse pour l'implémentation d'une architecture orientée services (SOA : Service-Oriented Architecture) par l'intégration des différentes applications isolées dans une plateforme centralisée. De nombreuses solutions d'intégration à base d'ESB on été proposées, elles sont soit open-source comme : Mule, Petals, ou encore Fuse, soit propriétaires tels que : Sonic ESB, IBM WebSphere Message Broker, ou Oracle ESB. Cependant, il n'en existe aucune en mesure de traiter, à la fois des aspects : d'intégration et de traitement massivement parallèle, du moins à notre connaissance. L'intégration du parallélisme dans le traitement est un moyen de tirer profit des technologies multicœurs/multiprocesseurs qui améliorent considérablement les performances des ESBs.Toutefois, cette intégration est une démarche complexe et soulève des problèmes à plusieurs niveaux : communication, synchronisation, partage de données, etc.Dans cette thèse, nous présentons l'étude d'une nouvelle architecture massivement parallèle de type ESB.Enterprise service bus (ESB) is currently the most promising approach for business application integration in distributed and heterogeneous environments. It allows to deploy a service-oriented architecture (SOA) by the integration of all the isolated applications on a decentralized platform.Several commercial or open source ESB-based solutions have been proposed. However, to the best of our knowledge, none of these solutions has integrated the parallel processing. The integration of parallelism in the treatment allows to take advantage of the multicore/multiprocessor technologies and thus can improve greatly the ESB performance. However, this integration is difficult to achieve, and poses problems at multiple levels (communication, synchronization, etc). In this study, we present a new massively parallel ESB architecture that meets this challenge.PARIS-CNAM (751032301) / SudocSudocFranceF

    Si passionnés qu’on oublie l’heure?

    Get PDF
    Dans cet article nous rendons compte des heures de travail dans l’industrie au Québec telle qu’elle se dégage des propos de 53 concepteurs qui travaillent dans de grands studios de jeux (en ligne ou de consoles) de Montréal, ainsi que de la rémunération de ces heures de travail. Nous décrivons ensuite le cadre juridique applicable au Québec, et la gestion que font les studios québécois des heures supplémentaires en fonction de ce cadre. Nous comparons ensuite l’industrie locale à l’ensemble de l’industrie en Occident et rendons compte de l’insatisfaction de nos répondants face à cette situation, comparable à celle de l’ensemble de l’industrie. Le portrait qui se dégage mène d’emblée à poser la question : dans un contexte où les heures supplémentaires ne sont pas rémunérées, en contravention du cadre législatif applicable, comment induit-on, déclenche-t-on chez les concepteurs par ailleurs insatisfaits une aussi grande disposition à travailler en heures supplémentaires? Nous en proposons ici une explication fondée sur l’existence d’un système informel mais redoutablement efficace de récompenses et de punitions, nourri par l’importance de la réputation dans une industrie focalisée sur la création et l’innovation

    Dynamique de l'environnement : Scénarios, simulations et maquette

    No full text
    IP-SIG/LIV/4.2. Contrat RNRT IPSIGCe livrable traite de la négociation dynamique de SLA/SLS et du maintien des paramètres négociés lors de la mobilité du terminal dans le cadre d'une signalisation NSIS. Il fait suite au livrable 4.1 qui présentait un assistant de négociation, coté terminal utilisateur, permettant de négocier dynamiquement les SLA/SLS avec le/les fournisseurs de service, et plusieurs protocoles conformes à l'environnement NSIS afin de négocier le SLS, et maintenir la qualité de service négociée. Il s'agit dans ce livrable de compléter l'approche retenue en présentant des scénarios d'utilisation, notamment dans le cas du protocole de négociation dynamique de paramètres de SLS, des résultats de simulations, principalement pour le protocole de réservation de ressources à l'avance et une maquette permettant de démontrer la faisabilité de la (re)négociation dynamique de SLA/SLS. Cette dernière comporte un module d'apprentissage et un système multi-agents

    SCADE - Modélisation formelle de systèmes réactifs critiques

    Get PDF

    Asynchronism in a joint algorithm architecture perspective

    Get PDF
    Even if the design of asynchronous circuits reaches a certain level of maturity, they are still considered as a curiosity . However, some interesting industrial applications have been developed recently by Philips for pagers and by Sharp-Mitsubishi for set-top boxes . In this paper, the operating mode of asynchronous circuits is first presented, and compared with its synchronous counter-part . The properties and potentials of asynchronous circuits are then described as an introduction to the last part of the paper which aims at showing that the asynchronous operating mode associated with a description formalism based on communicating processes is a powerful tool to jointly design algorithms and architectures .Bien que leurs techniques de conception gagnent en maturité avec notamment l'apparition d'outils automatiques, et que le nombre des réalisations augmente, les circuits asynchrones constituent aujourd'hui encore une curiosité. Toutefois, Philips dans les pagers et Sharp-Mitsubishi dans les Set Top Box sont les premiers à intégrer des circuits asynchrones dans des équipements pré-industriels. Cet article présente dans un premier temps le principe de fonctionnement des circuits asynchrones en le situant par rapport à celui des systèmes synchrones. Les propriétés et potentiels généraux ainsi que les coûts d'implémentation inhérents à ce type de réalisation sont ensuite abordés. Ces deux premières parties introductives constituent les bases du dernier chapitre de l'article qui s'attache à montrer que la combinaison du mode de fonctionnement asynchrone et d'un formalisme de description basé sur les processus séquentiels communicants constitue un outil puissant pour l'étude et la conception conjointe des algorithmes et des architectures. Nous introduisons en particulier la notion de convergence algorithme-architecture qui traduit l'idée qu'algorithme et architecture peuvent être confondus en un seul modèle, décrit sous la forme d'un programme unique qui rend compte à la fois des propriétés fonctionnelles et structurelles de la spécification

    Optimisation multi-niveau d'une application de traitement d'images sur machines parallèles

    Get PDF
    Cette thèse vise à définir une méthodologie de mise en œuvre d applications performantes sur les processeurs embarqués du futur. Ces architectures nécessitent notamment d exploiter au mieux les différents niveaux de parallélisme (grain fin, gros grain) et de gérer les communications et les accès à la mémoire. Pour étudier cette méthodologie, nous avons utilisé un processeur cible représentatif de ces architectures émergentes, le processeur CELL. Le détecteurde points d intérêt de Harris est un exemple de traitement régulier nécessitant des unités de calcul intensif. En étudiant plusieurs schémas de mise en oeuvre sur le processeur CELL, nous avons ainsi pu mettre en évidence des méthodes d optimisation des calculs en adaptant les programmes aux unités spécifiques de traitement SIMD du processeur CELL. L utilisation efficace de la mémoire nécessite par ailleurs, à la fois une bonne exploitation des transferts et un arrangement optimal des données en mémoire. Nous avons développé un outil d abstraction permettant de simplifier et d automatiser les transferts et la synchronisation, CELL MPI. Cette expertise nous a permis de développer une méthodologie permettant de simplifier la mise en oeuvre parallèle optimisée de ces algorithmes. Nous avons ainsi conçu un outil de programmation parallèle à base de squelettes algorithmiques : SKELL BE. Ce modèle de programmation propose une solution originale de génération d applications à base de métaprogrammation. Il permet, de manière automatisée, d obtenir de très bonnes performances et de permettre une utilisation efficace de l architecture, comme le montre la comparaison pour un ensemble de programmes test avec plusieurs autres outils dédiés à ce processeur.This thesis aims to define a design methodology for high performance applications on future embedded processors. These architectures require an efficient usage of their different level of parallelism (fine-grain, coarse-grain), and a good handling of the inter-processor communications and memory accesses. In order to study this methodology, we have used a target processor which represents this type of emerging architectures, the Cell BE processor.We have also chosen a low level image processing application, the Harris points of interest detector, which is representative of a typical low level image processing application that is highly parallel. We have studied several parallelisation schemes of this application and we could establish different optimisation techniques by adapting the software to the specific SIMD units of the Cell processor. We have also developped a library named CELL MPI that allows efficient communication and synchronisation over the processing elements, using a simplified and implicit programming interface. This work allowed us to develop a methodology that simplifies the design of a parallel algorithm on the Cell processor.We have designed a parallel programming tool named SKELL BE which is based on algorithmic skeletons. This programming model providesan original solution of a meta-programming based code generator. Using SKELL BE, we can obtain very high performances applications that uses the Cell architecture efficiently when compared to other tools that exist on the market.PARIS11-SCD-Bib. électronique (914719901) / SudocSudocFranceF
    • …
    corecore