Changes between Version 36 and Version 37 of WikiStart
- Timestamp:
- Dec 6, 2020, 5:09:43 PM (4 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
WikiStart
v36 v37 86 86 87 87 88 = 4. Séances de T ME88 = 4. Séances de TD et TME 89 89 90 90 91 les séances commencent par des questions traitées en TD puis elles continuent par les travaux pratiques à faire vous même.\\**>>> Cliquez sur les titres pour accéder aux textes des séances. <<<** 91 92 92 **>>> Cliquez sur les titres pour accéder aux textes de TME <<<** 93 94 == [wiki:AS5-TME9 TME-1. Boot et premier programme en mode kernel] 93 == [wiki:AS5-TME9 Séance-1. Boot et premier programme en mode kernel] 95 94 96 95 Dans cette séance, il s'agit de comprendre comment un ordinateur simple démarre et comment le programmeur peut interagir avec le monde extérieur via les contrôleurs de périphériques. Il s'agit également d'utiliser le langage C pour les programmes et donc la chaîne de compilation ''GCC'' ainsi que d'introduire l'usage d'un `Makefile`. Nous décrivons aussi les fonctions C pour les entrées-sorties telles que `printf()` et `gets()`. Pour toutes les étapes, le nom de l'exécutable produit est `kernel.x`. … … 98 97 L'architecture de l'ordinateur utilisé dans cette séance est composée d'un processeur MIPS, d'une mémoire multisegment et d'un contrôleur de terminal qui peut contrôler jusqu'à 4 terminaux indépendants. 99 98 100 == [wiki:AS5-TME10 TME-2. Application simple en mode utilisateur]99 == [wiki:AS5-TME10 Séance-2. Application simple en mode utilisateur] 101 100 102 101 Dans cette séance, nous utilisons les deux modes d'exécution du processeur, le mode ''kernel'' et le mode ''user''. En mode ''kernel'', le processeur a droit à toutes les instructions et à tout l'espace d'adressage. En mode ''user'', le processeur est bridé, certaines instructions sont interdites et seule une partie de l'espace d'adressage est autorisé. Nous allons voir comment se passe le passage d'un mode à l'autre. Dans toutes les étapes, le code se répartie dans deux exécutables: `kernel.x` et `user.x`. Nous allons voir en particulier comment fonctionne le gestionnaire d'appel système. 103 102 104 == [wiki:AS5-TME11 TME-3. Gestionnaire d'interruption]103 == [wiki:AS5-TME11 Scéance-3. Gestionnaire d'interruption] 105 104 106 105 Dans cette troisième séance, il s'agit de comprendre comment fonctionne le gestionnaire des interruptions. Pour cela, nous allons ajouter dans l'architecture deux autres composants : un timer qui compte le temps (ou ici qui compte les cycles) et un concentrateur d'interruption. Ce concentrateur permet de mixer toutes les lignes d'interruptions des contrôleurs de périphériques pour n'en produire qu'une seule à destination du processeur MIPS.