Changes between Version 123 and Version 124 of Archi-1-TP10


Ignore:
Timestamp:
Nov 20, 2022, 4:32:12 PM (3 years ago)
Author:
franck
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Archi-1-TP10

    v123 v124  
    5555
    5656
    57 Cette séance illustre le [htdocs:cours/Archi-1-C10-4p.pdf cours2].
    5857Les applications de l'utilisateur s'exécutent en mode user. Dans la séance précédente, nous avons vu que les registres de commande des contrôleurs de périphériques sont placés dans l'espace d'adressage du processeur. 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'instruction `syscall`) pour demander au noyau du système d'exploitation de faire l'accès. C'est ce que nous allons voir.
    5958
     
    132131cpuid:
    133132    mfc0    $2, $15
    134     andi    $2, $2, 0xFFF
     133    andi    $2, $2, 0xFFF  // masque pour ne conserver que les 12 bits de poids faible
    135134    jr      $31
    136135}}}
     
    146145
    147146
     147
    148148= 2. Programme utilisateur mais exécuté en mode kernel
     149
    149150
    150151
     
    181182}}}
    182183
     184
    183185**Questions**
     186
    184187
    1851881. Combien de fichiers de type ldscript avons-nous ?
     
    217220}}}
    218221
     222
    219223**Exercice**
    220224
    221 - Vous n'allez pas faire grand-chose pour cette étape parce qu'elle n'est pas très utile du fait de l'impossibilité de revenir dans le noyau après l'entrée dans l'application. Affichez juste un second message depuis la fonction `main()`
     225
     226- Vous n'allez pas faire grand-chose pour cette étape parce qu'il est impossible de revenir dans le noyau après l'entrée dans l'application. Affichez juste un second message depuis la fonction `main()`
    222227
    223228
     
    341346}}}
    342347
     348
    343349**Questions**
     350
    344351
    3453521. Pour ce petit système, dans quel fichier sont placés tous les prototypes des fonctions de la libc? Est-ce ainsi pour POSIX sur LINUX?