Changes between Version 6 and Version 7 of FAQ-oct19-S2
- Timestamp:
- Jun 25, 2020, 7:50:16 PM (5 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
FAQ-oct19-S2
v6 v7 28 28 > C'est donc une suite de `sw $x, d($29)` où `d` est toujours positif et multiple de 4. 29 29 >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. 31 31 > des fonctions et qu'elle a donc besoin de changer la valeur des registres `$4` à `$7` alors qu'elle en a besoin après 32 32 > ses fonctions appelées. … … 37 37 >2. restaurer l'état du pointeur de pile `addiu $29, $29, X` 38 38 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. 40 43