Pitch MALLOC
Anas Buyumad Gauthier Cler
Sommaire
- Présentation
- Fonctionnement
- Problèmes rencontrés
- Améliorations possibles
- Questions
PrésentatioN
Allouer dynamiquement de la mémoire
Élargir ses connaissances sur les différents principes de la gestion de mémoire
et d'optimisation
Schématisation de la mémoire
Modèle appliqué pour
- malloc
- free
- realloc
- calloc
Principe de Fonctionnement
brk(ADRESSE)
Déplacer le break
Redimensionner le break
sbrk(INCREMENT)
#define ALIGNEMENT sizeof(void *)
(size + (ALIGNEMENT - 1)) & ~(ALIGNEMENT - 1)
Alignement mémoire
Header
Pointeur renvoyé
Espace alloué
Header
Espace disponible
Header
...
Utilisation d'un Header comprenant
- Magic number
- Taille du bloc
- Disponibilité
- Pointeurs sur les blocs suivants et précédents
Implémentation «Thread Safe »
- Utilisation d'un système de verrou
Problèmes rencontrés
- Très difficile à déboguer
- Stabilité
- Implémentation influencée par les tests de la Moulinette
Améliorations possibles
- Optimisations diverses
- Allocation par page de mémoire
- FreeList
Questions
Malloc
By googo
Malloc
- 468