Spelling suggestions: "subject:"interblocages"" "subject:"interblock""
1 |
Détection immédiate des interblocagesDahmane, Mourad 07 1900 (has links) (PDF)
L'utilisation des fils d'exécution est devenue importante avec l'apparition des ordinateurs multiprocesseurs sur le marché. Les langages de programmation modernes, comme Java, offrent une souplesse dans l'écriture des programmes multifils d'exécution. Cette souplesse n'a pas éliminé les problèmes liés à la synchronisation des fils d'exécution. L'interblocage est l'un des problèmes majeurs dont la résolution nécessite temps et argent. La contribution principale de notre travail est la conception d'un algorithme efficace de détection immédiate des interblocages et l'implémentation de celui-ci dans une machine virtuelle libre. Dans notre mémoire, nous parlons de la structure de forêt d'attente et de la façon de construire, à l'aide de cette structure, les relations d'acquisition et de libération des verrous par les fils d'exécution. Cette structure permet la détection immédiate de l'interblocage. Dans notre travail, le brisement de l'interblocage est réalisé par le soulèvement d'une exception qui pourra être interceptée, une fois l'interblocage détecté. Ce brisement permet aux développeurs de gérer les exceptions liées aux interblocages sans que leurs programmes s'arrêtent. Notre expérimentation avec la version 1.13 de la machine virtuelle Sable VM [GE02] et notre version améliorée en implémentant notre algorithme nous ont montré que notre détection immédiate a un coût nul dans une majorité de cas, et coûte une surcharge de temps d'exécution de 0,04 %à 0,2 % par rapport à la version 1.13 dans les pires des cas testés. Nous avons utilisé la suite de mesures (benchmark) Ashes et nos propres programmes de mesure de performance qui utilisent au maximum les fils d'exécution et les opérations d'acquisition et de libération des verrous. Nos programmes furent développés spécialement pour montrer les coûts additionnels de l'utilisation de notre algorithme.
______________________________________________________________________________
MOTS-CLÉS DE L’AUTEUR : fil d'exécution, synchronisation, interblocage, détection immédiate, brisement.
|
2 |
Régulation coopérative des intersections : protocoles et politiques / Cooperative Intersection Management : Protocols and policiesPerronnet, Florent 27 May 2015 (has links)
Dans ce travail, nous exploitons le potentiel offert par les véhicules autonomes coopératifs, pour fluidifier le trafic dans une intersection isolée puis dans un réseau d’intersections. Nous proposons le protocole SVAC (Système du Véhicule Actionneur Coopératif) permettant de réguler une intersection isolée. SVAC est basé sur une distribution individuelle du droit de passage qui respecte un ordre précis donné par une séquence de passage.Pour optimiser la séquence de passage, nous définissons la politique PED (Politique d’Evacuation Distribuée) permettant d’améliorer le temps d’évacuation total de l’intersection. La création de la séquence de passage est étudiée à travers deux modélisations. Une modélisation sous forme de graphes permettant le calcul de la solution optimale en connaissant les dates d’arrivée de tous les véhicules, et une modélisation de type réseaux de Petri avec dateurs pour traiter la régulation temps-réel. Des tests réels avec des véhicules équipés ont été réalisés pour étudier la faisabilité du protocole SVAC. Des simulations mettant en jeu un trafic réaliste permettent ensuite de montrer la capacité de fluidifier le trafic par rapport à une régulation classique par feux tricolores.La régulation d’un réseau d’intersections soulève les problèmes d’interblocage et de réorientation du trafic. Nous proposons le protocole SVACRI (Système du Véhicule Actionneur Coopératif pour les Réseaux d’Intersections) qui permet d’éliminer à priori les risques d’interblocage à travers la définition de contraintes d’occupation et de réservation de l’espace et du temps. Nous étudions également la possibilité d’améliorer la fluidité du trafic à travers le routage des véhicules, en tirant avantage du protocole SVACRI. Enfin, nous généralisons le système de régulation proposé pour la synchronisation des vitesses aux intersections. / The objective of this work is to use the potential offered by the wireless communication and autonomous vehicles to improve traffic flow in an isolated intersection and in a network of intersections. We define a protocol, called CVAS (Cooperative Vehicle Actuator System) for managing an isolated intersection. CVAS distributes separately the right of way to each vehicle according to a specific order determined by a computed sequence.In order to optimize the sequence, we define a DCP (Distributed Clearing Policy) to improve the total evacuation time of the intersection. The control strategy is investigated through two modeling approaches. First graph theory is used for calculating the optimal solution according to the arrival times of all vehicles, and then a timed Petri Net model is used to propose a real-time control algorithm. Tests with real vehicles are realized to study the feasibility of CVAS. Simulations of realistic traffic flows are performed to assess our algorithm and to compare it versus conventional traffic lights.Managing a network of intersections raises the issue of gridlock. We propose CVAS-NI protocol (Cooperative Vehicle actuator system for Networks of Intersections), which is an extension of CVAS protocol. This protocol prevents the deadlock in the network through occupancy and reservation constraints. With a deadlock free network we extend the study to the traffic routing policy. Finally, we generalize the proposed control system for synchronizing the vehicle velocities at intersections.
|
3 |
Contrôle des communications dans les machines parallèles à mémoire distribuée : contribution au routage automatique des messagesMugwaneza, Leon 24 February 1993 (has links) (PDF)
Cette these traite d'un ensemble de problemes lies a l'acheminement des messages dans les machines paralleles a memoire distribuee. L'accent est mis sur des solutions extensibles qui necessitent un nombre de ressources independant de la taille de la machine. A travers l'exemple des machines Supernodes (dont les processeurs sont interconnectes par un reseau de Clos 3-etages) nous montrons que l'acheminement des messages par reconfiguration dynamique est difficilement envisageable dans des machines de grande taille. Nous nous interessons ensuite au routage des messages dans des reseaux a topologie quelconque, et proposons une nouvelle methode de generation de fonctions de routage sans interblocage. La nouvelle generation des machines paralleles integre de plus en plus de fonctions dans le materiel, notamment le routage des messages. Pour que cette integration soit la plus efficace possible, des methodes nouvelles de representation compacte de l'information de routage sont necessaires. Santoro et Khatib ont propose une methode, le routage par intervalles, bien adaptee aux reseaux generaux. La deuxieme partie de cette these s'inscrit dans la continuite de ce type de travail et propose de nouvelles methodes de generation de fonctions de routage par intervalles. Deux cas sont consideres : le tore, et les reseaux generaux. Nous insistons plus particulierement sur des solutions sans interblocage, caracteristique rarement prise en compte. De plus dans le cas du tore, les longueurs des chemins sont proches des optima. Enfin, nous proposons une extension de la notion de routage par intervalles, le schema d'etiquetage etendu (SEE), permet de representer un spectre plus large de fonctions de routage.
|
4 |
Architectures parallèles à connectique programmable : reconfiguration et routageWaille, Philippe 11 September 1991 (has links) (PDF)
Dans une machine sans mémoire commune, les processeurs communiquent par échanges de messages via des liaisons point à point. Les machines à connectique fixe utilisent des liaisons permanentes organisées selon un graphe d'interconnexion régulier tel qu'une grille ou un hypercube. Les messages qui ne beneficient pas d'une liaison directe doivent être routés de voisin en voisin jusqu'à leur destination. Les performances de ces machines sont tributaires de l'adéquation entre le graphe des communications entre tâches et le graphe d'interconnexion<br />physique des processeurs.<br />Cette thèse examine les possibilités offertes par les machines<br />à réseau d'interconnexion programmable, dites reconfigurables, et<br />deux modes de fonctionnement seront étudiés. La reconfiguration synchrone programme le réseau d'interconnexion en une seule fois avant l'exécution de l'application. Le routage des messages n'est pas totalement éliminé et l'utilisation possible de topologies irrégulières en complique la mise en oeuvre. Le réseau peut au contraire être reprogrammé systématiquement pour chaque message de telle sorte qu'il bénéficie d'une liaison directe le temps de son transfert. Ce mode de reconfiguration, dit asynchrone, impose<br />de fortes contraintes sur la vitesse de commande du réseau.<br />Cette thèse a été entreprise dans le cadre du projet de recherche<br />européen ESPRIT "supernode" ; le but de celui-ci étant la construction de multiprocesseurs reconfigurables à base de transputers.
|
5 |
PARX : noyau de système pour les ordinateurs massivement parallèles : contrôle de la communication entre processusGonzalez Valenzuela, Néstor Alejandro 13 December 1991 (has links) (PDF)
Cette thèse aborde un ensemble de problèmes lies a la conception et a la mise en œuvre d'un noyau de communication faisant partie de Parx, un noyau de système d'exploitation pour machines multiprocesseurs sans mémoire, développe dans le cadre du projet de recherche européen esprit supernode. Le noyau réalisé une machine virtuelle, vis-a-vis des communications, dans laquelle l'ensemble de processeurs est complètement connecte indépendamment de la topologie du réseau d'interconnexion sous-jacent. La machine virtuelle offre une interface qui facilite l'exploitation correcte du haut degre de parallélisme physique des machines visées. Après un état de l'art des architectures d'ordinateurs massivement parallèles, il est propose un modèle de processus et une structure de noyau de système parallèle. Le modèle est base sur un ensemble d'entités bien adaptées au contrôle de l'exécution des programmes parallèles composes de processus communicants. Ces entités, qui étendent la notion traditionnelle de processus, intègrent des concepts nouveaux visant la meilleure exploitation de l'architecture physique. Dans le modèle de processus communicants, ceux-ci ne coopèrent que par échange de messages. Le contrôle, correct et efficace, de la communication et la synchronisation entre processus s'exécutant sur une architecture multi-processeurs sans mémoire commune est le thème central de cette thèse. Notre étude s'oriente vers la conception d'un noyau de communication, pour lequel les problèmes concernant essentiellement le routage de messages sans interblocage dans le réseau de processeurs et les protocoles de communication entre processus adéquats au modèle de programmation utilisé
|
6 |
On intrinsically live structure and deadlock control of generalized Petri nets modeling flexible manufacturing systems / Sur le contrôle de blocage dans les systèmes flexibles de production à base de réseaux de Petri généralisésLiu, Ding 08 July 2015 (has links)
Nos travaux portent sur l'analyse des systèmes de production automatisée à l'aide de réseaux de Petri. Le problème posé est de savoir si un système peut se bloquer complètement ou partiellement et si besoin de calculer un contrôleur garantissant son bon fonctionnement. Les systèmes de production se modélisent naturellement à l'aide d'une sous-classe des réseaux de Petri, les S3PRs. Ce modèle a été très largement étudie par le passe conduisant à des méthodes basées uniquement sur la structure du modèle. Dans ce travail, nous généralisons ces travaux aux modèles des WS3PR, une extension des S3PR ou la réalisation d'une active nécessite non par une ressource mais plusieurs ressources d'un même type et pour lesquels nous proposons des techniques originales combinant des éléments de Théorie des graphes et de théorie des nombres, améliorant même les méthodes du passe sur le modèle simple des S3PR.On présente une caractérisation fine de la vivacité d'un tel modèle basée la notion d'attente circulaire. Une attente circulaire peut être vue comme une composante connexe du sous graphe réduit aux transitions et aux places ressources du modèle. Puis nous démontrons que la non vivacité d'un WS3PR est équivalente a l'existence d' ≪ un blocage circulaire dans une attente circulaire ≫. Ce résultat généralise finement la caractérisation de la vivacité d'un S3PR. Apres avoir introduit la notion de ≪ circuits du graphe de ressources ≫ (WSDC), on construit une méthode de contrôle de ces verrous garantissant la vivacité du modèle d'autant plus efficace qu'une méthode de décomposition du réseau est proposée. Enfin, une traduction de traduit la condition de vivacité des WS3PR sous la forme d'un programme linéaire en nombres entiers est établie et des expérimentations ont démontré l'intérêt de la méthode pour contrôle de systèmes l'allocation des ressources. / As an indispensable component of contemporary advanced manufacturing systems, flexible manufacturing systems (FMSs) possess flexibility and agility that traditional manufacturing systems lack. An FMS usually consists of picking and placing robots, machining centers, logistic systems, and advanced control systems. Some of them can be recognized as its shared resources, which result in its flexibility but may lead to its deadlocks. As a classic problem in resource allocation systems, deadlocks may arise in a fully automated FMS and bring about a series of disturbing issues, from degraded and deteriorated system productivity and performance to low utilization of some critical and expensive resources and even long system downtime. Therefore, the analysis of and solution to deadlock problems are imperative for both a theoretical investigation and practical application of FMSs. Deadlock-freedom means that concurrent produc-tion processes in an FMS will never stagnate. Furthermore, liveness, another significant behavioral property, means that every production process can always be finished. Liveness implies deadlock-freedom, but not vice versa. The liveness-enforcement is a higher requirement than deadlock-freedom.From the perspective of the behavioral logic, the thesis focuses on the intrinsicallylive structures and deadlock control of generalized Petri nets modeling flexible manufacturing systems. Being different from the existing siphon-based methods, a concept of intrinsically live structures becomes the starting point to design, analyze, and optimize a series of novel deadlock control and liveness-enforcing methods in the work.The characteristics and essence of intrinsically live structures are identified and derived from subclasses of generalized Petri nets modeling FMSs with complex resource usage styles. In addition, the numerical relationship between initial markings and weights of connecting arcs is investigated and used to design restrictions that ensure the intrinsical liveness of global or local structures.With the structural theory, graph theory, and number theory, the thesis work achieves the goals of deadlock control and liveness-enforcement.The proposed methods are superior over the traditional siphon-based oneswith a lower computational complexity (or a higher computational efficiency),a lower structural complexity, and a better behavioral permissiveness of the controlled system.
|
7 |
Optimal supervisory control of flexible manufacturing systems / Synthèse de contrôleurs optimaux pour les systèmes flexibles de productionChen, Yufeng 07 July 2015 (has links)
Notre thèse est consacrée à l’étude de la supervision des réseaux de Petri en vue de la conception de systèmes manufacturiers flexibles. L’objectif est la définition de stratégies de pilotage en ligne pour l’évitement de conflits et d’interblocages, dans le cadre de la théorie de la supervision. Le point de départ de notre travail est d’exploiterle graphe de marquage du réseau de Petri, ce qui permet en particulier d’obtenir des stratégies de commande maximalement permissive pour des problèmes d’évitement de conflits et d’interblocages. Nous avons ainsi introduit des techniques originales, manipulations d’inégalités ou réductions d’ensembles de marquages, destinées à diminuerla complexité algorithmique d’une telle méthode. Dans premier temps, nous avons focalisé sur la synthèse de superviseurs dits purs, ce qui correspond au cas particulier où l’ensemble de marquage légaux, est convexe.Cette optimisation est ensuite considérée du point de vue de la facilité de mise en oeuvre. Nous traitons ainsi de la minimisation de la structure du superviseur et de son coût d’implémentation en préservant une structure de supervision qui offre à la fois la permissivité maximale et une complexité de calcul raisonnable en vue d’utilisationsur des installations réelles. Aussi, nous avons cherché à réduire le nombre de places de contrôle nécessaires pour réaliser un superviseur maximalement permissif, pour cela nous avons formule le calcul du nombre minimal de places de contrôle en termes d’un problème de programmation linéaire. Afin d’affaiblir la complexité de ce calcul de superviseur, deux versions de l’algorithme sont proposées. Ce problème de minimisation de la taille dusuperviseur, quoique fondamental, n’est pas abordé aussi directement dans la littérature. Il s’agit là d’une première contribution.Dans u second temps, nous nous sommes intéressés aux réseaux de Petri à boucles (self-loops). Les boucles étant représentées par une variable qui s’ajoute dans la contrainte inégalité définissant l’ensemble de marquages légaux. Après avoir proposé une méthode de réduction du nombre d’inégalités ainsi que du superviseur optimalen se basant sur les approches et résultats précédents, nous avons établi une condition suffisante d’obtention d’un superviseur maximalement permissif permettant de traiter des ensembles de marquages légaux non convexes.Enfin nous proposons une méthode de synthèse de contrôleur pour une nouvelle classe de réseaux de Petri, avec des arcs inhibiteurs correspondant à des contraintes définies par des intervalles. La taille du contrôleur ainsi obtenu et défini en termes d’arcs inhibiteurs à intervalles s’en trouve réduite ainsi que par conséquent sont coût d’implémentation. / Reachability graph analysis is an important technique for deadlockcontrol, which always suffers from a state explosion problem since it requires togenerate all or a part of reachable markings.Based on this technique, an optimal or suboptimal supervisor with high behavioralpermissiveness can always be achieved. This thesis focuses on designing liveness enforcing Petri net supervisors for FMSs by considering their behavioralpermissiveness, supervisory structure, and computationnal complexity.The following research contributions are made in this thesis.1. The design of a maximally permissive liveness-enforcing supervisor for an FMSis proposed by solving integer linear programming problems (ILPPs).2. Structural complexity is also an important issue for a maximally permissivePetri net supervisor. A deadlock prevention policy for FMSs is proposed, which canobtain a maximally permissive liveness-enforcing Petri net supervisor while thenumber of control places is compressed.3. In order to overcome the computational complexity problem in MCPP and ensurethat the controlled system is maximally permissive with a simple structure, wedevelop an iterative deadlock prevention policy and a modified version.4. We consider the hardware and software costs in the stage of controlimplementation of a deadlock prevention policy, aiming to obtain a maximallypermissive Petri net supervisor with the lowest implementation cost. A supervisorconsists of a set of control places and the arcs connecting control places totransitions. We assign an implementation cost for each control place and controland observation costs for each transition. Based on reachability graph analysis,maximal permissiveness can be achieved by designing place invariants that prohibitall FBMs but no legal markings.5. Self-loops are used to design maximally permissive supervisors. A self-loop ina Petri net cannot be mathematically represented by its incidence matrix. Wepresent a mathematical method to design a maximally permissive Petri netsupervisor that is expressed by a set of control places with self-loops. A controlplace with a self-loop can be represented by a constraint and a selfloopassociated with a transition whose firing may lead to an illegal marking.
|
8 |
Conception et implémentation d'un langage de programmation concurrente modulaire / Design and implementation of a modular concurrent programming languageGrande, Johan 28 September 2015 (has links)
La programmation concurrente à mémoire partagée est un modèle classique de concurrence qui permet notamment de tirer parti des processeurs multicoeurs aujourd'hui très répandus dans les ordinateurs personnels. Les programmes concurrents sont sujets au problème des interblocages, notoirement difficiles à prévoir et à éliminer, en particulier dans le cas de l'utilisation du mécanisme de synchronisation très populaire que sont les mutex. Dans cette thèse nous avons travaillé à rendre plus aisée la programmation avec des mutex en étudiant des méthodes d'évitement des interblocages. Nous avons d'abord étudié une méthode utilisant une analyse statique par un système de types et d'effets, puis une variante de cette méthode dans un langage à typage dynamique. La seconde méthode est celle que nous avons le plus développée. Elle combine prévention et évitement des interblocages pour fournir une fonction de verrouillage sans interblocages expressive et utilisable. Nous l'avons implémentée sous forme d'une bibliothèque Hop (dialecte de Scheme). Ce faisant, nous avons développé un algorithme sans famine pour l'acquisition simultanée d'un nombre arbitraire de mutex, et identifié le concept d'interblocage asymptotique. Nous avons également été amenés à proposer une optimisation des exceptions (blocs finally). Nos tests de performances semblent indiquer un impact négligeable de l'utilisation de notre bibliothèque sur des applications concurrentes réelles. La majeure partie de notre recherche pourrait être appliquée à d'autres langages de programmation structurée tels que Java. / Shared-memory concurrency is a classic concurrency model which, among other things, makes it possible to take advantage of multicore processors that are now widespread in personal computers. Concurrent programs are prone to deadlocks which are notoriously hard to predict and debug. Programs using mutexes, a very popular synchronization mechanism, are no exception. In this thesis we studied deadlock avoidance methods with the aim of making programming with mutexes easier. We first studied a method that uses a static analysis by means of a type and effect system, then a variation on this method in a dynamically typed language. We developed more the second method. It mixes deadlock prevention and avoidance to provide an easy-to-use and expressive deadlock-free locking function. We implemented it as a Hop (dialect of Scheme) library. This lead us to develop a starvation-free algorithm to simultaneously acquire an arbitrary number of mutexes, and to identify the concept of asymptotic deadlock. While doing so, we also developped an optimization of exceptions(finally blocks). Our performance tests seem to show that using our library has negligible impact on theperformance of real-life applications. Most of our work could be applied to other structured programming languages such as Java.
|
Page generated in 0.0788 seconds