Требования к функциональности
Описанный подход имеет несколько недостатков. Технология является абсолютно негибкой, так как размеры всех таблиц и кэшей определяются на момент загрузки системы (чаще всего даже на стадии компиляции системы) и не могут быть изменены при необходимости. Размеры таких таблиц, принятые по умолчанию, выбираются разработчиками систем на основе анализа их использования в обычных рабочих группах. Хотя системные администраторы, как правило, обладают возможностью настройки размеров таблиц, чаще всего такие действия реализуются методом проб и ошибок. Если задать слишком маленький размер таблиц, это приведет к их переполнению и возможному отказу системы без предупреждения. Если размер таблиц слишком велик, теряются впустую большие объемы памяти, а приложениям становится доступно меньшее ее количество. Это приводит к снижению общей производительности системы.
Становится очевидным, что ядру необходимо общецелевое средство выделения памяти, которое умеет эффективно обрабатывать как объемные, так и небольшие области памяти. В следующем разделе будут кратко описаны требования, предъявляемые к распределителю памяти, а также критерии, по которым можно судить о его различных реализациях. Затем вы увидите описание и анализ некоторых распределителей памяти, применяемых в современных версиях UNIX.
Распределитель памяти ядра (kernel memory allocator или КМА) обслуживает запросы на выделение динамической памяти от различных клиентов, таких как анализатор полных имен, STREAMS или средства взаимодействия процессов. КМА не занимается запросами на обслуживание страничной памятью прикладных процессов, за это отвечает страничная подсистема.
При загрузке системы ядро сначала производит резервирование памяти для собственных кодов и статических структур данных, а также некоторых встроенных областей, таких как буферный кэш. Распределитель страничного уровня осуществляет управление остальной частью физической памяти, которая может быть использована для ее динамического выделения в результате как запросов ядра, так и прикладных процессов.
Если вы хотите похудеть, но устали сидеть на изнуряющих диетах и не вылезать из спортзала, попробуйте уникальное средство – блокатор калорий. ПБК-20 Новое средство в борьбе с лишним весом – это совершенно безопасный натуральный биокомплекс. В результате вам гарантирована быстрая потеря веса без вреда для здоровья и при этом – никаких страданий от голода и многочасовых тренировок!