A propos de l applicabilité de la théorie de l ordonnancement temps réel : le projet Cheddar



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

Ordonnancement temps réel

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

Analyse du temps de réponse des systèmes temps réel

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

REALISATION d'un. ORDONNANCEUR à ECHEANCES

Ordonnancement des applications temps réel réparties

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

MEAD : temps réel et tolérance aux pannes pour CORBA

Contributions à l expérimentation sur les systèmes distribués de grande taille

Introduction au temps réel

4.2 Unités d enseignement du M1

Extension d'un outil de trace pour système embarqué temps réel. Encadrants : Laurent Pautet, Jérôme Hugues

Conception des systèmes répartis

Systèmes et exécutifs temps-réel

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

Introduction aux systèmes temps réel

Introduction à la programmation concurrente

Proposition de sujet de thèse CIFRE EUROCOPTER / LGI2P

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

Cloud Computing et SaaS

UE 8 Systèmes d information de gestion Le programme

Présentation du M2 SIC : Systèmes Informatiques et Applications Marines

INTRODUCTION AUX TECHNOLOGIES D INGENIERIE DES DONNEES DIRIGEE PAR LES MODELES

Catalogue des stages Ercom 2013

Métrologie réseaux GABI LYDIA GORGO GAEL

Le Collège de France crée une chaire pérenne d Informatique, Algorithmes, machines et langages, et nomme le Pr Gérard BERRY titulaire

Ordonnancement temps réel

PROGRAMME DU CONCOURS DE RÉDACTEUR INFORMATICIEN

Cours de Systèmes d Exploitation

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

Séminaire WagrALIM. Food factory of the future 24 mars Le process control au service de la traçabilité et des KPI de productivité

Integrated Modular Avionic

Cours de Génie Logiciel

Sujet de thèse CIFRE RESULIS / LGI2P

Modélisation des interfaces matériel/logiciel

Architecture distribuée

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

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

(OPINIONS 2.0) Le rapport de restitution (papier et digital) reprend la totalité des réponses avec le classement des occurrences (histogrammes)

C.R.T. Informatique 4,1 M (2014) 40% 20% 15% 15% 10% 25 ANS 17 EMPLOYES 2 AGENCES 5 DATACENTERS OPERATEUR RESEAU INFOGERANCE MAINTENANCE DEVELOPPEMENT

UFR d Informatique. FORMATION MASTER Domaine SCIENCES, TECHNOLOGIE, SANTE Mention INFORMATIQUE

Modèles système, modèles logiciel et modèles de code dans les applications spatiales

LOGISTIQUE DE PRODUCTION

C ) Détail volets A, B, C, D et E. Hypothèses (facteurs externes au projet) Sources de vérification. Actions Objectifs Méthode, résultats

neocampus : campus du futur 27 février 2015

Rapport d activité. Mathieu Souchaud Juin 2007

Synergies entre Artisan Studio et outils PLM

Architecture et Extensions d ArcGIS Server

Systèmes et traitement parallèles

Vers l'orchestration de grilles de PC par les mécanismes de publicationsouscription

Cours A7 : Temps Réel

THÈSE de DOCTORAT. Sémantique, interactions et langages de description des services web complexes

MANAGEMENT DES SYSTEMES D INFORMATION ET DE PRODUCTION MSIP

RTDS G3. Emmanuel Gaudin

Analyse,, Conception des Systèmes Informatiques

NFP111 Systèmes et Applications Réparties

SIO-SISR : Projet GSB. LOT 1 : Evaluation d un logiciel d inventaire et de gestion de parc. BTS Services Informatiques aux Organisations 1 ère année

Le pilotage des collaborations et l interopérabilité des systèmes d information Vers une démarche intégrée

SQL Server 2012 Implémentation d'une solution de Business Intelligence (Sql Server, Analysis Services...)

Offre Référentiel d échange

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

INF6500 : Structures des ordinateurs. Sylvain Martel - INF6500 1

T. Gasc 1,2,3, F. De Vuyst 1, R. Motte 3, M. Peybernes 4, R. Poncet 5

Introduction à Microsoft InfoPath 2010

MODELISATION UN ATELIER DE MODELISATION «RATIONAL ROSE»

LES TECHNOLOGIES DE L INFORMATION ET DE LA COMMUNICATION

Iyad Alshabani SysCom - CReSTIC Université de Reims 17/02/2011 1

basée sur le cours de Bertrand Legal, maître de conférences à l ENSEIRB Olivier Augereau Formation UML

«Une bonne thèse répond à une question très précise!» : comment l enseigner?

DESCRIPTIF DE MODULE S5 GSI

Ordonnancement temps réel et minimisation de la consommation d énergie

Equilibrage de charge (Load

Le Processus RUP. H. Kadima. Tester. Analyst. Performance Engineer. Database Administrator. Release Engineer. Project Leader. Designer / Developer

Parcours Conception, Modélisation et Architecture des Systèmes Informatiques Complexes mention Informatique Paris-Saclay

Les technologies du Big Data

Evaluation des performances de programmes parallèles haut niveau à base de squelettes

Cours Bases de données

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

FICHE UE Licence/Master Sciences, Technologies, Santé Mention Informatique

IFT2255 : Génie logiciel

BUILDING AUTOMATION Phoenix Contact dans les coulisses de l Opéra Garnier

Semestre 1. Objectifs Approfondissement de l environnement Java et de son interface de programmation d applications : réseaux, et processus.

Utilisation de l ingénierie des modèles pour la conception collaborative de produits mécaniques

Le 09 et 10 Décembre 09

14. Introduction aux files d attente

Architecture Orientée Objet Pour l Ingénierie des SIP application à l Entreprise SAFCER

Urbanisation des Systèmes d Information Architecture d Entreprise. 04 Architecture du SI : identifier et décrire les services, structurer le SI

IBM Software Group. Migration vers Tivoli Workload Scheduler. Philippe TESSIER 2009 IBM Corporation

Organisation du parcours M2 IR Les unités d enseignements (UE) affichées dans la partie tronc commun sont toutes obligatoires, ainsi que le stage et

Cours en ligne Développement Java pour le web

Sciences de Gestion Spécialité : SYSTÈMES D INFORMATION DE GESTION

Comment réussir son projet de Master Data Management?

TP N 57. Déploiement et renouvellement d une constellation de satellites

Bases de données Cours 1 : Généralités sur les bases de données

... et l appliquer à l optimum. Reconnaître la qualité... Solution Partner. Answers for industry.* *Des réponses pour l industrie.

Programmation de services en téléphonie sur IP

Annexe 6. Notions d ordonnancement.

Master Informatique Aix-Marseille Université

Qu est-ce que le «cloud computing»?

Transcription:

A propos de l applicabilité de la théorie de l ordonnancement temps réel : le projet Cheddar F. Singhoff, A. Plantec Laboratoire Informatique des Systèmes Complexes LISyC/EA 3883 Université de Brest Séminaire IRIT, 16/11/2007, Page 1/26

Sommaire Introduction et motivations. Une (mini) taxinomie exécutable. Ordonnancement temps réel et langages d architecture : un exemple avec AADL. Quand les tests de faisabilité n existent pas. Conclusions et perspectives. Séminaire IRIT, 15/11/2007, Page 2/26

Introduction et motivations (1/5) «En informatique temps réel, le comportement correct d'un système dépend, non seulement des résultats logiques des traitements, mais aussi du temps auquel les résultats sont produits» (J. Stankovic, 1988). Exigences de : Déterminisme logique : le mêmes entrées appliquées au système produisent les mêmes résultats. Déterminisme temporel : respect des contraintes temporelles (ex : échéance). Prédictibilité temporelle pour les systèmes concurrents temps réel : théorie de l ordonnancement temps réel. Séminaire IRIT, 15/11/2007, Page 3/26

Introduction et motivations (2/5) Tâches périodiques: (Liu & Layland, 1974) Borne maximale sur le temps d exécution (capacité) : C i Délai entre deux activations (période) : P i Contrainte temporelle à respecter (délai critique) : D i Ordonnanceurs classiques : Rate Monotonic, Earliest Deadline First, Prédictibilité, soit par simulation, soit par méthodes analytiques (tests de faisabilité). Séminaire IRIT, 15/11/2007, Page 4/26

Introduction et motivations (3/5) Simulation : calcul GANNT + analyse. Preuve si période d étude (à de rares occasions ) Méthodes analytiques/tests de faisabilité : limitées à certains cas R i R i = Ci +. j hp( i) Pj C j Séminaire IRIT, 15/11/2007, Page 5/26

Introduction et motivations (4/5) Bilan sur la théorie de l ordonnancement temps réel : 1. Résultats théoriques importants dans le cas monoprocesseur de 1974 à 1994. 2. Maturité technologique (systèmes d exploitation, profil Ravenscar/Ada 2005, ). 3. Forte demande du milieu industriel. Et pourtant, pas ou peu d utilisations! Séminaire IRIT, 15/11/2007, Page 6/26

Introduction et motivations (5/5) Quelques explications (possibles) : 1. Explications ni scientifiques, ni techniques. 2. Nécessite un niveau d expertise élevé pour l employer: Formation des ingénieurs. Beaucoup de résultats théoriques. Synthèse délicate. Langage de conception/architecture: centraliser les données. Nécessité d automatiser par l outil/la méthode or, peu d outils et peu d intégrations dans les processus d ingénierie. 3. La théorie reste incomplète (ex : mémoire, systèmes répartis). 4. Et quand les tests de faisabilité n existent pas? 5. Séminaire IRIT, 15/11/2007, Page 7/26

Sommaire Introduction et motivations Une (mini) taxinomie exécutable. Ordonnancement temps réel et langages d architecture : un exemple avec AADL. Quand les tests de faisabilité n existent pas. Conclusions et perspectives. Séminaire IRIT, 15/11/2007, Page 8/26

Un outil pour automatiser l analyse 1. Analyse automatisée tout en maintenant la tracabilité : Sélectionner les bons tests (généraux, complexité, exactitude). Vérifier les hypothèses des tests automatiquement. Présenter les critères pertinents. 2. Outil pédagogique, plusieurs niveaux d accès. 3. Interopérabilité et ouverture des outils. Doit s insérer dans une démarche d analyse (processus d ingénierie). Séminaire IRIT, 15/11/2007, Page 9/26

Sommaire Introduction et motivations Une (mini) taxinomie exécutable. Ordonnancement temps réel et langages d architecture : un exemple avec AADL. Quand les tests de faisabilité n existent pas. Conclusions et perspectives. Séminaire IRIT, 15/11/2007, Page 10/26

AADL et analyse de performance (1/7) Architecture Analysis and Design Language (AADL) : Langage permettant la modélisation et l analyse de systèmes temps réel (architecture, matériel et logiciel). Standard SAE publié en novembre 2004 (document AS 5506). Un modèle AADL, c est un ensemble de composants : Thread : flot de contrôle qui exécute un programme (ex: thread POSIX). Data : n importe quelle structure de données d un programme (ex: struct C). Processeurs, bus, périphériques, mémoires : architecture matérielle. Un modèle AADL, c est aussi : Connexions entre composants : relations entre composants. Propriétés de composants : implémentation, besoin en ressources, comportement... Séminaire IRIT, 15/11/2007, Page 11/26

AADL et analyse de performance (2/7) Un modèle AADL, pourquoi faire : 1. Générer le code et documentation conformes au modèle (ex: Ocarina de l ENST, STOOD d Ellidiss Technologies). 2. Analyse : vérification sémantique, fiabilité, performance, Analyse de performances : 1. Un modèle AADL est il compatible avec les méthodes d analyse de la théorie de l ordonnancement temps réel? 2. Dimensionnement simultané des ressources : processeurs + empreinte mémoire + communications (applications réparties). Séminaire IRIT, 15/11/2007, Page 12/26

AADL et analyse de performance (3/7) Analyse de l ordonnancement des threads. Propriétés principales présentes, mais : 1. Manque les propriétés classiques liées aux ordonnanceurs usuels (ex : préemptif, POSIX 1003.1b). 2. Manque certaines propriétés classiques des threads nécessaires à l analyse (ex : priorité, gigue). 3. Quid de l accès aux ressources partagées => comportement des threads AADL? 4. Certaines ambiguïtés existent (ex : contraintes de précédences). Proposition d un jeu de propriétés supplémentaires à intégrer à la nouvelle version du standard AADL? Séminaire IRIT, 15/11/2007, Page 13/26

AADL et analyse de performance (4/7) Exemple : threads périodiques + POSIX 1003.1b thread implementation T3.i end T3.i; properties Source_Text => mes_threads.c ; Dispatch_Protocol => Periodic; Compute_Execution_time => 1 ms.. 2 ms; Deadline => 10 ms; Period => 10 ms; thread implementation fifo2.i properties end fifo2.i; Dispatch_Protocol => Background; Compute_Execution_time => 1 ms.. 3 ms; Cheddar_Properties::POSIX_Scheduling_Policy => SCHED_FIFO; Cheddar_Properties::Fixed_Priority => 5; Cheddar_Properties::Dispatch_Absolute_Time => 4 ms; process implementation proc0.i subcomponents a_t3 : thread T3.i;... processor implementation rma_cpu.i properties Scheduling_Protocol => RATE_MONOTONIC; Cheddar_Properties::Preemptive_Scheduler => true; Cheddar_Properties::Scheduler_Quantum => 3 ms; end rma_cpu.i; system implementation a_system.impl subcomponents a_cpu : processor rma_cpu.i: an_application : process proc0.i; properties Séminaire IRIT, 15/11/2007, Page 14/26

AADL et analyse de performance (5/7) Les event data ports AADL modélisent l échange de messages entre des threads. Les événements peuvent être mémorisés dans un tampon avant consommation. Applications réparties : gestion conjointe processeurs/mémoires/... Dimensionnement par théorie des files d attente mais: 1. Threads AADL périodiques/sporadiques? 2. Ordonnancement temps réel des threads? Séminaire IRIT, 15/11/2007, Page 15/26

AADL et analyse de performance (6/7) Customer arrivals Queue Server Outgoing customers Théorie des files d attente : λ/μ/n λ : taux d arrivée des clients (M,G,D). μ : taux de service (M,G,D). n : nombre de serveurs. Exemples : M/M/1, M/D/1, M/G/1, Objectif : calculer le temps d attente, et le nombre de client en attente. Les clients et le service peuvent être périodiques et ordonnancés avec Rate Monotonic (thèse de J. Legrand) : Définir des nouvelles lois d arrivée/service : P. Files d attente P/P/1 et M/P/1. Séminaire IRIT, 15/11/2007, Page 16/26

AADL et analyse de performance (7/7) Exemple d un test de faisabilité sur les tampons (file d attente P/P/1) : Nombre de messages dans un tampon partagé par n tâches périodiques dont les échéances sont inférieures aux périodes : 1. L=2.n (tâches harmoniques) L=2.n+1 (sinon) Séminaire IRIT, 15/11/2007, Page 17/26

Sommaire Introduction et motivations Une (mini) taxinomie exécutable. Ordonnancement temps réel et langages d architecture : un exemple avec AADL. Quand les tests de faisabilité n existent pas. Conclusions et perspectives. Séminaire IRIT, 15/11/2007, Page 18/26

Modéliser un ordonnanceur (1/5) Modéliser, puis simuler. Période d étude? Modéliser un ordonnanceur temps réel, c est: 1. Modéliser des instructions arithmétiques et logiques (ex: comment calculer une priorité, comment appliquer une règle de tri). 2. Modéliser des synchronisations entre tâches/ordonnanceurs (ex; quand une tâche est elle réveillée par un ordonnanceur, comment les ordonnanceurs doivent se coordonner, ). Séminaire IRIT, 15/11/2007, Page 19/26

Modéliser un ordonnanceur (2/5) Le langage Cheddar c est: 1. Un sous-ensemble d Ada pour les instructions arithmétiques et logiques: Programme Cheddar = ensemble de sous-programmes (sections). Les sous-programmes sont typés : Start sections : déclarations/initialisation de variables. Priority sections : calcul sur données de simulation (ex : priorités). Election sections : sélection d un tâche à exécuter (règles de tri). Automates temporisés pour la modélisation des synchronisations: Réseaux d automates UPPAAL. Etats et transitions. Une transition peut comporter une opération sur horloges, une garde et/ou finalement une synchronisation (qui peut être une section Cheddar). Séminaire IRIT, 15/11/2007, Page 20/26

Modéliser un ordonnanceur (3/5) Partition = application + isolation mémoire et temporelle. Ordonnancement hiérarchique d ARINC 653: 1. Calcul de l ordonnancement des partitions (hors-ligne). 2. Ordonnancement des tâches de chaque partition (en-ligne, ordonnancement à priorité fixe). Séminaire IRIT, 15/11/2007, Page 21/26

Modéliser un ordonnanceur (4/5) Programme Cheddar modélisant un ordonnanceur hiérarchique : Restart Pended partition1_duration:=0 wakeup1! Wait_Priority partition_clock:=0 partition_clock=10 wakeup2? partition1_duration = partition1_capacity Instructions arithmétiques partition1_duration< et logiques partition1_capacity wakeup1? partition_clock=6 partition1_election! partition1_priority! Activate_Partition1 Activate_Partition2 Ready Séminaire IRIT, 15/11/2007, Page 22/26

Modéliser un ordonnanceur (5/5) Processus d ingénierie d un ordonnanceur: 1. Conception et test du modèle d ordonnanceur par un ensemble de programmes Cheddar. 2. Génération du simulateur grâce au Meta-CASE tool Platypus, puis simulations à large échelle. Séminaire IRIT, 15/11/2007, Page 23/26

Sommaire Introduction et motivations Une (mini) taxinomie exécutable. Ordonnancement temps réel et langages d architecture : un exemple avec AADL. Quand les tests de faisabilité n existent pas. Conclusions et perspectives. Séminaire IRIT, 15/11/2007, Page 24/26

Conclusion et perspectives (1/2) Quelques contributions de Cheddar, le projet : Outil pédagogique (ENST, Univ. Rhode Island, Monash Univ., Centro Universitario de Mérida, Univ Politécnica de Catalunva, ). Outil d expérimentation (ENST, Ellidiss, Thalès, Airbus, IRIT, ). Intégration CASE tools (STOOD, PPOOA, ). Quelques contributions scientifiques : Cheddar, l outil : Synthèse de la théorie de l ordonnancement temps réel. Théorie des files d attente et temps réel. Contributions à la validation du standard AADL. Distribué sous GPL. Dernière version : février 2007. http://beru.univ-brest.fr/~singhoff/cheddar Séminaire IRIT, 15/11/2007, Page 25/26

Conclusion et perspectives (2/2) Travaux en cours et perspectives : 1. Langage d architecture AADL : Quels sont les bons patrons de conception qui autorisent l analyse avec la théorie de l ordonnancement temps réel (Ellidiss technologies). Analyse performances de modèles AADL 2.0? (annexe comportementale). 2. Langage de modélisation Cheddar : Analyse performance large échelle. De la simulation à la preuve. Comment comparer les modèles d ordonnanceur? Partenariats : ENST Paris (L. Pautet, J. Hugues, F. Kordon) : Ocarina/PolyOrb. Ellidiss technologies (P. Dissaux) : intégration STOOD, patron de conception AADL. Séminaire IRIT, 15/11/2007, Page 26/26