Звучит несколько странно, но близкая разделяемая память (ISM, intimate sharable memory) является одним из наиболее эффективных методов, которые Solaris использует для оптимизации эффективности и применения общих сегментов памяти. Этот метод позволяет совместно использовать таблицу страниц системы нескольким процессам, тем самым создавая среду близкой разделяемой памяти. Одним из эффектов ISM является результативная блокировка страниц разделяемой памяти в оперативной памяти для устранения их подкачки. Однако это несколько более сложный процесс, чем просто блокирование SGA в памяти. Хотя у нас нет необходимости входить в скрывающиеся за ISM детали, полезно отметить, что блокировка SGA в памяти дает большой выигрыш в производительности для сильно нагруженных систем. Алгоритм подкачки страниц косвенно тормозится при применении ISM, потому что на постоянной основе приходится управлять меньшим числом страниц, что приводит к снижению активности демона
Впервые Sun ввел методику ISM в Solaris версии 2.2. Но до недавнего времени на отдельных серверах и для конкретных конфигураций для нее возникали проблемы. Если кому-либо из читателей пришлось работать на сервере Sun Enterprise 10000 (Е1000) с ОС Solaris версии 2.6, у них могли возникнуть вопросы, касающиеся ISM. Поэтому убедитесь, что у вашего сервера нет никаких
проблем с использованием ISM. Заведите привычку: перед тем, как реализовы-
вать что-либо, являющееся очень важным для промышленного варианта базы
данных, проверьте, нет ли в системе Oracle Metalink какой-нибудь информации
по этому поводу.
Для Oracle версии 8.0.x и более ранних версий параметр инициализации USE_ISM по умолчанию устанавливается на TRUE, и тем самым ISM устанавливается без каких-либо усилий с нашей стороны. Он является скрытым параметром ( USE ISM) из версии Oracle 8.1.3. Тем не менее, eh) значение по умолчанию по-прежнему равно TRUE. Пока не возникнут проблемы с использованием не следует изменять этот параметр. В Solaris параметр ISM разрешен по умолчанию. Если по какой-либо причине нужно запретить
использование ISM, следует добавить в файл /etc/system следующие строки и
перезагрузить сервер:
shmsys:ism_off=1
shsmsys:share_page_table=1
Если такие строки в файле /etc/system отсутствуют, ISM будет доступна и Oracle сможет использовать ее. Но если Oracle не найдет достаточно большого
сегмента памяти, чтобы в нем разместить всю SGA, он не будет применять По этому поводу не возникает никаких сообщений об ошибке или предупреждений.
Замечание
При задействовании IMS не забудьте, что вся область SGA должна быть расположена в одном совместно используемом сегменте памяти. Если это не так, ОС выберет для управления страницами в отличные от процедуры, что потенциально может привести к увеличению уровня подкачки страниц в системе, так как страницы SGA не закреплены в памяти. И хотя, на первый взгляд, это не способствует развенчанию мифа, такое специфическое для Solaris требование неприменимо к другим клонам Unix.
| < Предыдущая | Следующая > |
|---|


