Changes between Version 114 and Version 115 of Archi-1-TP9


Ignore:
Timestamp:
Dec 16, 2020, 1:56:13 PM (4 years ago)
Author:
franck
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Archi-1-TP9

    v114 v115  
    44[[PageOutline]]
    55{{{#!html
    6 <h1> <font size="+2"> Boot et premier programme en mode kernel
    7 </font></h1>
    8 }}}
     6<h1> <font size="+2"> Application simple en mode utilisateur</font></h1>
     7}}}
     8
     9Avant de faire cette séance, vous devez avoir fait la [wiki:AS5-TME9 séance 1].
    910
    1011Cette page décrit la séance complète : TD et TP. Elle commence par des exercices à faire sur papier et puis elle continue et se termine par des questions sur le code et quelques exercices de codage simples à écrire et à tester sur le prototype.
    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''
     12La 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
     20Les 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
     22Dans cette séance, nous allons découper le code en 4 couches:
     231. le code de boot (utilisé seulement au démarrage)
     242. le noyau du système d'exploitation (contenant, entre autres, la fonction d'initialisation init() et le code des appels systèmes syscall)
     253. la bibliothèque de fonctions standards (libc)
     264. l'application
    1927
    2028
    2129
    2230= Récupération du code du TP
     31
    2332
    2433