SlideShare une entreprise Scribd logo
LE SYSTÈME D'EXPLOITATION POUR RCSF : TINYOS
INTRODUCTION
POURQUOI UN NOUVEAU OS POUR LES « MOTES » ?
1- Caractéristiques des OS classiques :
Les OS classiques sont généralement conçus pour un usage générique. Ils sont ainsi conçus en
supposant une disponibilité sans limite des ressources. Leur objectif est la facilité d'usage, la
rapidité et efficacité. Parmis leurs caractéristiques, on peut citer:
 Architecture Multi-thread=>Mémoire importante
 Modèle E/S
 Séparation entre espace noyau et utilisateur
 Pas de contraintes d'énérgie
 Ressources disponibles
Les OS classiques ne sont pas appropriés aux "motes" (noeuds capteurs), vus que ces derniers
sont caractérisés par :
 Ressources énergétiques basses
 Mémoire limitée
 CPU lente
 Petite taille
 Parallélisme matériel limité
 Communication radio
 Bande-passante faible
 Portée radio courte
2- Contraintes d'un "mote"
PROPRIÉTÉS DE L'OS SOUHAITÉ POUR LES "MOTES"
 Image mémoire petite
 Efficacité en calcul et consommation d'énergie
 La communication est fondamentale
 Temps-réel
 Construction efficace d'applications
LA SOLUTION TINYOS
1- Caractéristiques de TinyOS
• Concurrence : utilise une architecture orientée événement
• Modularité
 Application composée de composants
 OS + Application compilés en un seul exécutable
• Communication
 Utilise un modèle event/command
 Ordonnancement FIFO non préemptif
• Pas de séparation noyau/utilisateur
APERÇUS GÉNÉRALE DE TINYOS
 Système d'exploitation pour réseaux de capteurs embarqués
 Ensemble de composants logiciels qui peuvent être reliés ensemble en un seul exécutable sur un mote
 Fonctions minimales
 Deux threads: tâches et handlers
d'événements matériels
 Pas de gestion de la mémoire...
MODÈLE MÉMOIRE DE TINYOS
 Allocation statique de la mémoire
 Pas de heap (malloc)
 Pas de pointeur sur function
 Pas d'allocation dynamique
 Variables globales
 Disponibles per-frame
 Conservation de la mémoire
 Utilisation de pointeurs
 Variables locales
 Sauvegardées sur la pile (stack)
 Déclarées dans une méthode
 Le système d’exploitation TinyOS s’appuie sur le langage NesC. Celui-ci propose une architecture basée
sur des composants, permettant de réduire considérablement la taille mémoire du système et de ses
applications. Chaque composant correspond à un élément matériel (LEDs, timer, ADC…) et peut être
réutilisé dans différentes applications. Ces applications sont des ensembles de composants associés dans
un but précis. Les composants peuvent ,,,
 L’implémentation de composants s’effectue en déclarant des tâches, des commandes ou des
évènements.
 Une tâche est un travail de « longue durée ».
 Une commande est l'exécution d’une fonctionnalité précise dans un autre composant.
 Un événement est l'équivalent logiciel à une interruption matérielle.
 Il existe de nombreuses cibles possibles pour ce système d’exploitation embarqué. Malgré leurs différences,
elles respectent toutes globalement la même architecture basée sur un noyau central autour duquel s’articule
les différentes interfaces d’entrée-sortie, de communication et d’alimentation. Voici un schéma représentant
cette architecture :
 Mote, processeur, RAM et Flash : On appelle généralement Mote la carte physique utilisant TinyOS pour
fonctionner. Celle-ci a pour cœur le bloc constitué du processeur et des mémoires RAM et Flash. Cet ensemble
est à la base du calcul binaire et du stockage, à la fois temporaire pour les données et définitif pour le système
TinyOS.
 Radio et antenne : TinyOS est prévu pour mettre en place des réseaux sans fils, les équipements étudiés sont
sont donc généralement équipés d’une radio ainsi que d’une antenne afin de se connecter à la couche
physique que constitue les émissions hertziennes.
 LED, interface, capteur : TinyOS est prévu pour mettre en place des réseaux de capteurs, on retrouve donc
des équipements bardés de différents types de détecteurs et autres entrées.
 Batterie : Comme tout dispositif embarqué, ceux utilisant TinyOS sont pourvus d’une alimentation autonome
autonome telle qu’une batterie.
Au-delà de cette liste, il est possible d’implémenter tout type de plateforme embarquée physique en redéveloppant les
bibliothèques nécessaires à la prise en compte des entrées sorties nécessaires.
ALLOCATION DES RESSOURCES
L’ordonnanceur:
Le choix d’un ordonnanceur d´extermine le fonctionnement global du système et le dote de propriétés telles
que la capacite a fonctionner en temps réel.
L’ordonnanceur TinyOS se compose de :
– 2 niveaux de priorités (bas pour les tâches, haut pour les évènements).
– 1 file d’attente FIFO
Il existe trois approches algorithmiques pour l’ordonnancement d’activité
ALLOCATION DES RESSOURCES
Tâche
Une tâche est un travail de « longue durée »,elle est utilisé pour effectuer la plupart des blocs d’instruction
d’une application. À l’appel d’une tâche, celle-ci va prendre place dans une file d’attente de type FIFO (First In
First Out) pour y être exécutée, une tâche activée s’exécute en entier. Par ailleurs, lorsque la file d’attente des
tâches est vide, le système d’exploitation met en veille le dispositif jusqu’au lancement de la prochaine
interruption,
Evènements
Les évènements sont prioritaires par rapport aux tâches et peuvent interrompre la tâche en cours d’exécution.
Ils permettent de faire le lien entre les interruptions matérielles (pression d’un bouton, changement d’état d’une
entrée, …) et les couches logicielles que constituent les tâches.
Signaler un event : signal Send.sendDone(&msg1, SUCCESS);
Commande
Une commande est l'exécution d’une fonctionnalité précise dans un autre composant.
Appeler une commande: call Send.send(1, sizeof(Message), &msg1);
LANGAGE NESC
 NESC est un langage conçus pour incarner les concepts structurant et le modèle d'exécution de TinyOS.
 fait pour minimiser l’utilisation de mémoire et de puissance de calcul par les capteurs, qui très souvent
disposent de ressources très limitées (batterie de faible puissance et non changeable, mémoire
réduite...).
 C'est une extension du langage C orientée composant ; il support alors la syntaxe du langage C et il est
compilé vers le langage C avant sa compilation en binaire.
Les fichiers dans NesC :
Les fichiers de NesC sont classés en trois types : Interfaces, modules et configurations.
Interface : Ce type de fichier déclare les services fournis et les services qui seront utilisés. Ils se trouvent dans le
répertoire /tos/interface. (exemple : StdControl.nc).
Module : Le type Module contient le code de l’application, en mettant en œuvre une ou plusieurs interfaces.
(exemple : BlinkM.nc).
Configuration : Dans ce fichier on déclare la manière d’unir les différents composants et comment effectuer le
contrôle des flux. (exemple : Blink.nc).
LANGAGE NESC
Composants
TinyOS définit un nombre important de concepts qui sont exprimés dans NesC . D’abord, les applications
NesC sont construites par des composants avec des interfaces bidirectionnelles d´définies.
 L'unité de code de base de nesC
 Un composant correspond à un élément matériel (LEDs, timer, ADC…) et peut être réutilisé dans différentes
applications.
Exécute des Commandes
Lance des Events
Dispose d'un Frame pour stocker l'état local
Utilise la notion de Tasks pour gérer la concurence
 Un Composant implémente des interfaces utilisées par d'autres composants pour communiquer avec ce
composant
LANGAGE NESC
Il existe deux types de composants :
 Module : composant implémenté avec du code (spécifications d’un composant) .
 Configuration : composants reliés ensemble en fonction des interfaces (commandes ou
événements)pour former un autre composant
LANGAGE NESC
Implémentation
Dans cette section on définit :
 quels sont les composants qui fournissent les interfaces à notre application .
les connections entre les différents composants qu’utilise l’application. deux composants sont reliés ensemble
en les connectant (wiring).
• endpoint1 = endpoint2 endpoint1 -> endpoint2 endpoint1 <- endpoint2
Configuration
C’est à cet endroit que l’on déclare les autres composants dont se servira l’application. Cette possibilité offerte
par le langage permet de faire de la programmation modulaire et de réutiliser des composants préalablement
définis.
LANGAGE NESC
Module
Cette partie du code est généralement plus étendue et c’est dans celle-ci que l’on programme réellement le
comportement qu’on souhaite voir réalise par l’application. Cette partie là est à son tour divisée en trois sous-
sections : Uses, Provides, Implementation.
// code
LANGAGE NESC
« provides » : indique au compilateur les interfaces que va fournir notre composant. Par exemple, si notre
composant est une application, on doit fournir au moins l’interface StdControl.
« uses » : informe le compilateur que nous allons faire usage d’une interface ,
LANGAGE NESC
Types de donnée
Les types de données qui peuvent être utilisés en NesC sont tous ceux que fournit le langage C standard plus
quelques autres qui n’apportent pas de puissance de calcul mais qui sont très utiles pour la construction de
paquets puisqu’ils fournissent à l’utilisateur le nombre de bits qu’ils occupent (ceci est important au moment
de la transmission des informations par l’intermédiaire des ondes radio).
Ces types additionnels sont :
 uint16_t : entier non signé sur 16 bits.
 uint8_t : entier non signé sur 8 bits.
 result_t : utilisé pour savoir si une fonction à été exécuté avec succès ou non, c’est comme un booléen mais
avec les valeurs SUCCESS et FAIL. (retour de fonction)
PROCESSUS DE COMPILATION
Le compilateur traîte les fichiers NESC en les convertissant en un fichier C. Ce fichier contiendra l'application et
les composants de l'OS utilisés par l'application. Ensuite un compilateur spécifique à la plateforme cible
compile ce fichier C. Il deviendra alors un seul exécutable. Le chargeur installe le code sur le "mote" (Mica2,
Telos, etc.)
SIMULATION
Le simulateur TOSSIM
TOSSIM est le simulateur de TinyOs « bibliothèque ». Il permet de simuler le comportement d’un capteur
(envoie/réception de messages via les ondes radios, traitement de l’information, …) au sein d’un réseau de
capteurs. Chaque répertoire source TinyOS possède un sous-répertoire sim facultatif, qui peut contenir des
implémentations de simulation de ce package.
Par exemple, tos/chips/atm128/timer/sim contient des implémentations TOSSIM de certaines des abstractions
du temporisateur Atmega128.
Actuellement, micaz est la seule plateforme prise en charge par TOSSIM. Vous devriez voir une sortie similaire
à ceci
SIMULATION
Le simulateur TinyViz
L’outil TinyViz est une application graphique qui nous permet d’avoir un aperçu de notre réseau sans avoir à
déployer les capteurs dans la nature.
Une économie d’effort et une préservation du matériel sont possibles grâce à cet outil. L’application permet
une analyse étape par étape en activant les différents modes disponibles (On/Off, Delay ,Play, Grilles ,Clear,
Arête )
fenêtre graphique TinyViz
LES TYPES DES CAPTEURS NŒUDS UTILISÉES
 TelosB
 MicaZ
 Iris
 Mica2
 Mica2Dot
ARCHITECTURE DES NOEUDS CAPTEURS
 TelosB
1. Processeur
- TI MSP430
- 8 MHz ,10kB RAM
2.Transmission
- IEEE 802.15.4 (ZigbBee)
- 250 Kbps
- Antenne intégrée
3. Flach
- 1 MB
4. Sensor
- Lumière
- Température
- Humidité
5. Système
- tinyOS
ARCHITECTURE DES NOEUDS CAPTEURS
ARCHITECTURE DES NOEUDS CAPTEURS
 MICAZ
1.RAM:
– Data memory :4 KOctets
2. ROM/Flash:
– program memory: 128 kOctets
3.External Flash: 512KB
4. Processeur:
– Atmel AVR Atmega 128 bit / 8MHz
ARCHITECTURE DES NOEUDS CAPTEURS
 MICA2dot
1. Size: 4 cm x 4 cm
2. CPU: 4 MHz, 8 bit
3. 512 Bytes RAM, 8KB ROM
4. Radio: 900 MHz, half-duplex
5. Serial communication
6. Sensors: Acceleration,
temperature, pressure, humidity,
light…
ARCHITECTURE DES NOEUDS CAPTEURS
 Mica2
1. 8-bit AVR Controller
2. FSK radio
3. Data-logger flash memory
TERRA- CÉU
 Code Blink LED
TERRA- CÉU
 Code des capteurs
TERRA- CÉU
 Code émission et réception des messages
SIMULATION DE CODE TERRA
CONCLUSION

Contenu connexe

Tendances

Chap06 1
Chap06 1Chap06 1
Chap06 1
Malak Souf
 
Video surveillance fr_web
Video surveillance fr_webVideo surveillance fr_web
Video surveillance fr_web
ghkamel
 
Mission d'audit des Systéme d'information
Mission d'audit des Systéme d'informationMission d'audit des Systéme d'information
Mission d'audit des Systéme d'information
Aymen Foudhaili
 
Introduction au big data
Introduction au big dataIntroduction au big data
Introduction au big data
Abdelghani Azri
 
Chap1 systéme d'information
Chap1 systéme d'informationChap1 systéme d'information
Chap1 systéme d'information
Ghita Benabdellah
 
Systeme embarque
Systeme embarqueSysteme embarque
Systeme embarque
Mohammed TIGHREMT
 
Cours guvernance des systèmes d'information partie 3 prof. Khalifa MANSOURI
Cours guvernance des systèmes d'information partie 3 prof. Khalifa MANSOURICours guvernance des systèmes d'information partie 3 prof. Khalifa MANSOURI
Cours guvernance des systèmes d'information partie 3 prof. Khalifa MANSOURI
Mansouri Khalifa
 
Cours Master Embarqué 2019-2020.pptx
Cours Master Embarqué 2019-2020.pptxCours Master Embarqué 2019-2020.pptx
Cours Master Embarqué 2019-2020.pptx
Abdo Brahmi
 
Gpao 2 Système d’information de la production
Gpao 2 Système d’information de la productionGpao 2 Système d’information de la production
Gpao 2 Système d’information de la production
ibtissam el hassani
 
System embaraqué
System  embaraquéSystem  embaraqué
Vers une plateforme intelligente pour la prévision des maladies végétales
Vers une plateforme intelligente pour la prévision des maladies végétalesVers une plateforme intelligente pour la prévision des maladies végétales
Vers une plateforme intelligente pour la prévision des maladies végétales
Sarra BOUHENNI
 
Rapport data-mining
Rapport data-miningRapport data-mining
Rapport data-mining
Sawsen Larbi
 
Montages financiers-khl-consulting
Montages financiers-khl-consultingMontages financiers-khl-consulting
Montages financiers-khl-consulting
Lahcen Aoussar
 
Correction examen Robotique
Correction examen Robotique Correction examen Robotique
Correction examen Robotique
Mouna Souissi
 
Cours Système Embarqué et Système d'exploitation mobile.pdf
Cours Système Embarqué et Système d'exploitation mobile.pdfCours Système Embarqué et Système d'exploitation mobile.pdf
Cours Système Embarqué et Système d'exploitation mobile.pdf
WahideArabe
 
[Banque & assurance] présentation des offres
[Banque & assurance] présentation des offres[Banque & assurance] présentation des offres
[Banque & assurance] présentation des offres
onepoint x weave
 
présentation informatique.pptx
présentation informatique.pptxprésentation informatique.pptx
présentation informatique.pptx
innapapillion2
 
Programmation de systèmes embarqués : Introduction aux systèmes embarqués
Programmation de systèmes embarqués : Introduction aux systèmes embarquésProgrammation de systèmes embarqués : Introduction aux systèmes embarqués
Programmation de systèmes embarqués : Introduction aux systèmes embarqués
ECAM Brussels Engineering School
 
Architecture de l'ordinateur Et Systeme d'exploitation
Architecture de l'ordinateur Et Systeme d'exploitationArchitecture de l'ordinateur Et Systeme d'exploitation
Architecture de l'ordinateur Et Systeme d'exploitation
Tunisie collège
 

Tendances (20)

Reseaux de capteurs sans fils - WSN
Reseaux de capteurs sans fils - WSNReseaux de capteurs sans fils - WSN
Reseaux de capteurs sans fils - WSN
 
Chap06 1
Chap06 1Chap06 1
Chap06 1
 
Video surveillance fr_web
Video surveillance fr_webVideo surveillance fr_web
Video surveillance fr_web
 
Mission d'audit des Systéme d'information
Mission d'audit des Systéme d'informationMission d'audit des Systéme d'information
Mission d'audit des Systéme d'information
 
Introduction au big data
Introduction au big dataIntroduction au big data
Introduction au big data
 
Chap1 systéme d'information
Chap1 systéme d'informationChap1 systéme d'information
Chap1 systéme d'information
 
Systeme embarque
Systeme embarqueSysteme embarque
Systeme embarque
 
Cours guvernance des systèmes d'information partie 3 prof. Khalifa MANSOURI
Cours guvernance des systèmes d'information partie 3 prof. Khalifa MANSOURICours guvernance des systèmes d'information partie 3 prof. Khalifa MANSOURI
Cours guvernance des systèmes d'information partie 3 prof. Khalifa MANSOURI
 
Cours Master Embarqué 2019-2020.pptx
Cours Master Embarqué 2019-2020.pptxCours Master Embarqué 2019-2020.pptx
Cours Master Embarqué 2019-2020.pptx
 
Gpao 2 Système d’information de la production
Gpao 2 Système d’information de la productionGpao 2 Système d’information de la production
Gpao 2 Système d’information de la production
 
System embaraqué
System  embaraquéSystem  embaraqué
System embaraqué
 
Vers une plateforme intelligente pour la prévision des maladies végétales
Vers une plateforme intelligente pour la prévision des maladies végétalesVers une plateforme intelligente pour la prévision des maladies végétales
Vers une plateforme intelligente pour la prévision des maladies végétales
 
Rapport data-mining
Rapport data-miningRapport data-mining
Rapport data-mining
 
Montages financiers-khl-consulting
Montages financiers-khl-consultingMontages financiers-khl-consulting
Montages financiers-khl-consulting
 
Correction examen Robotique
Correction examen Robotique Correction examen Robotique
Correction examen Robotique
 
Cours Système Embarqué et Système d'exploitation mobile.pdf
Cours Système Embarqué et Système d'exploitation mobile.pdfCours Système Embarqué et Système d'exploitation mobile.pdf
Cours Système Embarqué et Système d'exploitation mobile.pdf
 
[Banque & assurance] présentation des offres
[Banque & assurance] présentation des offres[Banque & assurance] présentation des offres
[Banque & assurance] présentation des offres
 
présentation informatique.pptx
présentation informatique.pptxprésentation informatique.pptx
présentation informatique.pptx
 
Programmation de systèmes embarqués : Introduction aux systèmes embarqués
Programmation de systèmes embarqués : Introduction aux systèmes embarquésProgrammation de systèmes embarqués : Introduction aux systèmes embarqués
Programmation de systèmes embarqués : Introduction aux systèmes embarqués
 
Architecture de l'ordinateur Et Systeme d'exploitation
Architecture de l'ordinateur Et Systeme d'exploitationArchitecture de l'ordinateur Et Systeme d'exploitation
Architecture de l'ordinateur Et Systeme d'exploitation
 

Similaire à Tiny os_2

La technologie des systemes distribués 2 ppt2222.pptx
La technologie des systemes distribués 2 ppt2222.pptxLa technologie des systemes distribués 2 ppt2222.pptx
La technologie des systemes distribués 2 ppt2222.pptx
kaoutarghaffour
 
Article open-silicium-juin-juillet-aout-2013
Article open-silicium-juin-juillet-aout-2013Article open-silicium-juin-juillet-aout-2013
Article open-silicium-juin-juillet-aout-2013
O10ée
 
Cours de microcontrôleurs
Cours de microcontrôleursCours de microcontrôleurs
Cours de microcontrôleurs
sarah Benmerzouk
 
Lepton : Description succincte
Lepton : Description succincteLepton : Description succincte
Lepton : Description succincte
O10ée
 
Introduction aux systèmes d-exploitation (2).ppt
Introduction aux systèmes d-exploitation (2).pptIntroduction aux systèmes d-exploitation (2).ppt
Introduction aux systèmes d-exploitation (2).ppt
MahdiHERMASSI1
 
Fichier_Compétences
Fichier_CompétencesFichier_Compétences
Fichier_Compétences
Yang Fei
 
systèmes distribues
systèmes distribuessystèmes distribues
systèmes distribues
kaoutarghaffour
 
Cour1
Cour1Cour1
srep_cours_01.pdf
srep_cours_01.pdfsrep_cours_01.pdf
srep_cours_01.pdf
SamirAwad14
 
Altera nios ii embedded evaluation kit
Altera nios ii embedded evaluation kitAltera nios ii embedded evaluation kit
Altera nios ii embedded evaluation kit
Wassim Smati
 
Altera nios ii embedded evaluation kit
Altera nios ii embedded evaluation kitAltera nios ii embedded evaluation kit
Altera nios ii embedded evaluation kit
Wassim Smati
 
LES RESEAUX INFORMATIQUES.pdf
LES RESEAUX INFORMATIQUES.pdfLES RESEAUX INFORMATIQUES.pdf
LES RESEAUX INFORMATIQUES.pdf
ssuser18776b
 
Le microprocesseur
Le microprocesseurLe microprocesseur
Le microprocesseur
ISIG
 
Cours sys 2PPT20.pdf
Cours sys 2PPT20.pdfCours sys 2PPT20.pdf
Cours sys 2PPT20.pdf
C00LiMoUn
 
chapitre 1 les reseaux informatiques .pptx
chapitre 1 les reseaux informatiques  .pptxchapitre 1 les reseaux informatiques  .pptx
chapitre 1 les reseaux informatiques .pptx
BOULANORICHRAF
 
partie osi ( open system inerconnexion);
partie osi ( open system inerconnexion);partie osi ( open system inerconnexion);
partie osi ( open system inerconnexion);
kawtarelbiraki
 
cours-gratuit.com--system1id048.pdf
cours-gratuit.com--system1id048.pdfcours-gratuit.com--system1id048.pdf
cours-gratuit.com--system1id048.pdf
KamalZeghdar
 
Diaporamas-Réseaux Informatiques.pdf
Diaporamas-Réseaux Informatiques.pdfDiaporamas-Réseaux Informatiques.pdf
Diaporamas-Réseaux Informatiques.pdf
EST-UMI de Meknès
 

Similaire à Tiny os_2 (20)

La technologie des systemes distribués 2 ppt2222.pptx
La technologie des systemes distribués 2 ppt2222.pptxLa technologie des systemes distribués 2 ppt2222.pptx
La technologie des systemes distribués 2 ppt2222.pptx
 
Article open-silicium-juin-juillet-aout-2013
Article open-silicium-juin-juillet-aout-2013Article open-silicium-juin-juillet-aout-2013
Article open-silicium-juin-juillet-aout-2013
 
Cours de microcontrôleurs
Cours de microcontrôleursCours de microcontrôleurs
Cours de microcontrôleurs
 
Lepton : Description succincte
Lepton : Description succincteLepton : Description succincte
Lepton : Description succincte
 
Introduction aux systèmes d-exploitation (2).ppt
Introduction aux systèmes d-exploitation (2).pptIntroduction aux systèmes d-exploitation (2).ppt
Introduction aux systèmes d-exploitation (2).ppt
 
Fichier_Compétences
Fichier_CompétencesFichier_Compétences
Fichier_Compétences
 
systèmes distribues
systèmes distribuessystèmes distribues
systèmes distribues
 
Cour1
Cour1Cour1
Cour1
 
srep_cours_01.pdf
srep_cours_01.pdfsrep_cours_01.pdf
srep_cours_01.pdf
 
Altera nios ii embedded evaluation kit
Altera nios ii embedded evaluation kitAltera nios ii embedded evaluation kit
Altera nios ii embedded evaluation kit
 
Altera nios ii embedded evaluation kit
Altera nios ii embedded evaluation kitAltera nios ii embedded evaluation kit
Altera nios ii embedded evaluation kit
 
Cours se chap1_2
Cours se chap1_2Cours se chap1_2
Cours se chap1_2
 
LES RESEAUX INFORMATIQUES.pdf
LES RESEAUX INFORMATIQUES.pdfLES RESEAUX INFORMATIQUES.pdf
LES RESEAUX INFORMATIQUES.pdf
 
Le microprocesseur
Le microprocesseurLe microprocesseur
Le microprocesseur
 
Cours sys 2PPT20.pdf
Cours sys 2PPT20.pdfCours sys 2PPT20.pdf
Cours sys 2PPT20.pdf
 
chapitre 1 les reseaux informatiques .pptx
chapitre 1 les reseaux informatiques  .pptxchapitre 1 les reseaux informatiques  .pptx
chapitre 1 les reseaux informatiques .pptx
 
partie osi ( open system inerconnexion);
partie osi ( open system inerconnexion);partie osi ( open system inerconnexion);
partie osi ( open system inerconnexion);
 
cours-gratuit.com--system1id048.pdf
cours-gratuit.com--system1id048.pdfcours-gratuit.com--system1id048.pdf
cours-gratuit.com--system1id048.pdf
 
Grid computing
Grid computingGrid computing
Grid computing
 
Diaporamas-Réseaux Informatiques.pdf
Diaporamas-Réseaux Informatiques.pdfDiaporamas-Réseaux Informatiques.pdf
Diaporamas-Réseaux Informatiques.pdf
 

Plus de MOHAMED ZARBOUBI

Defibrillateur
DefibrillateurDefibrillateur
Defibrillateur
MOHAMED ZARBOUBI
 
Eléctrocardiogramme Foetal (FECG)
Eléctrocardiogramme Foetal (FECG)Eléctrocardiogramme Foetal (FECG)
Eléctrocardiogramme Foetal (FECG)
MOHAMED ZARBOUBI
 
EMG anormal
EMG anormalEMG anormal
EMG anormal
MOHAMED ZARBOUBI
 
EEG normal
EEG normalEEG normal
EEG normal
MOHAMED ZARBOUBI
 
Tp1 architecture m.zarboubi
Tp1 architecture m.zarboubiTp1 architecture m.zarboubi
Tp1 architecture m.zarboubi
MOHAMED ZARBOUBI
 
Tp bus i2_c_partie_2
Tp bus i2_c_partie_2Tp bus i2_c_partie_2
Tp bus i2_c_partie_2
MOHAMED ZARBOUBI
 
Tp bus i2_c
Tp bus i2_cTp bus i2_c
Tp bus i2_c
MOHAMED ZARBOUBI
 
Spectrophotomètre
SpectrophotomètreSpectrophotomètre
Spectrophotomètre
MOHAMED ZARBOUBI
 
maintenance de scanner médicale
maintenance de scanner médicalemaintenance de scanner médicale
maintenance de scanner médicale
MOHAMED ZARBOUBI
 
Générateur d'HD & Salle de traitement d'eau
Générateur d'HD & Salle de traitement d'eau Générateur d'HD & Salle de traitement d'eau
Générateur d'HD & Salle de traitement d'eau
MOHAMED ZARBOUBI
 
Respirateur de réanimation
Respirateur de réanimationRespirateur de réanimation
Respirateur de réanimation
MOHAMED ZARBOUBI
 
phonocardiogramme (Pcg)
phonocardiogramme (Pcg)phonocardiogramme (Pcg)
phonocardiogramme (Pcg)
MOHAMED ZARBOUBI
 
Manet vs Rcsf
Manet vs RcsfManet vs Rcsf
Manet vs Rcsf
MOHAMED ZARBOUBI
 
Le rythme cardiaque
Le rythme cardiaqueLe rythme cardiaque
Le rythme cardiaque
MOHAMED ZARBOUBI
 

Plus de MOHAMED ZARBOUBI (14)

Defibrillateur
DefibrillateurDefibrillateur
Defibrillateur
 
Eléctrocardiogramme Foetal (FECG)
Eléctrocardiogramme Foetal (FECG)Eléctrocardiogramme Foetal (FECG)
Eléctrocardiogramme Foetal (FECG)
 
EMG anormal
EMG anormalEMG anormal
EMG anormal
 
EEG normal
EEG normalEEG normal
EEG normal
 
Tp1 architecture m.zarboubi
Tp1 architecture m.zarboubiTp1 architecture m.zarboubi
Tp1 architecture m.zarboubi
 
Tp bus i2_c_partie_2
Tp bus i2_c_partie_2Tp bus i2_c_partie_2
Tp bus i2_c_partie_2
 
Tp bus i2_c
Tp bus i2_cTp bus i2_c
Tp bus i2_c
 
Spectrophotomètre
SpectrophotomètreSpectrophotomètre
Spectrophotomètre
 
maintenance de scanner médicale
maintenance de scanner médicalemaintenance de scanner médicale
maintenance de scanner médicale
 
Générateur d'HD & Salle de traitement d'eau
Générateur d'HD & Salle de traitement d'eau Générateur d'HD & Salle de traitement d'eau
Générateur d'HD & Salle de traitement d'eau
 
Respirateur de réanimation
Respirateur de réanimationRespirateur de réanimation
Respirateur de réanimation
 
phonocardiogramme (Pcg)
phonocardiogramme (Pcg)phonocardiogramme (Pcg)
phonocardiogramme (Pcg)
 
Manet vs Rcsf
Manet vs RcsfManet vs Rcsf
Manet vs Rcsf
 
Le rythme cardiaque
Le rythme cardiaqueLe rythme cardiaque
Le rythme cardiaque
 

Dernier

Webinaire BL 28_06_03_Transmissibilité.pdf
Webinaire BL 28_06_03_Transmissibilité.pdfWebinaire BL 28_06_03_Transmissibilité.pdf
Webinaire BL 28_06_03_Transmissibilité.pdf
Institut de l'Elevage - Idele
 
Shimla Girls call Service 000XX00000 Provide Best And Top Girl Service And No...
Shimla Girls call Service 000XX00000 Provide Best And Top Girl Service And No...Shimla Girls call Service 000XX00000 Provide Best And Top Girl Service And No...
Shimla Girls call Service 000XX00000 Provide Best And Top Girl Service And No...
manalishivani8
 
Webinaire BL 28_06_02_Consommation Energie.pdf
Webinaire BL 28_06_02_Consommation Energie.pdfWebinaire BL 28_06_02_Consommation Energie.pdf
Webinaire BL 28_06_02_Consommation Energie.pdf
Institut de l'Elevage - Idele
 
cours-sur-les-stations-de-pompageen génie civil.pdf
cours-sur-les-stations-de-pompageen génie civil.pdfcours-sur-les-stations-de-pompageen génie civil.pdf
cours-sur-les-stations-de-pompageen génie civil.pdf
afigloria194
 
Présentation Mémoire Cybersecurity .pptx
Présentation Mémoire Cybersecurity .pptxPrésentation Mémoire Cybersecurity .pptx
Présentation Mémoire Cybersecurity .pptx
KODJO10
 
Webinaire BL 28_06_01_robots de traite.pdf
Webinaire BL 28_06_01_robots de traite.pdfWebinaire BL 28_06_01_robots de traite.pdf
Webinaire BL 28_06_01_robots de traite.pdf
Institut de l'Elevage - Idele
 

Dernier (6)

Webinaire BL 28_06_03_Transmissibilité.pdf
Webinaire BL 28_06_03_Transmissibilité.pdfWebinaire BL 28_06_03_Transmissibilité.pdf
Webinaire BL 28_06_03_Transmissibilité.pdf
 
Shimla Girls call Service 000XX00000 Provide Best And Top Girl Service And No...
Shimla Girls call Service 000XX00000 Provide Best And Top Girl Service And No...Shimla Girls call Service 000XX00000 Provide Best And Top Girl Service And No...
Shimla Girls call Service 000XX00000 Provide Best And Top Girl Service And No...
 
Webinaire BL 28_06_02_Consommation Energie.pdf
Webinaire BL 28_06_02_Consommation Energie.pdfWebinaire BL 28_06_02_Consommation Energie.pdf
Webinaire BL 28_06_02_Consommation Energie.pdf
 
cours-sur-les-stations-de-pompageen génie civil.pdf
cours-sur-les-stations-de-pompageen génie civil.pdfcours-sur-les-stations-de-pompageen génie civil.pdf
cours-sur-les-stations-de-pompageen génie civil.pdf
 
Présentation Mémoire Cybersecurity .pptx
Présentation Mémoire Cybersecurity .pptxPrésentation Mémoire Cybersecurity .pptx
Présentation Mémoire Cybersecurity .pptx
 
Webinaire BL 28_06_01_robots de traite.pdf
Webinaire BL 28_06_01_robots de traite.pdfWebinaire BL 28_06_01_robots de traite.pdf
Webinaire BL 28_06_01_robots de traite.pdf
 

Tiny os_2

  • 1. LE SYSTÈME D'EXPLOITATION POUR RCSF : TINYOS
  • 3. POURQUOI UN NOUVEAU OS POUR LES « MOTES » ? 1- Caractéristiques des OS classiques : Les OS classiques sont généralement conçus pour un usage générique. Ils sont ainsi conçus en supposant une disponibilité sans limite des ressources. Leur objectif est la facilité d'usage, la rapidité et efficacité. Parmis leurs caractéristiques, on peut citer:  Architecture Multi-thread=>Mémoire importante  Modèle E/S  Séparation entre espace noyau et utilisateur  Pas de contraintes d'énérgie  Ressources disponibles
  • 4. Les OS classiques ne sont pas appropriés aux "motes" (noeuds capteurs), vus que ces derniers sont caractérisés par :  Ressources énergétiques basses  Mémoire limitée  CPU lente  Petite taille  Parallélisme matériel limité  Communication radio  Bande-passante faible  Portée radio courte 2- Contraintes d'un "mote"
  • 5. PROPRIÉTÉS DE L'OS SOUHAITÉ POUR LES "MOTES"  Image mémoire petite  Efficacité en calcul et consommation d'énergie  La communication est fondamentale  Temps-réel  Construction efficace d'applications
  • 6. LA SOLUTION TINYOS 1- Caractéristiques de TinyOS • Concurrence : utilise une architecture orientée événement • Modularité  Application composée de composants  OS + Application compilés en un seul exécutable • Communication  Utilise un modèle event/command  Ordonnancement FIFO non préemptif • Pas de séparation noyau/utilisateur
  • 7. APERÇUS GÉNÉRALE DE TINYOS  Système d'exploitation pour réseaux de capteurs embarqués  Ensemble de composants logiciels qui peuvent être reliés ensemble en un seul exécutable sur un mote  Fonctions minimales  Deux threads: tâches et handlers d'événements matériels  Pas de gestion de la mémoire...
  • 8. MODÈLE MÉMOIRE DE TINYOS  Allocation statique de la mémoire  Pas de heap (malloc)  Pas de pointeur sur function  Pas d'allocation dynamique  Variables globales  Disponibles per-frame  Conservation de la mémoire  Utilisation de pointeurs  Variables locales  Sauvegardées sur la pile (stack)  Déclarées dans une méthode
  • 9.  Le système d’exploitation TinyOS s’appuie sur le langage NesC. Celui-ci propose une architecture basée sur des composants, permettant de réduire considérablement la taille mémoire du système et de ses applications. Chaque composant correspond à un élément matériel (LEDs, timer, ADC…) et peut être réutilisé dans différentes applications. Ces applications sont des ensembles de composants associés dans un but précis. Les composants peuvent ,,,  L’implémentation de composants s’effectue en déclarant des tâches, des commandes ou des évènements.  Une tâche est un travail de « longue durée ».  Une commande est l'exécution d’une fonctionnalité précise dans un autre composant.  Un événement est l'équivalent logiciel à une interruption matérielle.
  • 10.  Il existe de nombreuses cibles possibles pour ce système d’exploitation embarqué. Malgré leurs différences, elles respectent toutes globalement la même architecture basée sur un noyau central autour duquel s’articule les différentes interfaces d’entrée-sortie, de communication et d’alimentation. Voici un schéma représentant cette architecture :  Mote, processeur, RAM et Flash : On appelle généralement Mote la carte physique utilisant TinyOS pour fonctionner. Celle-ci a pour cœur le bloc constitué du processeur et des mémoires RAM et Flash. Cet ensemble est à la base du calcul binaire et du stockage, à la fois temporaire pour les données et définitif pour le système TinyOS.  Radio et antenne : TinyOS est prévu pour mettre en place des réseaux sans fils, les équipements étudiés sont sont donc généralement équipés d’une radio ainsi que d’une antenne afin de se connecter à la couche physique que constitue les émissions hertziennes.  LED, interface, capteur : TinyOS est prévu pour mettre en place des réseaux de capteurs, on retrouve donc des équipements bardés de différents types de détecteurs et autres entrées.  Batterie : Comme tout dispositif embarqué, ceux utilisant TinyOS sont pourvus d’une alimentation autonome autonome telle qu’une batterie.
  • 11. Au-delà de cette liste, il est possible d’implémenter tout type de plateforme embarquée physique en redéveloppant les bibliothèques nécessaires à la prise en compte des entrées sorties nécessaires.
  • 12. ALLOCATION DES RESSOURCES L’ordonnanceur: Le choix d’un ordonnanceur d´extermine le fonctionnement global du système et le dote de propriétés telles que la capacite a fonctionner en temps réel. L’ordonnanceur TinyOS se compose de : – 2 niveaux de priorités (bas pour les tâches, haut pour les évènements). – 1 file d’attente FIFO Il existe trois approches algorithmiques pour l’ordonnancement d’activité
  • 13. ALLOCATION DES RESSOURCES Tâche Une tâche est un travail de « longue durée »,elle est utilisé pour effectuer la plupart des blocs d’instruction d’une application. À l’appel d’une tâche, celle-ci va prendre place dans une file d’attente de type FIFO (First In First Out) pour y être exécutée, une tâche activée s’exécute en entier. Par ailleurs, lorsque la file d’attente des tâches est vide, le système d’exploitation met en veille le dispositif jusqu’au lancement de la prochaine interruption, Evènements Les évènements sont prioritaires par rapport aux tâches et peuvent interrompre la tâche en cours d’exécution. Ils permettent de faire le lien entre les interruptions matérielles (pression d’un bouton, changement d’état d’une entrée, …) et les couches logicielles que constituent les tâches. Signaler un event : signal Send.sendDone(&msg1, SUCCESS); Commande Une commande est l'exécution d’une fonctionnalité précise dans un autre composant. Appeler une commande: call Send.send(1, sizeof(Message), &msg1);
  • 14. LANGAGE NESC  NESC est un langage conçus pour incarner les concepts structurant et le modèle d'exécution de TinyOS.  fait pour minimiser l’utilisation de mémoire et de puissance de calcul par les capteurs, qui très souvent disposent de ressources très limitées (batterie de faible puissance et non changeable, mémoire réduite...).  C'est une extension du langage C orientée composant ; il support alors la syntaxe du langage C et il est compilé vers le langage C avant sa compilation en binaire. Les fichiers dans NesC : Les fichiers de NesC sont classés en trois types : Interfaces, modules et configurations. Interface : Ce type de fichier déclare les services fournis et les services qui seront utilisés. Ils se trouvent dans le répertoire /tos/interface. (exemple : StdControl.nc). Module : Le type Module contient le code de l’application, en mettant en œuvre une ou plusieurs interfaces. (exemple : BlinkM.nc). Configuration : Dans ce fichier on déclare la manière d’unir les différents composants et comment effectuer le contrôle des flux. (exemple : Blink.nc).
  • 15. LANGAGE NESC Composants TinyOS définit un nombre important de concepts qui sont exprimés dans NesC . D’abord, les applications NesC sont construites par des composants avec des interfaces bidirectionnelles d´définies.  L'unité de code de base de nesC  Un composant correspond à un élément matériel (LEDs, timer, ADC…) et peut être réutilisé dans différentes applications. Exécute des Commandes Lance des Events Dispose d'un Frame pour stocker l'état local Utilise la notion de Tasks pour gérer la concurence  Un Composant implémente des interfaces utilisées par d'autres composants pour communiquer avec ce composant
  • 16. LANGAGE NESC Il existe deux types de composants :  Module : composant implémenté avec du code (spécifications d’un composant) .  Configuration : composants reliés ensemble en fonction des interfaces (commandes ou événements)pour former un autre composant
  • 17. LANGAGE NESC Implémentation Dans cette section on définit :  quels sont les composants qui fournissent les interfaces à notre application . les connections entre les différents composants qu’utilise l’application. deux composants sont reliés ensemble en les connectant (wiring). • endpoint1 = endpoint2 endpoint1 -> endpoint2 endpoint1 <- endpoint2 Configuration C’est à cet endroit que l’on déclare les autres composants dont se servira l’application. Cette possibilité offerte par le langage permet de faire de la programmation modulaire et de réutiliser des composants préalablement définis.
  • 18. LANGAGE NESC Module Cette partie du code est généralement plus étendue et c’est dans celle-ci que l’on programme réellement le comportement qu’on souhaite voir réalise par l’application. Cette partie là est à son tour divisée en trois sous- sections : Uses, Provides, Implementation. // code
  • 19. LANGAGE NESC « provides » : indique au compilateur les interfaces que va fournir notre composant. Par exemple, si notre composant est une application, on doit fournir au moins l’interface StdControl. « uses » : informe le compilateur que nous allons faire usage d’une interface ,
  • 20. LANGAGE NESC Types de donnée Les types de données qui peuvent être utilisés en NesC sont tous ceux que fournit le langage C standard plus quelques autres qui n’apportent pas de puissance de calcul mais qui sont très utiles pour la construction de paquets puisqu’ils fournissent à l’utilisateur le nombre de bits qu’ils occupent (ceci est important au moment de la transmission des informations par l’intermédiaire des ondes radio). Ces types additionnels sont :  uint16_t : entier non signé sur 16 bits.  uint8_t : entier non signé sur 8 bits.  result_t : utilisé pour savoir si une fonction à été exécuté avec succès ou non, c’est comme un booléen mais avec les valeurs SUCCESS et FAIL. (retour de fonction)
  • 21. PROCESSUS DE COMPILATION Le compilateur traîte les fichiers NESC en les convertissant en un fichier C. Ce fichier contiendra l'application et les composants de l'OS utilisés par l'application. Ensuite un compilateur spécifique à la plateforme cible compile ce fichier C. Il deviendra alors un seul exécutable. Le chargeur installe le code sur le "mote" (Mica2, Telos, etc.)
  • 22. SIMULATION Le simulateur TOSSIM TOSSIM est le simulateur de TinyOs « bibliothèque ». Il permet de simuler le comportement d’un capteur (envoie/réception de messages via les ondes radios, traitement de l’information, …) au sein d’un réseau de capteurs. Chaque répertoire source TinyOS possède un sous-répertoire sim facultatif, qui peut contenir des implémentations de simulation de ce package. Par exemple, tos/chips/atm128/timer/sim contient des implémentations TOSSIM de certaines des abstractions du temporisateur Atmega128. Actuellement, micaz est la seule plateforme prise en charge par TOSSIM. Vous devriez voir une sortie similaire à ceci
  • 23. SIMULATION Le simulateur TinyViz L’outil TinyViz est une application graphique qui nous permet d’avoir un aperçu de notre réseau sans avoir à déployer les capteurs dans la nature. Une économie d’effort et une préservation du matériel sont possibles grâce à cet outil. L’application permet une analyse étape par étape en activant les différents modes disponibles (On/Off, Delay ,Play, Grilles ,Clear, Arête ) fenêtre graphique TinyViz
  • 24. LES TYPES DES CAPTEURS NŒUDS UTILISÉES  TelosB  MicaZ  Iris  Mica2  Mica2Dot
  • 25. ARCHITECTURE DES NOEUDS CAPTEURS  TelosB 1. Processeur - TI MSP430 - 8 MHz ,10kB RAM 2.Transmission - IEEE 802.15.4 (ZigbBee) - 250 Kbps - Antenne intégrée 3. Flach - 1 MB 4. Sensor - Lumière - Température - Humidité 5. Système - tinyOS
  • 27. ARCHITECTURE DES NOEUDS CAPTEURS  MICAZ 1.RAM: – Data memory :4 KOctets 2. ROM/Flash: – program memory: 128 kOctets 3.External Flash: 512KB 4. Processeur: – Atmel AVR Atmega 128 bit / 8MHz
  • 28. ARCHITECTURE DES NOEUDS CAPTEURS  MICA2dot 1. Size: 4 cm x 4 cm 2. CPU: 4 MHz, 8 bit 3. 512 Bytes RAM, 8KB ROM 4. Radio: 900 MHz, half-duplex 5. Serial communication 6. Sensors: Acceleration, temperature, pressure, humidity, light…
  • 29. ARCHITECTURE DES NOEUDS CAPTEURS  Mica2 1. 8-bit AVR Controller 2. FSK radio 3. Data-logger flash memory
  • 30. TERRA- CÉU  Code Blink LED
  • 31. TERRA- CÉU  Code des capteurs
  • 32. TERRA- CÉU  Code émission et réception des messages

Notes de l'éditeur

  1. Les modules, qui mettent en application des spécifications d’un composant. Les configurations, qui se chargeront d’unir différents composants en fonction des interfaces (commandes ou ´ev`enements).
  2. Les modules, qui mettent en application des spécifications d’un composant. Les configurations, qui se chargeront d’unir différents composants en fonction des interfaces (commandes ou ´ev`enements).
  3. Les modules, qui mettent en application des spécifications d’un composant. Les configurations, qui se chargeront d’unir différents composants en fonction des interfaces (commandes ou ´ev`enements).
  4. Les réseaux de capteurs sont:– Composés de plusieurs noeuds, déployés +/-aléatoirement, qui forment un réseau multi-saut– Chaque noeud est un capteur (température, pression, humidité, etc.) et un “routeur” Un nœud capteur (dit "mote" en anglais) est composé principalement d'unprocesseur, une mémoire, un émetteur/récepteur radio, un ensemble de capteurs,et une pile (voir figure suivante). Il existe plusieurs modèles commercialisés dans lemarché. Parmi les plus célèbres, les "mote ///// Les plateformes à faible consommation : Mica2, MicaZ et Telos sont utilisées
  5. (Bande 2.4-2.4835 GhZ)
  6. 1.Extremely popular mote
  7. 1.Extremely popular mote