Наиболее Подходящий Алгоритм Управления Памятью?

#memory #memory-management #malloc #best-fit

Вопрос:

Я читал об алгоритме next-fit для управления памятью, но не смог найти ответа на конкретную деталь.

От: https://www.geeksforgeeks.org/program-for-next-fit-algorithm-in-memory-management/

Следующая подгонка-это модифицированная версия «первой подгонки». Он начинается как первый подходящий, чтобы найти свободный раздел, но при следующем вызове он начинает поиск с того места, на котором остановился, а не с самого начала.

Что делать, если не было найдено совпадения с точкой x и тем, что будет после (до последнего блока). будет ли этот алгоритм продолжать циклически искать от 0 до x или он застрянет?

(вероятно, ответ будет утвердительным, так как в этом гораздо больше смысла, но я не уверен, и я действительно хочу знать эту информацию).

Ответ №1:

Да, это будет рассматривать память как циклический буфер. Последовательность поиска такова x->end->begin->x . Если вы снова достигнете начальной точки x , поиск завершится неудачно, поэтому запрошенная память недоступна.

Что вы будете делать дальше, зависит от более ранних деталей — можете ли вы каким-то образом сделать доступным больший блок? Перетасовать память? В простых случаях (в конце концов, это учебник) вы просто терпите неудачу.