Architecture logicielle pour le contrôle-commande. Informatique Industrielle 1

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

Introduction aux Systèmes et aux Réseaux, Master 2 CCI

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

MODULE I1. Plan. Introduction. Introduction. Historique. Historique avant R&T 1ère année. Sylvain MERCHEZ

REALISATION d'un. ORDONNANCEUR à ECHEANCES

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

Introduction aux systèmes temps réel

Cours A7 : Temps Réel

CH.3 SYSTÈMES D'EXPLOITATION

Découverte des Logiciels Libres. Gilles Dequen

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

Introduction à l informatique temps réel Pierre-Yves Duval (cppm)

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

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

Perspectives pour l entreprise. Desktop Cloud. JC Devos IBM IT Architect jdevos@fr.ibm.com IBM Corporation

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

Linux embarqué: une alternative à Windows CE?

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

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

Diagrammes de Package, de déploiement et de composants UML

Analyse de performance, monitoring

TAI049 Utiliser la virtualisation en assistance et en dépannage informatique TABLE DES MATIERES

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

Initiation au HPC - Généralités

Concept de machine virtuelle

Introduction au temps réel

Détection d'intrusions en environnement haute performance

Ordonnancement temps réel

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

Virtualisation open source État de l'art

Support de cours système d exploitation

CAHIER DES CHARGES D IMPLANTATION

Qu est ce qu un un serveur?

Systèmes en réseau : Linux 1ère partie : Introduction

EN Télécom & Réseau S Utiliser VMWARE

Virtualisation de postes de travail et d application. Jean-Claude DAUNOIS Senior Systems Engineer VMware

Applications Embarquées Critiques

Formations Evolix Catalogue

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

Problèmes liés à la concurrence

Démarches d urbanisation : réorganiser le Système d Information en structurant ses fonctions dans des blocs fonctionnels communicants.

Xen. Quelques notes autour de Xen

IRL : Simulation distribuée pour les systèmes embarqués

HISTORIQUE DES SYSTEMES D'EXPLOITATION (S.E.)

IV- Comment fonctionne un ordinateur?

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

Virtualisation Vserver et OpenVz en entreprise

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

µrv : Realité Virtuelle

Modélisation des interfaces matériel/logiciel

Virtual Box Mettez un PC dans votre... PC

Aperçu rapide de PC BSD 1.2.

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

Introduction aux Systèmes et aux Réseaux

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

Tivoli Endpoint Manager Introduction IBM Corporation

Catalogue & Programme des formations 2015

La plate-forme DIMA. Master 1 IMA COLI23 - Université de La Rochelle

Unix/Linux I. 1 ere année DUT. Université marne la vallée

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

Un système d'exploitation

Mesure de performances. [Architecture des ordinateurs, Hennessy & Patterson, 1996]

Segmentation d'images à l'aide d'agents sociaux : applications GPU

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

RESEAUX MISE EN ŒUVRE

Institut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique

Catalogue des stages Ercom 2013

Nouvelles stratégies et technologies de sauvegarde

OTIS. Mod. La modernisation réinventée. Plus de sécurité Plus de fiabilité Plus de confort. Et plus d attention à l environnement.

WEA Un Gérant d'objets Persistants pour des environnements distribués

Windows 2000: W2K: Architecture. Introduction. W2K: amélioration du noyau. Gamme windows W2K pro: configuration.

Implémentation Matérielle des Services d un RTOS sur Circuit Reconfigurable

SRS Day. Vue d ensemble. Avérous Julien-Pierre

Manuel d'installation de GESLAB Client Lourd

Modules du DUT Informatique proposés pour des DCCE en 2014/2015

CLAIRE, UN OUTIL DE SIMULATION ET DE TEST DE LOGICIELS CRITIQUES. Jean GASSINO, Jean-Yves HENRY. Rapport IPSN/Département d'évaluation de sûreté N 280

Le modèle client-serveur

LA VIRTUALISATION. Etude de la virtualisation, ses concepts et ses apports dans les infrastructures informatiques. 18/01/2010.

Chapitre I Notions de base et outils de travail

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

Introduction aux Bases de Données Relationnelles Conclusion - 1

Utilisation des services vocaux en Centre d'appels

SugarCubes. Jean-Ferdinand Susini Maître de Conférences, CNAM Chaire systèmes enfouis et embarqués. Paris, le 9 janvier, 2009

Environnement logiciel open source pour la création d œuvres artistiques interactives

Évaluation et implémentation des langages

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

Objectif de cette présentation

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

Un tempo de Reel sur un rythme de Java

Systèmes d exploitation

Capacité étendue d utilisation en réseau

Séminaire Business Process Management. Lausanne le 9 mai 2007

Améliorer les performances du site par l'utilisation de techniques de Web Mining

Gérer sereinement votre activité commerciale avec Sage 100 Gestion Commerciale

NACIRI Mehdi. Rapport de stage : Mise en place d un moyen pour anticiper les pannes des serveurs de l IUT. Promotion BTS SIO Option SISR

Sur un ordinateur portable ou un All-in-One tactile, la plupart des éléments mentionnés précédemment sont regroupés. 10) 11)

Transcription:

Architecture logicielle pour le contrôle-commande Informatique Industrielle 1

Systèmes informatiques Opérateur hiérarchie IHM Fonctions/Traitement Entrées Système informatique Sorties Interface entrées/sorties Processus Capteurs Procédé Actionneurs Informatique Industrielle 2

Systèmes informatiques ØLes systèmes informatiques pour les applications de contrôle-commande ØRappels sur les systèmes d exploitations ØNotions de tâches et thread ØVers les exécutifs temps-réels ØProgrammation multitâches Informatique Industrielle 3

Systèmes informatiques Systèmes transformationnels Données fournies à l'initialisation par l'utilisateur Aucune contrainte de temps sur l obtention du résultat Ex : Calcul Scientifique, gestion de base de données Systèmes interactifs Données produites par l'interaction avec l'environnement (clavier, fichier, réseaux, etc.) Contraintes temporelles réduites (confort de travail) Ex : Outils bureautique Systèmes de contrôlecommande Données fournies par l environnement physique réel Contrainte de temps forte pour l obtention du résultat Systèmes temps-réel ou systèmes réactifs : Systèmes embarqués Systèmes où l intervention humaine est limitée Résultats entièrement conditionnés par l environnement connecté Instants de production dépendant de la dynamique du procédé Instants de production fortement contraints Informatique Industrielle 4

Contraintes temporelles des SNCC 1 heure Temps Contrôle en chimie 1 minute Contrôle de fabrication 1 seconde 10 ms 1 ms 1 μs 100 ns Systèmes vocaux Systèmes radar Systèmes mesures scientifiques Robotique Source : Collet 2005 Applications Informatique Industrielle 5

Systèmes d exploitation (rappels) Définition Ensemble de programmes qui permettent Ø Contrôler et gérer les ressources matérielles d un ordinateur Ø Fournir des services aux utilisateurs pour accéder à ces ressources Caractéristiques Ø Mono-utilisateur ou multi-utilisateur Ø Multitâches ou mono-tâche Ø Distribué ou non Ø Temps-réel Ø Embarqué Utilisateur Logiciels d application Système d exploitation Matériel Informatique Industrielle 6

Systèmes d exploitation (rappels) Le cœur du système d exploitation : le noyau Applications Noyau (kernel) CPU Mémoire Pilotes Les noyaux spécifiques à une architecture matérielle, souvent mono-tâche, d autres généralistes souvent multitâches et multiutilisateurs. Deux architectures : Ø Noyaux monolithiques Ø Monolithiques non modulaires et modulaires Ø Micro-noyaux Ø Noyaux hybrides Informatique Industrielle Source Wikipédia 7

Systèmes d exploitation (rappels) Noyaux monolithiques L ensemble des fonctions du systèmes et des pilotes sont regroupés dans un seul bloc et un seul binaire généré à la compilation Informatique Industrielle Source Wikipédia 8

Systèmes d exploitation (rappels) Noyaux monolithiques modulaires Les fonctions principales sont regroupées au sein d un seul bloc de code unique. Les parties optionnelles, les pilotes de périphériques par exemple, sont regroupées dans des modules qui sont des entités bien distinctes du noyau. Informatique Industrielle Source Wikipédia 9

Systèmes d exploitation (rappels) Micro-noyaux Dans ce type de configuration, on cherche à minimiser les fonctions nécessitant le noyau. On utilisera des services à l extérieur dans l espace utilisateur Informatique Industrielle Source Wikipédia 10

Systèmes d exploitation (rappels) Noyaux Noyau monolithique Noyau monolithique modulaire Micro-noyau (enrichi) Anciens BSD BSD 4.4 QNX Linux (version < 1.2) Linux (version >1.2) RTAI SunOS 5 VxWords Grandes diversités d OS Ø Unix : crée 1969 Ø Linux : clone gratuit d UNIX à Xenomai, Linux RT, Ø Mac OS : première interface graphique Ø MS-DOS : équipe les premiers PC Ø MS-Windows Ø Windows NT Informatique Industrielle 11

Systèmes d exploitation Limitations des systèmes d exploitation généralistes Ø Indépendance desprocessusè gestion communication entre processus Ø Optimisation locale (traitement de données) è nuit à la prédictibilité Ø Gestion grossière dutemps Ø Favorise l équité entre processus è impactles temps de réponse Ø Nombreux processusde maintenance pour favoriser l utilisation du système Ø Mémoire virtuelle è nuit à la prédictibilité Ce type d exécutif n estgénéralement paspréemptible. La gestion de certain événement utilise des fonctions haut niveau àlatence Informatique Industrielle 12

Pourquoi les systèmes temps-réel Notions d exécutif temps-réel (noyau temps-réel Exécutif : Ø Ordonnancement des tâches Ø Protéger l accèsaux ressources partagées Ø Recevoir et transmettre les signaux de synchronisation Un exécutif temps-réel peut être utilisé à la place d un système d exploitation généraliste, lorsque le système de contrôle-commande estsoumis à descontraintes temporelles ou qu ildoitêtre embarqué sur un microcontrôleur. Informatique Industrielle 13

Systèmes temps-réel Définition Contraintes des systèmes temps-réel [Stankovic1998] «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». Objectifs (Cours Pr. Singhoff Frank) Déterminisme logique (entrées appliquées au système produisent les mêmes résultats) ; Déterminisme temporel ( respect des contraintes temporelles ) Fiabilité (fiabilité du logiciel et du matériel) è Système prédictible : on cherche à déterminer a priori si le système va répondre aux exigences temporelles. SYSTEME TEMPS-REEL SYSTEME RAPIDE Informatique Industrielle 14

Systèmes temps-réel notions fondamentales Tâches non préemptibles : La tâche ne peutêtre interrompues qu à des instants/endroits spécifiques ou à lademande de latâche elle-même. Tâches préemptibles : La tâche peut être interrompue à n importe quel instant et le processeur est alors affecté à une autre tâche. Programmation plus complexe et gestion des accèsà des ressources critiques. Analyse de l ordonnancement hors ligne : la séquence d exécution complète est construite à l avance sur la base des paramètres temporels des tâches (modélisation type réseaux de pétri ou simulation) Analyse de l ordonnancement ligne : la prochaine tâche à exécuter est choisi de manière dynamique en fonction desparamètres de la tâche Exécutionsynchrone : si les tâches sont non préemptibles et qu elles s exécutent les unes après les autres dans l ordre défini par l analyse hors ligne de l ordonnancement Exécution asynchrone : les tâches sont préemptibles et s exécutent selon l ordonnancementqui se fait obligatoirement en ligne. Informatique Industrielle 15

Classification Classement selon le respect des contraintes temporelles : Temps-réel dur ou critique (hard real-time) : Le non respect des contraintes temporelles entraîne de graves défaillances du système Ex : Système de pilotage d un avion, guidage d un missile, etc. Temps-réel mou ou souple (soft real-time) : Le respect des échéances temporelles est importante mais la violation de celles-ci ne provoque pas de graves défaillances du système Ex : vidéoconférence, etc. Temps-réel ferme (firm real-time) : les échéances peuvent occasionnellement être manquées sans mettre le système en erreur. Le résultat ne sert plus à rien après l échéance Ex : Internet Informatique Industrielle 16

Architecture logicielle Entrée Tâche 1 Tâche 8 Synchro Tâche 7 Sortie Tâche 2 Ressource critique Tâche 5 Tâche 3 Tâche 4 Tâche 6 Informatique Industrielle 17

Implémentation des applications TR Informatique Industrielle 18

Implémentation des applications TR Programmation multitâches ou multithread Un «thread» (tâche) est un processus léger qui fait partie intégrante d un processus et qui se caractérise par : Date d activation de latâche ; Période d activation de latâche ; Durée de latâche ; Priorité de latâche. Un processus est un programme en cours d exécution qui peut contenir plusieurs tâches dont l exécution semble se dérouler en parallèle. Un thread partage des ressources avec les autres thread d un même processus, par contre il possède sa propre pile et ses registres A la différence d un processus, un thread peut créer et changer de contexte rapidement Informatique Industrielle 19

Implémentation des applications TR Problèmes sous-jacent de la programmation multitâches Ordonnancement des processus : Stratégie permettant de choisir le processus a exécuté en premierparmi lesprocessusprêtà être exécuté (notion de priorité); Gestion de la concurrence : le système d exploitation doit gérer la synchronisation et la communication entre différentes tâches qui souhaitent soient accéder à une ressource critique ou alorscommuniquer. Ø Synchronisation : Mutex (verrou d exclusion mutuelle), Sémaphore, Variables de condition Ø Communication inter-process (IPC) : pipe, fifo, mailbox Informatique Industrielle 20

Implémentation des applications TR Ordonnancement préemptif Routine de Service Interruption (ISR) Tâche de haute priorité ISR Pre-emptstask 2 3 4 ISR retourne à la tâche de haute priorité 5 ( source : note d'application Philips AN711 ) 6 1 Tâche de faible priorité La tâche est toujours en attente pour exécution (1) Tâche de faible priorité en cours d exécution (4) ISR invoque service du noyau pour retourner à la tâche de haute priorité (2) Interruption asynchrone (5) La tâche de haute priorité s exécute (3) Microprocesseur pour la gestion d autre tâches (6) Retour à la tâche de basse priorité Informatique Industrielle 21 Temps

Implémentation des applications TR Threads périodiques Instant d activation de la tâche RT RT Tâche Durée de tâche OS process Te : période 0 Te 2Te Temps Informatique Industrielle 22

Implémentation des applications TR Threads périodiques Instant d activation de la tâche RT Erreur RT Tâche Durée de tâche > Te OS process Te : période 0 Te 2Te Temps Informatique Industrielle 23