137 | | 1. |
138 | | {{{#!protected ------------------------------------------------------------------ |
139 | | ''' |
140 | | * |
141 | | ''' |
142 | | }}} |
143 | | 1. |
144 | | {{{#!protected ------------------------------------------------------------------ |
145 | | ''' |
146 | | * |
147 | | ''' |
148 | | }}} |
149 | | 1. |
| 137 | 1. Que signifie que les objets alloués sont alignés sur les lignes de cache ? Et quels sont les bénéfices de cette contrainte ? |
| 138 | {{{#!protected ------------------------------------------------------------------ |
| 139 | ''' |
| 140 | * |
| 141 | ''' |
| 142 | }}} |
| 143 | 1. L'allocateur d'objets (nommés blocs dans le rappel de cours au dessus) pour l'application utilise une politique ''first fit''. Qu'est-ce que cela signifie ? Quels sont les autres ? existe-il une politique meilleure que les autres et pour quel critère ? |
| 144 | {{{#!protected ------------------------------------------------------------------ |
| 145 | ''' |
| 146 | * |
| 147 | ''' |
| 148 | }}} |
| 149 | 1. Pour libérer un objet alloué par l'allocateur de l'application, la fonction `free()` reçoit juste le pointeur rendu par `malloc()`. Comment la fonction `free()` connait-elle la taille qui avait été allouée ? |