Exécutif temps réel Pierre-Yves Duval (cppm)
|
|
- Christelle Bergeron
- il y a 8 ans
- Total affichages :
Transcription
1 Exécutif temps réel Pierre-Yves Duval (cppm) Ecole d informatique temps réel - La Londes les Maures 7-11 Octobre 2002 Plan Exécutif Tâches Evénements et synchronisation Partage de ressources Communications entre taches Gestion de la mémoire Gestion du temps Interruptions Fichiers temps réel POSIX et le temps réel 1
2 Rôle d un exécutif Principal : - ordonnancer les exécutions des tâches mais aussi: - protéger l accès aux ressources partagées - recevoir et transmettre les signaux de synchronisations Composé d agences spécialisées dans un type de fonction - gestion des tâches - gestion des événements matériels et logiciels (de synchronisation) - gestion communications entre tâches - gestion du temps - gestion des ressources partagées - gestion de la mémoire - gestion des exceptions Structure d un exécutif Tâches applicatives activation Appels de service horloge lanceur ordonnanceur communication agence événements agence tâches agence Exécutif temps agence ressources agence interruptions Monde matériel 2
3 Exécutif ou noyau temps réel C est d abord un système d exploitation. La principale différence entre un OS généraliste et un OS temps réel est le comportement très déterministe. Ensuite on trouvera quelques différences dans l API (voir POSIX à la fin): -politique d ordonnancement plus élaborée -gestion plus précise de plus de réveils (timers) à la résolution plus fine -plus d ouverture sur le hardware sous-jacent en particulier les connexions aux IT matérielles -plus de modularité dans la construction du noyau Tâche Agent actif d une application avec 4 attributs: -contexte d exécution registres du processeur, pile exécution, ressources détenues - priorité -état d exécution -état de protection (préemptible ou pas) 3
4 Tâche Dans les OS d aujourd hui les tâches sont implantées comme des fils d exécution (thread). L ordonnanceur de l OS gère les threads/tâches. La notion de processus définie un espace d adressage protégé dans lequel s exécute au moins une tâche (le main thread) qui est activé quand le processus est lancé. Le processus se termine quand la dernière tâche qu il contient se termine. Dans certains OS simples il n y a pas d espace mémoire protégé, il y a identité entre les termes: processus = thread = tâche Etats d exécution SCEPTRE Supprimer Créer Inexistant Supprimer Hors Services Lancer Arrêter Arrêter Créer Actif Prêt Sélection En Cours Opération d attente Préemption Arrivée événement Supprimer Continuer En Attente 4
5 Synchronisation par événements synchrones Phases temporelles de l occurrence d un événement: apparition production prise en compte consommation Code d IT jusqu à l appel du service de signalisation Délai de réveil tâche destinataire Traitements avant effacement Les événements sont dits synchrones si l application consommatrice va les lire de façon explicite. Synchronisation par événements synchrones Types d événements: Fugace: Si aucune tâche est en attente à son occurrence il est perdu Mémorisé: L occurrence est mémorisée mais aucune autre ne sera prise en compte avant sa consommation A compte: Mémorisé avec incrémentation du compteur à chaque occurrence et décrémentation chaque consommation 5
6 Synchronisation par événements synchrones Services génériques événements Créer (événement) Supprimer(événement) Attendre_occurrence( événement ) Signaler_occurrence( événement ) IT Lire data Copie mémoire Signaler(evt) Créer (evt) Boucle Attendre(evt) Traiter data Fin boucle Synchronisation par événements synchrones: exemple /* variable condition POSIX utilisable avec rtlinux */ /* */ pthread_cond_t cond; void coureur(){ int ret; ret = pthread_cond_timedwait(&cond,, délai ); courrir(); void arbitre(){ int ret; decompte(); ret = pthread_cond_signal(&cond); main(){ int ret; ret = pthread_cond_init(&cond, NULL); ret = pthread_create(, coureur, ); ret = pthread_create(, arbitre, ); attente_fin(); 6
7 Signalisation asynchrone Une tâche est associée à un signal et elle sera automatiquement activée quand l événement associé au signal arrivera. La tâche est appelée pilote (handler) du signal. La tâche n a donc pas besoin de se mettre en attente du signal. Exemple: signaux UNIX (lent), attachement à une IT matérielle Services génériques signaux asynchrone: Créer( signal )/ Détruire( signal ) Connecter( pilote, signal ) Envoyer( signal ) Il peut exister des masques qui permettent d empêcher temporairement la réception de signaux (avec perte, mémorisation ou comptage) Signalisation asynchrone: exemple /* signal POSIX simple */ /* */ int stopbit; void signalled(){ stopbit = 1; main(){ stopbit = 0; signal( SIGINT, signalled); while(!stopbit) { faire un travail qui sera arrêté par CtrlC terminer_proprement(); 7
8 Partage de ressources Problème: - gérer un nombre limité de ressources ( de 1 à n ) entre plusieurs tâches - assurer la modification cohérente de données partagées Objet: Sémaphore binaire (mutex) un utilisateur à la fois Sémaphore à compte pour n utilisateurs maxi Autres possibilités déconseillées en temps réel: masquage des IT ou interdiction de préemption Partage de ressources Services génériques sémaphores: Créer(sem)/Détruire(sem) Prendre_ressource(sem) parfois appelée P() Libérer_ressource(sem) parfois appelée V() Créer(sem) Boucle Prendre(sem) Insérer(elem,liste) Libérer(sem) Fin boucle Détruire(sem) sem liste Boucle Prendre(sem) exploiter(liste) sortir(elem,liste) Libérer(sem) Fin boucle 8
9 Partage de ressources: exemple /* sémaphore à compte POSIX */ /* */ sem_t sem; void consommateur(){ ret = sem_wait(&sem); manipuler_ressource(); sem_post(&sem); main(){ sem_init(&sem,, nombre_utilisateurs); for ( i=0; i<10; i++) { pthread_create(, consommateur, ); attente_fin(); sem_destroy(&sem); Communication entre tâches Boite aux lettres Service de base permettant les échanges asynchrones de données entre des tâches concurrentes et non synchronisées Services génériques (c est un buffer) Créer(boite)/Supprimer(boite) Déposer(mesg) Lire(mesg) Test(mesg) Exemple: FIFOs, tubes UNIX, queues de messages (POSIX ou system V) (étendues au réseau QNX), mailbox 9
10 Communication entre tâches Boite au lettres: Queue de message POSIX Tâche réceptrice dans processus 2 #define MQ "/monrep/mesgq" mqd_t qfd; struct mq_attr qattr; char message_lu[20]; /* nb max msg en queue */ qattr.mq_maxmsg = 32; /* taille maxi d un message */ qattr.mq_msgsize = 20; void recepteur(){ qfd = mq_open (MQ,, &qattr); mq_receive (qfd, message_lu, sizeof (message_lu), ); print(" %s ", message_lu); mq_close(mq); Tâche émettrice dans processus 1 #define MQ "/monrep/mesgq" mqd_t qfd; struct mq_attr qattr; /* nb max msg en queue */ qattr.mq_maxmsg = 32; /* taille maxi d un message */ qattr.mq_msgsize = 20; void émetteur(){ qfd = mq_open (MQ,, &qattr); mq_send (qfd, "tout va bien", ); mq_close(mq); mq_unlink(mq); Communication entre tâches Socket: programmation répartie Objet de communication applicatif (BSD UNIX) qui permet un échange point à point de type boite aux lettres entre deux tâches sur deux sites différents (sorte de queue de messages). Ces points sont reliés aux couches réseaux de l OS qui assurent le transfert (TCP ou UDP pour Internet). Intérêt: Base de la programmation distribuée - indépendante de l OS - utilisables en local avec des sockets du domaine UNIX. 10
11 Communication entre tâches Tableau noir Publication de données dans un espace accessible en lecture par tous les consommateurs. Exemples: mémoire partagée entre processus (shared memory), données globales entre thread d un même processus Services génériques: Créer/Détruire Afficher/Lire Communication entre tâches Rendez-vous Modèle de communication très synchrone ou producteur et consommateur doivent être présents lors de l échange de donnée. Exemple: support d exécution du langage ADA Services génériques: Appeler_entrée demande de rendez-vous Accepter_entrée déclaration de la capacité à recevoir des demandes de rendez-vous Terminer_entrée 11
12 Gestion de la mémoire Selon les possibilité du hardware sous jacent on peut avoir 3 type de gestion de la mémoire. -espace plat ou toute la mémoire est visible et accessible par n importe quelle tâche -séparation entre les espace système/noyaux et les tâches applicatives -mémoire virtuelle séparée et protégée associée à chaque processus L allocation de la mémoire peut être statique (à la création) ou dynamique (automatique) en fonction des besoins Gestion du temps La précision dépend du support matériel - horloge temps réel - réveils (timer) disponibles sur la carte. L horloge génère un signal périodique qui sert de pulsation à l activité de l exécutif et maintien la date de la machine Les tâches utilisatrices peuvent: -obtenir la date -se synchroniser sur une durée -se synchroniser sur une heure absolue -limiter un blocage sur un délai de garde (timeout) 12
13 Gestion du temps Services génériques: Initialiser_date Lire_date/Lire_heure Attendre_date(date) Signaler_a_date(date) Attendre_délai(delai) suspend la tâche jusqu à la date signaler un événement à une date suspendre la tâche pendant un délai Créer_réveil/Supprimer_réveil réveil=timer Arrêter_réveil Signaler_top_horloge permet d envoyer un signal périodique Certain OS offrent des possibilités pour une tâche de se déclarer comme périodique et de se faire activer avec une période donnée. Gestion des interruptions Prend en compte les sollicitations matérielles du monde extérieur. Une routine d interruption (ISR) doit être aussi courte que possible: - pendant son exécution la source d IT est masquée (mais imbrication d IT de niveaux de priorités différents possible) - ce n est pas un mode d exécution «normal» Le temps de latence d IT est le délai entre arrivée de l interruption et le début de l exécution du code applicatif associé c est une caractéristique importante qui différencie un system TR d un système généraliste. 13
14 Gestion des interruptions: exemple /* rtlinux capter le signal d horloge temps réel */ /* */ #define RTC_IRQ 8 void intr_handler(int sig){ faire_truc(); rtl_hard_enable_irq(rtc_irq); int init_module(void){ struct sigaction act; act.sa_handler = intr_handler; sigaction( RTC_IRQ, &act, NULL); programmer_horloge( fréquence ); rtl_hard_enable_irq(rtc_irq); return(0); Gestion des fichiers Certains services permettent d optimiser l accès aux fichiers - plus rapides - plus déterministes pour des applications temps réel. Ce sont: - fichiers projetés en mémoire (évitent les I/O pendant l usage) - les fichiers stream ou temps réel (permettent écrire de façon continues sur des pistes physiquement contiguës d un disque) - les écritures/lectures asynchrones 14
15 POSIX Depuis 1984 à l IEEE P interface de programmation pour UNIX de base gestion des processus (fork, exec, kill ) fichiers et terminaux (open, fopen, fgetc, dup,fcntl,mkdir ) information runtime (getpid, cuerid, uname ) signaux de base (signal, raise, sigaction ) gestion mémoire (malloc, memcpy, free ) gestion du temps ( time, clock ) exécution (setjmp, longjmp ) communication (pipe, mkfifo (named pipes), setbuf stream, ) POSIX temps réel P1003.1b (ex POSIX.4) extensions temps réel ordonnancement sémaphores queues de messages signaux temps réel (nouveaux, queue, paramètres horloge haute résolution entrées sorties synchrones/asynchrones mémoire partagée P1003.1c (ex POSIX.4a) extensions multithreadées thread mutex variables conditions P1003.1d (ex POSIX.4b) gestion des IT 15
16 OS temps réel du marché Tornado,VxW orks Blue CatLinux and LynxO s QNX Neutrino Hard HatLinux Lineo,Em bedix Et beaucoup d autres dont certaines solutions pour compléter Windows NT ou Linux avec des fonctions «temps réel stricte». OS temps réel du marché 16
Processus! programme. DIMA, Systèmes Centralisés (Ph. Mauran) " Processus = suite d'actions = suite d'états obtenus = trace
Processus 1) Contexte 2) Modèles de Notion de Points de vue Modèle fourni par le SX Opérations sur les 3) Gestion des Représentation des Opérations 4) Ordonnancement des Niveaux d ordonnancement Ordonnancement
Plus en détailIntroduction aux Systèmes et aux Réseaux
Introduction aux Systèmes et aux Réseaux Cours 5 Processus D après un cours de Julien Forget (univ Lille1) Laure Gonnord http://laure.gonnord.org/pro/teaching/ Laure.Gonnord@univ-lyon1.fr Master CCI -
Plus en détailREALISATION d'un. ORDONNANCEUR à ECHEANCES
REALISATION d'un ORDONNANCEUR à ECHEANCES I- PRÉSENTATION... 3 II. DESCRIPTION DU NOYAU ORIGINEL... 4 II.1- ARCHITECTURE... 4 II.2 - SERVICES... 4 III. IMPLÉMENTATION DE L'ORDONNANCEUR À ÉCHÉANCES... 6
Plus en détail03/04/2007. Tâche 1 Tâche 2 Tâche 3. Système Unix. Time sharing
3/4/27 Programmation Avancée Multimédia Multithreading Benoît Piranda Équipe SISAR Université de Marne La Vallée Besoin Programmes à traitements simultanés Réseau Réseau Afficher une animation en temps
Plus en détailEléments de spécification des systèmes temps réel Pierre-Yves Duval (cppm)
Eléments de spécification des systèmes temps réel Pierre-Yves Duval (cppm) Ecole d informatique temps réel - La Londes les Maures 7-11 Octobre 2002 - Evénements et architectures - Spécifications de performances
Plus en détail1 Mesure de la performance d un système temps réel : la gigue
TP TR ENSPS et MSTER 1 Travaux Pratiques Systèmes temps réel et embarqués ENSPS ISV et Master TP1 - Ordonnancement et communication inter-processus (IPC) Environnement de travail Un ordinateur dual-core
Plus en détailCours A7 : Temps Réel
Cours A7 : Temps Réel Pierre.Paradinas / @ / cnam.fr Cnam/Cedric Systèmes Enfouis et Embarqués (SEE) Motivations Du jour : les mécanismes multitâches, la gestion des priorités, l ordonnancement, la gestion
Plus en détailIntroduction à la programmation concurrente
Introduction à la programmation concurrente Moniteurs Yann Thoma Reconfigurable and Embedded Digital Systems Institute Haute Ecole d Ingénierie et de Gestion du Canton de Vaud This work is licensed under
Plus en détailProblèmes liés à la concurrence
ENS Cachan Problématique Difficile de gérer la concurrence : Pas toujours facile d avoir des fonctions réentrantes. Risque de race condition : ex : x :=x+1 x :=x+1 On voudrait des blocs d instructions
Plus en détailLEs processus coopèrent souvent pour traiter un même problème. Ces
Chapitre 5 Communication interprocessus LEs processus coopèrent souvent pour traiter un même problème. Ces processus s exécutent en parallèle sur un même ordinateur (monoprocesseur ou multiprocesseurs)
Plus en détailINTRODUCTION AUX SYSTEMES D EXPLOITATION. TD2 Exclusion mutuelle / Sémaphores
INTRODUCTION AUX SYSTEMES D EXPLOITATION TD2 Exclusion mutuelle / Sémaphores Exclusion mutuelle / Sémaphores - 0.1 - S O M M A I R E 1. GENERALITES SUR LES SEMAPHORES... 1 1.1. PRESENTATION... 1 1.2. UN
Plus en détailTemps Réel. Jérôme Pouiller <j.pouiller@sysmic.org> Septembre 2011
Temps Réel Jérôme Pouiller Septembre 2011 Sommaire Problèmatique Le monotâche Le multitâches L ordonnanement Le partage de ressources Problèmatiques des OS temps réels J. Pouiller
Plus en détailDAns un système multi-utilisateurs à temps partagé, plusieurs processus
Chapitre 8 Ordonnancement des processus Dns un système multi-utilisateurs à temps partagé, plusieurs processus peuvent être présents en mémoire centrale en attente d exécution. Si plusieurs processus sont
Plus en détailLinux embarqué Retour d expérience et temps réel. Denis Coupvent-Desgraviers
Linux embarqué Retour d expérience et temps réel 1 Denis Coupvent-Desgraviers Introduction Bien connaître les bases d un système d exploitation Utilisation de GNU/Linux Bonnes connaissances en langage
Plus en détailPlan global. Programmation système II. Socket du domaine UNIX. Plan. Socket UNIX, Terminaux, Async IO, Mémoire, ELF.
Programmation système II Socket UNIX, Terminaux, Async IO, Mémoire, ELF Timothée Ravier LIFO, INSA-CVL, LIPN 1 re année cycle ingénieur STI 2013 2014 Plan global 1 Socket UNIX 2 Terminaux 3 Autres modèles
Plus en détailAlexandre Buge Epitech 5 Promo 2004. Soutenance de stage du 01/03/2004 au 31/08/2004
Alexandre Buge Epitech 5 Promo 2004 Soutenance de stage du 01/03/2004 au 31/08/2004 15 Septembre 2004 Sommaire 1 Introduction : présentation de l entreprise 2 Développement au sein de Skyrecon Les API
Plus en détailProgrammation système en C/C++
Programmation système en C/C++ Jean-Baptiste Vioix (jb.vioix@free.fr) LE2I - ENESAD http://jb.vioix.free.fr 1-41 Programmation en C/C++ sous Unix Il existe des très nombreux outils de développement sous
Plus en détailInformatique industrielle A7-19571 Systèmes temps-réel J.F.Peyre. Partie I : Introduction
Informatique industrielle A7-19571 Systèmes temps-réel J.F.Peyre Partie I : Introduction Plan de la première partie Quelques définitions Caractéristiques communes des applications temps-réel Exemples d
Plus en détailPlaying with ptrace() for fun and profit
sous GNU/Linux nicolas.bareil@eads.net EADS Corporate Research Center - DCR/STI/C SSI Lab SSTIC 2006 Il était une fois... Sous UNIX, ptrace() est le seul moyen de debuggage. User-space, Interface rigide
Plus en détailCours 6 : Tubes anonymes et nommés
Cours 6 : Tubes anonymes et nommés Mécanisme de communications du système de fichiers I-node associé. Type de fichier: S_IFIFO. Accès au travers des primitives read et write. Les tubes sont unidirectionnels
Plus en détailArchitecture des ordinateurs
Architecture des ordinateurs Cours 4 5 novembre 2012 Archi 1/22 Micro-architecture Archi 2/22 Intro Comment assembler les différents circuits vus dans les cours précédents pour fabriquer un processeur?
Plus en détailCours de Systèmes d Exploitation
Licence d informatique Synchronisation et Communication inter-processus Hafid Bourzoufi Université de Valenciennes - ISTV Introduction Les processus concurrents s exécutant dans le système d exploitation
Plus en détail4. Outils pour la synchronisation F. Boyer, Laboratoire Lig Fabienne.Boyer@imag.fr
4. Outils pour la synchronisation F. Boyer, Laboratoire Lig Fabienne.Boyer@imag.fr Le problème Insuffisance des solutions de base (verrous) Les solutions de plus haut niveau Les Sémaphores Les Moniteurs
Plus en détailProgrammation C. Apprendre à développer des programmes simples dans le langage C
Programmation C Apprendre à développer des programmes simples dans le langage C Notes de cours sont disponibles sur http://astro.u-strasbg.fr/scyon/stusm (attention les majuscules sont importantes) Modalités
Plus en détailDéveloppement d un logiciel de messagerie instantanée avec Dotnet (version simplifiée)
Développement d un logiciel de messagerie instantanée avec Dotnet (version simplifiée) Propriétés Description Intitulé long Formation concernée Matière Présentation Développement d un logiciel de messagerie
Plus en détailQu'est-ce qu'un processus: Définitions
Version septembre 2013 N 187 Qu'est-ce qu'un processus: Définitions Instruction = indécomposable et indivisible Processeur =... Processus = suite temporelle d'exécutions d'instructions Processus = exécution
Plus en détailPROJET ALGORITHMIQUE ET PROGRAMMATION II
PROJET 1 ALGORITHMIQUE ET PROGRAMMATION II CONTENU DU RAPPORT A RENDRE : o Fiche signalétique du binôme o Listing des différents fichiers sources o CD sources o Il sera tenu compte de la présentation du
Plus en détailIntroduction à l informatique temps réel Pierre-Yves Duval (cppm)
Introduction à l informatique temps réel Pierre-Yves Duval (cppm) Ecole d informatique temps réel - La Londes les Maures 7-11 Octobre 2002 -Définition et problématique - Illustration par des exemples -Automatisme:
Plus en détailFormations Evolix Catalogue
Catalogue Evolix, Spécialiste des technologies Open Source N Agrément Formateur : 93131160713 Table des matières I Pôle Formations Systèmes et Réseaux 5 Présentation..........................................
Plus en détailSystèmes et exécutifs temps-réel
Systèmes et exécutifs temps-réel Licence professionnelle «Systèmes embarqués dans l automobile» Isabelle PUAUT (Cours + TD) Jean-François DEVERGE et Christophe Pais (TP) 1 Applications temps-réel Systèmes
Plus en détailIntroduction aux systèmes temps réel. Iulian Ober IRIT ober@iut-blagnac.fr
Introduction aux systèmes temps réel Iulian Ober IRIT ober@iut-blagnac.fr Sommaire Généralités Caractéristiques récurrentes des STR Types de problèmes soulevées Programmation des STR Prog. concurrente
Plus en détailÉcole Polytechnique de Montréal. Département de Génie Informatique et Génie Logiciel. Cours INF2610. Contrôle périodique.
École Polytechnique de Montréal Département de Génie Informatique et Génie Logiciel Cours INF2610 Contrôle périodique Automne 2013 Date : 11 octobre 2013 de 18h à 20h Professeur : Boucheneb Hanifa Documentation
Plus en détailIntroduction aux systèmes temps réel. Iulian Ober IRIT ober@iut-blagnac.fr
Introduction aux systèmes temps réel Iulian Ober IRIT ober@iut-blagnac.fr Définition Systèmes dont la correction ne dépend pas seulement des valeurs des résultats produits mais également des délais dans
Plus en détailSynchro et Threads Java TM
Synchro et Threads Java TM NICOD JEAN-MARC Master 2 Informatique Université de Franche-Comté UFR des Sciences et Techniques septembre 2008 NICOD JEAN-MARC Synchro et Threads avec Java TM 1 / 32 Sommaire
Plus en détailIntroduction : les processus. Introduction : les threads. Plan
IN328 Programmation distribuée avec Java et J2EE 2 - Threads en Java Introduction : les processus Un processus est un ensemble d instructions à exécuter, un espace mémoire réservé et éventuellement d autres
Plus en détailTravaux pratiques. Compression en codage de Huffman. 1.3. Organisation d un projet de programmation
Université de Savoie Module ETRS711 Travaux pratiques Compression en codage de Huffman 1. Organisation du projet 1.1. Objectifs Le but de ce projet est d'écrire un programme permettant de compresser des
Plus en détailDE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51
DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51 PLAN DU COURS Introduction au langage C Notions de compilation Variables, types, constantes, tableaux, opérateurs Entrées sorties de base Structures de
Plus en détailIV- Comment fonctionne un ordinateur?
1 IV- Comment fonctionne un ordinateur? L ordinateur est une alliance du hardware (le matériel) et du software (les logiciels). Jusqu à présent, nous avons surtout vu l aspect «matériel», avec les interactions
Plus en détailIFT2245 - Systèmes d exploitation - TP n 1-20%
IFT2245 - Systèmes d exploitation - TP n 1-20% DIRO - Université de Montréal Nicolas Rous et Dorian Gomez Disponible : 14/02/2013 - Remise : 28/03/2013 au début de la démo LISEZ TOUT LE DOCUMENT AVANT
Plus en détailUniversité de La Rochelle. Réseaux TD n 6
Réseaux TD n 6 Rappels : Théorème de Nyquist (ligne non bruitée) : Dmax = 2H log 2 V Théorème de Shannon (ligne bruitée) : C = H log 2 (1+ S/B) Relation entre débit binaire et rapidité de modulation :
Plus en détail2. MAQUETTAGE DES SOLUTIONS CONSTRUCTIVES. 2.2 Architecture fonctionnelle d un système communicant. http://robert.cireddu.free.
2. MAQUETTAGE DES SOLUTIONS CONSTRUCTIVES 2.2 Architecture fonctionnelle d un système communicant Page:1/11 http://robert.cireddu.free.fr/sin LES DÉFENSES Objectifs du COURS : Ce cours traitera essentiellement
Plus en détailMesure de performances. [Architecture des ordinateurs, Hennessy & Patterson, 1996]
Mesure de performances [Architecture des ordinateurs, Hennessy & Patterson, 1996] Croissance des performances des microprocesseurs Avant le milieu des années 80, le gain dépendait de la technologie. Après,
Plus en détailProgrammation système I Les entrées/sorties
Programmation système I Les entrées/sorties DUT 1 re année Université de Marne La vallée Les entrées-sorties : E/O Entrées/Sorties : Opérations d échanges d informations dans un système informatique. Les
Plus en détailVirtualisation logicielle De la machine réelle à la machine virtuelle abstraite
Virtualisation logicielle De la machine réelle à la machine virtuelle abstraite Bertil FOLLIOT et Gaël THOMAS Cette version est une préversion de l article accepté par «Technique de l ingénieur» (Hermes).
Plus en détailIntroduction aux Systèmes et aux Réseaux, Master 2 CCI
aux Systèmes et aux Réseaux, Master 2 CCI Cours 1 : Introduction et contexte Unix/Linux Laure Gonnord http://laure.gonnord.org/pro/teaching/ Laure.Gonnord@univ-lyon1.fr Master CCI - Université Lyon 1 -
Plus en détailLES FONCTIONS DE SURVEILLANCE DES FICHIERS
SYSLOG and APPLICATION LOGS Knowledge Module for PATROL - Data Sheet Version 1.5 Développé par http://www.axivia.com/ PRESENTATION DU PRODUIT SYSLOG and APPLICATION LOGS Knowledge Module for PATROL est
Plus en détailMétriques de performance pour les algorithmes et programmes parallèles
Métriques de performance pour les algorithmes et programmes parallèles 11 18 nov. 2002 Cette section est basée tout d abord sur la référence suivante (manuel suggéré mais non obligatoire) : R. Miller and
Plus en détailIntroduction au temps réel
Introduction au temps réel Laurent.Pautet@enst.fr Version 2.0 Définition d un système temps réel Un système temps réel se compose d'un ou plusieurs sous-systèmes devant répondre en un temps fini et spécifié
Plus en détailMODULE I1. Plan. Introduction. Introduction. Historique. Historique avant 1969. R&T 1ère année. Sylvain MERCHEZ
MODULE I1 Plan Chapitre 1 Qu'est ce qu'un S.E? Introduction Historique Présentation d'un S.E Les principaux S.E R&T 1ère année Votre environnement Sylvain MERCHEZ Introduction Introduction Rôles et fonctions
Plus en détailOn appelle variable condition une var qui peut être testée et
Un concept plus général: g Variables condition On appelle variable condition une var qui peut être testée et endort le thread qui la teste si la condition est fausse le réveille quand la condition devient
Plus en détailCahier des charges. driver WIFI pour chipset Ralink RT2571W. sur hardware ARM7
Cahier des charges driver WIFI pour chipset Ralink RT2571W sur hardware ARM7 RevA 13/03/2006 Création du document Sylvain Huet RevB 16/03/2006 Fusion des fonctions ARP et IP. SH Modification des milestones
Plus en détailSupport de cours système d exploitation
Support de cours système d exploitation J. Gispert, J. Guizol, J.L. Massat Département d informatique Faculté de Luminy 163, Avenue de Luminy, Case 901, 13288 Marseille, cedex 9 23 février 2012 Chapitre
Plus en détailINTRODUCTION À LA PROGRAMMATION CONCURRENTE
INTRODUCTION À LA PROGRAMMATION CONCURRENTE POLYCOPIÉ DU COURS PCO1 Prof. Claude Evéquoz Prof. Yann Thoma HEIG-VD 2009 Table des matières Table des matières 2 1 Introduction à la programmation concurrente
Plus en détailModélisation des interfaces matériel/logiciel
Modélisation des interfaces matériel/logiciel Présenté par Frédéric Pétrot Patrice Gerin Alexandre Chureau Hao Shen Aimen Bouchhima Ahmed Jerraya 1/28 TIMA Laboratory SLS Group 46 Avenue Félix VIALLET
Plus en détailSTS SE. FreeRTOS. Programmation réseau WIFI. Programmation réseau. Socket Tcp. FlyPort smart Wi-Fi 802.11 module
François SCHNEIDER Lycée Victor-Hugo BESANÇON. STS SE FreeRTOS Programmation réseau WIFI Programmation réseau Socket Tcp FlyPort smart Wi-Fi 802.11 module Prérequis : langage C, connaissance réseau : Ip,
Plus en détailConventions d écriture et outils de mise au point
Logiciel de base Première année par alternance Responsable : Christophe Rippert Christophe.Rippert@Grenoble-INP.fr Introduction Conventions d écriture et outils de mise au point On va utiliser dans cette
Plus en détail4. Outils pour la synchronisation F. Boyer, Laboratoire Sardes Fabienne.Boyer@imag.fr
4. Outils pour la synchronisation F. Boyer, Laboratoire Sardes Fabienne.Boyer@imag.fr Le problème Insuffisance des solutions de base (verrous) Les solutions de plus haut niveau Les Sémaphores Les Moniteurs
Plus en détailTests de performance du matériel
3 Tests de performance du matériel Après toute la théorie du dernier chapitre, vous vous demandez certainement quelles sont les performances réelles de votre propre système. En fait, il y a plusieurs raisons
Plus en détailContrôleur de communications réseau. Guide de configuration rapide DN1657-0606
K T - N C C Contrôleur de communications réseau Guide de configuration rapide DN1657-0606 Objectif de ce document Ce Guide de configuration rapide s adresse aux installateurs qui sont déjà familiers avec
Plus en détailCours de Programmation Impérative: Zones de mémoires et pointeurs
Cours de Programmation Impérative: Zones de mémoires et pointeurs Julien David A101 - david@lipn.univ-paris13.fr Julien David (A101 - david@lipn.univ-paris13.fr) 1 / 1 Z`o n`e s `d`e m`é m`o i r`e Julien
Plus en détailCours Programmation Système
Cours Programmation Système Filière SMI Semestre S6 El Mostafa DAOUDI Département de Mathématiques et d Informatique, Faculté des Sciences Université Mohammed Premier Oujda m.daoudi@fso.ump.ma Février
Plus en détailIntroduction à la programmation orientée objet, illustrée par le langage C++ Patrick Cégielski cegielski@u-pec.fr
Introduction à la programmation orientée objet, illustrée par le langage C++ Patrick Cégielski cegielski@u-pec.fr Mars 2002 Pour Irène et Marie Legal Notice Copyright c 2002 Patrick Cégielski Université
Plus en détailgestion des processus La gestion des processus
1 La Pseudo parallélisme 2 Plusieurs programmes en mémoire Le processeur exécute les instructions tantôt pour l'un tantôt pour l'autre P1 P2 programme de supervision Vu de l'utilisateur => programmes en
Plus en détailTemps Réel. Jérôme Pouiller <j.pouiller@sysmic.org> Septembre 2011
Temps Réel Jérôme Pouiller Septembre 2011 Ordonnancement avec contraintes de précédance Problèmatique des accès concurents Problème liés aux partage de ressources Solutions utres
Plus en détailConcept de machine virtuelle
Concept de machine virtuelle Chap. 5: Machine virtuelle Alain Sandoz Semestre été 2007 1 Introduction: Java Virtual Machine Machine Virtuelle Java: qu est-ce que c est? c est la spécification d une machine
Plus en détailMachines Virtuelles. et bazard autour. Rémi Forax
Machines Virtuelles et bazard autour Rémi Forax Avant propos Quelle est la complexité du code ci-dessous? Avec un processeur à 1Ghz, combien de temps le calcul prendra t'il? public static void main(string[]
Plus en détailEPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE
EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE QCM Remarque : - A une question correspond au moins 1 réponse juste - Cocher la ou les bonnes réponses Barème : - Une bonne réponse = +1 - Pas de réponse = 0
Plus en détailLOG4430 : Architecture et conception avancée
LOG4430 : Architecture et conception avancée Abdou Maiga Patrons pour la conception d applications distribuées Département de génie informatique et de génie logiciel École Polytechnique de Montréal Guéhéneuc,
Plus en détailStructure d un programme
Architecture des ordinateurs Cours 6 Structure d un programme 3 décembre 2012 Archi 1/30 Programme en Assembleur Archi 2/30 Sections de données programme en assembleur = fichier texte (extension.asm) organisé
Plus en détailTHEME 1 : L ORDINATEUR ET SON ENVIRONNEMENT. Objectifs
Architecture Matérielle des Systèmes Informatiques. S1 BTS Informatique de Gestion 1 ère année THEME 1 : L ORDINATEUR ET SON ENVIRONNEMENT Dossier 1 L environnement informatique. Objectifs Enumérer et
Plus en détailApplications Embarquées Critiques
Applications Embarquées Critiques Jean-Marc Pierson pierson@irit.fr Cours DL Jean-Marc Pierson Applications Embarquées Critiques (1/50) Applications Embarquées Critiques: Plan Caractéristiques générales,
Plus en détailServices Réseaux - Couche Application. TODARO Cédric
Services Réseaux - Couche Application TODARO Cédric 1 TABLE DES MATIÈRES Table des matières 1 Protocoles de gestion de réseaux 3 1.1 DHCP (port 67/68)....................................... 3 1.2 DNS (port
Plus en détailInstitut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique
Institut Supérieure Aux Etudes Technologiques De Nabeul Département Informatique Support de Programmation Java Préparé par Mlle Imene Sghaier 2006-2007 Chapitre 1 Introduction au langage de programmation
Plus en détail6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr
6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr Interface d un SGF Implémentation d un SGF Gestion de la correspondance entre la structure logique et la structure
Plus en détailOrdonnancement temps réel
Ordonnancement temps réel Laurent.Pautet@enst.fr Version 1.5 Problématique de l ordonnancement temps réel En fonctionnement normal, respecter les contraintes temporelles spécifiées par toutes les tâches
Plus en détailParallélisme et Répartition
Parallélisme et Répartition Master Info Françoise Baude Université de Nice Sophia-Antipolis UFR Sciences Département Informatique baude@unice.fr web du cours : deptinfo.unice.fr/~baude Septembre 2009 Chapitre
Plus en détailConception des systèmes répartis
Conception des systèmes répartis Principes et concepts Gérard Padiou Département Informatique et Mathématiques appliquées ENSEEIHT Octobre 2012 Gérard Padiou Conception des systèmes répartis 1 / 37 plan
Plus en détailNicolas Hanteville. for(e=n;s<i;c++){attitude();} Sur environnement Microsoft Windows
for(e=n;s
Plus en détailBases de programmation. Cours 5. Structurer les données
Bases de programmation. Cours 5. Structurer les données Pierre Boudes 1 er décembre 2014 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License. Types char et
Plus en détailINITIATION AU LANGAGE C SUR PIC DE MICROSHIP
COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par
Plus en détailProjet Active Object
Projet Active Object TAO Livrable de conception et validation Romain GAIDIER Enseignant : M. Noël PLOUZEAU, ISTIC / IRISA Pierre-François LEFRANC Master 2 Informatique parcours MIAGE Méthodes Informatiques
Plus en détailAnalyse de sécurité de logiciels système par typage statique
Contexte Modélisation Expérimentation Conclusion Analyse de sécurité de logiciels système par typage statique Application au noyau Linux Étienne Millon UPMC/LIP6 Airbus Group Innovations Sous la direction
Plus en détail<Insert Picture Here> Solaris pour la base de donnés Oracle
Solaris pour la base de donnés Oracle Alain Chéreau Oracle Solution Center Agenda Compilateurs Mémoire pour la SGA Parallélisme RAC Flash Cache Compilateurs
Plus en détailContributions à l expérimentation sur les systèmes distribués de grande taille
Contributions à l expérimentation sur les systèmes distribués de grande taille Lucas Nussbaum Soutenance de thèse 4 décembre 2008 Lucas Nussbaum Expérimentation sur les systèmes distribués 1 / 49 Contexte
Plus en détailMessagerie asynchrone et Services Web
Article Messagerie asynchrone et Services Web 1 / 10 Messagerie asynchrone et Services Web SOAP, WSDL SONT DES STANDARDS EMERGEANT DES SERVICES WEB, LES IMPLEMENTATIONS DE CEUX-CI SONT ENCORE EN COURS
Plus en détailOrdonnancement temps réel
Ordonnancement temps réel Ordonnancement centralisé par Francis COTTET Professeur d université (ENSMA, Poitiers Futuroscope) Ingénieur de l Institut national polytechnique de Grenoble Docteur ès sciences
Plus en détailSystèmes d exploitation
Systèmes d exploitation Virtualisation, Sécurité et Gestion des périphériques Gérard Padiou Département Informatique et Mathématiques appliquées ENSEEIHT Novembre 2009 Gérard Padiou Systèmes d exploitation
Plus en détailWebSphere MQ & Haute Disponibilité
L objectif de cet article est d identifier les problèmes pouvant se poser lors de la mise en place d un système de secours dans une configuration WebSphere MQ, et de proposer des pistes pour régler ces
Plus en détailSystème de Gestion de Fichiers
Chapitre 2 Système de Gestion de Fichiers Le système de gestion de fichiers est un outil de manipulation des fichiers et de la structure d arborescence des fichiers sur disque et a aussi le rôle sous UNIX
Plus en détailENSP Strasbourg (Edition 2009-2010) Les Systèmes Temps Réels - Ch. DOIGNON. Chapitre 3. Mise en œuvre : signaux, gestion du temps et multi-activités
Chapitre 3 Mise en œuvre : signaux, gestion du temps et multi-activités 77 GENERALITES SUR LES SIGNAUX Un signal est une information de contrôle (requête) transmise à un processus par un autre processus
Plus en détailLes processus légers : threads. Système L3, 2014-2015 1/31
Les processus légers : threads Système L3, 2014-2015 1/31 Les threads Les threads sont des processus légers exécutés à l intérieur d un processus L exécution des threads est concurrente Il existe toujours
Plus en détailArchitecture distribuée
Architecture distribuée Conception et développement d algorithmes distribués pour le moteur Baboukweb Jean-Christophe DALLEAU Département de Mathématiques et Informatique Université de La Réunion 26 juin
Plus en détailLes structures de données. Rajae El Ouazzani
Les structures de données Rajae El Ouazzani Les arbres 2 1- Définition de l arborescence Une arborescence est une collection de nœuds reliés entre eux par des arcs. La collection peut être vide, cad l
Plus en détailLa technologie Java Card TM
Présentation interne au CESTI La technologie Java Card TM sauveron@labri.u-bordeaux.fr http://dept-info.labri.u-bordeaux.fr/~sauveron 8 novembre 2002 Plan Qu est ce que Java Card? Historique Les avantages
Plus en détailORDONNANCEMENT CONJOINT DE TÂCHES ET DE MESSAGES DANS LES RÉSEAUX TEMPS RÉELS 4. QUELQUES EXEMPLES DU DYNAMISME ACTUEL DU TEMPS RÉEL
i LE TEMPS RÉEL 1. PRÉSENTATION DU TEMPS RÉEL 1.1. APPLICATIONS TEMPS RÉEL 1.2. CONTRAINTES DE TEMPS RÉEL 2. STRUCTURES D'ACCUEIL POUR LE TEMPS RÉEL 2.1. EXÉCUTIFS TEMPS RÉEL 2.2. RÉSEAUX LOCAUX TEMPS
Plus en détailGestion de mémoire secondaire F. Boyer, Laboratoire Sardes Fabienne.Boyer@imag.fr
Gestion de mémoire secondaire F. Boyer, Laboratoire Sardes Fabienne.Boyer@imag.fr 1- Structure d un disque 2- Ordonnancement des requêtes 3- Gestion du disque - formatage - bloc d amorçage - récupération
Plus en détailRuntime. Gestion de la réactivité des communications réseau. François Trahay Runtime, LaBRI sous la direction d'alexandre Denis Université Bordeaux I
Runtime Gestion de la réactivité des communications réseau François Trahay Runtime, LaBRI sous la direction d'alexandre Denis Université Bordeaux I 1 Le calcul hautes performances La tendance actuelle
Plus en détailMEAD : temps réel et tolérance aux pannes pour CORBA
MEAD : un intergiciel temps-réel et tolérant aux pannes pour CORBA Master 2 Informatique Recherche Université de Marne-la-Vallée Vendredi 3 mars 2006 Plan 1 Introduction 2 Solutions existantes 3 Concilier
Plus en détail