REALISATION d'un. ORDONNANCEUR à ECHEANCES

Dimension: px
Commencer à balayer dès la page:

Download "REALISATION d'un. ORDONNANCEUR à ECHEANCES"

Transcription

1 REALISATION d'un ORDONNANCEUR à ECHEANCES

2 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 III.1- CHOIX RETENUS... 6 III.2- NOUVEAU DESCRIPTEUR DE TÂCHES... 7 III.3- PRIMITIVES CRÉÉES OU MODIFIÉES... 8 III.3.1- PRIMITIVE CRÉER_TÂCHE... 8 III.3.2- PRIMITIVE «FIN DE L OCCURRENCE D UNE TÂCHE PÉRIODIQUE»... 8 III.3.3- PROGRAMME HORLOGE... 9 III.3.4- PRIMITIVE "DÉTRUIRE_TÂCHE"... 9 III.3.5- AUTRES PRIMITIVES... 9 III.4.ALGORITHMES IV- PROGRAMME DE DÉMONSTRATION V- CONCLUSION... 15

3 I- Présentation Nous nous proposons d implémenter un ordonnanceur à échéances afin d étudier la faisabilité, la complexité et les performances d un tel système. Notre tâche est simplifiée du fait que nous avons précédemment développé un noyau préemptif avec un algorithme d ordonnancement classique à priorités. Ce noyau s exécute sur micro-ordinateur compatible PC et offre tous les services classiques de base d un exécutif temps réel, de nombreux modules sont réutilisables sans modifications notamment tout ce qui concerne les I/O, les boîtes aux lettres, les sémaphores et les mécanismes à mettre en oeuvre lors des commutations de contexte. On notera que ce noyau présente déjà une originalité par rapport aux OS du marché : la majorité des requêtes est possible pour des tâches immédiates, c est à dire des tâches déclenchées par interruptions matérielles et dont le fonctionnement est totalement différent de celui des tâches applicatives. Des limitations peuvent toutefois survenir du fait que ce noyau a été développé en assembleur 16 bits, ce qui ne facilite pas la programmation d algorithmes compliqués ni l utilisation de variables adaptées (par exemple, la taille des timers). Les principales révisions à faire concernent le gestionnaire d interruption de l horloge système car c est là que s effectue principalement le travail de l ordonnanceur ainsi que la mise à jour de toutes les variables temporelles. De même, le bloc de contrôle d une tâche initialisé lors de la création d une tâche comprend de nouveaux paramètres, notamment temporels, comme délai critique, période et date de déclenchement. Le traitement des tâches périodiques est également à reconsidérer. Avec l ordonnanceur original, les tâches sont construites comme des boucles infinies mais ici, on doit considérer qu une tâche périodique ayant terminé son travail avant le début de sa période suivante doit être mise en attente périodique. Nous nous proposons donc d'intégrer dans un premier temps les fonctions de base d'un ordonnanceur à échéances, c'est à dire sans fonction de garantie mais avec un mécanisme permettant d'effectuer un traitement d'exception si une tâche vient à commettre une faute temporelle.

4 II. Description du noyau originel II.1- Architecture Le noyau originel est un exécutif multitâche fonctionnant sur compatible PC dans l'environnement MS-DOS. L'ordonnancement s'effectue selon la politique des priorités empiriques fixées par le programmeur aux tâches applicatives en cours de conception. Sont disponibles 256 niveaux de priorité et on peut modifier la priorité d'une tâche en cours d'exécution. Une application utilisant ce noyau comprend des tâches applicatives qui font appel aux services du noyau par des primitives ou appels-système au moyen d' un mécanisme d'interruption logicielle, le noyau lui-même et des tâches matérielles, toujours prioritaires et déclenchées par interruptions matérielles. Chacun de ces éléments ayant été compilé, les fichiers.obj résultants sont liés en un seul programme exécutable. Les tâches systèmes matérielles implémentées concernent les gestionnaire d'interruption horloge et clavier. Ces tâches sont souvent qualifiées d'isr pour Interrupt Service Request. Un mécanisme d'imbrication permet de chaîner ces tâches matérielles en cas d'appels d'interruption multiples, le réordonnancement du système n'étant effectué qu'après la terminaison des appels d' ISR. Ces tâches matérielles ont la possibilité d'accéder à tous les services du noyau, sauf ceux qui les bloqueraient elles-mêmes. Elles accèdent à ces services par le même mécanisme que les tâches applicatives. Deux appels spéciaux signalent au noyau l'entrée et la sortie d'un programme d' ISR. Un contrôle strict de la validité des paramètres et de la cohérence (au niveau des états) est intégré au noyau. Si une erreur ou une incohérence est détectée par le noyau, le service n'est pas effectué et le noyau renvoie à la tâche appelante un code signalant le type de l'erreur. Dans le cas de paramètres corrects, on renvoie la valeur Code_OK. II.2 - Services Outre les services de base comme Créer_Une_Tâche, Mettre_Une_Tâche_En_Attente,etc.., le noyau offre des mécanismes de communication entre tâches ainsi qu'entre tâches et extérieur.

5 Les structures implémentées pour aider à la communication et au partage de ressources entre les tâches sont des Boîtes aux Lettres, des Sémaphores et des Evénements. Les Boîtes aux Lettres permettent aux tâches de déposer et de recevoir des messages. La réception d'un message peut être bloquante ou non bloquante si la Boîte aux Lettres est vide. Dans le cas d'un appel bloquant, les descripteurs des tâches mises en attente sont rangées dans une file FIFO. Les Sémaphores sont des sémaphores classiques à compte. Les tâches bloquées sont rangées dans une file ordonnée selon les niveaux de priorité et on peut spécifier un délai maximum d'attente au-delà duquel le tâche est obligatoirement réactivée. Les événements sont des mécanismes de communication sous forme d'un groupe de 16 bits. La mise à 1 ou à 0 d'un bit est significative d'un événement et une tâche peut se mettre en attente d'un groupe d'événements de façon partielle (réveil à la réception d'un seul parmi le groupe d'événement) ou totale (réveil à la réception de tous les événements). En ce qui concerne les communications avec l'extérieur, les tâches peuvent se mettre en attente d'un caractère quelconque entré au clavier, une seule tâche peut se mettre en attente d'un caractère spécial. En ce qui concerne l'affichage, les tâches peuvent demander au noyau d'afficher un caractère à l'écran. L'affichage s'effectue directement en mémoire vidéo en mode alphanumérique. On trouvera en annexe les spécifications complètes des différents services. Le fichier Init.inc liste les états d'une tâche et le code des différentes primitives.

6 III. Implémentation de l'ordonnanceur à échéances III.1- Choix retenus Dans un premier temps, nous nous proposons de construire un système minimal avec les appels modifiés "Créer_Tâche", "Détruire_Tâche", le nouveau programme d'horloge et la nouvelle primitive "Fin_Occurrence_Périodique". En ce qui concerne Earliest Deadline lui-même, nous avons choisi d'ordonner les files à priorité selon les délais critiques dynamiques croissants. Ce choix est motivé par plusieurs raisons : 1) La taille des compteurs et registres car, transmettre une date d échéance en paramètre nécessiterait des registres dont nous ne disposons pas. 2) Il est plus facile au programmeur de fixer des délais relatifs à une date de déclenchement plutô0t que de calculer des dates d échéance par rapport à un zéro universel. 3) On élimine le besoin de recalculer les dates d échéance pour les tâches périodiques. 4) On intègre ainsi plus facilement un mécanisme de régularisation, moins couteux qu une fonction de garantie mais tout aussi efficace (bien qu à postériori) et plus facilement modifiable par le programmeur à l aide de procédures d exception comme nous l expliquons ci-dessous. 5) La longueur du programme horloge est nettement plus conséquente, (en lignes de code) mais la plupart des instructions sont des décrémentations, incrémentations très rapides (deux cycles processeur soit pour un processeur à 100 MHZ ). Ce n est que dans le cas d un nombre très important de tâches à traiter ou fautives que l on pourrait avoir un débordement temporel du programme horloge. Comme nous l avons dit précédemment, aucune fonction de garantie n'est implémentée, mais un mécanisme d'exception est mis en place au cas où une tâche commettrait une faute temporelle. Le programmeur peut associer un code d'exception à chaque tâche. Dans le cas où le programmeur n'a demandé aucune procédure d'exception, le noyau détectant une faute temporelle effectue les opérations suivantes : détruire l'occurrence en cours de la tâche si celle-ci est périodique, détruire la tâche si elle est occasionnelle. Le mécanisme d'exception fonctionne sur le même principe que celui lié aux interruptions matérielles.

7 Les tâches sont susceptibles de connaître deux nouvels états : "Non_Déclenchée" et "En_Attente_Périodique". Une file à double entrée peut contenir les descripteurs des tâches non déclenchées et des tâches mises en attente périodique. On peut envisager de transformer la primitive «Changer_Priorité» en «Changer_Délai_Critique», après avoir posé le moment où ce changement sera effectué pour une tâche périodique en cours d exécution, c est à dire soit au cours de la période courante (si cela est possible) soit au cours de la période suivante (ce qui implique une mémorisation de la demande). De même, en ce qui concerne une demande de changement de période. Par ailleurs, on doit envisager de développer des fonctions d aide à la connaissance du déroulement des tâches comme «Lire_Délai_Critique», «Lire_Temps_Ecoulé_Depuis_Début_Exécution»,etc... III.2- Nouveau descripteur de tâches On doit compléter notre descripteur de tâche en y intégrant les éléments suivants :. Délai critique initial : on doit enregistrer la valeur initiale d'un délai critique afin de réinitialiser chaque tâche au débût de chaque occurence périodique.. Délai critique dynamique : cette valeur est décrémentée à chaque appel d'horloge.. Date de déclenchement : si cette valeur est non nulle, la tâche est à déclenchement retardé.. Temps d'exécution initial : bien que n'utilisant pas encore cet élément, nous l'avons intégré à notre descripteur.c est une estimation du programmeur.. Temps d'exécution dynamique : même remarque que précédemment.. Importance : nous n'utilisons pas encore ce critère mais 256 niveaux d'importance sont prévus.. Temps_Ecoulé : ce compteur permet de mesurer le temps écoulé depuis le débût d'exécution d'une tâche.. Période : ce paramètre est nul pour une tâche apériodique.. Segment de code du programme d'exception ou la valeur nulle si aucun programme adapté à la tâche n'est prévu.

8 III.3- Primitives créées ou modifiées III.3.1- Primitive Créer_Tâche Lorsqu on crée une tâche, on doit fournir les paramètres suivants :. Le numéro identificateur de la tâche.. La période de la tâche ou la valeur nulle pour une tâche apériodique.. Le niveau d Importance de la tâche.. La date de déclenchement de la tâche ou la valeur nulle pour une tâche à déclenchement immédiat.. Le délai critique de la tâche.. Le temps d exécution estimé de la tâche (non utilisé).. Le segment de code de la tâche.. Le segment d exception de la tâche ou la valeur nulle pour une tâche sans traitement d exception. Le noyau, à la réception de cette requête doit effectuer les opérations suivantes:. Contrôler la validité des paramètres reçus et retourner à la tâche appelante avec un code d'erreur en cas de paramètre non valide car tout paramètre non valide peut «planter le programme».. Initialiser le Bloc de Contrôle de la tâche.. Si la tâche n est pas à déclenchement immédiat, l insérer dans la file d attente prévue à cet effet et retourner à la tâche appelante.. Si la tâche est à déclenchement immédiat, l insérer dans la file des tâches prêtes.. Tester si la priorité de la nouvelle tâche est supérieure à celle de la tâche en cours d exécution. Si oui, on commute vers la nouvelle tâche sinon on retourne à la tâche appelante avec le code de retour Code_OK. III.3.2- Primitive «Fin de l occurrence d une tâche périodique» Lorsqu une tâche signale qu elle a fini son occurrence, on doit la mettre en attente périodique. Pour ceci, on effectue les opérations suivantes :. On réinitialise le Bloc de Contrôle de la tâche.. On calcule le temps durant lequel la tâche doit rester en attente.. On insère la tâche dans la file d attente prévue à cet effet.

9 . On met la nouvelle tâche prioritaire en exécution ou on commute vers la tâche de fond. Une tâche faisant cet appel ne doit fournir aucun paramètres. Le seul contrôle effectué concerne le type de la tâche : elle doit être périodique. III.3.3- Programme Horloge La requête liée à l'interruption Timer accomplit les fonctions les plus fondamentales pour l'ordonnanceur, soit :. Incrémenter l'horloge temps réel.. Décrémenter les délais critiques dynamiques de toutes les tâches créées, ce qui implique de parcourir toutes les files d attente non vides.. Incrémenter les compteurs du temps écoulé depuis le début d'exécution pour toutes les tâches créées sauf celles non déclenchées ou en attente périodique.. Tester si une tâche risque une faute temporelle.si oui, appeler le programme d'exception s il existe ou effectuer le traitement par défaut.. Décrémenter les compteurs de toutes les tâches mises en attente d'un délai et réactiver celles-ci si nécessaire. Ceci concerne les tâches mises en attente d'un délai, les tâches en attente d'un sémaphore avec temporisateur, les tâches non déclenchées et les tâches en attente périodique. III.3.4- Primitive "Détruire_Tâche" Il suffit ici de réinitialiser les descripteurs et d'ajouter le traitement des tâches en attente périodique et non déclenchées à la routine initiale. III.3.5- Autres primitives On doit modifier dans toutes les autres primitives le test portant sur la commutation de tâches. On compare maintenant des délais critiques sur 16 bits et non des priorités d un octet, ce qui implique de reconsidérer l utilisation des registres. On notera que la commutation entre la tâche en cours d exécution et une tâche réactivée ne s effectue que si le délai critique de la tâche réactivée est strictement inférieure à celui de la tâche en cours.

10 III.4.ALGORITHMES. Algorithme de la primitive "Créer_Tâche" DEBUT.On doit contrôler les paramètres donnés en entrée Controler_ Paramètres SI Paramètres_Incorrects ALORS Code_Retour = Code_D'Erreur_De_La_Première_Erreur_Détectée Retourner_A_La_Tâche_Appelante SINON. On doit initialiser le Bloc de Contrôle de la tâche Initialiser_Bloc_Contrôle. On teste si la tâche est à déclenchement immédiat SI Tâche_A_Déclenchement_Non_Immédiat ALORS. La tâche est à déclenchement non immédiat Délai_Attente = Date_De_Déclenchement - Date_Courante Status = Tâche_Non_Déclenchée Insérer_Le_Bloc_de_Contrôl _De_La _Tâche dans la File_ Attente_Des_Tâches_Non_Déclenchées SINON. On insère le Bloc de Contrôle de la tâche dans la File_Des_Tâches_Prêtes SI Tâche_Exec.Priorité > Tâche.Priorité ALORS (Ceci équivaut à Tâche_Exec.Délai_Critique_Dynamique<Tâche.Délai_Critique_Dynamique) Tâche.Status = Prête Insérer le Bloc_Contrôle_Tâche dans la File_Des_Tâches_Prêtes Code_Retour = Code_OK Retourner_A_La_Tâche_Appelante SINON. On commute vers la nouvelle tâche Insérer le Bloc_Contrôle_Tâche en tête de la File_Des_Tâches_Prêtes Sauvegarder_ Le Contexte_ De_La Tâche_Appelante Tâche_Exec = Tâche.IDF Tâche.Status = En_Exécution Exécuter_La_ Nouvelle_ Tâche FIN

11 . Algorithme de la primitive "Fin_D'Occurrence_Périodique" DEBUT Si Tâche_Non_Périodique ALORS Code_Erreur = Erreur_Status Retourner_A_La_Tâche_Appelante Sinon. On réinitialise le Bloc de Contrôle de la tâche Délai_Critique_Dynamique = Délai_Critique_Initial Temps_Exécution_Dynamique = Temps_Exécution_Maximum_Initial Status = Attente_Périodique Délai_Attente = Période - Temps_Ecoulé_Depuis_Le_Début_Exécution Temps_Ecoulé_Depuis_Le_Début_Exécution = 0.On retire le Bloc de Contrôle de la tâche de la tête de la file des tâches prêtes Tache_Exec = Tache.ptr_next Tache.ptr_next = NULL Sauvegarder_Le_Contexte_De_La_Tâche_Mise_En_Attente.On Insére le Bloc de Contrôle de la tâche dans la file des tâches en Attente Périodique Tâche = Tâche_En_Tête_De_La_File_Des_Tâches_En_Attente_Périodique TANT QUE Tâche # NULL FAIRE Tâche = Tâche.ptr_next FIN TANT QUE Tâche.ptr_next = IDF_De_La_Tâche_A_Insérer Tâche_A_Insérer.ptr_prec = Tâche_IDF.On met la tâche en tête dans la file des tâches prêtes en exécution ou, si la file est vide, on exécute la Tâche de Fond SI Tâche_Exec = NULL ALORS Commuter_Vers_La_Tâche_De_Fond SINON Restituer_Le_Contexte_De_La_Tâche Commuter_Vers_La_Nouvelle_Tâche FIN

12 .Algorithme du programme horloge. Incrémenter l'horloge système HORLOGE = HORLOGE + 1. Mettre à jour les blocs de contrôle de tâches dans la file des tâches prêtes Tâche = Tâche_Exec TANT QUE Tâche # NULL FAIRE Tâche.Délai_Critique_Dynamique = Tâche.Délai_Critique_Dynamique - 1 Tâche.Temps_Exécution_Dynamique = Tâche.Temps_Exécution_Dynamique - 1 Tâche.Temps_Ecoulé = Tâche.Temps_Ecoulé + 1 SI Tâche.Délai_Critique_Dynamique <= 0 ALORS EXECUTER_PROCEDURE_EXCEPTION Tâche =Tâche.Ptr_Next FINTANTQUE. Mettre à jour les blocs de contrôle des tâches suspendues SI Attente # NULL ALORS Test = 01 Num_Tâche = 01 TANT QUE Num_Tâche <= MAX_Tâches FAIRE SI Test AND Attente #0 ALORS Tâche.Délai_Critique_Dynamique = Tâche.Délai_Critique_Dynamique - 1 Tâche.Temps_Exécution_Dynamique = Tâche.Temps_Exécution_Dynamique - 1 Tâche.Temps_Ecoulé = Tâche.Temps_Ecoulé + 1 SI Tâche.Délai_Critique_Dynamique <= 0 ALORS EXECUTER_PROCEDURE_EXCEPTION Test = Test * 2 Num_Tâche = Num_Tâche + 1 FINTANTQUE SINON.Mettre à jour les blocs de contrôle des tâches en attente aux boîtes à lettres File_Boite = 1 TANT QUE File_Boîte <= MAX_BOITES FAIRE Tâche = File_Boite.Tête TANT QUE Tâche # NULL FAIRE Tâche.Délai_Critique_Dynamique = Tâche.Délai_Critique_Dynamique - 1 Tâche.Temps_Exécution_Dynamique = Tâche.Temps_Exécution_Dynamique - 1 Tâche.Temps_Ecoulé = Tâche.Temps_Ecoulé + 1 SI Tâche.Délai_Critique_Dynamique <= 0 ALORS EXECUTER_PROCEDURE_EXCEPTION

13 Tâche = Tâche.Ptr_Next FINTANTQUE File_Boîte = File_Boîte + 1 FINTANTQUE. Contrôler et réveiller les tâches en attente d'un délai SI Attente_Délai # NULL ALORS Test = 01 Num_Tâche = 01 TANT QUE Num_Tâche <= MAX_Tâches FAIRE SI Test AND Attente # NULL ALORS Tâche.Délai_Critique_Dynamique = Tâche.Délai_Critique_Dynamique - 1 Tâche.Temps_Exécution_Dynamique = Tâche.Temps_Exécution_Dynamique -1 Tâche.Temps_Ecoulé = Tâche.Temps_Ecoulé + 1 SI Tâche.Délai_Critique_Dynamique <= 0 ALORS EXECUTER_PROCEDURE_EXCEPTION SINON Tâche.Tempo_Délai = Tâche.Tempo_Délai -1 SI Tâche.Tempo_Délai = 0 ALORS Réveiller_Tâche Test = Test * 2 Num_Tâche = Num_Tâche + 1 FINTANTQUE SINON. On va tester les tâches en attente d'un caractère, d'un caractère spécial ou d'un événement. En ce qui concerne les tâches en attente aux sémaphores, on doit également tester les tâches avec attente temporisée.. On va tester les tâches non déclenchées et en attente périodique afin de les réveiller si nécessaire. Tâche = Tâche_En_Tête_De_La_File_Des_Tâches_En_Attente_Périodique TANT QUE Tâche # NULL FAIRE Tâche.Tempo_Délai = Tâche_Tempo.Délai - 1 SI Tâche_Tempo.Délai = NULL ALORS Insérer_Tâche_Dans_File_Des_Tâches_Prêtes Tâche.Status = Prête Tâche = Tâche.ptr_next FIN TANT QUE. Si des programmes d'exception sont programmés, on lance le premier. FIN

14 IV- Programme de démonstration Le programme de démonstration n utilise pas toutes les primitives de l ordonnanceur mais permet de bien mettre en évidence toutes les caractéristiques du nouveau ordonnanceur, notamment le fait qu il est très difficile de prévoir l ordre exact de déroulement exact des tâches pour le programmeur à moins d utiliser des outils de synchronisation. A noter que la mise au point est assez pénible et laborieuse si on ne dispose pas d outils pour cela, car il est impossible d utiliser un debugger normal. Un outil de simulation est donc indispensable pour une mise au point correct. Dans notre programme de démonstration, on crée quatre tâches. C est la tâche 1, créée par le programme d initialisation qui crée les trois autres tâches. La tâche 1, non périodique, a été créée avec un grand délai critique et nous rappelle qu il faut également prévoir de traiter des tâches non critiques pour un fonctionnement logique et complet d un ordonnanceur. Les trois autres tâches ayant été créées, la tâche 1 se met en attente d un caractère spécial; la réception de ce caractère arrête le système qui retourne au DOS. Les trois autres tâches sont des tâches périodiques qui effectuent à peu près le même traitement, soit afficher leur numéro à l écran, se mettre en attente pour une certaine durée, réafficher leur numéro à l écran puis se mettre en attente périodique. Ces mêmes tâches servent à créer plusieurs exécutables, les paramètres temporels d initialisation seuls différant.

15 V- Conclusion La réalisation de cet ordonnanceur à échéances m a permis de mieux appréhender les difficultés de choix et d implémentation liés à la conception d un tel système. Il m est apparu qu un tel système n était pas utilisable seul et que la programmation effective d applications concrètes et opératives, offrant toutes les qualités de sécurité de fonctionnement indispensables nécessitait des outils complémentaires d aide à la mise au point et à la simulation. A noter qu il n a jamais été question d implanter un outil directement utilisable (surtout en assembleur) mais de vérifier qu une implémentation de certains choix était possible et d évaluer alors les possibilités et limitations inhérentes à ce choix.

Partie 6 : Ordonnancement de processus

Partie 6 : Ordonnancement de processus INF3600+INF2610 Automne 2006 Partie 6 : Ordonnancement de processus Exercice 1 : Considérez un système d exploitation qui ordonnance les processus selon l algorithme du tourniquet. La file des processus

Plus en détail

Informatique 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 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étail

Cours A7 : Temps Réel

Cours 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étail

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

DAns 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étail

QCM systèmes d exploitation (Quarante questions)

QCM systèmes d exploitation (Quarante questions) QCM systèmes d exploitation (Quarante questions) QUIZZ OS N 1 (10 questions avec réponses) Question 1: Aux origines de l informatique, l'interface utilisateur des systèmes d exploitations était composée

Plus en détail

TABLE DES MATIÈRES. Chapitre 1 : Introduction aux Systèmes Informatiques Temps Réel

TABLE DES MATIÈRES. Chapitre 1 : Introduction aux Systèmes Informatiques Temps Réel TABLE DES MATIÈRES Introduction générale Chapitre 1 : Introduction aux Systèmes Informatiques Temps Réel 1. Introduction 7 2. Les systèmes temps réel 7 2.1. Présentation générale 7 2.2. Structure d un

Plus en détail

Ordonnancement temps réel

Ordonnancement 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étail

Le système Windows. Yves Denneulin. Introduction. Introduction. Plan

Le système Windows. Yves Denneulin. Introduction. Introduction. Plan Introduction Le système Windows Yves Denneulin Windows a 25 ans Au début basé sur MS/DOS Multi-tâches coopératifs Pas de réelle protection entre applications Famille 1.0 -> 386 -> 95 -> 98 -> Me Version

Plus en détail

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

Exécutif temps réel Pierre-Yves Duval (cppm) 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

Plus en détail

Cours de Systèmes d Exploitation

Cours 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étail

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

1 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étail

PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES

PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES Leçon 11 PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES Dans cette leçon, nous retrouvons le problème d ordonnancement déjà vu mais en ajoutant la prise en compte de contraintes portant sur les ressources.

Plus en détail

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

INTRODUCTION 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étail

1. Introduction... 2. 2. Création d'une macro autonome... 2. 3. Exécuter la macro pas à pas... 5. 4. Modifier une macro... 5

1. Introduction... 2. 2. Création d'une macro autonome... 2. 3. Exécuter la macro pas à pas... 5. 4. Modifier une macro... 5 1. Introduction... 2 2. Création d'une macro autonome... 2 3. Exécuter la macro pas à pas... 5 4. Modifier une macro... 5 5. Création d'une macro associée à un formulaire... 6 6. Exécuter des actions en

Plus en détail

CARPE. Documentation Informatique S E T R A. Version 2.00. Août 2013. CARPE (Documentation Informatique) 1

CARPE. Documentation Informatique S E T R A. Version 2.00. Août 2013. CARPE (Documentation Informatique) 1 CARPE (Documentation Informatique) 1 CARPE Version 2.00 Août 2013 Documentation Informatique S E T R A Programme CARPE - Manuel informatique de l'utilisateur CARPE (Documentation Informatique) 2 Table

Plus en détail

Partie 7 : Gestion de la mémoire

Partie 7 : Gestion de la mémoire INF3600+INF2610 Automne 2006 Partie 7 : Gestion de la mémoire Exercice 1 : Considérez un système disposant de 16 MO de mémoire physique réservée aux processus utilisateur. La mémoire est composée de cases

Plus en détail

processus fonction main() l'image binaire contexte d'exécution un contexte mémoire. en même temps

processus fonction main() l'image binaire contexte d'exécution un contexte mémoire. en même temps 1 2 Dans une première approche, on peut dire qu'un processus représente une "application" qui tourne en mémoire. Il sera donc chargé en mémoire par le noyau et commencera son exécution; du point de vue

Plus en détail

Programmation temps-réel Cours 5 Environnements d exécution

Programmation temps-réel Cours 5 Environnements d exécution Master 2 pro Programmation temps-réel Cours 5 Environnements d exécution Isabelle PUAUT / Rémi COZOT Université de Rennes I 1 Environnements d exécution Objectif d un système multitâche Faire coexister

Plus en détail

Ordinateurs, Structure et Applications

Ordinateurs, Structure et Applications Ordinateurs, Structure et Applications Cours 13, Le DOS Etienne Tremblay Université Laval, Hiver 2011 Cours 13, p.1 Le DOS DOS signifie Disk Operating System Le DOS est un système d exploitation. Il existe

Plus en détail

Guide d'installation et de démarrage du Driver X-WAY sur TCP/IP

Guide d'installation et de démarrage du Driver X-WAY sur TCP/IP Guide d'installation et de démarrage du Driver X-WAY sur TCP/IP Sommaire Chapitre Page 1 Mise en oeuvre 1/1 1.1 Généralités 1/1 1.1-1 Architecture documentaire 1/1 1.1-2 Compatibilités 1/1 1.2 Installation

Plus en détail

Systemes d'exploitation des ordinateurs

Systemes d'exploitation des ordinateurs ! " #$ % $ &' ( $ plan_ch6_m1 Systemes d'exploitation des ordinateurs Conception de Systèmes de Gestion de la Mémoire Centrale Objectifs 1. Conception de systèmes paginés 2. Conception des systèmes segmentés

Plus en détail

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

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étail

CH.3 SYSTÈMES D'EXPLOITATION

CH.3 SYSTÈMES D'EXPLOITATION CH.3 SYSTÈMES D'EXPLOITATION 3.1 Un historique 3.2 Une vue générale 3.3 Les principaux aspects Info S4 ch3 1 3.1 Un historique Quatre générations. Préhistoire 1944 1950 ENIAC (1944) militaire : 20000 tubes,

Plus en détail

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

Analyse du temps de réponse des systèmes temps réel Analyse du temps de réponse des systèmes temps réel Pascal Richard Laboratoire d Informatique Scientifique et Industrielle, ENSMA BP 40198 Téléport 2 F-86960 Futuroscope pascal.richard@ensma.fr RÉSUMÉ.

Plus en détail

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

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 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étail

NETWORK & SOFTWARE ENGINEERING MANUEL D UTILISATEUR. Logiciel TIJARA. NETWORK AND SOFTWARE ENGINEERING Manuel d'utilisateur "TIJARA" 1

NETWORK & SOFTWARE ENGINEERING MANUEL D UTILISATEUR. Logiciel TIJARA. NETWORK AND SOFTWARE ENGINEERING Manuel d'utilisateur TIJARA 1 NETWORK & SOFTWARE ENGINEERING MANUEL D UTILISATEUR Logiciel TIJARA Manuel d'utilisateur "TIJARA" 1 SOMMAIRE Introduction Première partie Chapitre 1 : Installation et démarrage Chapitre 2 : Architecture

Plus en détail

Architecture des ordinateurs TP 3

Architecture des ordinateurs TP 3 Architecture des ordinateurs ESIPE - IR1 TP 3 Objectif de cette séance L objectif de cette séance est d apprendre à utiliser la pile et à écrire des fonctions en assembleur En particulier, nous verrons

Plus en détail

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

Temps 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étail

IV- Comment fonctionne un ordinateur?

IV- 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étail

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

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 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 Introduction Plusieurs dizaines de processus doivent se partager

Plus en détail

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

Mé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étail

TP1 Microsoft Access : base de donne es et tables V 1.2

TP1 Microsoft Access : base de donne es et tables V 1.2 TP1 Microsoft Access : base de donne es et tables V 1.2 Il est demandé de suivre pas à pas les indications de ce document. Les tâches bien spécifiques à réaliser sont écrites de cette manière : 1.x faire

Plus en détail

Introduction aux Systèmes et aux Réseaux

Introduction 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étail

Interface Homme Machine (IHM) Gérer un afficheur et un clavier

Interface Homme Machine (IHM) Gérer un afficheur et un clavier DUT informatique, TP info embarquée n 2, année 2015 P. Kauffmann MODULE INFORMATIQUE EMBARQUEE Interface Homme Machine (IHM) Gérer un afficheur et un clavier 1. Présentation Tous les systèmes informatiques

Plus en détail

Synchronisation par. Rappels. Plan. Conditions et moniteurs (1/7) Inf 431 Cours 11. jeanjacqueslevy.net

Synchronisation par. Rappels. Plan. Conditions et moniteurs (1/7) Inf 431 Cours 11. jeanjacqueslevy.net Rappels Inf 431 Cours 11 un processus t (Thread) est un programme qui s exécute Synchronisation par mémoire partagée tstart lance l exécution concurrente de la méthode trun de t tinterrupt signale qu on

Plus en détail

PLAN. Synchronisation des Processus: Exclusion Mutuelle. Problème de synchronisation: Exemple. Spécification du Problème

PLAN. Synchronisation des Processus: Exclusion Mutuelle. Problème de synchronisation: Exemple. Spécification du Problème PLAN Synchronisation des Processus: Exclusion Mutuelle N.Hameurlain http://www.univ-pau.fr/~hameur Spécification du problème Section Critique () Exclusion Mutuelle Principe Propriétés Réalisation d exclusion

Plus en détail

GPA770 Microélectronique appliquée Exercices série A

GPA770 Microélectronique appliquée Exercices série A GPA770 Microélectronique appliquée Exercices série A 1. Effectuez les calculs suivants sur des nombres binaires en complément à avec une représentation de 8 bits. Est-ce qu il y a débordement en complément

Plus en détail

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

MODULE 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étail

VLAN Trunking Protocol. F. Nolot 2009 1

VLAN Trunking Protocol. F. Nolot 2009 1 VLAN Trunking Protocol F. Nolot 2009 1 VLAN Trunking Protocol Propagation des VLAN F. Nolot 2009 2 Administration des VLAN? Pour ajouter un VLAN sur un réseau L'administrateur doit l'ajouter sur chaque

Plus en détail

Ordinateurs, Structure et Applications

Ordinateurs, Structure et Applications Ordinateurs, Structure et Applications Cours 10, Les interruptions Etienne Tremblay Université Laval, Hiver 2012 Cours 10, p.1 Les interruptions du 8086 Une interruption interrompt l exécution séquentielle

Plus en détail

Systèmes d exploitation. Introduction. (Operating Systems) http://www.sir.blois.univ-tours.fr/ mirian/

Systèmes d exploitation. Introduction. (Operating Systems) http://www.sir.blois.univ-tours.fr/ mirian/ Systèmes d exploitation (Operating Systems) Introduction SITE : http://www.sir.blois.univ-tours.fr/ mirian/ Systèmes d exploitation - Mírian Halfeld-Ferrari p. 1/2 Qu est-ce qu un SE? Ensemble de logiciels

Plus en détail

A B C D. Wireless Mobile Utility (ios) Manuel d utilisation D600, D7100, D5200 0 2 21 D3200, COOLPIX A 0 22 41. Nikon 1 : V2, J3, S1 0 42 59

A B C D. Wireless Mobile Utility (ios) Manuel d utilisation D600, D7100, D5200 0 2 21 D3200, COOLPIX A 0 22 41. Nikon 1 : V2, J3, S1 0 42 59 Wireless Mobile Utility (ios) Manuel d utilisation Installez l'application Wireless Mobile Utility sur votre périphérique ios (iphone, ipad ou ipod) pour télécharger des images depuis un appareil photo

Plus en détail

Développement et intégration sous Linux/RTAI de composants logiciels temps-réel open-source génériques

Développement et intégration sous Linux/RTAI de composants logiciels temps-réel open-source génériques Développement et intégration sous Linux/RTAI de composants logiciels temps-réel open-source génériques Thibault GARCIA, Audrey MARCHAND et Maryline SILLY-CHETTO IRIN (Institut de Recherche en Informatique

Plus en détail

Modules d automatismes simples

Modules d automatismes simples Modules d automatismes simples Solutions pour automatiser Modules d'automatismes Enfin, vraiment simple! Un concentré de solution Pour vos petites applications d'automatismes millenium gère : Temporisations

Plus en détail

Cours Programmation Système

Cours 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étail

ASR1 TD7 : Un microprocesseur RISC 16 bits

ASR1 TD7 : Un microprocesseur RISC 16 bits {Â Ö Ñ º ØÖ Ý,È ØÖ ºÄÓ Ù,Æ ÓÐ ºÎ ÝÖ Ø¹ ÖÚ ÐÐÓÒ} Ò ¹ÐÝÓÒº Ö ØØÔ»»Ô Ö Óº Ò ¹ÐÝÓÒº Ö» Ö Ñ º ØÖ Ý»¼ Ö½» ASR1 TD7 : Un microprocesseur RISC 16 bits 13, 20 et 27 novembre 2006 Présentation générale On choisit

Plus en détail

La programmation des PIC en C. Les fonctions, les interruptions.

La programmation des PIC en C. Les fonctions, les interruptions. La programmation des PIC en C Les fonctions, les interruptions. Réalisation : HOLLARD Hervé. http://electronique-facile.com Date : 26 août 2004 Révision : 1.2 Sommaire Sommaire... 2 Introduction... 3 Structure

Plus en détail

Configuration automatique

Configuration automatique Configuration automatique (/home/terre/d01/adp/bcousin/polys/internet:gestion_reseau/6.dhcp.fm- 29 Septembre 1999 12:07) PLAN Introduction Les principes de DHCP Le protocole DHCP Conclusion Bibliographie

Plus en détail

Instructions assembleur

Instructions assembleur Instructions assembleur 0001011011110110 0001011101101101 10001001 Instruction vue par le programmeur assembleur ou instruction élémentaire cible d'un compilateur Réalise une modification de l'état interne

Plus en détail

Matériel & Logiciels (Hardware & Software)

Matériel & Logiciels (Hardware & Software) CHAPITRE 2 HARDWARE & SOFTWARE P. 1 Chapitre 2 Matériel & Logiciels (Hardware & Software) 2.1 Matériel (Hardware) 2.1.1 Présentation de l'ordinateur Un ordinateur est un ensemble de circuits électronique

Plus en détail

C ellules. Gestion et récupération automatique de mémoire. Principes des lang. de progr. INE 11. Allocation dynamique de mémoire.

C ellules. Gestion et récupération automatique de mémoire. Principes des lang. de progr. INE 11. Allocation dynamique de mémoire. Principes des lang. de progr. INE 11 Michel Mauny ENSTA ParisTech Prénom.Nom@ensta.fr Michel Mauny (ENSTA ParisTech) INE 11 Prénom.Nom@ensta.fr 1 / 37 Gestion et récupération automatique de mémoire lanage

Plus en détail

Introduction. Les performances d une machine sont liées au: 1. nombre d instructions. 2. temps de cycle horloge

Introduction. Les performances d une machine sont liées au: 1. nombre d instructions. 2. temps de cycle horloge Introduction Les performances d une machine sont liées au: 1. nombre d instructions 2. temps de cycle horloge 3. nombre de cycle horloge par instructions. C est: le compilateur et l architecture du jeu

Plus en détail

Conception et microprocesseurs

Conception et microprocesseurs Electronique embarquée Conception et microprocesseurs Richard Grisel Professeur des Universités Université de Rouen Conception et microprocesseurs Architectures et composants: Logiciel; Matériel. Test

Plus en détail

5 Moniteurs. Slide 1. Caractéristique majeure d un programme avec moniteurs = Composé de deux sortes de modules/processus: Slide 2

5 Moniteurs. Slide 1. Caractéristique majeure d un programme avec moniteurs = Composé de deux sortes de modules/processus: Slide 2 5 Moniteurs Motivation = les sémaphores peuvent être utilisés pour résoudre à peu près n importe quel problème d exclusion mutuelle ou synchronisation... mais, les sémaphores possèdent certains désavantages:

Plus en détail

Version française. Serie de serrures SELO SELO-B SELO-BR

Version française. Serie de serrures SELO SELO-B SELO-BR Version française Serie de serrures SELO SELO-B SELO-BR Sicherheitsprodukte GmbH Classe de serrures et champ d application : Les serrures électroniques SELO-B et SELO-BR ont été conçues selon les prescriptions

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. É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étail

Cours de Génie Logiciel

Cours de Génie Logiciel Cours de Génie Logiciel Sciences-U Lyon Diagrammes UML (2) http://www.rzo.free.fr Pierre PARREND 1 Avril 2005 Sommaire Les Diagrammes UML Diagrammes de Collaboration Diagrammes d'etats-transitions Diagrammes

Plus en détail

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

Julien MATHEVET Alexandre BOISSY GSID 4. Rapport RE09. Load Balancing et migration Julien MATHEVET Alexandre BOISSY GSID 4 Rapport Load Balancing et migration Printemps 2001 SOMMAIRE INTRODUCTION... 3 SYNTHESE CONCERNANT LE LOAD BALANCING ET LA MIGRATION... 4 POURQUOI FAIRE DU LOAD BALANCING?...

Plus en détail

AC - Virtualisation. Romain Hinfray

AC - Virtualisation. Romain Hinfray AC - Virtualisation Semestre Automne 2008 Antoine Benkemoun Romain Hinfray Introduction Cadre du projet Choix de Xen Quatre parties Tour d horizon de la virtualisation Pré-requis à la compréhension de

Plus en détail

Projet Active Object

Projet 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étail

Chapitre II : Interfaces Interpréteurs de commandes et interfaces graphiques

Chapitre II : Interfaces Interpréteurs de commandes et interfaces graphiques Chapitre II : Interfaces Interpréteurs de commandes et interfaces graphiques Interfaces Un SE a deux fonctions principales : Gestion des ressources matérielles Présentation d'une machine virtuelle à chaque

Plus en détail

Le gestionnaire des tâches

Le gestionnaire des tâches 43-45 rue CHARLOT 75003 PARIS. Benoît HAMET FRANCE : benoit.hamet@hametbenoit.fr.st Le gestionnaire des tâches......... Le gestionnaire des tâches Sommaire Sommaire...2 Introduction...3 Les onglets et

Plus en détail

Gestion de la mémoire

Gestion de la mémoire Gestion de la mémoire Mémoire physique Généralités Autrefois, la mémoire principale était une ressource coûteuse. Elle devait donc être utilisée de manière optimale et diverses stratégies étaient employées.

Plus en détail

Architecture des Ordinateurs et Systèmes d Exploitation

Architecture des Ordinateurs et Systèmes d Exploitation Architecture des Ordinateurs et Systèmes d Exploitation Cours n 5 Le langage assembleur (2): Pile, Procédures. Les Interruptions 3ème année L assembleur 8086 : la pile = structure de «rangement» de données

Plus en détail

Chapitre 4 : Outils de communication centralisés entre processus

Chapitre 4 : Outils de communication centralisés entre processus Chapitre 1 : Introduction Chapitre 2 : Processus Chapitre 3 : Ordonnancement Chapitre 4 : Outils de communication centralisés entre processus Chapitre 5 : Allocation mémoire Chapitre 6 : Mémoire virtuelle

Plus en détail

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

Temps Réel. Jérôme Pouiller <j.pouiller@sysmic.org> Septembre 2011 Temps Réel Jérôme Pouiller Septembre 2011 Sixième partie VI Architectures des OS temps réels J. Pouiller Temps Réel 172 / 197 18 Problématique des OS RT 19 Systèmes Symétriques

Plus en détail

*EP001146655A1* EP 1 146 655 A1 (19) (11) EP 1 146 655 A1 (12) DEMANDE DE BREVET EUROPEEN. (43) Date de publication: 17.10.2001 Bulletin 2001/42

*EP001146655A1* EP 1 146 655 A1 (19) (11) EP 1 146 655 A1 (12) DEMANDE DE BREVET EUROPEEN. (43) Date de publication: 17.10.2001 Bulletin 2001/42 (19) Europäisches Patentamt European Patent Office Office européen des brevets *EP0011466A1* (11) EP 1 146 6 A1 (12) DEMANDE DE BREVET EUROPEEN (43) Date de publication: 17.10.2001 Bulletin 2001/42 (1)

Plus en détail

03/04/2007. Tâche 1 Tâche 2 Tâche 3. Système Unix. Time sharing

03/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étail

Systèmes d'exploitation

Systèmes d'exploitation Systèmes d'exploitation Rôle d'un système : virtualisation Virtualisation du processeur Virtualisation de la mémoire Virtualisation du disque Virtualisation interface utilisateur Virtualisation du réseau

Plus en détail

III - PROGRAMMATION EN ASSEMBLEUR

III - PROGRAMMATION EN ASSEMBLEUR III - PROGRAMMATION EN ASSEMBLEUR 3.1 Introduction à la programmation en assembleur Pour programmer un ordinateur on utilise généralement des langages dits évolués ou de haut niveau : C, C++, Java, Basic,

Plus en détail

Claude Kaiser Paradigmes de la concurrence SRI_B PASSAGE DE TÉMOIN

Claude Kaiser Paradigmes de la concurrence SRI_B PASSAGE DE TÉMOIN PASSAGE DE TÉMOIN coopération par division du travail entre les processus 4) Rendez-vous à 2, symétrique, avec ou non une écriture ou un envoi de message (avec acquittement) Rendez-vous multiple : m processus

Plus en détail

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

INITIATION 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étail

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

1 Architecture du cœur ARM Cortex M3. Le cœur ARM Cortex M3 sera présenté en classe à partir des éléments suivants : GIF-3002 SMI et Architecture du microprocesseur Ce cours discute de l impact du design du microprocesseur sur le système entier. Il présente d abord l architecture du cœur ARM Cortex M3. Ensuite, le cours

Plus en détail

Atelier C TIA Portal CTIA06 : programmation des automates S7-300 Blocs d organisation

Atelier C TIA Portal CTIA06 : programmation des automates S7-300 Blocs d organisation Atelier C TIA Portal CTIA06 : programmation des automates S7-300 Blocs d organisation CTIA06 Page 1 1. Types de blocs de programme L automate met à disposition différents types de blocs qui contiennent

Plus en détail

Runtime. 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 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étail

STRE. Systèmes temps réel Embarqués. Plan. Bertrand Dupouy. STR Embarqués. STR Embarqués

STRE. Systèmes temps réel Embarqués. Plan. Bertrand Dupouy. STR Embarqués. STR Embarqués STRE Plan Systèmes temps réel Embarqués Bertrand Dupouy 1. Présentation des systèmes temps réel embarqués (STRE) a. rappels sur les systèmes temps réel b. contraintes des systèmes embarqués c. les STRE

Plus en détail

1 - PRESENTATION GENERALE

1 - PRESENTATION GENERALE 1 - PRESENTATION GENERALE 11 - MATERIEL NECESSAIRE Pour être installé le logiciel de télégestion nécessite un ordinateur comportant au minimum : Un ordinateur de type IBM PC 486 ou compatible. Un lecteur

Plus en détail

Algorithme. Table des matières

Algorithme. Table des matières 1 Algorithme Table des matières 1 Codage 2 1.1 Système binaire.............................. 2 1.2 La numérotation de position en base décimale............ 2 1.3 La numérotation de position en base binaire..............

Plus en détail

Première approche. Définition. Définition de l informatique donnée par l Académie Française en 1966 :

Première approche. Définition. Définition de l informatique donnée par l Académie Française en 1966 : Première approche Définition Définition de l informatique donnée par l Académie Française en 1966 : L informatique est la science du traitement rationnel, notamment par machines automatiques, de l information

Plus en détail

ACCESS 2013. Système de Gestion de Bases de Données Relationnelles

ACCESS 2013. Système de Gestion de Bases de Données Relationnelles Access est un logiciel permettant de gérer des données en masse : une liste de clients ou de fournisseurs, un stock de produits, des commandes, des salariés, un club de tennis, une cave à vin, une bibliothèque,

Plus en détail

Module : Informatique Générale 1. Les commandes MS-DOS

Module : Informatique Générale 1. Les commandes MS-DOS 1 Les commandes MS-DOS I. Introduction Le DOS est le système d'exploitation le plus connu, sa version la plus commercialisée est celle de Microsoft, baptisée MS-DOS (Microsoft Disk Operating Système).MS-DOS

Plus en détail

Portage de l architecture sécurisée CryptoPage sur un microprocesseur x86

Portage de l architecture sécurisée CryptoPage sur un microprocesseur x86 Portage de l architecture sécurisée CryptoPage sur un microprocesseur x86 Guillaume Duc Ronan Keryell Département Informatique École Nationale Supérieure des Télécommunications de Bretagne Symposium en

Plus en détail

Ordonnancement temps réel

Ordonnancement 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étail

Manuel management QUESTOR

Manuel management QUESTOR QUESTOR Logiciel de gestion AS 273 Document : KSW3s527.0004 / fr 2010.08 Edition : Août 2010 QUESTOR TABLE DES MATIÉRES 1 Description du produit FR-4 1.1 Application.... FR-4 1.2 Composants du système...

Plus en détail

DataTraveler 410. Manuel d'utilisation de SecureTraveler

DataTraveler 410. Manuel d'utilisation de SecureTraveler Manuel d'utilisation de SecureTraveler SecureTraveler est l'utilitaire de configuration DataTraveler permettant aux utilisateurs en entreprise et aux utilisateurs privés d'établir des zones publiques et

Plus en détail

Windows Internet Name Service (WINS)

Windows Internet Name Service (WINS) Windows Internet Name Service (WINS) WINDOWS INTERNET NAME SERVICE (WINS)...2 1.) Introduction au Service de nom Internet Windows (WINS)...2 1.1) Les Noms NetBIOS...2 1.2) Le processus de résolution WINS...2

Plus en détail

Chapitre 5 : Protocole TCP/IP

Chapitre 5 : Protocole TCP/IP Chapitre 5 : Protocole TCP/IP 1- IP (Internet Protocol) : Il permet de à des réseaux hétérogène de coopérer. Il gère l adressage logique, le routage, la fragmentation et le réassemblage des paquets. Il

Plus en détail

Optimisation de code

Optimisation de code Optimisation de code Brique ASC Samuel Tardieu sam@rfc1149.net École Nationale Supérieure des Télécommunications Samuel Tardieu (ENST) Optimisation de code 1 / 77 But L optimisation cherche à améliorer

Plus en détail

Présentation. Logistique. Introduction

Présentation. Logistique. Introduction Présentation Diapo01 Je m appelle Michel Canneddu. Je développe avec 4D depuis 1987 et j exerce en tant qu indépendant depuis 1990. Avant de commencer, je tiens à remercier mes parrains Jean-Pierre MILLIET,

Plus en détail

Transmission d informations sur le réseau électrique

Transmission d informations sur le réseau électrique Transmission d informations sur le réseau électrique Introduction Remarques Toutes les questions en italique devront être préparées par écrit avant la séance du TP. Les préparations seront ramassées en

Plus en détail

MANUEL UTILISATEUR BALADEUR SANTÉ AUXILIAIRES MÉDICAUX ET SAGES-FEMMES C.D.C 1.40

MANUEL UTILISATEUR BALADEUR SANTÉ AUXILIAIRES MÉDICAUX ET SAGES-FEMMES C.D.C 1.40 MANUEL UTILISATEUR BALADEUR SANTÉ AUXILIAIRES MÉDICAUX ET SAGES-FEMMES C.D.C 1.40 Description des actes en série sur le Baladeur Santé TABLE DES MATIERES 1. Généralités 5 1.1. Fonctionnement général du

Plus en détail

Introduction 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 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étail

TD3 - Facturation avec archivage automatisé

TD3 - Facturation avec archivage automatisé TD3 - Facturation avec archivage automatisé Objectifs Insérer les formules nécessaires aux calculs d une facture. Créer une macro- commande avec l enregistreur de macros et l affecter à un bouton. Utiliser

Plus en détail

La gestion des stocks au quotidien. ALLIADIS Page 1 sur 40

La gestion des stocks au quotidien. ALLIADIS Page 1 sur 40 La gestion des stocks au quotidien ALLIADIS Page 1 sur 40 SOMMAIRE Quelques généralités sur la gestion des stocks ALLIANCE La fiche produit, les données essentielles pour la gestion des stocks? Les données

Plus en détail

DSP architecture et applications

DSP architecture et applications Haute Ecole d Ingénierie et de Gestion du Canton du Vaud DSP architecture et applications Chapitre 3 GÉNÉRATEURS D ADRESSES Création de buffers linéaires et circulaires Gestion des pages mémoires ADSP-29X

Plus en détail

Sommaire. Systèmes d Exploitation... 3. Intégration Sage 100 Sage CRM... 3. Disponibilité Client... 3. Bases de données... 3

Sommaire. Systèmes d Exploitation... 3. Intégration Sage 100 Sage CRM... 3. Disponibilité Client... 3. Bases de données... 3 Communiqué de Lancement Sage CRM v. 6.5 Editions Standard et Avancée Sommaire Systèmes d Exploitation... 3 Intégration Sage 100 Sage CRM... 3 Disponibilité Client... 3 Bases de données... 3 Nouveautés

Plus en détail

GESTION LECTURE/ÉCRITURE

GESTION LECTURE/ÉCRITURE LA GESTION SIMPLIFIÉE HEXACT UNIE À LA TECHNOLOGIE 2 FILS NON POLARISÉS DE FERMAX GESTION LECTURE/ÉCRITURE PLATINE INOX ANTIVANDALE LOGICIEL HEXASOFT web.hexact.fr ORDINATEUR MISE À JOUR À TRAVERS LE BADGE

Plus en détail