12 | | La partie pratique est découpée en 4 étapes. Pour chaque étape, nous donnons (1) une brève description, (2) une liste des objectifs principaux de l'étape, (3) une liste des fichiers avec un bref commentaire sur chaque fichier, (4) une liste de questions simples dont les réponses sont dans le code, le cours ou le TD et enfin (5) un exercice de codage. |
13 | | |
14 | | |
15 | | |
16 | | = Préambule |
17 | | |
18 | | |
19 | | |
20 | | Les applications de l'utilisateur s'exécute en mode user. Dans la séance précédente, nous avons vu que les registres de commande des contrôleurs de périphérique sont placés dans l'espace d'adressage du processeur. Et bien, les adresses de ces registres ont été placées dans la partie de l'espace d'adressage interdite en mode user. Ainsi, une application n'a pas un accès direct aux périphériques, elle doit utiliser des appels système (avec l'instructions syscall) pour demander au noyau du système d'exploitation. |
21 | | |
22 | | Dans cette séance, nous allons découper le code en 4 couches: |
23 | | 1. le code de boot (utilisé seulement au démarrage) |
24 | | 2. le noyau du système d'exploitation (contenant, entre autres, la fonction d'initialisation init() et le code des appels systèmes syscall) |
25 | | 3. la bibliothèque de fonctions standards (libc) |
26 | | 4. l'application |
| 11 | La partie pratique est découpée en 5 étapes. Pour chaque étape, nous donnons (1) une brève description, (2) une liste des objectifs principaux de l'étape, (3) une liste des fichiers avec un bref commentaire sur chaque fichier, (4) une liste de questions simples dont les réponses sont dans le code, le cours ou le TD et enfin (5) un exercice de codage. |
| 12 | |
| 13 | **IMPORTANT\\Avant de faire cette séance, vous devez avoir lu les documents suivants** : |
| 14 | * [wiki: Description des objectifs de cette séance et des suivantes] : ''obligatoire'' |
| 15 | * [htdocs:cours/AS5-9-2p.pdf Cours de démarrage présentant l'architecture matérielle et logicielle que vous allez manipuler] ''obligatoire'' |
| 16 | * [htdocs:cours/doc_MIPS32.pdf Document sur l'assembleur du MIPS et la convention d'appel des fonctions] : ''recommandé'' |
| 17 | * [wiki:Howto-TP Configuration de l'environnement des TP] : ''obligatoire'' |
| 18 | * [wiki:Doc-MIPS-Archi-Asm-kernel Documentation sur le mode kernel du MIPS32] : ''optionnel pour cette séance'' |