Plan. Introduction - Définition - mauvaises interprétations. Classes de systèmes Temps réel. Applications Temps réel embarquées

Documents pareils
Informatique industrielle A Systèmes temps-réel J.F.Peyre. Partie I : Introduction

Partie 7 : Gestion de la mémoire

DAns un système multi-utilisateurs à temps partagé, plusieurs processus

Programmation temps-réel Cours 1 et 2 Introduction et ordonnancement

Introduction aux systèmes temps réel. Iulian Ober IRIT

Cours A7 : Temps Réel

Processus! programme. DIMA, Systèmes Centralisés (Ph. Mauran) " Processus = suite d'actions = suite d'états obtenus = trace

ORDONNANCEMENT CONJOINT DE TÂCHES ET DE MESSAGES DANS LES RÉSEAUX TEMPS RÉELS 4. QUELQUES EXEMPLES DU DYNAMISME ACTUEL DU TEMPS RÉEL

REALISATION d'un. ORDONNANCEUR à ECHEANCES

Cours A7 : Temps Réel

Problèmes liés à la concurrence

Ordonnancement temps réel

PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES

Architecture des ordinateurs

Chapitre V : La gestion de la mémoire. Hiérarchie de mémoires Objectifs Méthodes d'allocation Simulation de mémoire virtuelle Le mapping

Ordonnancement temps réel

IN SYSTEM. Préconisations techniques pour Sage 100 Windows, MAC/OS, et pour Sage 100 pour SQL Server V16. Objectif :

Julien MATHEVET Alexandre BOISSY GSID 4. Rapport RE09. Load Balancing et migration

Programmation C. Apprendre à développer des programmes simples dans le langage C

Introduction au temps réel

Eléments de spécification des systèmes temps réel Pierre-Yves Duval (cppm)

Métriques de performance pour les algorithmes et programmes parallèles

Les systèmes de base de données temps réels. Pokrovskaya Natalia, Kabbali Nadia

PROJET ALGORITHMIQUE ET PROGRAMMATION II

Exécutif temps réel Pierre-Yves Duval (cppm)

1 Mesure de la performance d un système temps réel : la gigue

Systèmes d exploitation Gestion de processus

ERESI : une plate-forme d'analyse binaire au niveau noyau. The ERESI team

Veeam Backup & Replication v6

Organisme de recherche et d information sur la logistique et le transport LES TECHNIQUES DE SUIVI DES ARTICLES ET DES STOCKS

Annexe 6. Notions d ordonnancement.

Projet Active Object

Vérifier la qualité de vos applications logicielle de manière continue

Applications Embarquées Critiques

I- Définitions des signaux.

6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr

Integrated Modular Avionic

Jean-Philippe Paquette

Déroulement. Evaluation. Préambule. Définition. Définition. Algorithmes et structures de données 28/09/2009

Chapitre 4 : Outils de communication centralisés entre processus

Systèmes d Exploitation - ENSIN6U3. Aix-Marseille Université

Conditions : stage indemnisé, aide au logement possible, transport CEA en Ile-de-France gratuit.

NEC Virtual PC Center

RTDS G3. Emmanuel Gaudin

Contexte et motivations Les techniques envisagées Evolution des processus Conclusion

MANAGEMENT DES SYSTEMES D INFORMATION ET DE PRODUCTION MSIP

LA mémoire principale est le lieu où se trouvent les programmes et les

Programmation parallèle et distribuée

Optimisation des performances

Catalogue des stages Ercom 2013

Prise en compte des ressources dans les composants logiciels parallèles

L art d ordonnancer. avec JobScheduler. François BAYART

Exclusion Mutuelle. Arnaud Labourel Courriel : arnaud.labourel@lif.univ-mrs.fr. Université de Provence. 9 février 2011

Impact de choix d implantation sur les performances d une application de Contrôle-Commande

INTRODUCTION AUX SYSTEMES D EXPLOITATION. TD2 Exclusion mutuelle / Sémaphores

OBJECTIF CAMEROUN SMS SOLUTIONS

Article I. DÉFINITIONS

96% 75% 99% 78% 74% 44 %

ANALYSE TRAMEs LIAISON SERIE

Pour allier propreté et écologie: le nettoyage à sec Coop Oecoplan.

Cours de Génie Logiciel

Conception des systèmes répartis

Découverte des Logiciels Libres. Gilles Dequen

Java - la plateforme

Architecture de la grille

Noyau de concurrence par moniteur pour Java ou C# pour une autre sémantique plus fiable et plus performante

Introduction aux SGBDR

Génie Logiciel LA QUALITE 1/5 LA QUALITE 3/5 LA QUALITE 2/5 LA QUALITE 4/5 LA QUALITE 5/5

GenDbg : un débogueur générique. Didier Eymery Jean-Marie Borello Jean-Marie Fraygefond Odile Eymery Philippe Bion

Analyse de performance, monitoring

CEG4566/CSI4541 Conception de systèmes temps réel

FORMAT FORMA ION SUR LA ION SUR LA GESTION DE PROJET & MS PROJECT

Cours de Systèmes d Exploitation

Vérification formelle de la plate-forme Java Card

INFO-F-425 Modèles mathématiques et algorithmes pour l ordonnancement. Bernard Fortz

4. Outils pour la synchronisation F. Boyer, Laboratoire Lig

Master (filière Réseau) Parcours Recherche: Systèmes Informatiques et Réseaux (RTS)

Université Libre de Tunis

La technologie Java Card TM

Gestion de mémoire secondaire F. Boyer, Laboratoire Sardes

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

Enseignant: Lamouchi Bassem Cours : Système à large échelle et Cloud Computing

AUTRES ASPECTS DU GPS. Partie I : tolérance de Battement Partie II : tolérancement par frontières

Document d Interconnexion - Raccordement via IP Version applicable à compter du 1 er janvier 2015

Analyse et Conception objet du logiciel Analyse et conception objet du logiciel : Méthode de conception objet et notation UML.

Sécurité Informatique

GESTION LOGISTIQUE GESTION COMMERCIALE GESTION DE PRODUCTION

Processus d Informatisation

JOURNEES SYSTEMES & LOGICIELS CRITIQUES le 14/11/2000. Mise en Œuvre des techniques synchrones pour des applications industrielles

Conception et contrôle des SMA tolérants aux fautes

PLAN DE FORMATION TECHNICIEN(NE) D'ASSISTANCE EN INFORMATIQUE TAI

JOnAS Day 5.1. Clustering

Introduction aux Systèmes et aux Réseaux

Formations Evolix Catalogue

CORBA. (Common Request Broker Architecture)

Conditions d utilisation du service

Solution A La Gestion Des Objets Java Pour Des Systèmes Embarqués

Enseignant: Lamouchi Bassem Cours : Système à large échelle et Cloud Computing

Transcription:

Plan Introduction - Définition - mauvaises interprétations Classes de systèmes Temps réel Applications Temps réel embarquées Notions de contrainte de temps Contraintes pour la réalisation d applications temps réel - Classification - Vérification d ordonnançabilité

Introduction Définition Un système temps réel est un système - Qui interagit avec un environnement externe - Qui évolue avec le temps - Qui réalise certaines fonctionnalités en relation avec cet environnement - Qui exploite des ressources limitées Contraintes de temps à satisfaire - La date de livraison d un résultat est un critère de correction autant que la valeur du résultat elle-même (déterminisme) - Fiabilité (tolérance aux fautes /pannes) : aucun échec logiciel Mauvaise interprétation - Temps réel ne veut pas dire SUPERSONIQUE! - La rapidité n est pas l objectif recherché! Systèmes Embarqués 99% des processeurs sont pour le marché embarqué! A finir Classification - Temps réel strict/dur (hard real-time) : Le non respect d une contrainte de temps a des conséquences graves (humaines, économiques, écologiques) : besoin de garanties (système de contrôle de vol) - Temps-réel souple/mou (soft real-time) : On peut tolérer le non respect occasionnel d une contrainte de temps (garanties probabilistes) (système à café, d acquisition de données, ) - Temps-réel ferme (Firm real-time) : Systèmes qui sont stricts (hard) mais qui acceptent certains retards (d autres sont rejetés) - Classification non binaire - Un système peut être composé de sous-systèmes temps réel différents On associe à chaque «raté» du deadline une fonction de coût Analyse de risques. Notions de contraintes - Contraintes de temps Choix de l ordre d exécution des fonctions important des calculs Déterminisme d exécution (predictability) On doit connaître pour tous les calculs effectués (application, OS) leur temps de calcul de manière sûre (non sous-estimée)

Validation des contraintes de temps à partir de la charge de travail Tests pas toujours suffisants (exhaustivité) Modèle du système et de la charge : analyse d ordonnançabilité - Sûreté de fonctionnement : qualité des développements (lisibilité, maintenabilité) Environnement de conception (UML-RT) - Langage de programmation adapté : langage de haut niveau Assembleur rapide, mais non portable, difficile de vérifier les contraintes de temps (pas assez structuré) - Langages de plus haut niveau (ex : Ada) - Problème Calculs à exécuter + contraintes de temps : dans quel ordre exécuter? - Définition Ensemble des règles définissant l ordre d exécution des calculs sur le processeur - Pourquoi ordonnancer? Parce que ça a un impact sur le respect des contraintes de temps Exemple : Tache T1 : arrivée en 0, durée 4, échéance 7 Tache T2 : arrivée en 2, durée 2, échéance 5 O1 : premier arrivé, premier servi, on n interrompt jamais une tâche O2 : priorité, T2 plus prioritaire que T1. - Dessin - Critères de classification Instant ou l ordre d exécution d une tâche par une autre : préemptif Optimalité : quel est le «meilleur» ordonnancement Instant ou l ordre d exécution est décidé : hors-ligne / en ligne

Cours Tableau Comment est composé un système? Kernel Processus / Carte graphique Mémoire vive Stockage d info E/S 1- Gestion des processus/tâches Un processus est un ensemble d instruction à la machine. C est un ensemble de données, qui sont statiques d une part (qui ont leur exstence tout au long de l action), et des données qui sont dynamiques d autre part qui sont stockées différemment des données statiques. La zone de stockage des données dynamiques est appelée heap. Schéma d un processus : Ens. D instruct machine Registres Données Info annexes Head/tas Pile PCB Les instructions sont exécutées sur des données qui sont copiées dans des registres de la mémoire. Donc les données lui appartiennent. PCB : process centre block L ordonnanceur va dire qui s exécute, pendant combien de temps (scheduler). Il choisit cela en fonction d un algorithme d ordonnancement. FIFO : premier arrivé, premier servi. Critère d ordonnancement : le temps d arrivée. SJF : shortest job first. Critère d ordonnancement : temps d exécution d une tâche. Temps d attente minimal. Famine : quand il reste en permanence en attente (problème). C est un algorithme à priorité. A priorité. Problème : Famine. Round Robin. Temps partagé en quantum équitable. Cycle de vie d un processus : Prêt Fin E/S Préemptif Exécution Bloqué

Thread: Light weight process (processus léger) Files d exécution mais à l intérieur d un processus. Deux threads d un processus différent sont différents. Dans un même processus donné, les données de deux threads sont partagées, le code est partagé, les données dynamiques également. Ce qui n est pas partagé sont les piles d exécution, ainsi que les registres. Sémaphores : Outil qui correspond à un compteur + file d attente, avec deux opérations qui sont : - acquérir une ressource - libérer une ressource 2- Gestion de la mémoire Les différentes gestions de la mémoire : Allocation contigüe Allocation non contigüe 3- Gestion du stockage (persistant) 4- Gestion des E / S