49 | | Cette page est composée de deux parties, une partie TD et une partie TP. |
50 | | |
51 | | Pour la partie TD, vous avez des questions dont les réponses sont pour la plupart dans le cours. Je vous demande d'y répondre et de formuler vos réponses dans le compte-rendu. Vous avez un corrigé qui peut vous aider, mais je vous demande de ne pas le lire avant d'avoir vous-même répondu aux questions. Le corrigé est là pour que vous ne restiez pas bloqué mais si vous ne cherchez pas à répondre vous-même, c'est contre-productif. Il n'y a pas forcément toutes les réponses, en particulier sur la partie TP. |
52 | | |
53 | | Les comptes-rendus sont notés, mais pas le détail des réponses, ce que je souhaite, c'est que vous répondiez par vous-même parce que les questions pourraient être posées à l'examen alors, il est utile que vous arriviez à formuler des réponses par vous-même. Si vous êtes bloqué et que vous ne comprenez pas non plus la réponse, n'hésitez pas à le dire, c'est qu'elle n'est pas claire et je la modifierai. |
54 | | |
55 | | Pour le TP, chaque étape représente un nouveau concept et vous trouverez (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. |
56 | | |
57 | | Les premières étapes du TP sont uniquement dans le noyau et le MIPS est alors en mode kernel puis, à la fin, les applications de l'utilisateur s'exécutent en mode user, au-dessus d'une petite libc, à laquelle vous devez ajouter un service de copie de mémoire (`memcpy`) |
58 | | |
59 | | |
60 | | **Récupération du code du TP** |
61 | | |
62 | | |
63 | | * Vous devez être sur une **machine Linux**. |
64 | | * Vous devez avoir installer l'environnement, sinon relisez [wiki:Howto-TP Configuration de l'environnement] |
65 | | * Dans le `terminal`, exécutez la commande **`cd ; tree -L 2 2kO6`**. Vous devriez obtenir ceci: |
66 | | {{{ |
67 | | 2kO6/ |
68 | | ├── bin |
69 | | │ ├── almo1.x Simulateur du SoC almo1 |
70 | | │ ├── fb/ Code source de la fenêtre graphique |
71 | | │ ├── gcc/ Crosscompilateur MIPS |
72 | | │ ├── soclib-fb fenêtre graphique exécutée par le simulateur |
73 | | │ ├── Source-me.sh Script shell pour configurer l'environnement |
74 | | │ └── tracelog Script awk pour mettre en forme la trace d'exécution |
75 | | ├── LICENSE Licence MIT (très ouverte) |
76 | | ├── Makefile Makefile avec des règles générales (clean ou backup) |
77 | | ├── README.md Explication du projet (en cours de rédaction) |
78 | | └── tp1 Premier TP |
79 | | ├── 00_do_first/ - test de la plateforme et de l'environnement |
80 | | ├── 01_kinit/ - Démarrage du noyau |
81 | | ├── 02_driver/ - API pour l'acces au TTY |
82 | | ├── 03_klibc/ - API de fonctions standards pour le noyau |
83 | | └── 04_libc/ - API de fonctions standards pour l'application |
84 | | }}} |
85 | | |
86 | | |
87 | | |
88 | | |
89 | | == |
| 49 | |
| 50 | |