D. DELFIEU 12 janvier 2011

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

Download "D. DELFIEU 12 janvier 2011"

Transcription

1 Cours de Systèmes Temps Réel D. DELFIEU 12 janvier 2011 Département Génie Electrique - GE4

2 Systèmes Embarqués Temps Réel Ecole Polytechnique de l Université de Nantes -Dept GE 12 janvier 2011

3 2 / 25

4 Introduction Premier système temps Réel embarqué Apollo Guidance Computer : système de guidage de l alunisseur des missions Apollo. Aujourdhui Transport : Système de contrôle d assiette (avionique) ; Astronautique : système de guidage d une fusée ; Equipement grand public : Téléphone portable, PC, TV, four à micro-ondes ; Multimédia : console de jeux vidéo, PDA, téléphone portable ; Médical : téléopération médicale. 3 / 25

5 Caractérisation d un SETR Caractéristiques d un Système Embarqué Temps réel Sureté de fonctionnement : CEM, robustesse, redondance ; Temps d exécution de tâche déterministe ou borné : temps réel ; Consommation énergétique la plus faible possible ; Encombrement minimal ; Espace mémoire limité : qlqs Mo (lié à la consommation et à l encombrement) 4 / 25

6 Les différents type de Support Carte simple à microprocesseur : 68000, PowerPC, Pentium Pas de problème de consommation, ni d espace ; Applications volumineuses, gourmande en énergie, grande quantité de mémoire ; Commande de radards fixes. Carte à microcontrôleur-dsp : ARM, StrongARM, ST 20, PIC, Coldfire, 68HC12,... ; Téléphone portable ; électroménager. Traitement du signal : DSP (Texas Instrument), carte DSpace Convertisseurs de puissance ; Commande de puissance. 5 / 25

7 SoC et Rack System On CHIP (SoC) : Hard : Un FPGA ou un CPLD. Composant comportant plusieurs millions de portes Bloc IP implantables sur le composant : CPU ; Interfaces CAN ; Bloc IP ; Timers,... Système Rackable : Pas de Problème de consommation et ni d espace ; Tolérance aux pannes, sureté de fonctionnement. 6 / 25

8 Les différents types de support matériel Figure: Processeur, Microcontroleur, DSP, FPGA Figure: Rack 7 / 25

9 Les différents types de Rack Carte PC/104, taille standard : 90,17 x 95,89 mm ; Carte compact PCI ; Carte Europe ; Carte bus VME. 8 / 25

10 Les racks des TPs Figure: Rack 5U Figure: Rack 3U 9 / 25

11 Le système vu en TP Rack 3U et 5U ; Alimentation propre ; Carte bab740 : Microprocesseur de type PPC ; 1 carte d E/S ; bus fond de panier VME ; 10 / 25

12 Le marché de l embarqué 2007 : environ 190 millions de processeurs vendus pour le marché du PC ; 3,85 milliards de micro (essentiellement du 8 bits) pour l embarqué ; 5% du marché des micro pour les PC ; 90 % des micro pour l embarqué utilisent autre chose que Windows. 11 / 25

13 Le choix d un microcontrôleur Table: Les microcontrôleurs Entités Caractéristiques Avantages Contrôle d E/S Configuration d E/S Accés direct Convertisseurs CAN aux actionneurs aux switch signaux numériques Communication Port SPI, UART pas de périph externes I2C, bus CAN Précision commande Timers et peu de code Struture algo riche boucle, tableaux, Expressif, efficace Interruptions 12 / 25

14 Le choix d un DSP Table: Data Signal Processor Entités Caractéristiques Avantages Filtres logiciels MAC gain Hard Interfaces Codecs Ports Séries rapides gain Hard Gros débits DMA Moins d attente Accés données programme Architecture Harvard Exécution rapide 13 / 25

15 Le choix d un Processeur Table: Microprocesseur Besoin Micro/Petit Moyen/Gros Très gros RAM 100ko<x<4Mo 4Mo<x<64Mo Go - To FLASH 100ko<x<4Mo 8Mo<x<16Mo Go - To Proc. Dragon Ball, 68K MIPS Pentium Mcore Hitashi SH PowerPC Coldfire X86 Crusoe ARM Carac. MMU Carte mère PCI,VME,... Appli. PDA, Portable Routeur Comm. tél. Caméra num. Stock. réseaux Serveur central Imprim. réseaux Gros routeur 14 / 25

16 Aperçu global d un SETR FPGA Mémoire Timer UART Capteurs CAN CPU CNA Actionneurs Ports d'e/s In Interface utilisateur PC Hôte Environnement Exterieur 15 / 25

17 Définitions SETR Un SETR est un système bouclé multi-tâches dont le temps de réponse est adéquat avec la dynamique de son environnement. Exécutif temps réel Un exécutif temps réel est un système d exploitation minimal ajusté au hardware auquel il est destiné. Seuls les drivers justes nécessaires sont inclus dans l exécutif. De même, seuls les services systèmes nécessaires sont dans l exécutif. 16 / 25

18 Définitions Caractéristiques d un SETR Ce système multi-tâches est ordonnancé par un exécutif temps réel. Les tâches et l exécutif sont compilées dans le même exécutable appellée : image. Echéances temporelles bornées Un SETR aura un temps de réponse adéquat si la somme du temps d acquisition, de traitement et d application de la commande est inférieure à la période d échantillonage de l information. Pour cela il faut que l exécutif soit déterministe et préemptif. 17 / 25

19 Notion de tâches Une application de contrôle commande est généralement décomposée en tâches. Tâche Une tâche correspond à une fonctionnalité logicielle et matérielle dont la granularité offre une complexité permettant une implémentation rapide. Exemple : Régulation en courant d une MCC On peut décomposer cette application en trois tâches : Une tâche d acquisition de la consigne ; Une tâche d échantillonnage lecture du courant ; Une tâche de calcul et d application du correcteur ; 18 / 25

20 Programmation Synchrone La programmation est dite synchrone car les tâches sont lancées de façon synchrone par rapport à des évènements correspondant généralement à des interruptions. Implémentation Programme principal qui initialise les différents périphériques et le timer puis il ne fait rien ; La tâche d acquisition de consigne : durée 30 µs, appelée toutes les secondes ; La tâche d acquisition du courant : durée : 30 µs, appelée toutes les 200 µs ; La tâche de calcul et d application du correcteur : durée : 100 µs, appelée toutes les 200 µs ; La tâche est associée à un sous-programme d interruption. 19 / 25

21 Déroulement de tâches en Synchrone Lecture Consigne 30!s T Lc = 1 s 30!s Lecture Courant I M 30!s 30!s 30!s 30!s 30!s 30!s 30!s 30!s 30!s 30!s TI M =200!s Calcul Correcteur 100!s 100!s 100!s 100!s 100!s 100!s 100!s 100!s 100!s 100!s T CC =200!s Tâche en traitement Tg=200!s Déroulement de tâches en Programmation Synchrone Figure: Exemple d ordonancement préemptif 20 / 25

22 Programme Synchrone Programmation SYNCHRONE Programme Principal IT Timer IT Externe SPIT Timer IT CAN SPIT IT Externe SPIT CAN / 25

23 exemple Voir le code : programmation synchrone.asm Voir le code : exatmega8simple.c 22 / 25

24 Programmation Synchrone Avantages : La programmation est hyper-efficace car très prôche du hard Structure minimale donc très performante ; Pas de code inutile ; Comportement déterministe ; 23 / 25

25 24 / 25 Programmation Synchrone Inconvénients : Très peu de possibilité de faire évoluer le système : Si on veut rajouter une tâche : on doit avoir une source d interruption timer supplémentaire ; le temps d exécution de la nouvelle tâche 40µs (la somme des temps d exécution de tâches doit être inférieure à 200 µs); Si cette nouvelle tâche se trouve plus prioritaire, on va devoir faire des modifications sur la partie Hardware. Les coûts de développement sont importants : Le soft de ces systèmes nécessite une maîtrise complète de la partie hardware ; Codage = Assembleur augmnetation des coûts de développements et de maintenance. La lisibilité de l Aassembleur (code très lié au hard), le code n est pas portable.

26 Langages Synchrones Langages Synchrones : Esterel, Lustre, Statecharts Ce sont des langages à haut niveau d abstraction dont les instructions de bases manipulent des évènements. Ils sont qualifiés de synchrone car ces évènements jouent le rôle de marqueurs temporels. Ils sous-entendent la présence d une horloge d échantillonnage temporel permettant de les synchroniser. 25 / 25 Programmation Synchrone Une programmation est dite synchrone lorsque qu elle est basé sur l utilisation d interruptions attachés aux évènements externes et que l on travaille : Soit avec un OS mono-tâche ou à commutation de tâches (DOS, WIN 3.1 Win XP) Soit sans os : programme assembleur sur un microprocesseur, microcontrôleur ou DSP.

27 Programmation Asynchrone L application est représentée par un programme principal qui : lance des tâches ; qui attend des comptes rendus d exécution ; Les tâches sont des sous-programmes particuliers détachés du programme principal ; Ces sous-programmes peuvent être implémentés (sous Unix/LINUX) par des processus ou des threads. 26 / 25

28 Programmation Asynchrone Avantages : la programmation est plus détachée du hard Structure souple ; Ajout ou suppression de tâches simples ; Code lisible (C) ; Code détaché du hard : on communique avec le hard via des drivers ; Maintenance aisée ; Code portable ; Suivant les drivers portés dans le noyau on va pouvoir faire des tâches de très haut niveau : Protocole TCP/IP, telnet, serveur http, / 25

29 Programmation Asynchrone Inconvénients : L image intègre un mini système d exploitation (qlqs Mo) en plus de l application ; Un peu moins performant lors des changements de contextes ; Comportement temporel pas forcement déterministe ; Le déterminisme temporel peut être atteint pour un nombre très restreint de tâches de haute priorité. Pour atteindre un même niveau de déterminisme qu en synchrone : il faut un processeur plus puissant donc plus consommateur d énergie électrique. 28 / 25

30 Déroulement de tâches en Asynchrone Lecture Consigne Lecture Courant Calcul Correcteur Tâche en traitement Election d'une nouvelle tâche à éxecuter Figure: Exemple d ordonancement préemptif 29 / 25

31 Les états d une tâche Non planifiée Activer Terminer Continuer Terminer Tâche Prête Bloquée Démarrer Arrêter Suspendre Tâche en traitement Suspendre Les Différents états d'une tâche 30 / 25

32 Les états d un tâche Activer : La tâche entre dans un processus électif : File d attente des tâches Prêtes ; Démarrer : Le tâche en tête de la FA Prête est élue, elle a 100% du CPU ; Arrêter : Le tâche est interrompue, elle a terminée son quantum de temps ; Suspendre : Le tâche a demandé une ressource non encore disponible ou s est endormi elle-même (sleep) ; Continuer : La ressource demandée est maintenant disponible ou le sommeil est terminé, le tâche rentre à nouveau dans la FA Prête. Terminer : Le tâche s arrête définitivement par l appel à exit ou return. Elle peut aussi recevoir un signal de fin émis par une tâche en traitement. 31 / 25

33 SETR et LINUX Pourquoi LINUX LINUX est dérive d UNIX, un OS fiable du marché ; LINUX est libre : le source est disponible sans royalties à r e v e r s e r ; LINUX est foisonnant : de nombreux contributeurs le font évoluer ; Les versions stables de linux sont FIABLES ; LINUX est entouré d une communauté de développeurs fournissant une aide rapide ; LINUX offre une connectivité IP en standard. 32 / 25

34 D ou vient LINUX 33 / 25

35 SETR et LINUX LINUX : sur quel système? Linux est décliné sur un grand nombre d architecture : x86, PowerPC, ARM, MIPS, 68000, Coldfire,... Taille du noyau est modeste 500ko (au minimum) ; différentes distributions sont proposées suivant le domaine : routeur IP, PDA, portable,... Chargement de modules dynamiques : optimisation taille noyau ; Migration aisée de linux à Linux Embarqués. 34 / 25

36 SETR et LINUX Historique 1991 : la première version de Linux est développé par Linus Torvalds ; 1999 : Présentation à Linux World d un système compact PCI sous linux ; 2000 : Embedded Linux Consortium : centralise des solutions Linux embarqués ; Aujourd hui : solutions propriétaires concurrentes sont VxWorks, psos, QNX ; 35 / 25

37 SETR et LINUX Monde Libre : RTLinux, RTAI. Solutions propriétaires : VxWorks, psos, QNX. 36 / 25

38 Processus UNIX Un processus UNIX est une implémentation en langage C de la notion de tâche. Un processus est une entité possédant : Un contexte d exécution : Un ensemble sauvegardé de valeurs des registres du processeur ; une zone mémoire associé au code exécutable ; une zone de mémoire dynamique privé ; une zone pour la pile. Un environnement d exécution : Les fichiers ouverts, sa priorité d exécution, un processus est identifié par un numéro : PID / 25

39 Création d un processus UNIX : fork() La primitive fork() fait partie du paquettage standard stdio.h Duplication quasi-complète du patrimoine du père ; Le fils se distingue par : La valeur retournée par l appel système fork() : 0 pour le fils et le pid du fils chez le pere son PID ; son PPID ; sa zone programme, data et pile ; ses propres descripteurs de fichiers ouverts. 38 / 25

40 fork() fork() père fils PID PPID Desc. Fichiers Zone de pile Zone de data Zone programme Duplication PID PPID Desc. Fichiers Zone de pile Zone de data Zone programme même programme même valeurs des variables (valeurs d'avant le fork) MAIS ces codes coexistent à une adresse différente et les variables appartiennent à des espaces mémoires différents 39 / 25

41 40 / 25 exemple main() { int i,pid,res; PID=fork(); if (!PID) { /* Chez le fils */ for(i=0;i<iteration;i++) printf("je suis le fils, iter num %d \n",i); printf("je suis le fils, j ai fini\n"); exit(i); } else { /* chez le pere */ for(i=0;i<iteration;i++) printf("\t Je suis le pere, iter num %d \n",i) res=wait(&cr); printf("\t fils est termine, res= %d \n",res); } }

42 exemple Voir le code : processus.c 41 / 25

43 Terminaison d un fils Exit, Wait Un processus fils se termine par la primitive exit qui permet de renvoyer un entier au père. Ce père récupère cet entier par l appel à la procédure wait qui est un appel système bloquant. 42 / 25

44 exemple Voir le code : processus.c 43 / 25

45 Les commandes Shell liées aux processus UNIX ps -ac ; a.out & ; kill ; chmod 777 a.out time./a.out : La commande time fournit le temps utilisateur, le temps système, et l elapsed time : CPU time = Temps utilisateur + temps système elapsed time : temps réel de l exécution de la commande user time : temps CPU utilisé par le programme utilisateur sys time : temps utilisé par le système pour gérer l exécution du job 44 / 25

46 Les Threads Posix Posix POSIX définit une norme : IEEE Cette norme porte sur les interfaces de communication des logiciels : les API. API Une API : Application Programming Interface permet de définir la manière dont on peux utilser un logiciel pu composant informatique. C est donc un ensemble de fonctions typées (décrites dans un *.h) qui indique comment on peut interagir avec le composant. 45 / 25

47 Les Threads Posix API Les threads implémentent la norme POSIX. Ceux sont des processus légers car ils ont été créés par un processus père avec qui ils partagent avec lui le même espace mémoire. Ils ont les caractéristiques suivantes : Ils peuvent avoir des variables communes (globales) et des variables locales ; Ils partagent les mêmes fichiers et les mêmes ressources ; Ils ont leur propre pile d exécution ; Ils sont ordonnancés ; 46 / 25

48 exemple Voir le code : API pthread.h 47 / 25

49 Création d un thread int pthread_create(pthread_t *thread, const pthread_attr_t *attr, void *(*start_routine)(void *) void *arg); thread : identifiant, descripteur du thread ; attr : attribut de création ; start routine : fonction constituant le corps du thread ; arg : argument de la fonction. 48 / 25

50 Teminaison et synchronisation d un thread void pthread_exit(void *value_ptr) ; int pthread_join(pthread_t thread, void **value_ptr) ; value ptr : valeur de retour au père. thread : identifiant 49 / 25

51 exemple Voir le code : thread2.c 50 / 25

52 Accès aux variables globales Deux processus qui partagent et modifient la même variable globale ont un comportement non déterministe. Non détermisme... res=pthread_create(&l1, NULL, ligne1, NULL); res=pthread_create(&l2, NULL, ligne2, NULL); } // fin du main void *ligne1(void *arg) { while(1) { globale=globale+1; printf("%i\n",globale);} } 51 / 25 void *ligne2(void *arg) { while(1) { globale=globale+10; printf("\t%i\n",globale);} }

53 La solution : les sémaphores La Solution : Assurer un accès atomique à une variable globale. De plus il faut assurer que l on ne sera pas interrompu entre la modif de la variable et le printf. 1 Eviter une élection par l ordonnanceur dans une région. 2 Eviter toute interruption. 3 Masquer les interruptions en début de région et les démasquer en fin de région 52 / 25

54 Les sémaphores Definition (Semaphore) Un sémaphore est un object permettant à N processus ou thread (tâche) d accéder à une même région de code. En effet on peut avoir un ressource accessible par un nombre fini de tâche. Pour cela un sémaphore est un objet qui permet les actions suivantes : L initialisation Le processus de réservation : semp Le processus de libération : semv 53 / 25

55 54 / 25 Les sémaphores Code de SemP : Masquer toutes les ITs; S--; if (S<0) { Tache_courante --> File_Attente(S); reordonnancement(); } Demasquer toutes les ITs; Code de SemV : Masquer toutes les ITs; S++; if (S<=0) { Debloquer(Premier(File_Attente(S))); reordonnancement(); } Demasquer toutes les ITs;

56 Les sémaphores liés aux threads #include <pthread.h> pthread_mutex_t fastmutex = PTHREAD_MUTEX_INITIALIZER; pthread_mutex_t recmutex = PTHREAD_RECURSIVE_MUTEX_INITI pthread_mutex_t errchkmutex = PTHREAD_ERREURCHECK_MUTEX_ int pthread_mutex_init(pthread_mutex_t *mutex, const pth int pthread_mutex_lock(pthread_mutex_t *mutex)); int pthread_mutex_trylock(pthread_mutex_t *mutex); int pthread_mutex_unlock(pthread_mutex_t *mutex); int pthread_mutex_destroy(pthread_mutex_t *mutex); 55 / 25

57 pthread mutex lock pthread mutex lock verrouille le mutex. Si le mutex est déverrouillé, il devient verrouillé et est possédé par le thread appelant et pthread mutex lock rend la main immédiatement. Si le mutex est déjà verrouillé par un autre thread, pthread mutex lock suspend le thread appellant jusqu à ce que le mutex soit déverrouillé. 56 / 25

58 pthread mutex unlock Celui-ci est supposé verrouillé, et ce par le thread courant en entrant dans pthread mutex unlock. Si le mutex est de type rapide, pthread mutex unlock le réinitialise toujours à l état déverrouillé. S il est de type récursif, son compteur de verrouillage est décrémenté (nombre d opérations pthread mutex lock réalisées sur le mutex par le thread appelant), et déverrouillé seulement quand ce compteur atteint / 25

59 BOOT Boot Le boot c est l amorçage d un système hardware par un programme appelé bootloader. Le bootloader va chercher sur un périphérique (Disque Dur, Clef USB ou le réseau) le noyau d un système d exploitation qui s installera en mémoire vive et appellera lui-màme des programmes applicatifs. Example Le bootloader d un PC est placé dans le Master Boot Record (MBR). Le MBR est la zone d amoçage d un PC. Elle contient la table des partitions (les 4 partitions primaires) du disque dur et le bootloader dont le but est de charger le système d exploitation. 58 / 25

60 U-Boot U-Boot U-Boot est un bootloader (logiciel libre), permettant de loader un noyau linux par le réseau (Ethernet). U-Boot implémente le protocole TFTP. U-Boot fonctionne sur des centaines de cartes mère et a été développé pour la très grande majorité des processeurs existant : PowerPC, ARM, XScale, MIPS, Coldfire, NIOS, Microblaze, et x86. TFTP Trivial File Tranfer Protocol : ce protocole permet de faire des transfert de fichiers d une machine à une autre. Il est basé sur l architecture Client Serveur. 59 / 25

61 Commande de U-Boot : printenv printenv : Cette commande affiche l ensemble des variables de l environnement. => printenv baudrate=9600 bootdelay=5 stdin=serial stdout=serial netmask= ipaddr= serverip= Environment size: 992/16380 bytes => printenv ipaddr netmask ipaddr= netmask= => 60 / 25

62 Commande de U-Boot : setenv setenv : Cette commande permet de définir une variable ou de supprimer une variable. usage : => setenv nom valeur permet de definir la variable nom avec valeur => setenv nom permet de supprimer la variable valeur Autre exemple : => setenv cons_opts console=tty0 console=ttys0,${baudrate} => printenv cons_opts cons_opts=console=tty0 console=ttys0,${baudrate} 61 / 25

63 Commande de U-Boot : saveenv Permet de sauvegarder de façon persistante dans la mémoire flash, toutes les valeurs des variables positionnées par la commande setenv. => saveenv Saving Enviroment to Flash... Writing to Flash... done => 62 / 25

64 Commande de U-Boot : tftpboot C est la commande la plus importante de U-Boot : boote l image par le réseau suivant les variables définies par setenv. Elle va chercher l image sur $serverip => help tftp tftpboot [loadaddress] [bootfilename] 63 / 25

65 Architecture On a une carte porteuse IO : proposant 4 emplacements en mezzanine pour des cartes filles ; Cette carte porteuse réalise l interface avec le Bus VME ; 64 / 25

66 IO Sur les 4 emplacements on a : 1 deux cartes TTL ; 2 une carte 12E816 : carte d entrée Convertisseur analogique-numérique ; 3 une carte 12a4 : carte de sortie Convertisseur numérique-analogique ; 65 / 25

67 Les Sorties des cartes en mezzanines _TTL 2O ES TTL _12E8/16 12 Entrees Analogiques 16 bits 12A4 4 sorties Analogiques 66 / 25

68 TTL Les 3 ports A, B et C : PORT C PORT A PORT B Vcc/Gnd 67 / 25

69 TTL Cette carte sur un bus VME via une interface de type MODULbus+ propose 2 ports 8 bits et un port 4 bits. 20 entreées-sorties TTL optocouplées ; Les 3 ports sont configurables en entrée ou en sortie. Chaque bit du port peut fournir un courant max de 48 ma il est de type collecteur ouvert ; A chaque port doit àtre alimenté. Fonction secondaire timer (Zilog Z 8536) sur les ports B et C. 68 / 25

70 Ce timer contient 3 compteurs 16 bits identiques qui peuvent, entre autre, fonctionner dans les modes suivant : Pulse : une impulsion one shot : une forme reproductible une fois, square wave mode : signal carré périodique. 69 / 25

71 Ces trois compteurs sont des fonctions secondaires des ports A, B, C : Fonction T 1 T 2 T 3 Sortie B4 B0 C 0 Entree.Compt. B5 B1 C 1 Trigger B6 B2 C 2 Gate B7 B3 C3 70 / 25

72 Les registres importants Le registre MCCR : Master Configuration Control Register Les registres Counter Timer Mode Specification Register : CTMSR 1, CTMSR 2etCTMSR 3 ou CTMSR. Ils servent à spécifier les modes. Les registres Counter Timer Time Constant Register : CTTCRH 1,CTTCRL 1,CTTCRH 2CTTCRL 2 ou CTTCR Ils correspondent aux constantes de temps des timer 1 et 2 ; Les registres Counter Timer Command Status Register CTCSR 1, CTCSR 2etCTMSR 3 ou CTCSR ils permettent de déclencher les démarrages et de contrôler les ITs. 71 / 25

73 72 / 25 MCCR Registre de Contrôle et de Configuration MaÓtre : D 7 D 6 D 5 D 4 D 3 D 2 D 1 D 0 D 7 : autorisation de fonctionnement du Port B D 6 : autorisation de fonctionnement du CompteurTimer 1 D 5 : autorisation de fonctionnement du CompteurTimer 2 D 4 : autorisation de fonctionnement du Port C D 3 : Contrôle de liaison des Ports D 2 : autorisation de fonctionnement du Port A D 1 et D 0 : contrôle de liaison des Countertimer 0 0 : Les Timer 1 et 2 sont independant 0 1 : La sortie timer 1 autorise le fonctionnement du Timer 2 10:Lasortietimer1déclencheleTimer2 1 1 : La sortie timer 1 sert de compteur d entrée du

74 73 / 25 CTMSR Spécifie les Modes des Compteurs D 7 D 6 D 5 D 4 D 3 D 2 D 1 D 0 D 7 : Cycle continu ou non (pulse unique) D 6 : Autorisation Externe de Sortie D 5 : Autorisation Externe de Comptage D 4 : Autorisation Externe de déclenchement D 3 : Autorisation Externe de fonctionnement D 2 : Autorisation de Re-déclenchement (Int. Ext.) D 1 etd 0 Sélection de rapport Cyclique 00:Sortiepulse 01:Sortied unseulpulse 10: Sortie en signal carré périodique 1 1 : Non utilisé

75 Le Mode : one pulse Horloge Trigger Gate Gel de N Sortie Mode Pulse N N-1 N-1 N Décomptage de N 74 / 25

76 Le Mode : One Shot Horloge Trigger Gate Gel de N N N-1 N-1 N Décomptage de N Sortie One Shot 1 pulse Largeur = N * périodes d'horloge 75 / 25

77 Le Mode Square Wave Horloge Trigger Gate N N-1 N N N-1 N Décomptage de N Sortie Square Wave 1 pulse Largeur = 2*N * périodes d'horloge 76 / 25

78 CTTTCR Les registres de comptage CTTCRH 1, CTTCRL 1, CTTCRHL 2, CTTCRL 2 La lettre H (High) identifie le registre stockant le poids fort. La lettre L (Low) correspond au poids faible. Exemple Soit la valeur à positionner dans le registre de comptage correspondant à une largeur de pulse désirée =0x02FF 16 mttl write reg(fd, CTTCRH 1, 0x02); mttl write reg(fd, CTTCRL 1, 0xff ); 77 / 25

79 CTCSR Permet la commande, donne l état des Compteurs D 7 D 6 D 5 D 4 D 3 D 2 D 1 D 0 D 7 : Une interruption est en cours D 6 : Autorisation de l interruption Timer D 5 : Une interruption est en attente de service D 4 : Erreur d interruption (lecture seule) D 3 : Lecture valeur courante comptage D 2 : Commande du fonctionnement D 1 : Commande de déclenchement (écrit. seule) D 0 : Indicateur comptage en cours (lect. seule) 78 / 25

80 CTCSR : exemple Exemple On désire un mode carré périodique ; Bit de fonctionnement et déclenchement à un ; D 7 est un drapeau, on n y touche pas. D 6 à zéro, on ne fonctionne pas en it. D 7 D 6 D 5 D 4 D 3 D 2 D 1 D mttl write reg(fd, CTCSR 1, 0x06); 79 / 25

81 On va chaîner la sortie du timer 1 à l entrée du timer 2. Un front montant du timer 1 aura pour objet de déclencher le timer 2 qui déterminera le rapport cyclique comme cela est indiqué sur la figure suivante : Horloge Registre de préchargement =0x0004 Rechargement Timer 1 Valeur timer Registre de préchargement =0x0006 Rechargement Timer 2 Valeur timer / 25

82 Drivers Driver Un Driver (module) est un programme écrit généralement en Assembleur permettant de lire et d écrire sur un périphérique ou de réaliser des actions appellées services. Un module fournit des services ou utilise des services d autres modules. Le cas des drivers linux : Statique : Les modules sont rajoutés dans la partie File System et compilé avec le noyau. Il sera présent même si le périphérique n est plus utilisable Dynamique : On alors un module chargeable, les modules/drivers ne sont chargés QUE lorsque un programme en a besoin. 81 / 25

83 Drivers Il existe différents types de pilotes suivant le périphérique à contrôler : les pilotes en mode caractère Ex : ports séries et parallèles les pilotes en mode bloc Ex : Disque dur. les pilotes réseaux 82 / 25

84 Driver caractère Avec ce matériel de TP, on n utilisera que des pilotes en mode caractère. Ces pilotes sont accessibles à travers des fichiers spéciaux appelés également noeuds (nodes). Ces fichiers sont localisés sur le répertoire /dev et sont caractérisés par deux valeurs numériques : Le MAJEUR (MAJOR) qui identifie le pilote Le MINEUR (MINOR) qui représente une sous-adresse en cas de présence de plusieurs périphériques identiques, contrôlés par un même pilote. 83 / 25

85 Installation de Drivers Le fichier /etc/rc.sysinit permet de réaliser des installations des drivers/modules spécifiques. La commande depmod a : Elle établit la liste des dépendances de modules en lisant pour tous les modules les services exportés ou importés. La commande insmod programme simple permettant d insérer un module dans le noyau sans s occuper de dépendances éventuellement non satisfaites. La commande modprobe programme simple permettant d insérer un module dans le noyau. modprobe charge un module et les modules qui en dépendent. rmmod décharge un module 84 / 25

86 Drivers de nos cartes d ES #depmod a #insmod copy universe #modprobe universe #modprobe vme mod log =4level =3 #modprobe modvme #modprobe vmodat0 85 / 25

87 Installation du driver de la MTTL #modprobe mttl.o io = 62, 0, 0, 0x3000a800, 0xa0, 0xd 62 : major number : celui de la carte MTTL 0:num.carteIO sur bus VME [0, 15] 0:minornumberemplacementdeMTTL sur IO [0, 3] 0x3000a800 adr physique carte IO sur bus VME 0xa0 :adresseduvecteurd IT 0x0d : : 1 : Opto, 1 : C en sortie, 0 : B en entrée, 1 : A en sortie 86 / 25

88 Drivers de nos cartes d ES Installation des deux cartes TTL : #insmod mttl vio=62, 0, 0, 0x3000a800, 0xa0, 0xd 62, 0, 0, 0x3000a800, 0xa0, 0xd 87 / 25

89 Exemple simple de Driver Linux Ecriture du driver hello.c : #include <linux/module.h> #include <linux/kernel.h> int init_module(void) { printk("driver chargé n"); return 0; } void cleanup_module(void) { printk("driver déchargé \n"); } 88 / 25

90 Compilation et utilisation de Driver Linux Ce code constitue la base d un module chargeable. Si on le compile par : $gcc -Wall -c hello.c -o hello.o -D KERNEL -I /usr/include/linux/ -O2 on pourra insérer dynamiquement le module par la commande insmod : $insmod hello.o Ce qui provoque le chargement du module (voir lsmod) et l apparition du message dans les traces du noyau. 89 / 25

91 Compilation et utilisation de Driver Linux Chargement du module : [exemple]# lsmod Module Size Used by hello (unused) 3c (autoclean) vfat (unused) fat [vfat] [exemple]# dmesg tail -1 Module chargé De même si on décharge le module par rmmod on obtient : [exemple]# rmmod hello S [exemple]# dmesg tail -1 Module déchargé 90 / 25

92 SETR et la connectivité IP Connectivité IP La connectivité IP permet de raccorder tout système électronique au réseau internet. Elle met en oeuvre une suite de protocole que l on doit embarquer sur le système. Avantages : Contrôler à distance les SETR ; usage d interfaces graphiques modernes et banalisées : navigateur web ; Evolution du télécontrôle : RS232 et terminal VT / 25

93 Le protocole IP Protocole IP Protocole basé sur le modèle OSI à 7 couches. Modèles OSI Ensemble de couches. Une couche crée un niveau d abstraction en raffinant un service de base pour donner des services plus élaborés au niveau supérieur. 92 / 25

94 Les 7 couches du modèle OSI 1 Couche physique : transmettre des bits ; 2 Couche liaison : transmettre des trames, détection et correction d erreurs ; 3 Couche réseau : routage et acheminement des données, constitutions de paquets de trames, gestion de la congestion du réseau ; 4 Couche Transport : gestion du dialogue entre 2 noeuds (sockets, pipe,...), mode connecté (TCP) ou non (UDP). 5 Couche session : structuration du dialogue (client-serveur) ; 6 Couche représentation : représentation des données format, compression, cryptage,... 7 Couche Application : Interface shell, webmail, firefox, / 25

95 Le réseau Internet : 4 couches 1 Couche médium : transmettre des trames de bits (couche 1 et 2) : Ethernet, GSM, Courant porteur,... 2 Couche IP : routage et Acheminement des données (couche 3) 3 Couche TCP (ou UDP) : gestion du dialogue entre 2 noeuds mode connecté (TCP) ou non (UDP) (couche 4) ; 4 Couche Application : de structuration du dialogue jusqu a l interface (couche 5,6,7). 94 / 25

96 Architecture Internet Client FTP Protocole ftp Serveur FTP TCP Protocole TCP TCP IP Protocole IP IP Médium Médium trames propres au médium 95 / 25 Figure: Réseaux 4 couches

97 Adressage 1 Chaque ordinateur ou système embarqué est repéré par une adresse IP unique sur 32 bist. 2 Notation décimale : : 4 octets (255 x 0) 3 ADRESSE IP : id réseau + id machine 4 1octet:idRéseau 5 dernier octet : 255 broadcast, 1 : Gateway 96 / 25

98 Protocole IP 1 version IPv4 : 4 bits d entête 2 8bits:priorité,préférencessurlaqualité 3 2 octets : Longueur totale 4 4 octets : identification, drapeaux, octet durée de vie : nombre de routeurs traversés 6 1 octet de protocole : 6 - TCP, 17 UDP,... 7 header checksum 8 20 octets maximum pour le message 9 adresse IP source et destination 10 options 97 / 25

99 Protocole TCP et UDP 1 Utilise IP comme service réseau 2 TCP procure un service de transport en mode connecté sécurisé (demande de ré-emission si echec) Connexion par handshake ; Transfert de données ; acquitement ; fermeture des connexions ; exemple : chat, telnet, ftp 3 UDP procure un service de transport en mode non connecté et non sécurisé. Adresse materielle de la machine appellée adresse IP numéro du port exemple : mail 98 / 25

100 L API Socket LES SOCKETS IMPLEMENTENT LES PROTOCOLES TCP ET UDP 1 Elles permettent d échanger des octets entre une application cliente et une application serveur. 2 Les données passent en clair dans le réseau. 3 SSL : est une nouvelle API basée sur les sockets pour échanger des données sécurisées. 99 / 25

101 Applications telnet et rlogin Elles utilisent TCP 1 telnet est une appli client/serveur en mode connecté. 2 rlogin ne fonctionne qu entre 2 machine UNIX. telnet est faisable sous windows 3 Un daemon serveur doit tourner sur la machine appellée. 100 / 25

102 Applications NFS 1 Permet de rendre transparente l utilisation de fichiers répartis sur différentes machines. 2 NFS utilise UDP, les nouvelles versions utilisent TCP. 3 Est particulièrement utile pour les SETR diskless 101 / 25

103 NFS NFS (Network File System) permet de partager des fichiers entre ordinateurs sous un environnement Linux et/ou Unix (des implémentations existent pour Macintosh et MS Windows). Il existe plusieurs version de NFS : NSF 1 et 2 son obsolètes et NFS 3 : Non sécurisé et NFS 4. Usage : Partage d un répertoire (projet). Basée sur la notion de point de montage 102 / 25

104 Point de Montage En linux tout est fichier ou répertoire (Noeud). Point de montage Sous linux : Un disque dur, un lecteur de CDROM ou une clef USB correspondent à un répertoire. Ces éléments physiques doivent être montés et démontés après usage. Le montage correspond à la création d un lien entre l élément physique et le répertoire. mount t iso9660 /dev/cdrom/media/cdrom umount /media/cdrom 103 / 25

105 Montage NFS C est un système client serveur. Principe Le client importe des fichiers. Le serveur exporte ses fichiers. Installation sur le serveur : Dans /etc/exports /public (rw, no root squash, sync) #exportfs a #/etc/init.d/nfs kernel server restart Le Client : mount t nfs : /public /mnt o nolock umount/mnt 104 / 25

106 Applications ftp 1 Permet de faire des transfert de fichiers ; 2 nécessite une connexion par login et mot de passe. 3 il existe des serveurs anonymous, le mot de passe est alors son . ftp login passwd put file mget file.* bye 105 / 25

107 Applications http 1 Protocole de communicatoin et d échange de documents sur le web 2 Est écrit en utilisant l API SOCKET 3 Tous les navigateurs sont des applications client/serveur basé sur l API Socket. 106 / 25

108 Applications http 1 Protocole de communicatoin et d échange de documents sur le web 2 Est écrit en utilisant l API SOCKET 3 Tous les navigateurs sont des applications client/serveur basé sur l API Socket. 107 / 25

109 Travaux Dirigés SETR Polytech Nantes, GE4-1h30 On cherche à programmer de façon simplifiée le fonctionnement d une usine (voir l illustration) réalisant un mélange de 2 produits C et S. Le produit final B sera obtenu en suivant les phases suivantes : Approvisionner BAC 1 et BAC 2 avec les produit S et C en agissant sur les vannes VA 1 et VA 2 de façon à maintenir constamment les niveaux dans chacun des bacs autours d un niveau moyen fixé. Lorsque les niveaux de BAC 1 et BAC 2 oscillent autour de leur valeur moyenne, BAC 3 est approvisionné avec un mélange composé de C et S composé de 16 kg de S et 8kg de C, en agissant sur les vannes de vidages VD 1 et VD 2. Pendant cet approvisionnement la vanne VD 3 est fermée. BAC 3 est alors vidé de 15 kg dans une autre bac (non modélisé dans l exercice) par la vanne VD 3 et le cycle recommence. S VA 1 VA 2 C N 1 N 2 n 1 BAC 1 BAC 2 n 2 VD 1 VD 2 BAC 3 P M VD 3 Figure 1 Illustration D autres part pour modéliser le problème, les entrés-sorties auront les caractéristiques suivantes : Les vannes VA 1,VA 2,VD 1,VD 2,VD 3 peuvent êtres ouvertes ou fermées par les procédures ouvrir avec comme paramètre le nom de la vanne : ouvrir(vd 1 ) ; fermer(vd 2 ); On peux se mettre en attente des signaux N 1,n 1,N 2,n 2,P,M par la procédure atit : atit(p) ; N 1 (resp N 2 ) signale que le niveau max du bac 1 est atteint, n 1 (resp n 2 ) signale que le niveau min du bac 1 est atteint. 1

110 Le poids du mélange dans BAC 3 est mesuré par un capteur qui délivre le signal P à chaque fois que le mélange augmente de 100g et M à chaque fois que le mélange atteint diminue de 100g. 1 Modélisation préliminaire Initialement tous les bacs sont vides, les vannes sont fermées. On demande proposer une programmation progressive de cette application : Modéliser le fonctionnement des tâches BAC 1, BAC 2, BAC 3 en utilisant une structure d algorithme en utilisant les appels : ouvrir(v ), fermer(v ) atit(s 1 ) L attente (de type l un ou l autre ) de deux signaux S 1 et S 2 : atit(s 1 S 2 ), L attente (de type l un et l autre ) de deux signaux S 1 et S 2 : atit(s 1 &&S 2 ), les primitives : Boucle, F in Boucle T ant Que, F in T ant Que Si Alors... Sinon... F in Si,... 2 Codage Vous coderez cette modélisation en suivant les consignes suivantes : Les actions de fermeture et d ouverture de vannes seront modélisées par un printf : printf("\n\t\t\t\t\t\touverturevannevidange2"); Les attentes de signaux de capteurs modélisées par la procédure atit(n 1 ) seront modélisées par la mise en sommeil du processus (sleep) ; on utilisera les déclarations globales : pthread_t B1,B2,B3; int N1, n1, N2, n2, P, M; La tâche sera d abord défini par : void *BAC3(void){... } Le main va ensuite créer et lancer ces 3 thread qui géreront les 3 bacs par l instruction : pthread_create(&b3,null, BAC3, NULL); Puis le main agira comme générateur de signaux sur les capteurs avec la structure while(1) { printf("\ntapez1->n1,2->n1,3->n2"); printf("4->n2,5->p,m->6:"); fflush(stdin);scanf("%i",&i); switch(i) { case 1 : N1=1; n1=0; printf("\n->n1");break;... 2

111 3 Solution 3.1 Première partie T^ache BAC1 Ouvrir(VA1); atit(n1); Boucle fermer(va1); atit(n1); ouvrir(va1); atit(n1); Fin boucle; fin BAC1; T^ache BAC2 Ouvrir(VA2); atit(n2); Boucle fermer(va2); atit(n2); ouvrir(va2); atit(n2); Fin boucle; Fin BAC2; T^ache BAC3 atit(n1 && N2); ouvrir(vd1); poids=0; Boucle Tant Que (poids < 160) Faire atit(p);poids++; Fin Tant Que; fermer(vd1); ouvrir(vd2); poids=0; Tant Que (poids < 80) Faire atit(p); poids++; Fin Tant Que; fermer(vd2);ouvrir(vd3); poids=0; Tant Que (poids < 150) Faire atit(m); poids++; Fin Tant Que; fermer(vd3); PA=PA-100;PB=PB-50; Fin Boucle Fin BAC3; 3.2 Codage #include #include pthread_t <stdio.h> <pthread.h> B1,B2,B3; int N1, n1, N2, n2, P, M, CH; void *BAC1(void){ int j=0; 3

112 } printf("\n\t\touverturevanne1"); while (N1==0) sleep(1); while(1) { printf("\n\t\t\t\tfermeturevanne1"); while (n1==0) sleep(1); printf("\n\t\t\t\touverturevanne1"); while (N1==0) sleep(1); } void *BAC2(void){ int j=0; printf("\n\t\t\t\touverturevanne2"); while (N2==0) sleep(1); while(1) { printf("\n\t\t\t\tfermeturevanne2"); while (n2==0) sleep(1); printf("\n\t\t\t\touverturevanne2"); while (N2==0) sleep(1); } } void *BAC3(void){ int j,poids, PS=0,PC=0; while ((N1!=1) && (N2!=1)) sleep(1); while(1) { poids=0; //Dosage BAC1 printf("\n\t\t\t\t\t\touverturevannevidange1"); while(1){ while (poids <160) { while(p==0) sleep(1); PS++;P=0; } printf("\n\t\t\t\t\t\tfermeturevannevidange1"); //Dosage BAC2 printf("\n\t\t\t\t\t\touverturevannevidange2"); poids=0; while (poids <80) { while(p==0) sleep(1); PC++;P=0; } printf("\n\t\t\t\t\t\tfermeturevannevidange2"); //Dosage MELANGE printf("\n\t\t\t\t\t\touverturevannevidange3"); poids=0; while (poids <150){ while(m==0) sleep(1); poids++;m=0; } printf("\n\t\t\t\t\t\tfermeturevannevidange3"); 4

113 } PS=PS-100;PC=PC-50; } int main(){ int i,j ; N1=0;n1=1;N2=0;n2=1;P=0;M=0;CH=0; pthread_create(&b1,null, BAC1, NULL); pthread_create(&b2,null, BAC2, NULL); pthread_create(&b3,null, BAC3, NULL); while(1) { printf("\ntapez1->n1,2->n1,3->n2"); printf("4->n2,5->p,m->6:"); fflush(stdin);scanf("%i",&i);usleep(1); switch(i) { case 1 : N1=1; n1=0; printf("\nniveaun1");break; case 2 : n1=1; N1=0; printf("\nniveaun1");break; case 3 : N2=1; n2=0; printf("\nniveaun2");break; case 4 : n2=1; N2=0; printf("\nniveaun2");break; case 5 : P=1; printf("\npesage:+1kg");break; case 6 : M=1; printf("\npesage:-1kg");break; default : break; } } return (1); } 5

114 TP SETR 1 : Commande de moteur pas à pas Polytech Nantes - Dept GE. Février Introduction Le but de ce TP sera l implémentation d une application temps réel embarquée multithreadée avec Entrés-Sorties de type TTL. 2 Commande de Moteur Pas à Pas 2.1 Préambule Télécharger les fichiers "squelette.c" et "compil" sur madoc. Connectique : Brancher PA 0,PA 1,PA 2,PA 3 sur les 4 bobines du MPP et PB 0 sur l optocoupleur. Connectez l alimentation (5V ) sur le MPP ainsi que sur les ports A et B utilisés de la carte d ES. Connectez la masse du MPP et de la carte d ES. Ouvrir un terminal. En créant 2 onglets vous en obtenez 3 avec l onglet de départ - changer leur titre : compil, ftp et telnet. Onaalors 3onglets: Onglet compil : $PATH=$PATH:. // instruction nécessaire une fois lors de la création du shell $chmod 777 compil $compil monfichier // sans l extention. L onglet ftp sert à envoyer votre exécutable sur la cible : $ftp * login : taper root > put monfichier est l adresse IP de votre cible. Onglet telnet : $telnet * login : taper root puis la barre espace $PATH=$PATH:. // instruction nécessaire une fois lors de la création du shell $chmod 777 monfichier $monfichier 2.2 Ennoncé 1. Ecrire un programme permettant de faire clignoter la led numéro zéro toutes les secondes. 2. Ecrire un programme qui interroge l utilisateur sur le nombre de tour et son mode (pas entier ou demi-pas), puis fait tourner le moteur. 1

115 3. Ecrire un programme multithreadé. Le père effectue initialement une saisie de consigne : Le père demande la vitesse, le sens, le mode (pas entier ou demi-pas) et le nombre de tours. Le fils fait la commande du moteur. Pendant l exécution de son fils le père pourra changer la vitesse de rotation du moteur. 4. Ecrire un thread permettant une fonction de lecture de la valeur de l optocoupleur et l affichage de la vitesse angulaire gr ce aux fonctions de manipulation du temps données en annexes. Attention : Le passage du trou devant l optocoupleur est mémorisé dans une bascule D qui doit être remise à zéro par un niveau haut sur la patte RST de la carte moteur après la lecture de la bascule. De plus, cette patte doit être au repos (niveau 5V, car les sorties fonctionnent en logique négative) pendant la commande du MPP. Enfin, il faudra maintenir l ordre de raz de cette bascule pendant une tempo de 1 ms. 3 Compte rendu Dans votre code, pour chaque sous-programme vous donnerez les informations en commentaires suivant : /* Fonction : nom de la fonction et des paramètres avec leur types ; Entrées : Paramètres en entrée de la fonction ; Sorties : paramètres modifiés ou de sortie ; Variables globales utilisées ; Sous-programmes appelés ; Fonctionnement : description rapide/sommaire du fonctionnement */ Dans votre compte-rendu vous préciserez comment vous avez testé votre code (résultats visuels, mesures à l oscilloscope) et vous donnerez quand cela est possible des extraits quantitatifs de résultat d exécution. 4 Annexe 4.1 Manipulation du temps Les instructions suivantes permettent de gérer l écoulement du temps. On utilise deux variables depart et fin de type struct timeval. Pour connaître la durée écoulée entre deux moments (instructions) on initialise ces variables entre ces 2 moments et on fait la différence. struct timeval depart, fin; struct timezone tz; long duree=0; gettimeofday(&depart, &tz); gettimeofday(&fin, &tz); /* temps execution du thread */ duree=fin.tv_sec-depart.tv_sec; 2

116 TP SETR 2 Identification des paramêtres d une Machine à Courant Continue D. Delfieu 10 février Introduction Le but de ces TP sera d instrumenter un moteur à courant continu. Pour cela, vous aurez à réaliser deux fonctions : Envoyer un signal de commande au moteur, en utilisant les timers/compteurs de la carte MTTL. Mesurer périodiquement le courant induit du moteur et afficher sa valeur à l écran, en utilisant la carte de conversion analogique numérique 12E16, 2 La On va utiliser le timer Zilog 8536 pour générer une. On va utliser un timer pour définir la fréquence de base et un timer pour définir le rappport cyclique. Pour cela on utilisera la fonction suivante : mttl write reg(descripteur carte MTTL, nom du registre, valeur initialisation); Exemple : mttl write reg(fd,mccr,0x00e2); 2.1 Chaînage de timers On va chaîner de façon logicielle la sortie du timer 1 (visible la patte B 4 )àl entréedutimer 2 (visible sur la patte B 0 ). Un front montant du timer 1 aura pour objet de déclencher le timer 2 qui déterminera le rapport cyclique comme cela est indiqué sur la figure suivante 1 : Horloge Sortie T1 Trigger Sortie T2 Figure 1 Chronogramme du chaînage 1

117 2.2 Les timer 1 et 2 On créera un sous-programme d initialisation appellé depuis le main, pour une valeur de periode et une valeur de data définies de façon constante : Timer 1 : 1. Générer un forme périodique (par rapport à la valeur de la variable periode) qui fait apparaître un front montant sur la sortie PB 4 du timer Visualiser cette sortie à l oscilloscope. Timer 2 : 1. Générer un mode permettant au timer 2 d être déclenché par la sortie du timer 1. Ce timer proposera de façon continuement périodique (valeur periode) un pulse de longueur variable (définie par la variable data). 2. Visualiser cette sortie à l oscilloscope. Pour récupérer le poids fort (MSB) et le poids faible (LSB) d une variable periode nombre vous pourrez utiliser les instructions suivantes : int periode=1000,msb=0, LSB=0; MSB=(periode>>8)&0x00FF; LSB=periode&0x00FF; Le programme principal : En tenant compte des valeurs pour les registres évoqués, que nous venont de déterminer, écrire une fonction InitPwm(int periode) permettant d initialiser une avec une période définie par la variable periode et dont le rapport cyclique (longueur du niveau haut) sera défini par une variable globale de type int s appellant data. Vous rajouterez les include suivant : #include "/opt/elinos_30_ppc_basic_rtai/elinos_janz/janz/mttl/h/cio8536.h" #include "/opt/elinos_30_ppc_basic_rtai/elinos_janz/janz/m12e16/h/m12e16.h" 2.3 multithread Écrire un main qui crééra deux threads : Un thread contrôlera la variable data en incrémentant tous les 100 µ-secondes la variable par un incrément définie par P AS (#define PAS 3 par exemple). Si cette variable atteint la valeur de periode, alors le thread décrémentera (de la valeur P AS) cette fois, la valeur de data. L autre thread met à jour les registres de constantes (tous les 100 µ-secondes) de temps affectant le timer 2 définissant ainsi un nouveau rapport cyclique. le père des threads contrôle la fin de toute l application en proposant à l utilisateur de taper q pour quitter, ce qui forcera, dans un premier temps la fin des 2 threads, puis la fin du père. 3 Lecture du courant Rajouter dans votre main 1. Pour le CAN déclarer en global char bin[20] = /dev/m12e16 02, de manière analogue à la carte MTTL, on rajoutera du code pour permettre aussi l ouverture du périphérique de lecture analogique. 2. A l aide de la documentation fourni par les enseignants, expliquer dans votre compte rendu les significations des modes : SINGLE ENDED et DIF F ERENT IAL 3. Initialiser la lecture du CAN avec le mode SINGLE ENDED par une fonction que vous trouverez en inspectant le fichier m12e16.h (cf chemin indiqué dans l include), trouver aussi comment positionner un gain de 1 (c.a.d. pas de gain) pour le canal 0. 2

118 3.1 Fonction de lecture Ecrire un thread permettant la lecture du courant par la fonction : vlue=m12e16_read_channel(fdcan,0); Dans cette fonction, on a le résultat de la valeur dans vlue. Etant donnée que : Le converisseur fonctionne dans une plage de 10, +10 volts 10 volts correspond à v correspond à 1024 Trouver la transformation permettant d afficher la valeur de tension fournie par le pottard du moteur pas à pas qui délivre une tension entr 0 et 5v. 3.2 Lecture du courant d induit de la MCC Coupler à l aide de threads, la commande de la MLI pour commander la MCC et la lecture du courant filtré. Faire les branchements. Annexes 3.3 Les registres du timer ZCIO8536 Ce timer est implanté sur la carte MTTL. Il partage donc les ports A, B et C dela carte MTTL. A et B sont 2 port de 8 bits bufferisés et C est un port bidirectionnel de 4 bits. Ce timer contient 3 compteurs qui peut, entre autre, fonctionner dans les modes suivant : Pulse : une impulsion, one shot : une forme reproductible une fois, square wave mode : signal carré périodique. Les registres important Le registre MCCR : Master Configuration Control Register. Les bits du MCCR sont : D 7 : Port B enable D 6 : CounterT imer 1 enable D 5 : CounterT imer 2 enable D 4 : Port C enable D 3 : Port Link Control D 2 : Port A enable D 1 etd 0 : Countertimer link Control 0 0 : Timer 1 and are independent 01:T imer soutput 1 GATEs Timer 2 D 7 D 6 D 5 D 4 D 3 D 2 D 1 D 0 10:T imer soutput 1 TRIGGERs Timer 2 11:T imer soutput 1 acts as Count Input of Timer 2 Les registres CTMSR 1, CTMSR 2 et CTMSR 3 ou CTMSR signifie :Counter Timer Mode Specification Register ont la structure de bit suivante : D 7 : Continuous SingleCycle D 6 : External Output Enable D 5 : External Count Enable D 7 D 6 D 5 D 4 D 3 D 2 D 1 D 0 3

119 D 4 : External Trigger Enable D 3 : External Gate Enable D 2 : Retrrigger GateEnable D 1 etd 0 : OutputDutyCycleSelect 00:PulseOutput 0 1 : One shot output 1 0 : Square wave mode Otput 1 1 : Not specified Les registres CTTCRH 1,CTTCRL 1,CTTCRH 2CTTCRL 2 ou CTTCR signifie Counter Timer Time Constant Register. Ils correspondent aux constantes de temps des timer 1 et 2. La lettre H (High) identifie le registre stockant le poids fort. La lettre L (Low) correspond au poids faible. Les registres CTCSR 1, CTCSR 2 et CTMSR 3 ou CTCSR signifie Counter Timer Command Status Register ont la structure de bits suivante : D 7 : Interrupt Under Service D 6 : InterruptEnable D 5 : InterruptPending D 4 : Interrupt Error (Read Only Bit) D 7 D 6 D 5 D 4 D 3 D 2 D 1 D 0 D 3 : Read Counter Control (Read Set Only Bit - Cleared by reading LSB) D 2 : Gate Command Bit D 1 : T rigger Command Bit (Write Only Bit) D 0 : Count in Progress(read only) 4

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

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

Les processus légers : threads. Système L3, 2014-2015 1/31

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

REALISATION d'un. ORDONNANCEUR à ECHEANCES

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

Introduction. Adresses

Introduction. Adresses Architecture TCP/IP Introduction ITC7-2: Cours IP ESIREM Infotronique Olivier Togni, LE2I (038039)3887 olivier.togni@u-bourgogne.fr 27 février 2008 L Internet est basé sur l architecture TCP/IP du nom

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

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

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

Administration UNIX. Le réseau

Administration UNIX. Le réseau Administration UNIX Le réseau Plan Un peu de TCP/IP Configuration réseau sous linux DHCP Démarrage PXE TCP/IP Unix utilise comme modèle de communication TCP/IP Application Transport TCP - UDP Réseau IP

Plus en détail

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE

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

STS SE. FreeRTOS. Programmation réseau WIFI. Programmation réseau. Socket Tcp. FlyPort smart Wi-Fi 802.11 module

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

Services Réseaux - Couche Application. TODARO Cédric

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

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

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

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

Plan. Programmation Internet Cours 3. Organismes de standardisation

Plan. Programmation Internet Cours 3. Organismes de standardisation Plan Programmation Internet Cours 3 Kim Nguy ên http://www.lri.fr/~kn 1. Système d exploitation 2. Réseau et Internet 2.1 Principes des réseaux 2.2 TCP/IP 2.3 Adresses, routage, DNS 30 septembre 2013 1

Plus en détail

Linux embarqué: une alternative à Windows CE?

Linux embarqué: une alternative à Windows CE? embarqué: une alternative à Windows CE? : une alternative à Windows CE Présentation Mangrove Systems Distribution embarqué Perspective WinCe / Questions Mangrove systems Créé en 2001 Soutien Soutien Ministère

Plus en détail

L3 informatique Réseaux : Configuration d une interface réseau

L3 informatique Réseaux : Configuration d une interface réseau L3 informatique Réseaux : Configuration d une interface réseau Sovanna Tan Septembre 2009 Révision septembre 2012 1/23 Sovanna Tan Configuration d une interface réseau Plan 1 Introduction aux réseaux 2

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

NOTIONS DE RESEAUX INFORMATIQUES

NOTIONS DE RESEAUX INFORMATIQUES NOTIONS DE RESEAUX INFORMATIQUES GENERALITES Définition d'un réseau Un réseau informatique est un ensemble d'équipements reliés entre eux afin de partager des données, des ressources et d'échanger des

Plus en détail

Présentation du modèle OSI(Open Systems Interconnection)

Présentation du modèle OSI(Open Systems Interconnection) Présentation du modèle OSI(Open Systems Interconnection) Les couches hautes: Responsables du traitement de l'information relative à la gestion des échanges entre systèmes informatiques. Couches basses:

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

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

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

Unix/Linux I. 1 ere année DUT. Université marne la vallée Unix/Linux I 1 ere année DUT Université marne la vallée 1 Introduction 2 Fonctions et spécifité d Unix Architecture 3 4 5 Fichier Unix Arborescence de fichiers Quelques commandes sur les fichiers Chemins

Plus en détail

Le protocole ARP (Address Resolution Protocol) Résolution d adresses et autoconfiguration. Les protocoles ARP, RARP, TFTP, BOOTP, DHCP

Le protocole ARP (Address Resolution Protocol) Résolution d adresses et autoconfiguration. Les protocoles ARP, RARP, TFTP, BOOTP, DHCP Résolution d adresses et autoconfiguration Les protocoles ARP, RARP, TFTP, BOOTP, DHCP Le protocole ARP (Address Resolution Protocol) Se trouve au niveau de la couche réseau Interrogé par le protocole

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

SYSTEME DE GESTION DES ENERGIES EWTS EMBEDDED WIRELESS TELEMETRY SYSTEM

SYSTEME DE GESTION DES ENERGIES EWTS EMBEDDED WIRELESS TELEMETRY SYSTEM SYSTEME DE GESTION DES ENERGIES EWTS EMBEDDED WIRELESS TELEMETRY SYSTEM Copyright TECH 2012 Technext - 8, avenue Saint Jean - 06400 CANNES Société - TECHNEXT France - Tel : (+ 33) 6 09 87 62 92 - Fax :

Plus en détail

Network musical jammin

Network musical jammin Network musical jammin Projet PC2R - 2015 Pour ce projet, nous allons réaliser une application permettant d effectuer des jams sessions en temps-réel entre des musiciens répartis à travers le monde. Le

Plus en détail

Démarrer et quitter... 13

Démarrer et quitter... 13 Démarrer et quitter... 13 Astuce 1 - Ouvrir, modifier, ajouter un élément dans le Registre... 14 Astuce 2 - Créer un point de restauration... 18 Astuce 3 - Rétablir un point de restauration... 21 Astuce

Plus en détail

Temps Réel. Jérôme Pouiller <j.pouiller@sysmic.org> 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

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

CONFIGURATION DE BASE. 6, Rue de l'industrie BP130 SOULTZ 68503 GUEBWILLER Cedex. Fax.: 03 89 62 13 31 Tel.: 08.92.56.68.69 support@telmatweb.

CONFIGURATION DE BASE. 6, Rue de l'industrie BP130 SOULTZ 68503 GUEBWILLER Cedex. Fax.: 03 89 62 13 31 Tel.: 08.92.56.68.69 support@telmatweb. Educ@Box Configuration de base 6, Rue de l'industrie BP130 SOULTZ 68503 GUEBWILLER Cedex Fax.: 03 89 62 13 31 Tel.: 08.92.56.68.69 support@telmatweb.com Page: 1 Sommaire 1 CONTENU DE VOTRE PACKAGE EDUC@BOX...

Plus en détail

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

M1101a Cours 4. Réseaux IP, Travail à distance. Département Informatique IUT2, UPMF 2014/2015

M1101a Cours 4. Réseaux IP, Travail à distance. Département Informatique IUT2, UPMF 2014/2015 M1101a Cours 4 Réseaux IP, Travail à distance Département Informatique IUT2, UPMF 2014/2015 Département Informatique (IUT2, UPMF) M1101a Cours 4 2014/2015 1 / 45 Plan du cours 1 Introduction 2 Environnement

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

Contrôleur de communications réseau. Guide de configuration rapide DN1657-0606

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

_ PARAMETRE DU COMPTE _ ACCEUIL. 1 ere Etape «Créer un compte principal» Créer un compte secondaire. Ouvrir un compte principal

_ PARAMETRE DU COMPTE _ ACCEUIL. 1 ere Etape «Créer un compte principal» Créer un compte secondaire. Ouvrir un compte principal _ PARAMETRE DU COMPTE 1 ere Etape «Créer un compte principal» - Créer un compte principal (Uniquement Compte FTP). Créer un compte secondaire -Créer un compte secondaire (Uniquement Compte FTP). Ouvrir

Plus en détail

ARDUINO DOSSIER RESSOURCE POUR LA CLASSE

ARDUINO DOSSIER RESSOURCE POUR LA CLASSE ARDUINO DOSSIER RESSOURCE POUR LA CLASSE Sommaire 1. Présentation 2. Exemple d apprentissage 3. Lexique de termes anglais 4. Reconnaître les composants 5. Rendre Arduino autonome 6. Les signaux d entrée

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

Itium XP. Guide Utilisateur

Itium XP. Guide Utilisateur Itium XP 06/2007 - Rev. 3 1 Sommaire 1 Sommaire... 2 2 Généralités... 3 3 ItiumSysLock... 4 3.1 Enregistrer l état actuel du système... 4 3.2 Désactiver ItiumSysLock... 5 3.3 Activer ItiumSysLock... 5

Plus en détail

AOLbox. Partage de disque dur Guide d utilisation. Partage de disque dur Guide d utilisation 1

AOLbox. Partage de disque dur Guide d utilisation. Partage de disque dur Guide d utilisation 1 AOLbox Partage de disque dur Guide d utilisation Partage de disque dur Guide d utilisation 1 Sommaire 1. L AOLbox et le partage de disque dur... 3 1.1 Le partage de disque dur sans l AOLbox... 3 1.1.1

Plus en détail

Tutorial Terminal Server sous

Tutorial Terminal Server sous Tutorial Terminal Server sous réalisé par Olivier BOHER Adresse @mail : xenon33@free.fr Site Internet : http://xenon33.free.fr/ Tutorial version 1a Page 1 sur 1 Index 1. Installation des services Terminal

Plus en détail

Installation ou mise à jour du logiciel système Fiery

Installation ou mise à jour du logiciel système Fiery Installation ou mise à jour du logiciel système Fiery Le présent document explique comment installer ou mettre à jour le logiciel système sur le Fiery Network Controller pour DocuColor 240/250. REMARQUE

Plus en détail

FreeNAS 0.7.1 Shere. Par THOREZ Nicolas

FreeNAS 0.7.1 Shere. Par THOREZ Nicolas FreeNAS 0.7.1 Shere Par THOREZ Nicolas I Introduction FreeNAS est un OS basé sur FreeBSD et destiné à mettre en œuvre un NAS, système de partage de stockage. Pour faire simple, un NAS est une zone de stockage

Plus en détail

Systèmes embarqués D.Rossier

Systèmes embarqués D.Rossier D.Rossier Manuel IEM (v0.2) Manuel d'utilisation pour les laboratoires IEM Auteur: G. Boutillier / C. Bardet Objectif Cette documentation donne de brèves explications sur l'utilisation des différents outils,

Plus en détail

MANUEL D INSTALLATION

MANUEL D INSTALLATION Data Processing Commission Fast Advanced Software for Table soccer - v 1.0 Logiciel de gestion de tournoi de football de table MANUEL D INSTALLATION INSTALLATION INFORMATIQUE DE LA TABLE DE MARQUE & CONFIGURATION

Plus en détail

II/ Le modèle OSI II.1/ Présentation du modèle OSI(Open Systems Interconnection)

II/ Le modèle OSI II.1/ Présentation du modèle OSI(Open Systems Interconnection) II/ Le modèle OSI II.1/ Présentation du modèle OSI(Open Systems Interconnection) II.2/ Description des couches 1&2 La couche physique s'occupe de la transmission des bits de façon brute sur un canal de

Plus en détail

PRESENTATION RESSOURCES. Christian Dupaty BTS Systèmes Numériques Lycée Fourcade Gardanne Académie d Aix Marseille

PRESENTATION RESSOURCES. Christian Dupaty BTS Systèmes Numériques Lycée Fourcade Gardanne Académie d Aix Marseille PRESENTATION RESSOURCES Christian Dupaty BTS Systèmes Numériques Lycée Fourcade Gardanne Académie d Aix Marseille 1) Introduction, Objectifs et Intentions Le BTS SN (Systèmes Numériques) intègre la formation

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

Internets. Informatique de l Internet: le(s) Internet(s) Composantes de l internet R3LR RENATER

Internets. Informatique de l Internet: le(s) Internet(s) Composantes de l internet R3LR RENATER Internets Informatique de l Internet: le(s) Internet(s) Joël Quinqueton Dépt MIAp, UFR IV UPV Université Montpellier III RENATER, R3LR Services Internet Protocoles Web Sécurité Composantes de l internet

Plus en détail

Plan du Travail. 2014/2015 Cours TIC - 1ère année MI 30

Plan du Travail. 2014/2015 Cours TIC - 1ère année MI 30 Plan du Travail Chapitre 1: Internet et le Web : Définitions et historique Chapitre 2: Principes d Internet Chapitre 3 : Principaux services d Internet Chapitre 4 : Introduction au langage HTML 2014/2015

Plus en détail

Sélection du contrôleur

Sélection du contrôleur Démo CoDeSys - 1 - 1. Configuration de l environnement de travail : Lancer le logiciel CoDeSys Fichier Nouveau Lors de la première utilisation, une boîte de dialogue apparaît permettant la sélection du

Plus en détail

Administration de systèmes

Administration de systèmes Administration de systèmes Windows NT.2000.XP.2003 Copyright IDEC 2002-2004. Reproduction interdite. Sommaire... 2 Eléments logiques et physiques du réseau... 5 Annuaire et domaine... 6 Les utilisateurs

Plus en détail

1. Fonctionnement de l Internet 2. Protocoles applicatifs 3. Programmation réseau

1. Fonctionnement de l Internet 2. Protocoles applicatifs 3. Programmation réseau 1. Fonctionnement de l Internet 2. Protocoles applicatifs 3. Programmation réseau Fonctionnement de l Internet Fonctionnement de l Internet Basé sur une architecture TCP/IP du nom des deux principaux protocoles

Plus en détail

Mes documents Sauvegardés

Mes documents Sauvegardés Mes documents Sauvegardés Guide d installation et Manuel d utilisation du logiciel Edition 13.12 Photos et illustrations : Copyright 2013 NordNet S.A. Tous droits réservés. Toutes les marques commerciales

Plus en détail

Cours Linux. Cours en ligne Administrateur Systèmes Linux. Académie Libre info@academielibre.fr

Cours Linux. Cours en ligne Administrateur Systèmes Linux. Académie Libre info@academielibre.fr Cours Linux Cours en ligne Administrateur Systèmes Linux Académie Libre info@academielibre.fr Programme général du cours Linux MODULE 1 - Fondamentaux Introduction à Linux La procédure de Login et Logout

Plus en détail

Réseaux Locaux. Objectif du module. Plan du Cours #3. Réseaux Informatiques. Acquérir un... Réseaux Informatiques. Savoir.

Réseaux Locaux. Objectif du module. Plan du Cours #3. Réseaux Informatiques. Acquérir un... Réseaux Informatiques. Savoir. Mise à jour: Mars 2012 Objectif du module Réseaux Informatiques [Archi/Lycée] http://fr.wikipedia.org/ Nicolas Bredèche Maître de Conférences Université Paris-Sud bredeche@lri.fr Acquérir un... Ressources

Plus en détail

Version de novembre 2012, valable jusqu en avril 2013

Version de novembre 2012, valable jusqu en avril 2013 Pré requis techniques pour l installation du logiciel complet de gestion commerciale WIN GSM en version hyper File en configuration Windows Terminal Serveur Version de novembre 2012, valable jusqu en avril

Plus en détail

Services OSI. if G.Beuchot. Services Application Services Présentation - Session Services Transport - Réseaux - Liaison de Données - Physique

Services OSI. if G.Beuchot. Services Application Services Présentation - Session Services Transport - Réseaux - Liaison de Données - Physique Services OSI Services Application Services Présentation - Session Services Transport - Réseaux - Liaison de Données - Physique 59 SERVICES "APPLICATION" Architecture spécifique : ALS (Application Layer

Plus en détail

Systèmes d Exploitation - ENSIN6U3. Aix-Marseille Université

Systèmes d Exploitation - ENSIN6U3. Aix-Marseille Université Systèmes d Exploitation - ENSIN6U3 Systèmes de gestion de fichiers - SGF Leonardo Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr Aix-Marseille Université Faculté

Plus en détail

Traitement de données

Traitement de données Traitement de données Présentation du module TINI Présentation du module : Le module Tini se décline en plusieurs versions, il est constitué d une carte d application et d un module processeur : Les modules

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

Rappel: Le routage dans Internet. Contraintes. Environnement et contraintes. La décision dans IP du routage: - Table de routage:

Rappel: Le routage dans Internet. Contraintes. Environnement et contraintes. La décision dans IP du routage: - Table de routage: Administration d un Intranet Rappel: Le routage dans Internet La décision dans IP du routage: - Table de routage: Adresse destination (partie réseau), netmask, adresse routeur voisin Déterminer un plan

Plus en détail

WINDOWS NT 2000: Travaux Pratiques. -Boîtier partage d'imprimante- Michel Cabaré Janvier 2002 ver 1.0

WINDOWS NT 2000: Travaux Pratiques. -Boîtier partage d'imprimante- Michel Cabaré Janvier 2002 ver 1.0 WINDOWS NT 2000: Travaux Pratiques -Boîtier partage d'imprimante- Michel Cabaré Janvier 2002 TABLE DES MATIÈRES Installer un boitier Serveur...3 Fonctions du boitier :...3 Installation du boitier Hp Jetdirect

Plus en détail

INSTALLATION DE WINDOWS 2000 SERVER POUR BCDI3. par. G.Haberer, A.Peuch, P.Saadé

INSTALLATION DE WINDOWS 2000 SERVER POUR BCDI3. par. G.Haberer, A.Peuch, P.Saadé INSTALLATION DE WINDOWS 2000 SERVER POUR BCDI3 par G.Haberer, A.Peuch, P.Saadé Table des matières 1. Installation de Windows 2000 Server.............................................. 2 2. Installation

Plus en détail

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

Base de l'informatique. Généralité et Architecture Le système d'exploitation Les logiciels Le réseau et l'extérieur (WEB) Base de l'informatique Généralité et Architecture Le système d'exploitation Les logiciels Le réseau et l'extérieur (WEB) Généralité Comment fonctionne un ordinateur? Nous définirons 3 couches Le matériel

Plus en détail

Session 8: Android File System

Session 8: Android File System Session 8: Android File System LO52 - Automne 2014 Fabien BRISSET 2 mai 2014 fabien.brisset@utbm.fr www.utbm.fr Droits de reproduction Copyright 2013-2014, Fabien Brisset, Copyright 2004-2014, Free Electrons

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

ndv access point : Utilisation

ndv access point : Utilisation NAP10-MU-121207-fr ndv access point : Utilisation www.neocoretech.com ndv AP Plus qu un simple protocole de déport d affichage, ndv AP est une solution complète pour vos points d accès offrant l affichage

Plus en détail

Conception des systèmes répartis

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

DHCP et NAT. Cyril Rabat cyril.rabat@univ-reims.fr. Master 2 ASR - Info09115 - Architecture des réseaux d entreprise 2012-2013

DHCP et NAT. Cyril Rabat cyril.rabat@univ-reims.fr. Master 2 ASR - Info09115 - Architecture des réseaux d entreprise 2012-2013 DHCP et NAT Cyril Rabat cyril.rabat@univ-reims.fr Master 2 ASR - Info09115 - Architecture des réseaux d entreprise 22-23 Cours n 9 Présentation des protocoles BOOTP et DHCP Présentation du NAT Version

Plus en détail

La mémoire. Un ordinateur. L'octet. Le bit

La mémoire. Un ordinateur. L'octet. Le bit Introduction à l informatique et à la programmation Un ordinateur Un ordinateur est une machine à calculer composée de : un processeur (ou unité centrale) qui effectue les calculs une mémoire qui conserve

Plus en détail

Windows XP niveau 2. D. Hourquin, Médiapôle St Ouen l'aumône

Windows XP niveau 2. D. Hourquin, Médiapôle St Ouen l'aumône Windows XP niveau 2 Les nouveautés de XP par rapport à 98 Installation, configuration et paramétrage : les fichiers système, la mise à jour, la gestion des périphériques classiques. Maintenance du disque

Plus en détail

Manuel d installation serveurs

Manuel d installation serveurs NU-MIS-10-12 Manuel d installation serveurs www.neocoretech.com Présentation Le déploiement de l infrastructure NDV2 se fait à partir d un fichier.iso sur le premier serveur qui sera configuré en Master

Plus en détail

Lutter contre les virus et les attaques... 15

Lutter contre les virus et les attaques... 15 Lutter contre les virus et les attaques... 15 Astuce 1 - Télécharger et installer Avast!... 17 Astuce 2 - Configurer la protection de messagerie... 18 Astuce 3 - Enregistrer Avast!... 20 Astuce 4 - Mettre

Plus en détail

18 TCP Les protocoles de domaines d applications

18 TCP Les protocoles de domaines d applications 18 TCP Les protocoles de domaines d applications Objectifs 18.1 Introduction Connaître les différentes catégories d applications et de protocoles de domaines d applications. Connaître les principaux protocoles

Plus en détail

Notice d installation des cartes 3360 et 3365

Notice d installation des cartes 3360 et 3365 Notice d installation des cartes 3360 et 3365 L architecture ci-dessous représente de manière simplifiée l utilisation des cartes IP 3360 et Wi-Fi 3365, associée à une centrale Harmonia La carte IP 3360

Plus en détail

Sauvegardes par Internet avec Rsync

Sauvegardes par Internet avec Rsync Sauvegardes par Internet avec Rsync LIVRE BLANC BackupAssist version 5.1 www.backupassist.fr Cortex I.T. Labs 2001-2008 1/16 Sommaire Introduction... 3 Configuration du matériel... 3 QNAP TS-209... 3 Netgear

Plus en détail

Pré-requis techniques

Pré-requis techniques Sommaire 1. PRÉAMBULE... 3 2. PRÉ-REQUIS TÉLÉCOM... 4 Généralités... 4 Accès Télécom supporté... 4 Accès Internet... 5 Accès VPN... 5 Dimensionnement de vos accès... 6 3. PRÉ-REQUIS POUR LES POSTES DE

Plus en détail

Activité : TP Durée : 6H00. Un PC d assemblage de marque NEC Un casque avec micro Une clé USB. Un CD de Windows XP professionnel

Activité : TP Durée : 6H00. Un PC d assemblage de marque NEC Un casque avec micro Une clé USB. Un CD de Windows XP professionnel Activité : TP Durée : 6H00 INSTALLATION ET CONFIGURATION D UN PC SOUS WINDOWS XP PROFESSIONNEL Moyens et ressources : Matériel et outillage : Cours, synthèses Logiciels Un PC d assemblage de marque NEC

Plus en détail

//////////////////////////////////////////////////////////////////// Administration systèmes et réseaux

//////////////////////////////////////////////////////////////////// Administration systèmes et réseaux ////////////////////// Administration systèmes et réseaux / INTRODUCTION Réseaux Un réseau informatique est un ensemble d'équipements reliés entre eux pour échanger des informations. Par analogie avec

Plus en détail

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

Chapitre VII : Principes des réseaux. Structure des réseaux Types de réseaux La communication Les protocoles de communication

Chapitre VII : Principes des réseaux. Structure des réseaux Types de réseaux La communication Les protocoles de communication Chapitre VII : Principes des réseaux Structure des réseaux Types de réseaux La communication Les protocoles de communication Introduction Un système réparti est une collection de processeurs (ou machines)

Plus en détail

Les clés d un réseau privé virtuel (VPN) fonctionnel

Les clés d un réseau privé virtuel (VPN) fonctionnel Les clés d un réseau privé virtuel (VPN) fonctionnel À quoi sert un «VPN»? Un «VPN» est, par définition, un réseau privé et sécurisé qui évolue dans un milieu incertain. Ce réseau permet de relier des

Plus en détail

Intérêt du NAT (Network Address Translation) Administration Réseau Niveau routage. Exemple d Intranet. Principe NAT

Intérêt du NAT (Network Address Translation) Administration Réseau Niveau routage. Exemple d Intranet. Principe NAT Administration Réseau Niveau routage Intérêt du NAT (Network Address Translation) Possibilité d utilisation d adresses privées dans l 4 2 1 Transport Réseau Liaison Physique Protocole de Transport Frontière

Plus en détail

Introduction au langage C

Introduction au langage C Introduction au langage C Cours 1: Opérations de base et premier programme Alexis Lechervy Alexis Lechervy (UNICAEN) Introduction au langage C 1 / 23 Les premiers pas Sommaire 1 Les premiers pas 2 Les

Plus en détail

1.Introduction - Modèle en couches - OSI TCP/IP

1.Introduction - Modèle en couches - OSI TCP/IP 1.Introduction - Modèle en couches - OSI TCP/IP 1.1 Introduction 1.2 Modèle en couches 1.3 Le modèle OSI 1.4 L architecture TCP/IP 1.1 Introduction Réseau Télécom - Téléinformatique? Réseau : Ensemble

Plus en détail

Hiérarchie matériel dans le monde informatique. Architecture d ordinateur : introduction. Hiérarchie matériel dans le monde informatique

Hiérarchie matériel dans le monde informatique. Architecture d ordinateur : introduction. Hiérarchie matériel dans le monde informatique Architecture d ordinateur : introduction Dimitri Galayko Introduction à l informatique, cours 1 partie 2 Septembre 2014 Association d interrupteurs: fonctions arithmétiques élémentaires Elément «NON» Elément

Plus en détail

Fiche technique CPU 315SN/PN (315-4PN33)

Fiche technique CPU 315SN/PN (315-4PN33) Fiche technique CPU 315SN/PN (315-4PN33) Données techniques N de commande 315-4PN33 Information générale Note - Caractéristiques SPEED-Bus - Données techniques de l'alimentation Alimentation (valeur nominale)

Plus en détail

Commandes Linux. Gestion des fichiers et des répertoires. Gestion des droits. Gestion des imprimantes. Formation Use-IT

Commandes Linux. Gestion des fichiers et des répertoires. Gestion des droits. Gestion des imprimantes. Formation Use-IT Commandes Linux Gestion des fichiers et des répertoires Lister les fichiers Lister les fichiers cachés Lister les répertoires d un répertoire Lister les fichiers par date Les droits Types de fichier Supprimer

Plus en détail

Prise en main. Prise en main - 0

Prise en main. Prise en main - 0 Prise en main 0404 Prise en main - 0 1- Introduction Creative Professional Merci d avoir choisi le Digital Audio System 0404 d E-MU. Nous avons conçu ce produit E-MU pour qu il soit logique, intuitif et

Plus en détail

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

INTRODUCTION A JAVA. Fichier en langage machine Exécutable INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du

Plus en détail

Carte Relais GSM (Manuel Utilisateur)

Carte Relais GSM (Manuel Utilisateur) Carte Relais GSM (Manuel Utilisateur) Carte Relais GSM Introduction Cette carte est une véritable centrale de télécommande et d alarme par GSM. Elle se connecte par un port série à un modem GSM compatible

Plus en détail

COSWIN MOBILE SERVEUR DE SYNCHRONISATION GUIDE D INSTALLATION

COSWIN MOBILE SERVEUR DE SYNCHRONISATION GUIDE D INSTALLATION SERVEUR DE SYNCHRONISATION GUIDE D INSTALLATION SOMMAIRE I. FONCTION DU SERVEUR DE SYNCHRONISATION...3 II. ELEMENTS DU SERVEUR DE SYNCHRONISATION...3 1. APPLICATION ULSA... 3 2. APPLICATION IDE.... 3 III.

Plus en détail

Performance et usage. La différence NETGEAR - R7000. Streaming HD illimitée

Performance et usage. La différence NETGEAR - R7000. Streaming HD illimitée Performance et usage Wi-Fi AC1900 - Vitesse 600Mbps (2.4GHz) + 1300 Mbps (5GHz) Processeur Dual Core 1GHz Fonctionnalités avancées pour le jeu en ligne sans latence Bande passante prioritaire pour les

Plus en détail

Manuel de System Monitor

Manuel de System Monitor Chris Schlaeger John Tapsell Chris Schlaeger Tobias Koenig Traduction française : Yves Dessertine Traduction française : Philippe Guilbert Traduction française : Robin Guitton Relecture de la documentation

Plus en détail

Cours des réseaux Informatiques (2010-2011)

Cours des réseaux Informatiques (2010-2011) Cours des réseaux Informatiques (2010-2011) Rziza Mohammed rziza@fsr.ac.ma Supports Andrew Tanenbaum : Réseaux, cours et exercices. Pascal Nicolas : cours des réseaux Informatiques, université d Angers.

Plus en détail

Ethernet Industriel Réseaux Ethway Coupleur Ethernet sur Automates Programmables. Plan. Contexte

Ethernet Industriel Réseaux Ethway Coupleur Ethernet sur Automates Programmables. Plan. Contexte Ethernet Ethernet Industriel Réseaux Ethway Coupleur Ethernet sur Automates Programmables Nozar Rafii, Yannick Graton Ecole de printemps réseau Nancy, Mars 2006 1 Contexte Objectif Architecture Modèle

Plus en détail

1. PRESENTATION DU PROJET

1. PRESENTATION DU PROJET Bac STI2D Formation des enseignants Jean-François LIEBAUT Denis PENARD SIN 63 : Prototypage d un traitement de l information analogique et numérique (PSoC) 1. PRESENTATION DU PROJET Les systèmes d éclairage

Plus en détail