faqs.org.ru

 Главная > Локальные сети > FAQ по LAN и Netware >

Производительность, Настройка и Оптимизация

Секция 2 из 2 - Предыдущая - Следующая

Выключение такой проверки увеличивает риск повреждение данных на диске
сервера. Отключайте ее только тогда, когда вы уверены в надежности дисков и
когда диски включены зеркально.

20. Сгребание мусора
--------------------
(V.G. Этот аспект более подpобно pассмотpен в файле MEMORY.TXT данного FAQ'а)

СГРЕБАНИЕ (или УБОРКА) МУСОРА (garbage collection) - это процесс, аналогичный
дефрагментации диска, но выполняемый для системной памяти, который работает
постоянно. (С.П.А. - я намеренно использовал слово <сгребание> вместо
общепринятой <уборки> - мы же не выкидываем <мусор>, а лишь <сгребаем> его в
кучку, чтобы сделать из него что-нибудь полезное)

Цель УБОРКИ МУСОРА - навести порядок в системной памяти, переупорядочив ее
занятые участки. Уборка мусора важна когда, например, NLM-модули получают
небольшие участки памяти для инициализации. А потом перемещаются в бОльшие
участки, где и выполняют свою работу. Если не собрать эти маленькие кусочки
в кучу после окончания инициализации модуля, то память становится
фрагментированной и непригодной к использованию: образуется множество мелких
участков памяти, непригодных для загрузки в них модулей или системных данных.


Внутренняя программа операционной системы, отвечающая за сгребание мусора,
сортирует все (С.П.А. - пустые, полагаю) элементы связных списков
NLM-модулей и группирует их в бОльшие блоки. Эти большие блоки подключаются
к <голове> соответствующего списка. Если <уборщик> умудряется освободить
полную страницу памяти (4К), то эта память возвращается кэшу. Эта внутренняя
программа может быть включена или выключена и выполняется в фоновом режиме.

Провести уборку мусора можно из модуля MONITOR. В NW4.1x она включается в
разделе Memory Utilization, после выбора любого модуля из представленного на
экране перечня. Выбрав модуль, вы можете нажать либо F3 для сгребания мусора
для этого конкретного модуля, либо вы можете нажать F5 для проведения
общесистемной уборки. (С.П.А. - внимательно смотри на подсказки в нижней
строке экрана). Для NW5 вы можете очистить и память пространства адресов,
нажав F4 в разделе Virtual Memory, Address Spaces.

(С.П.А. - В следующем абзаце идет речь об <этих параметрах>, однако ни разу
не упоминается, о каких именно. Вот что я нашел у себя на консоли (все три
параметра могут быть заданы в startup.ncf):

Garbage Collection Interval:  15 minutes
Максимальное время между уборками (от 1 минуты до 1 часа)

Number of Frees For Garbage Collection:  500
Минимальное количество свободных блоков, после которого начинается уборка
(от 100 до 100000)

Minimum Free Memory For Garbage Collection:  4000
Минимальное количество байт, которые может освободить сгребание мусора. Если
общий размер памяти, которую могла бы освободить уборка, меньше этого
предела, то уборка не производится (от 1000 до 1000000)

Пользователи систем с малым количеством памяти, или разработчики,
оптимизирующие свои NLM, могут попытаться подстроить эти параметры. Если NLM
занимает и освобождает большие куски памяти во время своей работы, то
уменьшите значение Number of Frees For Garbage Collection. Если NLM часто
выполняет выделение/освобождение памяти, то увеличьте это значение. Если NLM
несколько раз получает и освобождает один и тот же участок (С.П.А. - или
размер?) памяти, то задайте Minimum Free Memory For Garbage Collection так,
чтобы это значение было больше размера этого куска.

Имейте в виду, что параметры уборки мусора, задаваемые через SET, являются
глобальными, т.е. они влияют на  все модули. Поэтому изменяйте эти параметры
с известной долей осторожности. Настройка, направленная на повышение
производительности одного NLM, может оказать противоположное действие на
другой NLM. Novell рекомендует оставить эти параметры в их значениях по
умолчанию, если конкретный NLM не потребует конкретных изменений.

21. Имитация сбоя чтения/записи и ошибочные указатели
-----------------------------------------------------

Если NetWare обнаруживает, что есть угроза целостности ее внутренних данных
(например, в функцию передан неверный параметр, или возникли ошибки
<железа>), то она (С.П.А. - слово <NetWare> в русском языке имеет женский
род, поскольку это операционная СИСТЕМА) сразу останавливает активный
процесс и выводит на консоль сообщение об авосте (<авост> - устаревший в
русском языке компьютерный термин, сокращение от АВарийный ОСТанов. В
английской литературе используется термин "abend", расшифровываемый как
<ABnormal END of program> - аварийное завершение работы программы).
(С.П.А.- Полагаю, что русский <авост> возник, когда русифицировали краденые
<буржуйские> операционки и нужно было как-то впихнуть <аварийный останов> в
пять букв. Но могу и ошибиться)

Главной причиной авостов в NetWare является обеспечение стабильности и
целостности данных. Например, если ОС обнаружит ошибочные указатели на
буферы кэша, и продолжит свою работу, то данные могут скоро стать
непригодными к использованию или поврежденными. Таким образом, авост это
способ, которым NetWare защищает себя и пользователей от непредсказуемых
эффектов повреждения данных.

NetWare 4 использует преимущества сегментации и страничной архитектуры
Intel. Каждая страница памяти может быть помечена как загруженная или
незагруженная, защищенная от записи, защищенная от чтения, доступная по
записи, доступная по чтению.

Исключительные ситуации (исключения, exception), вызванные проблемами
сегментации или страничной организации, обрабатываются не так же, как
прерывания. Обычно, при возникновении исключения или прерывания, содержимое
счетчика команд (регистра EIP) сохраняется. А вот исключения вызванные
сегментацией или страницами дают системе возможность исправить страничный
сбой (page fault) восстановлением значений некоторых регистров в то
состояние, в котором они были до начала декодирования инструкции. NetWare 4
предоставляет параметры SET для разрешения или запрещения эмуляции
страничного сбоя, чтоб дает вам возможность выбирать между продолжением
работы программы или авостом.

Перед анализом дампа ядра (core dump) или решением проблем утилизации или
авостов на серверах NW 4.x надо установить в значение <OFF> следующие
параметры: Allow Invalid Pointers, Read Fault Emulation и Write Fault
Emulation.

22. Выделение и настройка прерываний
------------------------------------

Прерывания имеют приоритеты. Вот их порядок (от высшего приоритета к
низшему): 0, 1, 8, (2/9), 10, 11, 12, 13, 14, 15, 3, 4, 5, 6, 7. Прерывание
0 используется системным таймером, а 1 - для <готовности данных клавиатуры>
(Keyboard Data Ready).

В сервере SFTIII вы должны назначить MSL-карте наивысшее прерывание из
следующих за прерываниями, занятыми диском и сетевой картой. Именно в таком
порядке.

<Возникающие по фронту> ("edge triggered") прерывания не могут, а
<возникающие по уровню> (<level triggered>) могут разделяться между
несколькими устройствами. При использовании прерываний, <возникающих по
уровню>, они могут совместно использоваться только однотипными устройствами,
например, двумя NE3200.LAN или двумя AHA2940.HBA. НЕ разделяйте одно
прерывание между разнотипными устройствами.

23. Set Reserved Buffers Below 16 Meg (резервирование буферов в первых 16М
        памяти)
--------------------------------------------------------------------------

Этот параметр определяет, сколько буферов для кэширования файлов
резервировать для устройств, не умеющих работать с памятью выше 16М. Если в
вашем сервере больше 16М памяти и дисковый адаптер использует 16- или
24-битный DMA или busmaster DMA, то могут возникнуть конфликты адресов
памяти. А значит добавьте команду SET Reserved Buffers Below 16 Meg = 200 в
ваш STARTUP.NCF.

24. AppleTalk
-------------

Есть проблема, из-за которой к повышенной утилизации приводит ATXPR.NLM.
Новая версия этого модуля содержится в файле 41MAC1.EXE. Сам файл можно
найти в NOVLIB, область LIB6. Используйте любое более позднее обновление,
буде таковое появится. (Для NW410 текущая версия - MACPT3D.EXE)


25. Печать
----------

Подключение к серверу большого количества принтеров может повлиять на
производительность сети, что здорово зависит от печатаемых данных. На
распечатку чертежей, созданных в системах CAD/CAM, требуется больше <усилий>
процессора, нежели для печати текстовых файлов. Если вы сталкиваетесь с
проблемами утилизации, то постарайтесь, чтобы основную обработку печатных
заданий производили сами принтеры, а не процессор. Разумеется, упадет
скорость печати, зато увеличится надежность файлового сервера. Справочная
литература:

Novell Research:
May 1993        - NetWare 4.0 Performance Tuning and Optimization: Part 1
June 1993       - NetWare 4.0 Performance Tuning and Optimization: Part 2
October 1993    - NetWare 4.x Performance Tuning and Optimization: Part 3
February 1995   - Resolving Critical Server Issues
March 1995      - Server Memory
April 1995      - MONITOR.NLM
June 1995       - Abend Recovery Techniques for NetWare 3 and 4 Server
November 1995   - Server Memory
March 1997      - IntranetWare Server Automated Abend Recovery
March 1997      - Optimizing IntranetWare Server Memory

TID-ы:
TID14270   - NetWare 4.0 Memory Allocation - Part 1 of 2
TID14271   - NetWare 4.0 Memory Allocation - Part 2 of 2
TID1005436 - High Utilization and Suballocation
TID1005736 - Compression and High Utilization
TID1007561 - NetWare OS Patches
TID1005963 - Troubleshooting NetWare 4.1 High Utilization
TID1202046 - NetWare 3.x and 4.x Directory Entry Limits
TID2905856 - Additional Notes for High Utilization
TID2906943 - PC INTERRUPTS
TID2917538 - Suggestions for Troubleshooting Abends
TID2923372 - SFTIII configuration

Novell Press:
Novell's Guide to Resolving Critical Server Issues by Rich Jensen and
Brad Dayley

Прочее:
High Utilization by Rich Jardine, Product Support Engineer, NetWare OS
Support, Novell Inc. (28 Sep 95)
Suballocation by Rich Jardine, Product Support Engineer, NetWare OS Support,
Novell Inc. (1 Feb 96)
Compression by Kyle Unice, Novell Software Engineer (1 Feb 96)
FYI.P.12444 - What Does the Garbage Collection SET Parameter Do?
November 1993 - NetNotes

Рекомендуемые файлы:
HIGHUTL1.EXE - Решение проблем повышенной утилизации для NW4
TABND2A.EXE - Диагностические программы/утилиты для нахождения причин
              авостов
CONFG7B.EXE - CONFIG.NLM и CONFGNUT.NLM для сбора сведений о
              конфигурации сервера
CFGRD6B.EXE - Config Reader, Internet Edition! (версия 2.67)

Примечание: Приглашаем вас посетить WEB-сайт технической поддержки Novell
(http://support.novell.com или http://support.novell.com.au), где вы сможете
найти самые свежие <заплаты>, исправления и обновления файлов, равно как и
базу знаний, которая содержит последние Novell Technical Information
Database (TID), что поможет вам быть в курсе последних новостей и активно
поддерживать вашу сеть в хорошем состоянии.

(V.G. : Сейчас начал функциониpовать и pоссийский сеpвеp:
       http://www.novell.ru)

Секция 2 из 2 - Предыдущая - Следующая

Вернуться в раздел "FAQ по LAN и Netware" - Обсудить эту статью на Форуме
Главная - Поиск по сайту - О проекте - Форум - Обратная связь

© faqs.org.ru