1292093031systeme d exploitation pour l embarqu

28
Institut Supérieur d’Informatique Systèmes d’exploitation Evolués M1 - ISI 1 ére année Mastere en Informatique Système d’exploitation pour l’embarqué Chapitre 04

Upload: khawlaaaa

Post on 21-Nov-2015

14 views

Category:

Documents


0 download

DESCRIPTION

embarqué

TRANSCRIPT

Module System On Chip

Systme dexploitation pour lembarquChapitre 04Institut Suprieur dInformatiqueSystmes dexploitation EvolusM1 - ISI1re anne Mastere en InformatiqueDr. Mohamed Wassim Youssef Systmes dexploitation volusM1- ISI 2010Systme dexploitation pour lembarquIntroduction des systmes embarqusQuest ce quun systme embarquCaractristiques principalesChamps dapplication Role des systmes dexploitation pour lembarquLes architectures des systmes dexploitationOS Monolithique OS MulticouchesOS Micronoyau OS Machine virtuelle Les normes des systmes dexploitation2#Systmes dexploitation volusM1- ISI 2010Dr. Mohamed Wassim Youssef Systmes dexploitation volusM1- ISI 2010Quest ce quun systme embarqu?Cest un systme lectronique et informatique autonome qui est ddi une tche particulire et contenue dans un systme englobant. Il nest gnralement pas programmable.Pas dE/S standardsMatriel et application intimement lisLogiciel enfoui noy dans le matriel pas facilement discernable comme dans un PC.3Dr. Mohamed Wassim Youssef Systmes dexploitation volusM1- ISI 20103Caractristiques principales dun systme embarquSystme principalement numriqueMet gnralement en oeuvre un processeur Excute une application logicielle ddie prcise (non pas une application scientifique ou grand public)Il na pas rellement de clavier standard et laffichage est limitCe ne sont pas des PC, mais des architectures similaires (x86)

4Dr. Mohamed Wassim Youssef Systmes dexploitation volusM1- ISI 2010Champs dapplication Calcul gnralisteSimilaire aux applications bureau mais embarqu (assistant personnel, tlphone portable, etc.)Consoles de jeux vido, settop box

Contrle de systmesMoteur, voiture, avion, processus chimique, nuclaire, navigation, etc.

Traitement du signalCompression vido, radar, flux de donnes, etc.

Rseaux et communicationsTransmission de donnes, commutation, routage, tlphone, Internet, etc.

5Dr. Mohamed Wassim Youssef Systmes dexploitation volusM1- ISI 2010Systme embarqu typique6

Dr. Mohamed Wassim Youssef Systmes dexploitation volusM1- ISI 2010Logiciel/matriel embarquLogiciel embarqu: Programme/application utilis dans un quipement et compltement intgr dans ce dernier.

Systme embarqu: Matriel(s) + logiciel(s) (+ OS). On peut trouver 2 types de systmes embarqus:Systmes embarqus destins lutilisateur (highend): gnralement une version dgrade dun OS existant (ex: Linux). Ex: routeurs, PDA, etc.Systmes embarqus profondment enfouis: peu de fonctions, trs petite empreinte mmoire: Appareil photo numrique, tlphones portables, etc.

7Dr. Mohamed Wassim Youssef Systmes dexploitation volusM1- ISI 2010Systme dexploitation pour lembarquIntroduction des systmes embarqusQuest ce quun systme embarquCaractristiques principalesChamps dapplication Role des systmes dexploitation pour lembarquLes architectures des systmes dexploitationOS Monolithique OS MulticouchesOS Micronoyau OS Machine virtuelle Les normes des systmes dexploitation8#Systmes dexploitation volusM1- ISI 2010Dr. Mohamed Wassim Youssef Systmes dexploitation volusM1- ISI 2010Role des systmes dexploitation pour lembarqu (1/2)Les systmes dexploitation permettent:De grer les ressources matrielles en assurant leurs partages entre les diffrents utilisateurs.De prsenter une interface homogne et gnrique(en abstrayant la complexit matrielle) mieux adapte aux utilisateurs.

Pourquoi un systme dexploitation pour lembarqu ?Affranchir le dveloppeur de logiciel embarqu de bien connatre le matriel gain en temps de dveloppementLes applications doivent avoir un accs aux services de lOS via des APIs (rutilisabilit du code, interoprabilit, portabilit, maintenance aise) Possibilit de bnficier des mmes avances technologiques que les applications classiques (TCP/IP, HTTP, etc.)Environnement de dveloppement plus performant

9Dr. Mohamed Wassim Youssef Systmes dexploitation volusM1- ISI 2010Role des systmes dexploitation pour lembarqu (2/2)Contrle de processus sans (ou faible) contrainte temporelle Systmes temps partagGarantir le partage quitable du temps et des ressources

Contrle de processus avec contrainte temps rel Systmes temps rel (Garantir les temps de rponse)Systmes contraintes souples/molles: systmes acceptant des variations minimes de temps de rponse (systmes multimdias)Systmes contraintes dures: gestion stricte du temps pour conserver lintgrit du systme (dterminisme logique et temporel et fiabilit)

10Dr. Mohamed Wassim Youssef Systmes dexploitation volusM1- ISI 2010Quest ce que lOpen source?Libre redistribution: en tant que composant dune distribution pas de droit dauteur.Inclusion du code source: code source doit tre accessible sans frais supplmentaires.Intgrit du code source de lutilisateurPas de discrimination entre les personnes ou les groupes Pas de discrimination entre les domaines dapplications.Distribution systmatique de la licenceLa licence ne doit pas tre spcifique un produitLa licence ne doit pas contaminer dautres logiciels

11Dr. Mohamed Wassim Youssef Systmes dexploitation volusM1- ISI 2010Systme dexploitation pour lembarquIntroduction des systmes embarqusQuest ce quun systme embarquCaractristiques principalesChamps dapplication Role des systmes dexploitation pour lembarquLes architectures des systmes dexploitationOS Monolithique OS MulticouchesOS Micronoyau OS Machine virtuelle Les normes des systmes dexploitation12#Systmes dexploitation volusM1- ISI 2010Dr. Mohamed Wassim Youssef Systmes dexploitation volusM1- ISI 2010OS MonolithiqueSimple/ne consomme pas beaucoup de ressourcesConvient aux petits systmes ou quelques portions de systmes temps rel complexe OS entirement en mode privilgiLapplication utilise un appel systme pour accder aux services de lOS procdure excute Gestion de linterruption : optimise car pas de changement de contexte entier (prioritaire car lordonnanceur est dsactiv)Impossible de mettre jour lapplication chaud (remplacement + reboot)

13Dr. Mohamed Wassim Youssef Systmes dexploitation volusM1- ISI 2010OS MonolithiqueStructure de base:Un programme principal qui invoque la procdure du serviceUn ensemble de procdures de services qui grent les appels systmeUn ensemble de procdure utilitaires auxiliaires des prcdentesVielles version dUNIX (FreeBSD, SOLARIS), DOS.

14

Dr. Mohamed Wassim Youssef Systmes dexploitation volusM1- ISI 2010OS Monolithique (exemple: UNIX)15

Dr. Mohamed Wassim Youssef Systmes dexploitation volusM1- ISI 2010OS Monolithique : Avantages/inconvnientsAvantagesDe meilleures performancesVite dvelopp Dernires versions: chargement dynamique (et donc slectif) des moduleInconvnientsExtension difficile: Code non modulaireTrs complexeCode massifNid de bugs Peu fiable (un bug redmarrage) Premires versions chargement statique (400 priphriques supports) 400 priphriques chargs au dmarrage !!!!!!!!

16Dr. Mohamed Wassim Youssef Systmes dexploitation volusM1- ISI 2010OS MulticouchesOS organis en hirarchie de couches. Chacune construite sur la base des services offerts par la couche infrieure.Interface et gestion des interruptions similaire celle des systmes monolithiques.Meilleure structure et modularit maintenance plus aise.Configuration plus fine (modularit) meilleure utilisation de la mmoire + performance.

17Dr. Mohamed Wassim Youssef Systmes dexploitation volusM1- ISI 2010Structure de lOS Multicouches Couche 0: Fournit le service de multiprogrammation. Dans la premire couche, ctait un ensemble de processus squentiels indpendant.Couche 1: Allocation de mmoire dans la mmoire principale. Au dessus, les processus ignoraient les emplacements mmoire.Couche 2: Gestion de la communication entre processus et la console oprateur. Dans la couche prcdente, chaque processus avait sa propre console oprateur.Couche 3: Priph dE/S et mise en mmoire tampon des flots dE/S. Au dessus, les processus travaillaient sur une couche abstraite.Couche 4: Contient les programmes utilisateur, les notions de processus, mmoire, console leurs sont abstraites.Couche 5: Le processus oprateur (control global du systme).

18Dr. Mohamed Wassim Youssef Systmes dexploitation volusM1- ISI 2010OS Multicouches: Avantages/inconvnientsAvantagesFacile tendre (plus structur)Modle simple

InconvnientsTraverser les diffrentes couches peut tre couteuxLa multiplication des couches peut ne pas tre ncessaire.Performances moins bonnes (monolithique)

19Dr. Mohamed Wassim Youssef Systmes dexploitation volusM1- ISI 2010

OS Micronoyau

Dplace plusieurs fonctions de lOS vers des processus serveur sexcutant en mode utilisateur Rduction au maximum de la taille du code privilgi.Grer les communications entre applications et serveurs pour: Renforcer la politique de scuritPermettre lexcution de fonctions systme (accs aux registres dE/S, etc.). Fiabilit augmente: si un processus serveur crash, le systme continue fonctionner et il est possible de relancer ce service sans redmarrer.Modle facilement tendu des systmes distribus.Gestion de linterruption: commutation de tche moins efficace que le modle monolithique.

20Dr. Mohamed Wassim Youssef Systmes dexploitation volusM1- ISI 2010

OS Micronoyau

Le noyau grent les communications entre clients et serveurs.Certains services sont impossible excuter en mode utilisateur (pilotes de priphriques dE/S):Garder certains processus serveur critiques en mode noyauGarder une partie du mcanisme en mode noyau en laissant le choix des politiques aux serveurs en mode utilisateur.

21

Dr. Mohamed Wassim Youssef Systmes dexploitation volusM1- ISI 2010OS MicronoyauSi le client communique avec le serveur par envoi de message, il lui importe peu que le serveur soit local ou distant, le rsultat est le mme do ladaptabilit aux systmes distribusExemples: Windows NT, Mach, Chorus, QNX.

22

Dr. Mohamed Wassim Youssef Systmes dexploitation volusM1- ISI 2010OS Micronoyau: Avantages/inconvnientsAvantagesExtensibilitMinimise le code du noyauScurit: Un serveur crash, il sera le seul redmarrer Fiabilit: Code plus petit moins de bugs

InconvnientsSouvent tent de rajouter des choses dans le noyau (vu quil est petit)Mauvaises performancesRequire beaucoup de prudence lors de la conception

23Dr. Mohamed Wassim Youssef Systmes dexploitation volusM1- ISI 2010

OS Machine virtuelle

LOS doit remplir 2 fonctions: Multi programmation moniteur de machine virtuelleMode privilgi (excution)Plusieurs processeurs virtuelsServices systmeUn ou plusieurs OS invits qui sexcutent sur les processeurs virtuels et fournissent les services systme.Le moniteur de machine virtuelle (hyperviseur) intercepte les instructions privilgies envoyes par lOS invit, les vrifie (politique de scurit) et les excute sur lOS invit.Les interruptions sont aussi interceptes par le moniteur de la MV

24Dr. Mohamed Wassim Youssef Systmes dexploitation volusM1- ISI 2010

OS Machine virtuelle

2 types de MV:MV nativeMV invitExemple de ce type dOS: XEN, VMWare, IBM VM/370.

25

Dr. Mohamed Wassim Youssef Systmes dexploitation volusM1- ISI 2010OS Machine virtuelle: Avantages/inconvnientsAvantagesPermet lexcution de plusieurs OS sur une seule machinePermet une bonne portabilit des applicationsUne protection complte (code excute en mode privilgi compltement gr)Bon environnement de dveloppement (dev systme en mode utilisateur)

InconvnientsGros problme de performances (plusieurs couches)Manque de flexibilit

26Dr. Mohamed Wassim Youssef Systmes dexploitation volusM1- ISI 2010Systme dexploitation pour lembarquIntroduction des systmes embarqusQuest ce quun systme embarquCaractristiques principalesChamps dapplication Role des systmes dexploitation pour lembarquLes architectures des systmes dexploitationOS Monolithique OS MulticouchesOS Micronoyau OS Machine virtuelle Les normes des systmes dexploitation27#Systmes dexploitation volusM1- ISI 2010Dr. Mohamed Wassim Youssef Systmes dexploitation volusM1- ISI 2010Les normes des systmes dexploitationPOSIX (Portable Operating System Interface): standard pour les appels de fonction (API) pour les OS UNIXlike. 4 profils pour le temps rel:PSE51: profile de systme temps rel minimaliste : 1 seul processus POSIX pouvant excuter plusieurs threads POSIX pouvant utiliser le passage de messages POSIX pour communiquer avec dautres systmesPSE52: profile de systme de contrleur temps rel: PSE51+support pour un systme de fichiers + E/S asynchronesPSE53: profile de systme temps rel ddi: PSE51+support multiprocessus(+MMU)PSE54: profile de systme temps rel polyvalent: englobe les autres profils. Il consiste de POSIX.1, POSIX.1b, POSIX.1c, et/ou POSIX.5b

28Dr. Mohamed Wassim Youssef Systmes dexploitation volusM1- ISI 2010