Changes between Version 43 and Version 44 of AS6-TME-B6
- Timestamp:
- Mar 29, 2022, 5:52:08 PM (3 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
AS6-TME-B6
v43 v44 262 262 263 263 Pour la partie pratique, vous allez devoir programmer un peu. Les premières questions sont assez faciles, les dernières un peu moins, faites ce que vous pouvez. Je ne vous demande pas de faire tous les exercices, d'autant qu'il n'y aura pas de correction pour le moment (faute de temps). Le but est de vous «forcer» à entrer dans le code et même des petites modifications suffisent. 264 Les exercices sont classés par niveau de difficultés supposées (on est jamais à l'abri de surprise) 265 266 En préalable de tous les exercices, quelques questions sur le code. 267 268 == B.1. Transformer l'allocateur first fit et allocateur next fit 269 270 L'allocateur first fit parcourt la liste des blocs depuis le tout premier jusqu'à la fin à la recherche du premier bloc non plein assez grand pour l'objet à allouer. 271 272 273 == B.2. Transformer l'allocateur first/next fit et allocateur best fit 274 275 == B.3. Tester que les piles n'ont pas débordées 276 277 == B.4. Faire en sorte que les listes d'objets libres du noyau ne retombent à 0 264 278 265 279 Dans le code, on peut voir qu'il existe un tableau `Objects[]` contenant de cases qu'il existe de taille d'objets possibles (mesurée en nombre de lignes) et dont chaque case contient le nombre d'objet libre 266 280 de listes d'objets libres, indexé par les identifiants de slab (l'identifiant de slab est la taille des objets qu'il contient en nombre de lignes). Le tableau `Objects` contiens le nombre d'objets alloués. Il faudrait un autre tableau semblable contenant le nombre d'objets libres disponible. 267 268 269 270