Changes between Version 25 and Version 26 of UserManuel
- Timestamp:
- Jan 20, 2008, 3:07:16 PM (17 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
UserManuel
v25 v26 1 = Manuel d 'utilisateur : =1 = Manuel de l’utilisateur : = 2 2 [[PageOutline]] 3 == I. Organisation des bibliothèques système == 3 4 == 1. Organisation des bibliothèques système == 4 5 La figure suivante illustre la modalisation du système : 6 [[Image(modalisation_mutekp.PNG, nolink)]][[BR]] 5 7 6 7 [[Image(modalisation_mutekp.PNG, nolink)]][[BR]]8 8 Les bibliothèques constituant le système sont : 9 9 * pthread : contient l'interface système des Threads POSIX. … … 11 11 * mwmr : contient l’interface système des FIFO MWMR. 12 12 * sys : contient le code système qui ne dépend pas de l'architecture de la plate-forme ou de type des processeurs utilisés. 13 * cpu : contient le code système en assembleur qui dépend de type de sprocesseurs de la plate-forme.14 * arch : contient le code C qui dépend de la plate-forme tel que les configurations système vis-à-vis des composants de la plate-forme, les ISR d’interruption des différant types de cibles ..etc.13 * cpu : contient le code système en assembleur qui dépend de type de processeurs de la plate-forme. 14 * arch : contient le code C qui dépend de la plate-forme, tel que les configurations système vis-à-vis des composants de la plate-forme, les ISR d’interruption des différents types de cibles…, etc. 15 15 16 En cas de modification au niveau de la configuration matériel , il suffit d’adapter le code système des deux bibliothèques cpu et arch pour pouvoir déployer Mutek''P'' sur la nouvelle plate-forme.16 En cas de modification au niveau de la configuration matérielle, il suffit d’adapter le code système des deux bibliothèques cpu et arch pour pouvoir déployer Mutek''P'' sur la nouvelle plate-forme. 17 17 18 == II. API du système == 19 Mutek''P'' fourni trois bibliothèques pour les Threads de l’application : 18 == 2. API du système == 19 20 Mutek''P'' fournit trois bibliothèques pour les Threads de l’application : 20 21 21 22 * Un sous-ensemble de l'API des threads POSIX : 22 * [wiki:pthread_attr_init]: initialise rla structure d’un attribut.23 * [wiki:pthread_create]: crée run Thread24 * [wiki:pthread_exit]: met trefin à une tâche avec une valeur de retour25 * [wiki:pthread_self]: récup érer l’indentité du Thread appelant.26 * [wiki:pthread_equal]: teste r l’égalité entre deux identificateur.27 * [wiki:pthread_yield]: c éderle processeur pour un autre Thread.28 * [wiki:pthread_join]: attend rela fin d’un Thread.29 * [wiki:pthread_spin_init]: initialise run verrou à une attente active.30 * [wiki:pthread_spin_destroy]: détrui reun verrou.31 * [wiki:pthread_spin_lock]: verrouille rle verrou à une attente active.23 * [wiki:pthread_attr_init]: initialise la structure d’un attribut. 24 * [wiki:pthread_create]: crée un Thread 25 * [wiki:pthread_exit]: met fin à une tâche avec une valeur de retour 26 * [wiki:pthread_self]: récupère l’identité du Thread appelant. 27 * [wiki:pthread_equal]: teste l’égalité entre deux identificateurs. 28 * [wiki:pthread_yield]: cède le processeur pour un autre Thread. 29 * [wiki:pthread_join]: attend la fin d’un Thread. 30 * [wiki:pthread_spin_init]: initialise un verrou à une attente active. 31 * [wiki:pthread_spin_destroy]: détruit un verrou. 32 * [wiki:pthread_spin_lock]: verrouille le verrou à une attente active. 32 33 * [wiki:pthread_spin_trylock]: version non bloquante de pthread_spin_lock. 33 * [wiki:pthread_spin_unlock]: déverrouille rle verrou à une attente active.34 * [wiki:pthread_spin_unlock]: déverrouille le verrou à une attente active. 34 35 35 36 * Les fonctions implémentant le protocole MWMR : 36 * [wiki:mwmr_read]: l ecture d’une FIFO MWMR.37 * [wiki:mwmr_write]: écrit uredans une FIFO MWMR.38 * [wiki:mwmr_init]: cré ation et initialisation d’une FIFO MWMR.37 * [wiki:mwmr_read]: lit une FIFO MWMR. 38 * [wiki:mwmr_write]: écrit dans une FIFO MWMR. 39 * [wiki:mwmr_init]: crée et initialise une FIFO MWMR. 39 40 40 41 * Quelques fonctions de la bibliothèque libC : 41 * [wiki:printf]: affiche rune chaîne de caractères formatée sur le terminal utilisateur (tty1).42 * [wiki:sprintf]: écri reune chaîne de caractères formatée dans un buffer.43 * [wiki:fprintf]: affiche rune chaîne de caractères formatée sur un terminal donné.44 * [wiki:puts]: affiche rune chaîne de caractères non formatée sur le terminal utilisateur (tty1).45 * [wiki:strlen]: calcule rla longueur d'une chaîne de caractères.46 * [wiki:malloc]: allo cationde mémoire dynamique.47 * [wiki:read]: pour lireun nombre fixe d'octets à partir du buffer système.48 * [wiki:write]: pour écrirele contenu d'un buffer sur un terminal.49 * [wiki:memset]: rempli rune zone mémoire par une valeur donnée.50 * [wiki:memcpy]: copie une zone moire source vers une autre zone mémoire distin ation.42 * [wiki:printf]: affiche une chaîne de caractères formatée sur le terminal utilisateur (tty1). 43 * [wiki:sprintf]: écrit une chaîne de caractères formatée dans un buffer. 44 * [wiki:fprintf]: affiche une chaîne de caractères formatée sur un terminal donné. 45 * [wiki:puts]: affiche une chaîne de caractères non formatée sur le terminal utilisateur (tty1). 46 * [wiki:strlen]: calcule la longueur d'une chaîne de caractères. 47 * [wiki:malloc]: alloue de mémoire dynamique. 48 * [wiki:read]: lit un nombre fixe d'octets à partir du buffer système. 49 * [wiki:write]: écrit le contenu d'un buffer sur un terminal. 50 * [wiki:memset]: remplie une zone mémoire par une valeur donnée. 51 * [wiki:memcpy]: copie une zone moire source vers une autre zone mémoire distinction. 51 52 52 53 * Appels propres à l'implémentation Mutek''p'' : … … 54 55 * [wiki:pthread_profiling_np] : permet d'afficher, sur le terminal système (tty0), des statistiques sur le déroulement de l'application et la réactivité du système. 55 56 56 == III. Description de la plateforme == 57 La figure suivante illustre la plateform matérielle [[BR]] 57 == 3. Description de la plateforme == 58 59 La figure suivante illustre la plateforme matérielle [[BR]] 58 60 [[Image(Plate-forme.PNG, nolink)]] 59 61 [[BR]] 60 Composants de la plate -forme :62 Composants de la plateforme : 61 63 * Type MPSoCs 1 seul cluster 62 64 * 4 processeurs de type MIPS R3000 avec cache Instruction et Data (16 lignes / 8 mots). 63 * Un inter -connect VCI (Virtual Component Interconnect)65 * Un interconnect VCI (Virtual Component Interconnect) 64 66 * Une RAM multi segments 65 67 * 8 segments … … 70 72 * 5 timers 71 73 * Un ICU : concentrateur d’interruptions 72 * relié au processeur 0 pour 1 timer set les TTY74 * relié au processeur 0 pour 1 timer et les TTY 73 75 * Un contrôleur de verrous matériels 74 == IV. Compilation d’une application ==