SLOB - SLOB

В SLOB (простой список блоков) распределитель является одним из трех доступных распределители памяти в Ядро Linux. Два других - SLAB (распределитель плит ) и SLUB. Распределитель SLOB спроектирован таким образом, чтобы потреблять мало памяти для реализации и обслуживания, для использования в небольших системах, таких как встроенные системы. К сожалению, основным ограничением распределителя SLOB является то, что он сильно страдает от внутренних фрагментация.

SLOB в настоящее время использует алгоритм первого соответствия, который использует первое доступное пространство для памяти. В 2008 году ответ от Линус Торвальдс в списке рассылки Linux[1] было сделано, где он предложил использовать наиболее подходящий алгоритм, который пытается найти наиболее подходящий блок памяти. Наилучшее соответствие находит наименьшее пространство, которое соответствует необходимому доступному объему, избегая потери производительности как из-за фрагментации, так и из-за консолидации памяти.

По умолчанию используется ядро ​​Linux система распределения SLAB до версии 2.6.23, когда выделение SLUB стало по умолчанию. Когда CONFIG_SLAB флаг отключен, ядро ​​возвращается к использованию распределителя SLOB.[2] Распределитель SLOB использовался в DSLinux на Nintendo DS портативная консоль.

Смотрите также

Рекомендации

  1. ^ http://lxr.free-electrons.com/source/mm/slob.c SLOB Allocator Документация и код. Проверено 12 ноября 2010 г.
  2. ^ https://lwn.net/Articles/157944/ slob: представьте SLOB Allocator. Проверено 12 ноября 2010 года.