Linux et le temps réel

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

Virtualisation open source État de l'art

Comment travailler avec les logiciels Open Source

Introduction au temps réel

Introduction aux environnements de virtualisation d'oracle Solaris 11.1

Java - la plateforme

Utilisation de matériels industriels avec des outils de virtualisation open source. Open Source dans le monde industriel

Plan de la conférence. Virtualization. Définition. Historique. Technique. Abstraction matérielle

Outils de développement collaboratif

Le logiciel libre. Jeudi 19 janvier Rémi Boulle Sébastien Dinot

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

[ Rencontres Mondiales du Logiciel Libre 2011 Lundi 11 juillet 2011 ] Introduction à l'open Hardware Auteur : Dr Ir Robert Viseur

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

Concept de machine virtuelle

Virtualisation de serveurs Solutions Open Source

Linux embarqué, Linux Temps Réel : présentation

Licence professionnelle Réseaux et Sécurité Projets tutorés

(ATTENTION : une seule réponse possible pour les questions à choix multiples)

neocampus : campus du futur 27 février 2015

OpenERP, un progiciel de gestion intégré pour entreprise, distribué sous licence libre (GPL), qui répond de manière efficace à la complexité et aux

Ordonnancement sous contraintes de Qualité de Service dans les Clouds

Activité 1 : Création et Clonage d'une première machine virtuelle Linux OpenSuSE.

Temps Réel. Jérôme Pouiller Septembre 2011

Internet des objets 1

ANeXiti 33 quai Arloing lyon cedex

Les avantages de la virtualisation sont multiples. On peut citer:

Solutions de Virtualisation du poste de travail. ViewSonic vous présente le poste de travail virtuel du futur

Annexe : La Programmation Informatique

Linux embarqué: une alternative à Windows CE?

Le bâtiment, nouvel outil de performance pour l entreprise. Solutions STIBIL et GILIF

Assemblée générale Aristote

Etude Benchmarking 2010 sur les formations existantes apparentées au métier de Business Developer en Innovation

REALISATION d'un. ORDONNANCEUR à ECHEANCES

INSTRUCTIONS D INSTALLATION SOUS WINDOWS 7 / WINDOWS VISTA / WINDOWS XP

Base de l'informatique. Généralité et Architecture Le système d'exploitation Les logiciels Le réseau et l'extérieur (WEB)

EA D S INNOVA TION W ORKS. Mobilité et sécurité. Nicolas RUFF nicolas.ruff [à] eads.net

Atelier : Virtualisation avec Xen

Sécurisation d un site nucléaire

Plan global Outils de développement et compilation. Plan. Objectifs des outils présentés. IDE, GCC/Clang, ASAN, perf, valgrind, GDB.

Réunion Information Investissements d Avenir

La problématique de la Préservation des Bases de Données. Olivier ROUCHON CINES Groupe PIN Jeudi 7 Octobre

Virtualisation sous Linux L'age de raison. Daniel Veillard

1 Architecture du cœur ARM Cortex M3. Le cœur ARM Cortex M3 sera présenté en classe à partir des éléments suivants :

ESXi: Occupation RAM avec VM_Windows et VM_Linux. R. Babel, A. Ouadahi April 10, 2011

Zabbix. garder un oeil toujours ouvert. - Creative Commons BY-SA

DA MOTA Anthony - Comparaison de technologies : PhoneGap VS Cordova

UNIFIED. Nouvelle génération d'architecture unifiée pour la protection des données D TA. dans des environnements virtuels et physiques PROTECTION

Responsabilités du client

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

Vous avez des problèmes d'impression réseau? UniPrint. est la solution qu'il vous faut. Aperçu du produit

La technologie Java Card TM

Les méthodes de sauvegarde en environnement virtuel

JOnAS 5 Enterprise OSGi javaee compliant

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

Formation Site Web. Menu du jour. Le web comment ça marche? Créer un site web Une solution proposée pour débuter La suite?

Parallélisme et Répartition

Contrat de Maintenance Informatique

XP : plus qu'agile. Extreme Programming v2 et Développement Responsable. Thierry Cros

Microsoft Dynamics AX. Solutions flexibles avec la technologie Microsoft Dynamics AX Application Object Server

Le concept de virtualisation regroupe

Conduite de projets informatiques Développement, analyse et pilotage (2ième édition)

Certificats «CREDIT LYONNAIS Authentys Entreprise» Manuel utilisateur du support cryptographique

VOTRE OFFRE CRM 360 ALL INCLUSIVE.

Pour un citoyen mieux informé en transports

Linux embarqué Retour d expérience et temps réel. Denis Coupvent-Desgraviers

Alexandre Buge Epitech 5 Promo Soutenance de stage du 01/03/2004 au 31/08/2004

Android 4 Les fondamentaux du développement d'applications Java

Master CCI. Compétences Complémentaires en Informatique. Livret de l étudiant

Trend Micro Worry-Free Business Security 8.0 Première installation : trucs et astuces

Présentation et portée du cours : CCNA Exploration v4.0

Cours de Java. Sciences-U Lyon. Java - Introduction Java - Fondamentaux Java Avancé.

Livre blanc. La sécurité de nouvelle génération pour les datacenters virtualisés

Hétérogénéité pour atteindre une consommation énergétique proportionnelle dans les clouds

Chapitre 1 Retour en arrière

Limitations of the Playstation 3 for High Performance Cluster Computing

Présentation des intervenants. Pourquoi cette conférence? Logiciel libre : notions essentielles. Le logiciel libre pour les projets industriels

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

L ACCROISSEMENT DE L ENTROPIE DES SYSTÈMES D INFORMATION EST-ELLE UNE FATALITÉ?

Plan global Outils de développement et compilation. Ce que l on veut éviter. Plan. Git : gestion de code source et versionnement.

ERP Service Negoce. Pré-requis CEGID Business version sur Plate-forme Windows. Mise à jour Novembre 2009

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

La Voix Sur IP (VoIP)

OpenERP, un progiciel de gestion intégré pour entreprise, distribué sous licence libre (GPL), qui répond de manière efficace à la complexité et aux

arcserve r16.5 Protection des données hybride

Le Framework.Net. Introduction. Pourquoi.Net?

Qu est ce qu un un serveur?

Le Programme SYGADE SYGADE 5.2. Besoins en équipement, logiciels et formation. UNCTAD/GID/DMFAS/Misc.6/Rev.7

INGÉNIEUR - DÉVELOPPEUR SENIOR Logiciels Audio - DSP - Embedded C - C/C++ 35 ans - 10 ans d'expérience

Responsabilités du client

Fiche Produit. Plateforme de sauvegarde en marque blanche Kiwi Business

Analyse des trajectoires acceptables en approche de virage assistance aux conducteurs

Virtual Box Mettez un PC dans votre... PC

Démarreur-testeur par ordinateur via le port USB d un PC pour moteurs asynchrones triphasés

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

Compte sur livret. Mots clés : Sommaire : Compte sur livret. 1. Qui peut bénéficier d un compte sur livret? 2. Le compte sur livret au quotidien

Introduction aux systèmes temps réel

Transcription:

Jérémy Rosen (jeremy.rosen@openwide.fr) Septembre 2013 1

Présentation Open Wide SSII/SSLL créée en septembre 2001 avec THALES et Schneider Indépendante depuis 2009 Environ 120 salariés sur Paris, Lyon et Toulouse Industrialisation de composants open source Développement Formation Expertise Trois activités : OW Système d'information (Java/PHP) OW Outsourcing: hébergement OW Ingénierie: informatique industrielle 2

Qu'est que le temps réel 3

Les spécifications d'un logiciel temps réel contiennent des contraintes de temps de réponse fortes. Définition Il y a un temps maximum imposé entre un événement et son traitement La validité du résultat est influencée par le temps de traitement Le logiciel doit avoir une vitesse de traitement adapté au processus physique qu'il gère Le temps de réponse doit être garanti. En particulier en cas de charge du système. Ajouter des ressources au système n'es pas une solution Les algorithmes ne peuvent pas se dégrader en durée infinie... ou indéfinie Le compromis performance/respect d'échéance est fortement biaisé vers le respect des échéances. Un logiciel temps-réel a un moins bon débit qu'un logiciel non contraint. 4

Tâche périodique, Linux non chargé 5 ms 5

Système chargé par «flood ping» jitter! «décrochage» 6

Flood ping avec Xenomai 7

Les deux types de temps réel Le temps réel strict (hard) Rater une échéance est un bug. Généralement dans des applications critiques et certifiées. Exemple : ABS. Le temps réel souple (soft) La même précision sur les contraintes de temps. Rater une échéance dégrade la qualité du résultat. On estime souvent la qualité en pourcentage d'échéances respectés. Exemple : Vidéo. 8

20

Linux comme (RT)OS Réservé aux systèmes complexes 32 bits minimum Gestion complexe de la mémoire (MMU, pagination+segmentation) Empreinte mémoire importante: 2 Mo pour µclinux (MMU-less), 4 Mo pour Linux Consommation mémoire vive : 16 Mo minimum Incompatible avec les systèmes critiques Souvent utilisé pour les outils, les simulateurs et architectures «mixtes» (banc de test) 21

Linux (vanilla) et le Temps Réel Linux est un UNIX, donc pas un système temps réel Pas de préemption «complète» en mode noyau un processus ne peut être interrompu dans une routine de traitement d interruption (top half) Préemption par l'ordonnanceur Sur interruption timer Fréquence timer fixe (constante HZ = 1-10 ms) précision de l'ordonnanceur (granularité) Latence ( non-garantie ) de l'ordre de la milliseconde. Ordonnancement par niveau de priorité (POSIX) Priorité dynamique standard (0, ajustable avec «nice») SCHED_OTHER Priorité statique «temps réel» SCHED_FIFO/RR (1 à 99) mais non-garanties 22

Extensions TR pour Linux L'utilisation de Linux comme RTOS est souvent intéressante Approche hybride avec quelques tâches TR On conserve le confort d'un système classique Deux approches possibles : Modifier le noyau Linux afin d'améliorer ses performances TR (PREEMPT-RT) Ajouter un «co-noyau» TR qui partage le matériel avec le noyau Linux (RTLinux, RTAI, Xenomai) approche «virtualisation» 23

PREEMPT-RT Branche expérimentale pour la version 2.6 et 3.x, voir https://rt.wiki.kernel.org Initié par Ingo Molnar, contributeur majeur du noyau Surtout utilisé sur x86 et des processeurs performants (nécessite TSC = Time Stamp Counter) Fonctionne également sur ARM (9 ou plus), Nios II, Microblaze,... Nécessite un noyau «mainline» (ou proche) mais ne sera probablement jamais intégré à la branche officielle Mise en place très simple (application d'un patch) Mêmes API de programmation que Linux standard (mais des contraintes de développement existent) Permet de garantir 100 µs de jitter (sur x86, dépends largement du matériel) 24

Linux avec co-noyau Séparation entre le composant temps-réel et Linux Ordonnanceur temps-réel spécifique Pas de dépendance sur les sections critiques Linux :-) Virtualisation de la gestion d'interruptions Linux Routage prioritaire des IRQs vers le co-noyau Linux comme tâche idle du co-noyau Volume du patch noyau plus faible qu'avec PREEMPT-RT Se rapproche de la technique de «para-virtualisation» des hyperviseurs (adaptation de l'os) Excellentes performances TR ordonnanceur spécifique indépendant sous-système temps-réel bien délimité jitter maximal de l ordre de 10 µs sur Atom/x86! 25

RTLinux Projet universitaire (NMT) développé par Victor Yodaiken et Michael Barabanov en 1999 Produit commercial développé par FSMLabs Dépôt d un brevet logiciel conflit avec la FSF Vendu à WIND RIVER en 2007 Développement en espace noyau Version GPL obsolète (2.6.9) retirée par WIND RIVER 26

RTAI Real Time Application Interface Un «fork» de RTLinux développé au DIAPM de l école polytechnique de Milan Dipartimento di Ingegneria Aerospaziale (Paolo Montegazza) Utilisé au DIAPM pour des travaux d enseignement et de recherche Quelques utilisations industrielles Position douteuse / brevet logiciel FSMLabs Toujours actif mais peu d évolution version 3.8 en février 2010, 3.9 en août 2012 28

Xenomai Xenomai est un sous-système temps-réel de Linux Programmation de tâches en espace utilisateur API d'application et de pilotes temps réel (RTDM) dédiées Supporte de nombreuses architectures Dispose de «skins» permettant d'émuler des API temps réel (POSIX, VxWorks, VRTX, uitron,...) Plus complexe à mettre en œuvre que PREEMPT-RT mais performances 5 à 10 fois supérieures Licence GPL (cœur), LGPL (interfaces, espace utilisateur) 29

Xenomai, architecture Xenomai utilise un micro-noyau (ADEOS) pour partager le matériel avec le noyau Linux pilote TR API TR noyau TR micro-noyau noyau Linux 30

Android Difficile de ne pas l'évoquer! Système d'exploitation «libre» basé sur un noyau Linux modifié par Google Pas de support RT sur un Android de base Peut utiliser du code natif (via NDK) Utilisable en guest sur un RTOS? PREEMPT-RT et Xenomai porté pour Android par OpenWide (x86 uniquement) 31

Questions? 32