Changes between Version 6 and Version 7 of FAQ-oct19-S2


Ignore:
Timestamp:
Jun 25, 2020, 7:50:16 PM (5 years ago)
Author:
franck
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • FAQ-oct19-S2

    v6 v7  
    2828>   C'est donc une suite de `sw $x, d($29)` où `d` est toujours positif et multiple de 4.
    2929>3. Sauver les arguments reçus par `g()` (dans `$4` à `$7`) à la place réservée par `f()` (c'est-à-dire dans le
    30 >   contexte de `f()`).  Cette étape n'est pas toujours présente, elle n'est utile que si `g()` appelle elle-même.
     30>   contexte de `f()`).  [[BR]]Cette étape n'est pas toujours présente, elle n'est utile que si `g()` appelle elle-même.
    3131>   des fonctions et qu'elle a donc besoin de changer la valeur des registres `$4` à `$7` alors qu'elle en a besoin après
    3232>   ses fonctions appelées.
     
    3737>2. restaurer l'état du pointeur de pile `addiu $29, $29, X`
    3838
    39 * **Quand on est en mode user peut on masquer les interruptions ?**[[BR]]
     39* **Quand on est en mode user peut on masquer les interruptions ?**[[BR]][[BR]]
     40>Non, c'est impossible parce que pour masquer les interruptions, il faut :
     41>* soit écrire dans le registre status en utilisant l'instruction mtc0.[[BR]]Or cette instruction est interdite en mode user, l'utiliser provoque une exception.
     42>* soit écrire dans le registre de masque de l'ICU dont l'adresse est "mappée" (placée) au-delà de 0x80000000.[[BR]] Or y écrire est interdit en mode user, cela provoque une exception.
    4043