• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 30
  • 3
  • 2
  • Tagged with
  • 36
  • 36
  • 23
  • 22
  • 11
  • 10
  • 10
  • 7
  • 7
  • 6
  • 6
  • 6
  • 6
  • 6
  • 6
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
11

Conception d'un Système Embarque Sur et Sécurisé

Portolan, M. 06 December 2006 (has links) (PDF)
Cette thèse s'attache à définir une méthodologie globale permettant d'augmenter le niveau de sûreté et de sécurité face à des fautes logiques transitoires (naturelles ou intentionnelles) survenant dans un système intégré matériel/logiciel, de type carte à puce. Les résultats peuvent être appliqués à tout circuit construit autour d'un cœur de microprocesseur synthétisable et d'un ensemble de périphériques spécialisés. Les méthodes de protection portent simultanément, sur le matériel, le logiciel d'application et les couches d'interface (en particulier, le système d'exploitation). Les modifications sur des descriptions de haut niveau on été privilégiées pour leurs avantages en terme de généralité, configurabilité, portabilité et pérennité. L'approche proposée vise un bon compromis entre le niveau de robustesse atteint et les coûts induits, aussi bien au niveau matériel qu'au niveau performances. Elle est appliquée et validée sur un système significatif, représentatif d'un système embarqué monoprocesseur.
12

Programmation synchrone de pilotes de périphériques pour un contrôle global de ressources dans les systèmes embarqués

Berthier, Nicolas 12 March 2012 (has links) (PDF)
Le travail présenté dans cette thèse porte sur la conception de logiciels pour systèmes embarqués. Outre les contraintes de programmation provenant des faibles quantité de mémoire et capacité de calcul, ces plates-formes matérielles ne disposent parfois que de peu d'énergie pour fonctionner. Les applications usuelles de ces systèmes imposent de plus des objectifs en matière de réactivité et de durée de vie. Par ailleurs, quelques-unes des ressources fournies sont partagées entre les composants, qu'il s'agisse de l'énergie délivrée par une batterie, ou encore des bus de communication qui les relient. Il est donc nécessaire de pouvoir assurer des propriétés globales portant sur l'ensemble de la plate-forme, telles que le contrôle des accès aux bus, ou encore la maîtrise de la puissance électrique consommée. Cependant, les pilotes des différents périphériques sont d'ordinaire programmés individuellement. La connaissance nécessaire à l'implantation d'une politique de contrôle global est alors distribuée parmi diverses portions du logiciel. Nous exposons une solution au problème du contrôle global des ressources, basée sur une vue centralisée des états des composants matériels de la plate-forme. Bâtie sur un principe de para-virtualisation, notre approche consiste en l'introduction d'une couche de contrôle ; le système d'exploitation invité est adapté afin de communiquer avec le matériel à l'aide de celle-ci. La couche de contrôle incorpore les pilotes des périphériques, conçus à partir d'automates dont les états correspondent aux modes de fonctionnement ou de consommation du composant géré. Un contrôleur est ajouté, dont le rôle est d'assurer les propriétés globales. L'ensemble de ces automates est programmé à l'aide d'un langage synchrone, puis compilé en code séquentiel. Nous proposons une implantation de la couche de contrôle pour une architecture de nœuds de réseaux de capteurs sans fil, qui constitue une plate-forme représentative des systèmes embarqués contraints. Nous évaluons qualitativement et quantitativement ce prototype afin de montrer la viabilité de l'approche. Son impact sur le reste du logiciel est également apprécié, que celui-ci soit construit selon un modèle d'exécution purement événementiel ou multi-fils. Enfin, nous passons en revue plusieurs extensions possibles, et identifions quelques bonnes pratiques pour son usage dans d'autres contextes.
13

Programmation synchrone de pilotes de périphériques pour un contrôle global de ressources dans les systèmes embarqués / Synchronous Programming of Device Drivers for Global Resource Control in Embedded Operating Systems

Berthier, Nicolas 12 March 2012 (has links)
Le travail présenté dans cette thèse porte sur la conception de logiciels pour systèmes embarqués. Outre les contraintes de programmation provenant des faibles quantité de mémoire et capacité de calcul, ces plates-formes matérielles ne disposent parfois que de peu d'énergie pour fonctionner. Les applications usuelles de ces systèmes imposent de plus des objectifs en matière de réactivité et de durée de vie. Par ailleurs, quelques-unes des ressources fournies sont partagées entre les composants, qu'il s'agisse de l'énergie délivrée par une batterie, ou encore des bus de communication qui les relient. Il est donc nécessaire de pouvoir assurer des propriétés globales portant sur l'ensemble de la plate-forme, telles que le contrôle des accès aux bus, ou encore la maîtrise de la puissance électrique consommée. Cependant, les pilotes des différents périphériques sont d'ordinaire programmés individuellement. La connaissance nécessaire à l'implantation d'une politique de contrôle global est alors distribuée parmi diverses portions du logiciel. Nous exposons une solution au problème du contrôle global des ressources, basée sur une vue centralisée des états des composants matériels de la plate-forme. Bâtie sur un principe de para-virtualisation, notre approche consiste en l'introduction d'une couche de contrôle ; le système d'exploitation invité est adapté afin de communiquer avec le matériel à l'aide de celle-ci. La couche de contrôle incorpore les pilotes des périphériques, conçus à partir d'automates dont les états correspondent aux modes de fonctionnement ou de consommation du composant géré. Un contrôleur est ajouté, dont le rôle est d'assurer les propriétés globales. L'ensemble de ces automates est programmé à l'aide d'un langage synchrone, puis compilé en code séquentiel. Nous proposons une implantation de la couche de contrôle pour une architecture de nœuds de réseaux de capteurs sans fil, qui constitue une plate-forme représentative des systèmes embarqués contraints. Nous évaluons qualitativement et quantitativement ce prototype afin de montrer la viabilité de l'approche. Son impact sur le reste du logiciel est également apprécié, que celui-ci soit construit selon un modèle d'exécution purement événementiel ou multi-fils. Enfin, nous passons en revue plusieurs extensions possibles, et identifions quelques bonnes pratiques pour son usage dans d'autres contextes. / This thesis is about the design of software for embedded systems. The hardware platforms usually employed in these systems provide a limited amount of memory, computational power and energy. The software they execute is then constrained by such limited resources. Usual applications involve further objectives, such as reactivity and lifetime. In addition, these platforms comprise shared resources like buses or even the energy provided by a battery. Hence, global properties concerning the whole platform must be enforced, for instance to control concurrent accesses to a bus or power consumption. As device drivers are commonly developed individually, the knowledge necessary to implement global control policies is distributed among several pieces of software. We propose a global control approach, based on a centralized view of the devices' states. Built upon para-virtualization principles, it operates on the hardware/software interface. It involves a simple adaptation of the guest operating system, to communicate with the hardware via a control layer. The control layer itself is built from a set of simple automata: the device drivers, whose states correspond to functional or power consumption modes, and a controller to enforce global properties. All these automata are programmed using a synchronous language, and compiled into a single piece of sequential code. As a suitable representative of embedded systems hardware, we choose the node of a wireless sensor network. To show that our approach is practical, we propose a proof-of-concept implementation of the control layer to manage this platform, and evaluate it both qualitatively and quantitatively. We also demonstrate its use and benefits with an event-driven or multithreading operating system, and estimate the impact of the adaptation on guest software. Finally, we audit several extensions and draw guidelines for its use in other contexts.
14

Evaluation of a multiple criticality real-time virtual machine system and configuration of an RTOS's resources allocation techniques / Évaluation de la virtualisation sur les systèmes temps-réel à criticité multiple et configuration des techniques d'allocation de ressources sur les systèmes d'exploitation temps-réel

Aichouch, Mohamed El Mehdi 28 May 2014 (has links)
L'utilisation de la virtualisation dans le domaine des serveurs d'entreprise est aujourd'hui une méthode courante. La virtualisation est une technique qui permet de faire fonctionner sur une seule machine réelle plusieurs systèmes d'exploitation. Cette technique est train d'être adoptée dans le développement des systèmes embarqués suite à la disponibilité de nouveaux processeurs classiquement destiné à ce domaine. Cependant, il y a une différence de contraintes entre les applications d'entreprise et les applications embarquées, celleci doivent respecter des contraintes de temps-réel en réalisant leurs tâches. Dans nos travaux de recherche nous avons étudié l'impact de la virtualisation sur un système d'exploitation temps-réel. Nous avons mesuré le surcoût et la latence des fonctions internes du système d'exploitation déployé sur une machine virtuelle, et nous les avons comparés à celles du système installé sur une machine réelle. Les résultats ont montré que ces métriques sont plus élevées lorsque la virtualisation est utilisée. Notre analyse a révélé que la puce électronique doit inclure des mécanismes matériels qui assistent le logiciel de contrôle des machines virtuelles afin de réduire le surcoût de la virtualisation, mais il est aussi essentiel de choisir une politique d'allocation des ressources efficace afin de garantir le respect des contraintes de temps-réel demandées par les machines virtuelles. Notre second axe de recherche concerne la transformation d'un modèle de simulation d'un système d'exploitation vers des programmes exécutables sur un système-sur-puce. Cette transformation doit également préserver une caractéristique offerte par ce modèle qui est la facilité de configuration des techniques d'allocation de ressources. Pour transformer le modèle de système d'exploitation nous avons utilisé des techniques de l'ingénierie-dirigée par les modèles. Où dans un premier temps le modèle initiale est transformé vers un autre modèle, ensuite ce second modèle est à son tour transformé automatiquement en un code source. Pour assurer la configuration du système d'exploitation finale nous avons utilisé une librairie placée entre le système d'exploitation et l'application afin d'identifier les besoins de celle-ci en termes de ressources et adapter le système à ces besoins. L'évaluation des performances de la librairie a démontré la viabilité de l'approche. / In the domain of server and mainframe systems, virtualizing a computing system's physical resources to achieve improved sharing and utilization has been well established for decades. Full virtualization of all system resources makes it possible to run multiple guest operating systems on a single physical platform. Recently, the availability of full virtualization on physical platforms that target embedded systems creates new use-cases in the domain of real-time embedded systems. In this dissertation we use an existing “virtual machines monitor” to evaluate the performance of a real-time operating system. We observed that the virtual machine monitor affects the internal overheads and latencies of the guest OS. Our analysis revealed that the hardware mechanisms that allow a virtual machine monitor to provide an efficient way to virtualize the processor, the memory management unit, and the input/output devices, are necessary to limit the overhead of the virtualization. More importantly, the scheduling of virtual machines by the VMM is essential to guarantee the temporal constraints of the system and have to be configured carefully. In a second work and starting from a previous project aiming at allowing a system designer to explore a software-hardware codesign of a solution using high-level simulation models, we proposed a methodology that allows the transformation of a simulation model into a binary executable on a physical platform. The idea is to provide the system designer with the necessary tools to rapidly explore the design space and validate it, and then to generate a configuration that could be used directly on top of a physical platform. We used a model-driven engineering approach to perform a model-to-model transformation to convert the simulation model into an executable model. And we used a middleware able to support a variety of the resources allocation techniques in order to implement the configuration previously selected by the system designer at simulation phase. We proposed a prototype that implements our methodology and validate our concepts. The results of the experiments confirmed the viability of this approach.
15

Caches collaboratifs noyau adaptés aux environnements virtualisés / A kernel cooperative cache for virtualized environments

Lorrillere, Maxime 04 February 2016 (has links)
Avec l'avènement du cloud computing, la virtualisation est devenue aujourd'hui incontournable. Elle offre isolation et flexibilité, en revanche elle implique une fragmentation des ressources, et notamment de la mémoire. Les performances des applications qui effectuent beaucoup d'entrées/sorties (E/S) en sont particulièrement impactées. En effet, celles-ci reposent en grande partie sur la présence de mémoire libre, utilisée par le système pour faire du cache et ainsi accélérer les E/S. Ajuster dynamiquement les ressources d'une machine virtuelle devient donc un enjeu majeur. Dans cette thèse nous nous intéressons à ce problème, et nous proposons Puma, un cache réparti permettant de mutualiser la mémoire inutilisée des machines virtuelles pour améliorer les performances des applications qui effectuent beaucoup d'E/S. Contrairement aux solutions existantes, notre approche noyau permet à Puma de fonctionner avec les applications sans adaptation ni système de fichiers spécifique. Nous proposons plusieurs métriques, reposant sur des mécanismes existants du noyau Linux, qui permettent de définir le niveau d'activité « cache » du système. Ces métriques sont utilisées par Puma pour automatiser le niveau de contribution d'un noeud au cache réparti. Nos évaluations de Puma montrent qu'il est capable d'améliorer significativement les performances d'applications qui effectuent beaucoup d'E/S et de s'adapter dynamiquement afin de ne pas dégrader leurs performances. / With the advent of cloud architectures, virtualization has become a key mechanism for ensuring isolation and flexibility. However, a drawback of using virtual machines (VMs) is the fragmentation of physical resources. As operating systems leverage free memory for I/O caching, memory fragmentation is particularly problematic for I/O-intensive applications, which suffer a significant performance drop. In this context, providing the ability to dynamically adjust the resources allocated among the VMs is a primary concern.To address this issue, this thesis proposes a distributed cache mechanism called Puma. Puma pools together the free memory left unused by VMs: it enables a VM to entrust clean page-cache pages to other VMs. Puma extends the Linux kernel page cache, and thus remains transparent, to both applications and the rest of the operating system. Puma adjusts itself dynamically to the caching activity of a VM, which Puma evaluates by means of metrics derived from existing Linux kernel memory management mechanisms. Our experiments show that Puma significantly improves the performance of I/O-intensive applications and that it adapts well to dynamically changing conditions.
16

MOSAIC : une méthodologie de conception pour les circuits système VLSI

Costa Alves Marques, José Manuel 24 September 1980 (has links) (PDF)
.
17

Conception d'architectures embarquées : des décodeurs LDPC aux systèmes sur puce reconfigurables

Verdier, François 05 December 2006 (has links) (PDF)
Les travaux de recherche dont la synthèse est présentée dans ce document portent sur deux aspects de la conception d'architectures numériques embarquées pour des applications de traitement de l'information. Le premier axe concerne l'étude et la conception de modèles architecturaux pour les décodeurs de canal utilisés dans les communications numériques. Les décodeurs étudiés sont basés sur les codes LDPC (Low Density Parity Check codes) qui, depuis quelques années, sont proposés comme codes correcteurs d'erreurs dans plusieurs normes de transmission. On s'intéresse en particulier à la norme DVB-S2 de radio-diffusion de programmes multimédia. Ces architectures de décodeurs mettent en oeuvre des algorithmes dont les réalisations matérielles reposent sur une adéquation fine entre le taux de parallélisme, l'ordonnancement des calculs et les quantités de ressources nécessaires. Une étude sur la réduction de complexité des algorithmes de décodage LDPC non binaires, préalable à la définition d'une architecture associée est également présentée. Le deuxième axe de recherche étend la problématique aux architectures très fortement intégrées, de type SoC (systèmes sur puces), et qui disposent de capacités de flexibilité, d'adaptabilité et de reconfiguration matérielle dynamique. La présence d'un système d'exploitation temps-réel embarqué devient alors nécessaire pour gérer de telles architectures et rend inadaptées les méthodes classiques de conception. Le deuxième axe des travaux porte sur de nouvelles méthodologies d'exploration et de conception d'architectures reconfigurable. Le cas de la modélisation des systèmes d'exploitation embarqués est abordé ainsi que le cas de la conception des applications et plates-formes pour la radio-logicielle.
18

Sécurité des systèmes d'exploitation répartis : architecture décentralisée de méta-politique pour l'administration du contrôle d'accès obligatoire.

Blanc, Mathieu 19 December 2006 (has links) (PDF)
Dans cette thèse, nous nous intéressons au contrôle d'accès obligatoire dans les systèmes d'exploitation répartis. Nous présentons une approche novatrice fondée sur un modèle de méta-politique pour l'administration décentralisée des noeuds du système réparti. Ces travaux visent la sécurité des grands réseaux partagés, i.e. les clusters, grilles ou ensembles de noeuds coopérant par Internet. L'architecture que nous proposons garantit des propriétés de sécurité globales et une bonne tolérance aux pannes. Ces propriétés, non prises en comptes par les modèles de contrôle d'accès classiques, sont obtenues grâce à notre méta-politique. Nous en présentons une formalisation, puis nous exhibons une technique de vérification garantissant l'absence de flots d'information illégaux au sein des noeuds du réseau. Nous décrivons ensuite comment le modèle peut être étendu pour la détection d'intrusions. Enfin, nous proposons une implantation supportant différents systèmes cibles tels que SELinux et grsecurity.
19

Optimisation de l'ordonnancement sous contrainte de faisabilité

Grenier, Mathieu 26 October 2007 (has links) (PDF)
Notre objectif est la conception d'algorithmes d'ordonnancement temps réel en-ligne faisables (i.e., garantissant le respect des contraintes temporelles imposées au systèmes) optimisant 1) l'utilisation de la plate-forme d'exécution (i.e., utiliser au mieux le potentiel de la plate-forme d'exécution tout en garantissant le respect des contraintes temporelles imposées au système) et/ou 2) optimisant des critères de performances<br />propres à l'application.<br /> <br />Deux cas ont été analysés : le cas de tâches indépendantes périodiques s'exécutant sur un processeur et le cas de flux de messages indépendants périodiques sur un réseau de terrain avec accès au médium priorisé.<br /><br />Nous avons donc proposé pour traiter les deux problèmatiques abordées :<br />1) des méthodes de configurations permettant d'optimiser l'utilisation de la plate-forme d'exécution en fixant d'une manière appropriée les paramètres : des politiques ou des activités du système considéré. Deux études ont été conduites dans ce cadre~: l'allocation des ``offsets'' dans les systèmes ``offset free'' et l'allocation de priorités, de politiques et de quantum dans<br />les systèmes conformes au standard Posix~1003.1b,<br />2) une nouvelle classe de politiques d'ordonnancement permettant<br />d'optimiser des critères de performances propres à l'application.
20

Sécurité des noyaux de systèmes d'exploitation

Lacombe, Eric 15 December 2009 (has links) (PDF)
Cette thèse traite de la préservation de l'intégrité des systèmes d'exploitation courants. L'objectif est de répondre aux menaces actuelles et futures que représentent les logiciels malveillants qui s'implantent dans le noyau de ces systèmes (comme les rootkits "noyau") ou du moins en altèrent l'intégrité (comme les rootkits "hyperviseur"). La première partie de ce document se focalise sur ces logiciels malveillants. Tout d'abord, les attaques logiques sur les systèmes informatiques sont présentées dans leur globalité. Ensuite est proposée une classification des actions malveillantes qui provoquent la perte de l'intégrité d'un noyau. Enfin, les résultats d'une étude sur les rootkits "noyau" sont donnés et la création d'un rootkit original est expliquée. La seconde partie s'intéresse à la protection des noyaux. Après une description de l'état de l'art, une approche originale est proposée, fondée sur le concept de préservation de contraintes. En premier lieu, les éléments essentiels sur lesquels reposent un noyau sont identifiés et les contraintes sur ces éléments, nécessaires à un fonctionnement correct du noyau, sont exposées. Un hyperviseur léger (Hytux) a été conçu pour empêcher la violation de ces contraintes en interceptant certaines des actions du noyau. Sa mise en oeuvre est décrite pour un noyau Linux 64 bits sur architecture x86 qui dispose des technologies Intel VT-x et VT-d.

Page generated in 0.2225 seconds