EA2014 OSforWSN



= Présentation =


 * Enseignants : Georges-Pierre Bonneau, Didier Donsez (EA2014)
 * Sujet : OS for WSN
 * Date : 10 octobre 2014
 * Auteur : El Hadji Malick FALL 
 * Télécharger la présentation : [[Media:EA2014_osforwsn.zip]]

= Résumé = Un réseau de capteurs sans fils (wireless sensor network) est un réseau informatique constitué de plusieurs capteurs appelés nœuds. Ces nœuds, chargés de relever et de router les informations relevées sur une zone couverte, sont constitués au minimum d’un micro-processeur d’une mémoire vive, d’une interface radio, de micro-capteurs et d’une source d'énergie.

L’utilisation des capteurs sans fil est aujourd’hui de plus en plus demandée dans de nombreux domaines, dans le cadre de la supervision et la sécurité. Ainsi, pour améliorer la performance de ces réseaux de capteurs, des systèmes d’exploitation comme TinyOS sont mis en place pour gérer les ressources limitées telles que l’énergie.

Mots Clés
Réseau, capteur, sans fil, nœud, système d'exploitation, performance, ressources limitées

= Abstract = A wireless sensor network is a computer network consisting of multiple sensors called nodes. These nodes, responsible for retrieving and routing information collected on a covered area, consist of at least a microprocessor, a RAM, a radio interface, micro-sensors and a source of energy.

The use of wireless sensors is now increasingly requiered in many fields, for the supervision and security. Thus, to improve the performance of these sensor networks, operating systems such as TinyOS are set up in order to manage limited resources such as energy.

Key Words
Network, sensor, wireless, node, operating system, performance, limited resources

= Synthèse =

Un capteur en réseau est défini comme un ensemble d’éléments électroniques de taille réduite, composé essentiellement d'un détecteur, d'un microcontrôleur, d’une batterie, d'un émetteur-récepteur et d'une antenne. Ces capteurs peuvent être reliés ensemble pour former un réseau sans fil. Un réseau de capteurs sans fil est donc un réseau ad hoc composé d’un grand nombre de noeuds qui désignent ces capteurs capables de récolter, de transmettre et renseigner sur plusieurs données de manière autonome.

L’utilisation des capteurs sans fil est aujourd’hui de plus en plus requise dans des domaines tels que la supervision et la sécurité. Ils se basent sur des protocoles pour communiquer entre eux et proposent des programmes et des réseaux embarqués. A leur début, ces capteurs étaient uniquement composé d’un système dédié à une application précise (Par exemple, capteur permettant de relever la température ambiante d’un milieu, est uniquement constitué d’un thermomètre électronique et d’un afficheur digital). Avec de nouvelles contraintes comme la recherche applicative, ils sont aujourd’hui gérés par des systèmes d’exploitation spécialisés. Ces systèmes d’exploitation pour capteur en réseau, appelés également WSN, sont par conséquent des systèmes d'exploitation embarqués au sein de capteurs en réseau. Développé et soutenu par l’université américaine de Berkeley, TinyOS est un des premiers systèmes d'exploitation conçus pour les réseaux de capteurs. Il est aujourd’hui le plus répandu et celui qui nous intéressera en particulier.



= Les systèmes d'exploitation pour réseaux de capteurs et leurs caractéristiques =

Les nœuds qui composent un réseau de capteur subissent de nombreuse contraintes. Ils sont tout d’abord limités par la capacité de leur batterie, la puissance de leur processeur et leur faible capacité de communication.

Un système d’exploitation devient alors nécessaire. En se présentant comme une interface entre les ressources matérielles limitées et des applications distribuées, il permet de faciliter la programmation des applications, mais aussi d’optimiser les utilisations de ressources. En effet il est capable de de gérer de nombreuses tâches telles que l’allocation de ressource sur les périphériques, l’interruption et la gestion et la planification de tâches, sans oublier la gestion du réseau support.

Architecture
L’architecture d'un système d'exploitation ainsi que sur la façon de fournir des services aux programmes d'application sont des caractéristiques essentielles.

Nous distinguons 4 types quatre types d'architectures de système d'exploitation :
 * Monolithique : Les services fournis par le système d'exploitation sont mis en œuvre séparément et chaque service fournit une interface pour d'autres services.
 * Micro Noyau : le noyau fournit le strict minimum pour assurer le fonctionnement du système. La plupart des fonctionnalités du système d'exploitation est fournie via des serveurs au niveau utilisateur comme un serveur de fichiers, un serveur de mémoire
 * Modulaire ou composant : le système d'exploitation met en œuvre des services sous la forme de couches.
 * Machine virtuelle : Le principe d'une machine virtuelle est d'intégrer le système d'exploitation à l'application de l'utilisateur

Modèle d’exécution et ordonnancement
On distingue 3 modèles d'exécution pour les réseaux de capteurs :
 * Événementiel (Event-based) : qui donne la priorité aux événements.
 * Multi Thread (Thread-based) : gestion de la préemption et de la concurrence
 * Hybrid : qui combine les 2 modèles précédents

En ce qui concerne l’ordonnancement, il y a deux catégories :
 * L'ordonnancement en temps réel pour les applications en temps réel
 * L’ordonnancement en temps partagé adapté aux événements asynchrones

=TinyOS= TinyOS est un système d’exploitation open-source conçu pour des réseaux de capteurs sans fil. Il a été créé pour répondre aux caractéristiques et aux nécessités des réseaux de capteurs. Plus d'information ...

=Conclusion= En conclusion, l'apport d'une ingénierie logicielle sur les réseaux de capteurs est considérable mais également essentiel. En effet, les contraintes associées aux capteurs et à leur mise en réseau sont très fortes. Pour résoudre la plupart de ses contraintes, des systèmes d'exploitation telles que TinyOS basé événement apportent des solutions, mais qui malheureusement ne couvrent pas l'ensemble de ses contraintes. Pour palier ainsi aux limites des systèmes existants, de nombreuses autres tels que Mbed OS sont en cours de développement.

= Notes et références =

TinyOS

 * Guide d'installation détaillé de TinyOS


 * Site officiel de TinyOS


 * Dépôt officiel de TinyOS

JTOSSIM

 * Guide d'installation de JTOSSIM

Documentation

 * Système d'exploitation pour capteur en_réseau
 * Cours de Bernard TOURANCHEAU