Chapitre 1 2p
Chapitre 1 2p
Chapitre 1 2p
1 2
• le système contrôlé L’aspect sécurité d’un système embarqué doit être maintenant pris en compte lors de
sa conception.
• le système de contrôle
La sécurité des systèmes embarqués concerne essentiellement les points suivants :
Le système contrôlé = environnement (procédé) équipé d'une instrumentation qui réalise – Le matériel.
l'interface avec le système de contrôle – Le logiciel embarqué.
Le système de contrôle = éléments matériels (microprocesseurs…) et logiciels dont la – Les communications avec le monde extérieur.
mission est d'agir sur le procédé via les actionneurs en fonction de l'état de ce procédé indiqué Un système embarqué doit garantir la confidentialité et l’intégrité des données
par les capteurs de manière maintenir ou conduire le procédé dans un état donné
Parmi les types d’attaques sur un SE on peut citer :
− Les attaques matérielles : accéder aux composants, Attaques en courant,
électromagnétisme (il faut utiliser la cage de Faraday), utiliser un faisceau laser ou
faisceau d’ions lourds, le probing qui consiste à une descente de sondes pour agir sur
les composants (il faut faire le durcissement : technologies SOS (Silicon On Saphire)
et SOI (Silicon On Insulator – isolant))
− Les attaques logicielles : virus, cheval de Troie, deny of service, modification
d’adresse IP, modification d’horloge, fermer un port socket.
− Détection et piratage des communications.
Un système électronique embarqué ou enfoui est un élément constitutif d’un système 7. Comparaison aux systèmes informatiques standards
plus complexe pour lequel il rend des services bien précis (contrôle, surveillance,
communication…). Il est constitué de parties matérielles et logicielles qui sont conçues Informatique : Embarqué :
spécifiquement pour réaliser une fonction dédiée. • Processeur standard • Processeur dédié
Système embarqué = Système électronique/informatique conçu pour réaliser une ou plusieurs – Multiples unités (contrôleur)
tâches précises. fonctionnelles (flottant) – Architecture adaptée
– Vitesse élevée (> GHz) – Vitesse faible (~200 MHz)
5. Fiabilité et sûreté des SE – Consommation électrique – 8-32bits : mémoire limitée
Du fait de leur portabilité et de la mobilité des produits dans lesquels ils sont incorporés, élevée – Basse consommation
les systèmes embarqués évoluent généralement dans de conditions environnementales non – Chaleur – Petite taille, grand volume =>
déterministes et souvent non maîtrisées. Ils sont exposés à des variations et autres contraintes – Taille faible coût
environnementales susceptibles d’induire des défaillances : vibrations, chocs, variation de • MMU (Memory Management Unit) • Processeur DSP (Digital signal processor)
température, variations d’alimentation, interférences RF, corrosion, humidité, radiations, … (mémoire virtuelle) (traitements)
D’où la nécessité de prendre en compte des évolutions des caractéristiques des composants en • OS – Très puissants
fonction des conditions environnementales. • Cache • Quelques Mo de mémoire
En même temps que s’accroît leur sophistication, les systèmes embarqués sont utilisés • Grand nombre de • RTOS
dans des applications de plus en plus critiques dans lesquels leur dysfonctionnement peut périphériques
générer des nuisances, des pertes économiques ou des conséquences inacceptables pouvant
aller jusqu’à la perte de vies humaines. C'est le cas, par exemple, des applications médicales
ou celles de transports pour lesquelles une défaillance peut avoir un impact direct sur la vie 8. Classification des systèmes embarqués
d'êtres humains. C’est aussi le cas des applications spatiales, souterraines ou sous-marines où a. Système Transformationnel :
la défaillance peut entraîner des conséquences redoutables aussi bien en termes de sécurité Activité de calcul, qui lit ses données et ses entrées lors de son démarrage, qui fournit ses
qu’au niveau économique. Ce type de systèmes doit garantir une très haute fiabilité et doit sorties, puis meurt.
pouvoir réagir en cas de panne de l'un de ses composants. b. Système Interactif :
Système en interaction quasi permanente avec son environnement, y compris après
6. Sécurité des SE l'initialisation du système ; la réaction du système est déterminée par les événements reçus et
Les systèmes embarqués mettant en œuvre la connectivité IP sont aujourd’hui par l'état courant (fonction des événements et des réactions passés) ; le rythme de l'interaction
potentiellement vulnérables à une attaque par le réseau. est déterminé par le système et non par l'environnement.
Les attaques concernent actuellement les routeurs, les imprimantes réseau... mais rien c. Système Réactif ou Temps Réel :
n’empêche une attaque d’une maison individuelle avec son réseau domotique ou d’une Système en interaction permanente avec son environnement, y compris après l'initialisation du
voiture connectées à Internet ! système ; la réaction du système est déterminée par les événements reçus et par l'état courant
3 4
(fonction des événements et des réactions passées) ; mais le rythme de l'interaction est i) Fonctionnement général : boucle infinie
déterminé par l'environnement et non par le système. Tant que TOUJOURS faire
Acquisition des entrées (données capteurs, mesures…)
9. Architecture générale et fonctionnement d’un système embarqué Calcul des ordres à envoyer au procédé
a. Architecture générale : Émission des ordres
Fin tant que
Mais ce type de système est peu "réactif" si l'environnement produit des informations à
IHM : Interface Homme Machine
des fréquences différentes ce qui oblige à prévoir toutes les réactions du système dans la
CAN : Convertisseur Analogique Numérique
même boucle donc il y a un problème de performance et en est obligé à imbriquer des boucles
CNA : Convertisseur Numérique Analogique
de fréquences multiples ce qui implique des difficultés de réalisation, de lisibilité du code et
CPU : Central Processing Unit (Processeur)
d'évolution
FPGA: Field Programmable Gate Array
ASIC: Application Specific Integrated Circuit iii) Fonctionnement Evénementiel :
Le fonctionnement est basé sur le principe d’activation du système à chaque événement
b. Fonctionnement d’un système embarqué :
(notion d'interruption)
Mais dans ce cas le problème réside dans le cas où une interruption survient alors que le
système est en train de traiter une interruption précédente, ce qui implique des contraintes
de programmation :
– notion de priorité des interruptions
– notion de "tâche" associée à une ou plusieurs interruptions
– mécanisme de préemption et de reprise de tâche
– gestion de l'exécution concurrente des tâches (ordonnancement)
=> Un système temps réel est souvent un système multitâche incluant un gestionnaire de
tâches (Ordonnanceur)
5 6
10. Compétences pour la conception et le développement d’un système
embarqué
− Domaine métier : médical, loisirs, transport…
− Ingénierie : électricité, électronique, chimie, mécanique, robotique, …, informatique
− Sciences : mathématiques, statistiques, probabilités, recherche opérationnelle
− Informatique :
• Algorithmique
• Programmation (VHDL, assembleur, C, C++, java, ada, …)
• Architectures (microprocesseur, contrôleur, DSP, mémoires, périphériques)
• Gestion de l’énergie des processeurs et périphériques
• Génie logiciel, co-design, méthodes formelles, automates…
• Evaluation de performances, test, simulation, vérification
• Systèmes d’exploitation, Linux, système temps réel
• Sécurité et robustesse
• Réseaux, mobilité
• Capteurs et actionneurs
• Vision par ordinateur, caméra