Changes between Version 17 and Version 18 of AS6-TME-B6
- Timestamp:
- Mar 28, 2022, 9:22:45 AM (3 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
AS6-TME-B6
v17 v18 65 65 - L'API de cet allocateur est `void * kmalloc(size_t)` et `void free(void *, size_t)` 66 66 - `void * kmalloc(size)` (politique de remplissable `slab`) 67 - L'allocateur d'objets du noyau gère deslistes d'objets libres de même taille.67 - L'allocateur d'objets du noyau gère un tableau de listes d'objets libres de même taille. 68 68 - Au départ, toutes les listes d'objets libres sont vides. 69 69 - Lorsqu'une demande d'allocation est faite pour une certaine taille `T` et que la liste des objets libres de cette taille `T` est vide alors l'allocateur alloue une dalle (ou `slab` en anglais) de 4kO. … … 88 88 89 89 90 1. 91 {{{#!protected ------------------------------------------------------------------ 92 ''' 93 * 94 ''' 95 }}} 96 1. 97 {{{#!protected ------------------------------------------------------------------ 98 ''' 99 * 100 ''' 101 }}} 102 1. 90 1. L'allocation dynamique est confrontée au problème de fragmentation de l'espace libre. Il y a deux types de fragmentation, définissez-les. 91 {{{#!protected ------------------------------------------------------------------ 92 ''' 93 * 94 ''' 95 }}} 96 1. Pourquoi l'API `list` propose-t-elle un double chaînage pour ses éléments ? 97 {{{#!protected ------------------------------------------------------------------ 98 ''' 99 * 100 ''' 101 }}} 102 1. Comment est-il possible de trouver le pointeur sur la structure à partir du pointeur sur l'un de ses champs ? 103 103 {{{#!protected ------------------------------------------------------------------ 104 104 '''