Vous êtes sur la page 1sur 28

Institut Suprieur dInformatique

Chapitre 04

Systme dexploitation
pour lembarqu
Systmes dexploitation Evolus
M1 - ISI
1re anne Mastere en Informatique

Systme dexploitation
pour lembarqu

Introduction des systmes embarqus

1.
1.

Quest ce quun systme embarqu

2.

Caractristiques principales
Champs dapplication

3.

2.
3.

Role des systmes dexploitation pour lembarqu


Les architectures des systmes dexploitation
1.
2.
3.
4.

4.

OS
OS
OS
OS

Monolithique
Multicouches
Micronoyau
Machine virtuelle

Les normes des systmes dexploitation

Systmes dexploitation volus

M1- ISI 2010

Quest ce quun systme embarqu?


3

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 standards
Matriel et application intimement lis
Logiciel enfoui noy dans le matriel pas

facilement discernable comme dans un PC.

Dr. Mohamed Wassim Youssef Systmes dexploitation volus

M1- ISI 2010

Caractristiques principales dun


systme embarqu

Systme principalement numrique


Met 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 limit
Ce ne sont pas des PC, mais des architectures
similaires (x86)

Dr. Mohamed Wassim Youssef Systmes dexploitation volus

M1- ISI 2010

Champs dapplication
5

Calcul gnraliste
Similaire aux applications bureau mais embarqu (assistant

personnel, tlphone portable, etc.)


Consoles de jeux vido, settop box

Contrle de systmes
Moteur, voiture, avion, processus chimique, nuclaire,

navigation, etc.

Traitement du signal
Compression vido, radar, flux de donnes, etc.

Rseaux et communications
Transmission de donnes, commutation, routage, tlphone,

Internet, etc.
Dr. Mohamed Wassim Youssef Systmes dexploitation volus

M1- ISI 2010

Systme embarqu typique


6

Dr. Mohamed Wassim Youssef Systmes dexploitation volus

M1- ISI 2010

Logiciel/matriel embarqu
7

Logiciel 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.
Dr. Mohamed Wassim Youssef Systmes dexploitation volus

M1- ISI 2010

Systme dexploitation
pour lembarqu

Introduction des systmes embarqus

1.
1.

Quest ce quun systme embarqu

2.

Caractristiques principales
Champs dapplication

3.

2.

Role des systmes dexploitation pour


lembarqu

3.

Les architectures des systmes dexploitation


1.
2.
3.
4.

4.

OS
OS
OS
OS

Monolithique
Multicouches
Micronoyau
Machine virtuelle

Les normes des systmes dexploitation

Systmes dexploitation volus

M1- ISI 2010

Role 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 dveloppement


Les 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
Dr. Mohamed Wassim Youssef Systmes dexploitation volus

M1- ISI 2010

Role des systmes dexploitation


pour lembarqu (2/2)

10

Contrle

de processus sans (ou faible)


contrainte temporelle Systmes temps partag
Garantir 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)
Dr. Mohamed Wassim Youssef Systmes dexploitation volus

M1- ISI 2010

Quest ce que lOpen source?


11

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 lutilisateur
Pas de discrimination entre les personnes ou les
groupes
Pas de discrimination entre les domaines
dapplications.
Distribution systmatique de la licence
La licence ne doit pas tre spcifique un produit
La licence ne doit pas contaminer dautres
logiciels

Dr. Mohamed Wassim Youssef Systmes dexploitation volus

M1- ISI 2010

Systme dexploitation
pour lembarqu

12

12

Introduction des systmes embarqus

1.
1.

Quest ce quun systme embarqu

2.

Caractristiques principales
Champs dapplication

3.

2.

Role des systmes dexploitation pour lembarqu

3.

Les architectures des systmes


dexploitation
1.
2.
3.
4.

4.

OS
OS
OS
OS

Monolithique
Multicouches
Micronoyau
Machine virtuelle

Les normes des systmes dexploitation

Systmes dexploitation volus

M1- ISI 2010

OS Monolithique
13

Simple/ne consomme pas beaucoup de ressources


Convient aux petits systmes ou quelques
portions de systmes temps rel complexe
OS entirement en mode privilgi
Lapplication 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)

Dr. Mohamed Wassim Youssef Systmes dexploitation volus

M1- ISI 2010

OS Monolithique
14

Structure de base:
Un programme principal qui invoque la procdure du

service
Un ensemble de procdures de services qui grent les
appels systme
Un ensemble de procdure utilitaires auxiliaires des
prcdentes

Vielles version dUNIX (FreeBSD, SOLARIS), DOS.

Dr. Mohamed Wassim Youssef Systmes dexploitation volus

M1- ISI 2010

OS Monolithique (exemple: UNIX)


15

Dr. Mohamed Wassim Youssef Systmes dexploitation volus

M1- ISI 2010

OS Monolithique :
Avantages/inconvnients

16

Avantages
De meilleures performances
Vite dvelopp
Dernires versions: chargement dynamique (et donc

slectif) des module

Inconvnients
Extension difficile: Code non modulaire
Trs complexe
Code massif
Nid de bugs
Peu fiable (un bug redmarrage)
Premires versions chargement statique (400

priphriques supports) 400 priphriques chargs au


dmarrage !!!!!!!!
Dr. Mohamed Wassim Youssef Systmes dexploitation volus

M1- ISI 2010

OS Multicouches
17

OS 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.

Dr. Mohamed Wassim Youssef Systmes dexploitation volus

M1- ISI 2010

Structure de lOS Multicouches


18

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).

Dr. Mohamed Wassim Youssef Systmes dexploitation volus

M1- ISI 2010

OS Multicouches:
Avantages/inconvnients

19

Avantages
Facile tendre (plus structur)
Modle simple

Inconvnients
Traverser les diffrentes couches peut tre couteux
La multiplication des couches peut ne pas tre

ncessaire.
Performances moins bonnes (monolithique)

Dr. Mohamed Wassim Youssef Systmes dexploitation volus

M1- ISI 2010

OS Micronoyau
20

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 scurit
Permettre 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.

Dr. Mohamed Wassim Youssef Systmes dexploitation volus

M1- ISI 2010

OS Micronoyau
21

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 noyau
Garder une partie du mcanisme en mode noyau en laissant le

choix des politiques aux serveurs en mode utilisateur.


Dr. Mohamed Wassim Youssef Systmes dexploitation volus

M1- ISI 2010

OS Micronoyau
22

Si 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 distribus
Exemples: Windows NT, Mach, Chorus, QNX.

Dr. Mohamed Wassim Youssef Systmes dexploitation volus

M1- ISI 2010

OS Micronoyau:
Avantages/inconvnients

23

Avantages
Extensibilit
Minimise le code du noyau
Scurit: Un serveur crash, il sera le seul redmarrer

Fiabilit: Code plus petit moins de bugs

Inconvnients
Souvent tent de rajouter des choses dans le noyau (vu

quil est petit)


Mauvaises performances
Require beaucoup de prudence lors de la conception

Dr. Mohamed Wassim Youssef Systmes dexploitation volus

M1- ISI 2010

OS Machine virtuelle
24

LOS doit remplir 2 fonctions:


Multi programmation moniteur de machine virtuelle
Mode privilgi (excution)
Plusieurs processeurs virtuels

Services systme
Un 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

Dr. Mohamed Wassim Youssef Systmes dexploitation volus

M1- ISI 2010

OS Machine virtuelle
25

2 types de MV:
MV native
MV invit

Exemple de ce type dOS: XEN, VMWare, IBM


VM/370.

Dr. Mohamed Wassim Youssef Systmes dexploitation volus

M1- ISI 2010

OS Machine virtuelle:
Avantages/inconvnients

26

Avantages
Permet lexcution de plusieurs OS sur une seule

machine
Permet une bonne portabilit des applications
Une protection complte (code excute en mode
privilgi compltement gr)
Bon environnement de dveloppement (dev systme en
mode utilisateur)

Inconvnients
Gros problme de performances (plusieurs couches)
Manque de flexibilit

Dr. Mohamed Wassim Youssef Systmes dexploitation volus

M1- ISI 2010

Systme dexploitation
pour lembarqu

27

27

Introduction des systmes embarqus

1.
1.

Quest ce quun systme embarqu

2.

Caractristiques principales
Champs dapplication

3.

Role des systmes dexploitation pour lembarqu


Les architectures des systmes dexploitation

2.
3.

1.
2.
3.
4.

4.

OS
OS
OS
OS

Monolithique
Multicouches
Micronoyau
Machine virtuelle

Les normes des systmes dexploitation

Systmes dexploitation volus

M1- ISI 2010

Les normes des systmes


dexploitation

28

POSIX (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 systmes
PSE52: profile de systme de contrleur temps rel:
PSE51+support pour un systme de fichiers + E/S
asynchrones
PSE53: 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
Dr. Mohamed Wassim Youssef Systmes dexploitation volus

M1- ISI 2010

Vous aimerez peut-être aussi