Vous êtes sur la page 1sur 23

Introduction aux

Systmes Temps Rels


Franois TOUCHARD
Polytech Marseille et CPPM
http://francois.touchard.perso.luminy.univ-amu.fr/
francois.touchard@univ-amu.fr

GFGPL 2015

Prsentation du cours
Aperu des systmes temps rels
Cours INFO4 :

questcequunsystmetempsrel?
commentvrifierapriorilecomportement

commentimplmenterlecomportement

lesmthodesetleslangagesdeprogrammationtempsrel
lesoutilsdeprogrammationdanslenoyau(Linux)

valuation

F. Touchard

lesoutilsdeprogrammationdansl'espaceutilisateur

Cours INFO5

ordonnancement

unexamenenfindemodule
descompterendusdeTD/TPnots(entre1/4et1/3dela
notefinale)

Polytech Marseille

INFO4 SICA 2015-16

Introduction aux systmes temps rels

Introduction

systme temps rel : qui doit fournir un service dans un


contexte o le temps intervient

volutiondusystme(systmeractif)

contraintesdetemps(chances)

par opposition aux systmes interactifs ou


transformationnels
systmes embarqus :

F. Touchard

autonomes,avecunfortcouplageentrelematrieletle
logiciel
utilisationdansunbuttrsprcis
trssouventdescontraintestemporelles
souventinclusdansunsystmeplusvaste
~90%dumarchdesprocesseurs

Polytech Marseille

INFO4 SICA 2015-16

Introduction aux systmes temps rels

Quelques exemples (1)


asservissement par contrle numrique

capteur
capteur

procd
procd

actionneur
actionneur

mesure
y(t)

A/D
A/D

rfrence
r(t)

F. Touchard

Polytech Marseille

A/D
A/D

INFO4 SICA 2015-16

rsultat
u(t)

yk

rk

Loi
Loi de
de contrle
contrle
calcul
calcul

Introduction aux systmes temps rels

uk

D/A
D/A

Quelques exemples (2)


soit e(t) = r(t) y(t)
u(t) va dpendre de 3 termes :

soit T la priode d'chantillonnage du signal

F. Touchard

untermeproportionnele(t)
untermeproportionnell'intgraledee(t)
untermeproportionnelladrivedee(t)
onapproximel'intgraleparlamthodedutrapze
onapproximeladrivepourl'intervalle[(k1)T,kT]par
(ekek1)/T

alors : uk = uk-1 + ek + ek-1 + ek-2

Polytech Marseille

INFO4 SICA 2015-16

Introduction aux systmes temps rels

Quelques exemples (3)

pour programmer la boucle :


creruntimerdepriodeT
chaqueinterruptiondutimer
fairelesconversionsanalogiquenumriquedeyetr
calculeru
fairelaconversionnumriqueanalogiquedeu
findelaboucle

le choix de T est important


il peut tre souhaitable de pouvoir le modifier
concepts mis en jeu

F. Touchard

gestiondutemps
gestiondesinterruptions
interactionavecl'utilisateur

Polytech Marseille

INFO4 SICA 2015-16

Introduction aux systmes temps rels

Quelques exemples (4)


contrleur de vol

tousles1/180sfaire

F. Touchard

lecture/validationdescapteursslectionns
chaque6cycles(30Hz):tchesavionique
lectureclaviers,slectionmode
normalisationdesdonnes,transformationdes
coordonnes
misejourdesrfrencesdetrajectoire
chaque6cycles(30Hz):calculs
loidecontrlephase2pourladrive
loidecontrlephase2duroulis
loidecontrlephase2dutravers
chaque2cycles(90Hz):enutilidantlesrsultatsde2cycles
loidecontrlephase1pourladrive
loidecontrlephase1duroulisetcoordination
des2axes
calculdelaloidecontrleglobale
sortiedescommandespourlesactionneurs
autotest

Polytech Marseille

INFO4 SICA 2015-16

Introduction aux systmes temps rels

Quelques exemples (5)


modle cyclique facile implmenter
difficile de le faire voluer
trs difficile mettre en uvre quand le systme
contrler se complexifie un peu

F. Touchard

Polytech Marseille

INFO4 SICA 2015-16

Introduction aux systmes temps rels

Quelques exemples (6)


contrle d'un groupe d'ascenseurs

4ascenseursdanslacaged'escalierd'unmmebtiment,
desservantlesmmestages
deuxboutonsd'appelparpalier,pourmonteroudescendre
1boutonpartagedanschaqueascenseur
partageoptimumdesressources

F. Touchard

parexemple,unascenseurenmarches'arrterauntage
ol'appelatdemandsietseulementsiilvadansla
bonnedirectionquandilpasseral'tageconcernetsiil
n'estpasenlimitedesurcharge
recherchedel'quilibrageduserviceentrelesdiffrents
ascenseurs

contrledes"priphriques"(portespalires,indicateurs
sonoresetvisuels,etc...)

Polytech Marseille

INFO4 SICA 2015-16

Introduction aux systmes temps rels

Quelques exemples (7)

F. Touchard

le modle du gnrateur cyclique ne fonctionne plus


contrleur centralis avec activation de tches par
vnements
dcentralisation de tches sur des processeurs annexes
systme multi-processeur et multi-tches
synchronisation et communication entre les tches
modle asynchrone

Polytech Marseille

INFO4 SICA 2015-16

Introduction aux systmes temps rels

10

Quelques exemples (8)


contrle arien
hirarchie des contrles

contrleurdetrafic
arien
gestionnairedevol
contrleurdevol

calculs complexes
(optimisation)
fiabilit
respect des chances
temporelles

rponses

commandes

calculateur

contrleur
de traffic
arien

donnes
locales
(mto...)

navigation
calculateur

calculateur

gestionnaire
de vol

contrleur
de vol

donnes
locales
de vol
F. Touchard

Polytech Marseille

INFO4 SICA 2015-16

Introduction aux systmes temps rels

11

Quelques exemples (9)


contrleur de trafic arien

CPU

CPU

CPU

base de donnes
des lments de vol

rseau de
communication

rseau de
communication
processeur
de visualisation

F. Touchard

Polytech Marseille

INFO4 SICA 2015-16

processeur
de surveillance
des trajectoires

Introduction aux systmes temps rels

12

Quelques exemples (10)

beaucoup d'autres systmes ont des contraintes


temporelles

basesdedonnes

multimdia

F. Touchard

contrledevols
sallesdemarch
compression/dcompression
transmission

Polytech Marseille

INFO4 SICA 2015-16

Introduction aux systmes temps rels

13

Qu'est-ce que le temps rel ?


non seulement des rsultats exacts
mais aussi fournis dans un temps donn, compatible avec
l'volution du systme

l'chelledetempsdpenddusystme

F. Touchard

dequelquesmillisecondespourunsystmedenavigation
arienne
plusieursminutesouheurespourlecontrled'unracteur
chimique

dans un systme temps rel, un rsultat de calcul


mathmatiquement exact mais arrivant au del d'une
chance pr-dfinie est un rsultat faux

Polytech Marseille

INFO4 SICA 2015-16

Introduction aux systmes temps rels

14

Temps rel dur et temps rel mou

si un rsultat arrivant en retard provoque un accident fatal


au systme (gnration d'une exception) : temps rel
dur
sinon : temps rel mou, ou lche
la distinction entre les deux est une notion assez floue
dans un systme donn, des tches temps rel dures et
lches peuvent cohabiter, ventuellement avec des
tches sans contraintes temporelles
critre de respect des contraintes temporelles

F. Touchard

boolenpourletempsreldur
doittredfinipourchaquetchedanslecasd'une
applicationtempsrellche

Polytech Marseille

INFO4 SICA 2015-16

Introduction aux systmes temps rels

15

Caractristiques importantes (1)

Prvisibilit

pourdterminerl'avancesiunsystmevarespecterses
contraintestemporelles
connaissancedesparamtreslisauxcalculsdesactivits

F. Touchard

tempsglobaldecalculdechaqueactivit
priodicitetgigue
premptivit

valuationdesperformancesdanslepiredescas
pourdfinirlemeilleuralgorithmed'ordonnancement

Polytech Marseille

INFO4 SICA 2015-16

Introduction aux systmes temps rels

16

Caractristiques importantes (2)

Dterminisme

butatteindrepourprdirelecomportementtemporeldu
systme

Fiabilit

F. Touchard

tempsreldur:cherchersavoirsitoutesleschancesde
touteslesactivitsserontrespectes
tempsrellche:parexemplesavoirquelsserontlesretards
moyens

dumatriel
tolranceauxfautes
systmesembarqus

Polytech Marseille

INFO4 SICA 2015-16

Introduction aux systmes temps rels

17

Caractristiques importantes (3)

en rsum, le langage et l'environnement de


dveloppement doivent permettre

F. Touchard

despcifierlemomentounetchedoitdmarrer
despcifierlemomentolatchedoittretermine
degrerlessituationsotouteslescontraintestemporelles
nepeuventpastresatisfaites
degrerdessituationsolescontraintestemporellessont
susceptiblesd'voluerdynamiquement

Polytech Marseille

INFO4 SICA 2015-16

Introduction aux systmes temps rels

18

Plan du cours (1)

Ordonnancement des tches

tchesindpendantes
tchesavecdescontraintesdedpendance
gestiondessituationsdesurcharge

Systmes d'exploitation pour le temps rel

servicesattendus
systmesexistants

F. Touchard

VxWorks(lesystmegnralisteleplusemploy)
OSEK/VDX(unsystmespcialis)
Xenomai(bassurLinux)

aperudesbusdecommunication

Polytech Marseille

INFO4 SICA 2015-16

Introduction aux systmes temps rels

19

Plan du cours (2)

Programmation systme pour le temps rel (POSIX)

F. Touchard

lanormePOSIX
gestiondestches
communicationetsynchronisation
gestiondesinterruptions
gestiondutemps

Polytech Marseille

INFO4 SICA 2015-16

Introduction aux systmes temps rels

20

La norme POSIX

Portable Operating System Interface


pour aider produire des codes portables sans trop
d'efforts
initi par l'IEEE et organis par l'ISO
partir d'UNIX, pour le C ANSI
diffrents standards pour diffrents problmes

F. Touchard

POSIX.1b(ouPOSIX.4):extensionstempsrel
POSIX.1c:extensionspourlesthreads

important : l'interface POSIX ne fournit pas un


environnement temps rel, mais uniquement des
interfaces qui peuvent tre utilises dans le cadre d'un
OS Temps Rel

Polytech Marseille

INFO4 SICA 2015-16

Introduction aux systmes temps rels

21

La norme POSIX

POSIX a t remplac rcemment par SUSV4 (Single


Unix Specification Version 4)

SUSV4inclutlesdiffrentesversionSdePOSIX

F. Touchard

extensionsTempsRel:optionRTS

jegarderailesrfrencesPOSIX.1et4pourbien
diffrencierlesextensionstempsrel

Polytech Marseille

INFO4 SICA 2015-16

Introduction aux systmes temps rels

22

ORDONNANCEMENT

F. Touchard

Polytech Marseille

INFO4 SICA 2015-16

Introduction aux systmes temps rels

23