Пример последовательности
Пример 4.2. Пример последовательности запросов памяти
while(TRUE) {
void * bl = malloc(random (10)); /* Случайный размер от 0 до 10 байт */ void * Ь2 = malloc(random(lO)+10); Л ........ от 10 до 20 байт */
if(Ы == NULL && Ь2 == NULL) /* Если памяти нет */
break; /* выйти из цикла */
free(b1);
void * ЬЗ = malloc(150);
/* Скорее всего, память не будет выделена */
В результате исполнения такой программы вся доступная память будет "порезана на лапшу": между любыми двумя свободными блоками будет размещен занятый блок меньшего размера (Рисунок 4.4)