118 | | 1. Dans le fichier ''tp3_top.cpp'' pour définir le contenu de la !MappingTable, qui est utilisée configurer les |
119 | | composants matériels. |
120 | | 1. Dans le fichier ''soft/ldscript'' qui est utilisé par l'éditeur de liens lors de la compilation du logiciel embarqué. |
121 | | Ce fichier doit définir les adresses de base des différents segments (mémoire et périphériques). |
122 | | |
123 | | On définit donc ces valeurs dans un séparé fichier ''tp3_segmentation.h'', qui sera inclus dans tous les fichiers qui ont besoin de cette information. |
| 118 | 1. Dans le fichier ''tp3_top.cpp'' pour définir le contenu de la !MappingTable, qui est utilisée configurer les composants matériels. |
| 119 | 1. Dans le fichier ''soft/ldscript'' qui est utilisé par l'éditeur de liens lors de la compilation du logiciel embarqué, pou définir les adresses de base des différents segments (mémoire et périphériques). |
145 | | Question : Quels sont les appels système disponibles?qui (un tout petit bombre |
146 | | |
147 | | On rappelle que l'instruction ''eret'' modifie le registre SR pour que le processeur passe passe en mode ''user'' et se branche à l'adresse (registres généraux et registres systèmedu processeur |
148 | | ou du coprocesseur |
149 | | |
150 | | Puisqu'on dispose d'un contrôleur de terminal dans l'architecture, le premier programme que vous allez exécuter se contentera d'afficher le célèbre ''hello world'' sur le terminal, en utilisant la fonction C ''fputs()''. N'oubliez pas de |
151 | | terminer proprement le programme par un appel à la fonction C ''exit()''. |
152 | | |
153 | | Lancez l'exécution du Makefile. Un fichier ''soft.bin'' doit doit être créé dans le répertoire ''soft''. |
| 141 | Question : Quels sont les appels système qui permettent d'accéder à un terminal TTY ? |
| 142 | |
| 143 | On rappelle que l'instruction ''eret'' de sortie du GIET ou du code de boot effectue principalemnt deux actions : |
| 144 | 1. Elle modifie le registre SR (registre 12 du coprocesseur ''système'') pour que le processeur retourne dans le mode où il était lorsqu'il a été dérouté par une interruption, une exception ou un appel système. |
| 145 | 1. Elle effectue un branchement à l'adresse contenue dans le registre EPC (registre 14 du coprocesseur ''système''). |
| 146 | |
| 147 | Question : Quels sont les registres initialisés par le code de boot ? pouquoi ces initialisations ? |
| 148 | |
| 149 | Puisqu'on dispose d'un contrôleur de terminal dans l'architecture, le premier programme que vous allez exécuter se contentera d'afficher le célèbre ''hello world'' sur le terminal. Complêtez le fichier ''main.c'' en utilisant la fonction C ''fputs()''. N'oubliez pas de terminer proprement le programme par un appel à la fonction C ''exit()''. |
| 150 | |
| 151 | Lancez l'exécution du Makefile. Un fichier ''soft.bin'' doit doit être créé dans le répertoire ''soft''. |
| 152 | |
| 153 | le fichier ''soft.bin.txt'' contient un version desassemblée de ce code binaire, qui vous permet de visualiser le |
| 154 | code qui va être chagé dans les mémoires du prototype virtuel, pour exécution par le processeur MIPS32. |