Сети NetWare 3.12-4.1.Книга ответов



                    


Распределение памяти - часть 2


Освободившаяся область может возвращаться в кэш-буфер файлов несмежными блоками.

Частая загрузка и выгрузка модулей может приводить к фрагментации памяти и невозможности удовлетворения запроса на непрерывную область памяти.

Пул постоянной памяти выделяется для долговременного использования коммуникационными буферами и кэш-буферами каталогов.
Подпул полупостоянной памяти используется дисковыми и сетевыми драйверами и может возвращаться в постоянную память.

Пул кратковременно выделяемой памяти (Alloc Short Term Memory) используется планами драйвов (drive maps), таблицами SAP, RIP, управления очередями, соединений пользователей. Неиспользуемая память остается в пуле для повторного применения.

Максимальный размер пула кратковременно выделяемой памяти (только в NetWare 3.x) задается командой

SET MAXIMUM ALLOC SHORT TERM MEMORY = 8388608 (50000-33554432 байт).

В NetWare 4.x память разделяется на пять пулов:
Пул выделенных блоков (allocated blocks pool) - область буферов размером 4 Кбайт, выделенных из пула кэш-буферов для загрузки NLM. Освободившиеся блоки возвращаются обратно в пул кэш-буферов.
Пул кэш-буферов (cache buffers pool) - в него собирается вся свободная память сервера. Используется для кэширования чтения и записи файлов, из него память обратимо выделяется в пул выделенных блоков.
Пул перемещаемой кэш-памяти (cache movable memory pool) - память для внутренних системных таблиц с изменяющимся размером (хеш-таблиц, таблиц размещения файлов и каталогов).
Пул фиксированной кэш-памяти (cache non-movable memory pool) - небольшая область для хранения системной информации и работы компрессора файлов.
Операционная система (operating system) - 3-4 Мбайт памяти для кода и данных ОС (Code and Data Memory).

Управление проверкой повреждений памяти при выделении блоков:

SET ALLOC MEMORY CHECK FLAG=OFF (ON)

В NetWare 4.x решена проблема фрагментации памяти. Для этого периодически запускается процесс "сборки мусора" (garbage collection), который при наличии достаточного количества и объема освободившихся блоков производит дефрагменацию памяти пула кэш-буферов, собирая всю свободную память в одну непрерывную область.




Содержание  Назад  Вперед