su13@pochta.ru

| Первый | Второй | Третий | Четвёртый | Пятый | Шестой | Седьмой |


Настраиваемые параметры

Настраиваемые параметры системы

Изменение настраиваемых параметров

Описание параметров

Когда и что настраивать

Изменение существующего параметра ядра системы

В этом разделе описываются процедуры изменения настраиваемых параметров операционной системы Unix. Система Unix использует схему Устанавливаемых управляющих программ/Настраиваемых параметров (ID/TP).

Настройка этих параметров может оказывать значительное влияние на работу системы (как положительное, так и отрицательное).

Перед настройкой ядра основательно продумайте использование своего компьютера, проанализируйте его текущую работу и рассмотрите другие факторы работы, например, организацию файловой системы, вторые промежуточные биты округления, эффективность $РАТН и размеры блоков файловой системы.

Настраиваемые параметры системы

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

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

Схема ID/TP размещает все настраиваемые параметры системы в файле mtune(*) в каталоге конфигураций ядра /etc/conf/cf.d.

Каждому настраиваемому параметру системы присваивается значение по умолчанию, а также минимальное и максимальное значения. Можно исследовать файл mtune, чтобы определить установки настраиваемого параметра для вашего компьютера, но изменять файл mtune не нужно.

Второй файл в каталоге конфигураций stune используется Для изменения значения параметра в пределах между минимальным и максимальным значениями, определенными в файле mtune. Также дается команда idtune для упрощения входа в файл stune (1m).

Изменение настраиваемых параметров

Файл mtune в системе SVR4.0 Versionl.O. абсолютно отличается от файла системы SVR3.2. Хотя некоторые параметры устарели и были заменены, намерение системы SVR4.0 - позволить всем прикладным программам системы SVR3.2 быть выполненным без изменений. По этой причине файл mtune SVR4.0 по-прежнему содержит старые параметры, позволяющие расширенным пакетам загружаться без ошибок или предупреждений. Настройка этих параметров не влияет на систему.

Динамическое распределение

В системе SVR4.0 многие параметры были заменены динамическим распределением. Во многих случаях, когда ядру или дисководу нужно больше ресурсов памяти, используется программа распределения ресурсов памяти kmalloc ядра системы SVR4.0. Если настраивается старый параметр (SVR3.2), он не влияет на систему, однако, теперь ядро автоматически следит за этими ресурсами, поэтому настройка старого параметра ничему не вредит. В списке параметры SVR3.2 динамически распределяются таким образом:

FLCKREC

MAXSEPGCNT

NBLK4096

NBLK2048

NBLK1024

NBLK512

NBLK256

NBLK128

NBLK64

NBLK16

NBLK4

NFILE

NMOUNT

NMUXLINK

NQUEUE

NSTREAM

NSTREVENT

Примечание

Параметр NPROC больше не управляет распределением элементов в таблице "proc table", однако, параметр еще используется в системе SVR4.0.

Заменяемые параметры

Следующие параметры были заменены в системе SVR4.0. Некоторые из этих параметров были заново реализованы в системе SVR4.0, чтобы постоянно находиться в структуре ресурсов системы (структура rlimit), определяющей "постоянные" и "непостоянные" границы каждого параметра. Настройка старого параметра не влияет на систему.

Примечание

Пары непостоянных и постоянных границ определяют значения системы по умолчанию, данные пользовательским процессам. Эти границы даны процессу 0, после этого дочерние процессы наследуют постоянные и непостоянные границы родительских процессов. Однако, когда процесс обрабатывает файл, пределы ресурсов этого процесса заново инициализируются до значений границ системы по умолчанию.

. Процессы могут изменять свои собственные значения этих грюниц, используя setrlimit. Непостоянные границы можно изменять, но значения должны быть меньше или равными значениям постоянных границ.

Только процессы, пользовательский идентификатор ID которого равен 0 (root), могут расширить их постоянные границы. Значение, равное RLIMIT_INFINITY (OxTFFFFFFF) обозначает, что ресурсы не имеют ограничений.

Теперь параметры в структуре rlimit выглядят так:

MAXUMEM заменяется на SVMHLIM, HVMMLIM NOFILES заменяется на SFNOLIM, HFNOLIM

ULIMIT

заменяется m SFSZLIM, HFSZLIM

Есть другие замененные, переименованные параметры и параметры с измененными значениями.

Эти параметры:

BOFLUSHR переименован в FDFLUSHR

NS5INODE заменен на NINODE

NBUF функция NBUF изменена

Удаленные параметры

Приведенные ниже параметры были удалены. В большинстве случаев возможность ядра, контролируемая этими параметрами, была переконструирована таким образом, что старый параметр оказывается неуместным.

AGEINTERVAL

GPGSHI

GPGSMSK

MAXFC

HAXSC

NADVERTISE

NKDVTTY

NLOCAL

NREGION

NREMOTE

RFHEAP

RFS_VHIGH

RFSJ/LOW

S52KNBUF

S52KNHBUF

SHMALL

STRLOFRAC

STRMEDFRAG o

VHNDFRAC

Параметры, специфические для данной системы

Имеется несколько параметров в файле mtune, которые релевантны только системе Unix SVR4.0 Versionl.O и не могут существовать в других реализациях SVR4.0.

Эти параметры таковы:

D0386B1

D0387CR3

OMAABLEBUF

DHAEXEC

KDBSYMSIZE

MAXHINOR

SYSSEGSZ

PIOSEGSZ

SEGMAPSZ

Описание параметров

Покажем схему настраиваемых параметров системы, определенных в файле /etc/conf/cf.d/mtune. Они представлены в приблизительном порядке появления в файле mtune.

Категории параметров таковы:

Многие из этих параметров используются драйверами устройств или в других функциях ядра, являющихся частью расширенных пакетов, например, расширенного пакета Network Support Utilities (NSU) - Утилиты поддержки сети и расширенного пакета Remote File Sharing

(RFS) - Совместное использование удаленных файлов. Если эти пакеты не установлены, настройка значений параметров не повлияет на конфигурацию вашей системы.

Общие параметры ядра

NCALL

Определяет, сколько нужно выделить элементов для таблицы вызовов. Каждый элемент представляет функцию, которая активизируется позже с помощью части подпрограммы ядра взаимодействия с таймером. Это значение должно быть больше 2, оно обычно находится в пределах от 30 до 250. Значение по умолчанию 60. Каждый элемент содержит 16 байтов.

NFILE

Ранее параметр проверял, сколько элементов таблицы открытых файлов нужно выделить. Элементы таблицы файлов распределяются динамически.

NMOUNT

Ранее параметр проверял, сколько элементов монтируемой таблицы нужно выделить. Элементы монтируемой таблицы распределяются динамически.

NPROC

Ранее параметр проверял, сколько выделить элементов таблицы процессов. Элементы таблицы процессов распределяются динамически. NPROC до сих пор применяется как верхний предел некоторых пользовательских процессов; до сих пор существует предел в некоторых процессах, созданных каждым пользователем.

NREGION

Использование областей памяти было исключено.

NCLIST

Определяет, сколько нужно выделить буферов для списка символов. Каждый буфер содержит до 64 байтов. Буферы соединяются, чтобы сформировать очереди ввода и вывода для.линий терминала и других устройств с малой скоростью.

Нет необходимости использовать clists в диалоговых драйверах, драйверах целочисленного последовательного порта или в драйверах построчно-печатающего устройства (параллельного порта). Механизм clist и настраиваемый параметр NCLIST ошраняются для использования в платах расширений в множественных портах, обеспечиваемых поставщиком.

MAXUP

Определяет, сколько параллельных процессов разрешается выполнять непривилегированному пользователю. Обычно значение элемента находится в диапазоне от 15 до 40. Значение по умолчанию 30. Это значение на один идентификационный номер пользователя, а не на один терминал.

NOFILES

Ранее этот параметр определял максимальное количество открытых файлов на один процесс. Сейчас эта граница системы является частью структуры rlimit (предел ресурса).

NHBUF

Определяет, сколько ячеек хеш-таблицы нужно выделить. Они используются для поиска буфера с номером устройства и номером блока; в этом случае нет надобности осуществлять линейный поиск по всему списку буферов. Каждый элемент содержит 12 байтов. Значение по умолчанию 64. Это значение должно быть степенью 2.

NPBUF

Определяет, сколько физических буферов ввода/вывода нужно выделить. Для каждого физического процесса считывания или записи нужен один буфер ввода/вывода. Каждый элемент содержит 52 байта. Значение по умолчанию 20.

NAUTOUP

Определяет возраст буфера в секундах для автоматического изменения файловой системы. Буфер системы записывается на жесткий диск, когда хранится в памяти в период, определенный параметром NAUTOUP.

Определение меньшего предела повышает надежность системы с помощью более частой записи буферов на диск и снижает эффективность системы. Определение большего предела повышает эффективность системы в ущерб надежности. Значение по умолчанию 60 секунд.

FDFLUSHR

Определяет в секундах скорость проверки необходимости записи буферов файловой системы на диск. Значение по умолчанию 1 секунда. Этот параметр заменяет BDFLUSHR, используемый в SVR3.2.

BDFLUSHR

Данный параметр системы SVR3.2 был переименован в FDFLUSHR.

МАХРМЕМ

Определяет максимальный объем физической памяти для использования на страницах памяти. Значение по умолчанию 0 определяет, что используется весь объем имеющейся физической памяти.

SHLBMAX

Определяет максимальное число статических общих библиотек, которые могут быть подключены к процессу одновременно. Система SVR4.0 Versionl.O также поддерживает динамические общие библиотеки. Этот параметр влияет на использование статических общих библиотек только в прикладных программах системы SVR3.2.

FLCKREC

Ранее этот параметр контролировал количество структур записей с блокировкой, используемых системой. Эти элементы распределяются динамически.

PUTBUFSZ

Определяет размер циклического буфера putbuf, который используется для хранения в нем копии последних символов PUTBUFSZ, записанных на консоль операционной системой. Содержимое putbuf можно обследовать, используя команду crash (1M).

MAXSLICE

Определяет с помощью отметок времени максимальный квант времени для пользовательских процессов. После выполнения процесса в течение выделенного времени, этот процесс приостанавливается.

Затем операционная система координирует процессы с наивысшим приоритетом и выделяет для них отметки времени MAXSLICE. Обычно значение MAXSLICE 1 секунда.

ULIMIT

Ранее этот параметр определял размер самого большого файла, который обычный пользователь может записать в 512-байтовые блоки. Заменяется параметрами SFNOLIM и HFNOLIM.

SPTMAP

Определяет размер массива элементов карты, используемого для управления пространством для виртуального адреса ядра. Пользователи не должны изменять этот параметр.

РIOМАР

Определяет размер массива элементов карты, используемого в команде останова программируемого ввода/вывода ядра. Эта программа позволяет драйверам устройств осуществлять программируемый ввод/вывод больших блоков данных на уровне прерывания путем разбиения блоков данных на меньшие единицы данных. Пользователи не должны изменять этот параметр.

PIOMAXSZ

Максимальное количество страниц памяти для одноразового использования во время программируемого ввода/вывода. Пользователи не должны изменять этот параметр.

MAXMINOR

Данный параметр ограничивает максимальный номер устройства, который может иметь узел устройства, созданный при вызове команды mknod (2). Хотя сейчас система Unix допускает номер устройства до 0x37777, этот параметр ограничивается пределом 255 системы SVR3.2 (в целях обеспечения совместимости).

NGROUPS_MAX

Определяет число фупп пользователей, которым 'может принадлежать пользователь. Система SVR4.0 имеет новое свойство, позволяющее пользователю иметь доступ одновременно к многочисленным группам, не выполняя команду newgrp. Значение по умолчанию 16.

Ядро ограничивает значения этого параметра диапазоном от 0 до 32, несмотря на установку настраиваемого параметра.

NBUF

Блок ввода/вывода использует и буферы и заголовки буферов. Когда нужен заголовок буфера, а свободных заголовков нет, система динамически выделяет больше заголовков буферов по несколько порций заголовков NBUF за один раз.

Общее число заголовков в системе не ограничивается, однако настраиваемый параметр BUFNWM ограничивает количество килобайтов, используемых буферами, а это, в свою очередь, эффективно ограничивает количество заголовков буферов, которые будут выделены.

После выделения пространства для заголовков буферов его нельзя освободить для других целей. Поэтому надо быть осторожным, когда увеличиваете значение NBUF.

Более высокое значение NBUF уменьшает количество вызовов программы распределения ресурсов памяти ядра, которая вызывается для выделения пространства для заголовков буферов; но это может также привести к выделению ненужных заголовков.

BUFNWM

Ограничивает количество килобайтов памяти, которую может использовать блок буферов ввода/вывода. Если sar -b показывает, что коэффициент совпадения буферов низкий, тогда нужно увеличить значение параметра BUFNWM.

ARG_MAX

Это максимальное количество символов (включая NULL (нулевые) символы), допускаемое в установках аргументов и строк среды. Его можно увеличить, обеспечив

тем самым большее количество списков аргументов, но оно не должно быть меньше 5120.

RSTCHOWN

Определяет признак изменений принадлежности ограниченного файла. Достоверными значениями RTSCHOWN являются только 0 и 1. Находясь в системе SVR3, владелец файла может изменить значение userlD и groupID файла на любое другое, включая значения несуществующих userlD и groupID.

Значение RTSCHOWN, установленное в 1, обозначает режим совместимости FIPS/BSD. Это ограничивает возможность изменить принадлежность файла. Только привилегированный пользователь или корневые процессы (значение эффективного идентификатора которого равно 0) могут изменять принадлежность файла.

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

Параметры файловой системы

NINODE

Определяет количество элементов в таблице индексных дескрипторов файлов "s5". "s5" относится к типу файловой системы "System V". В системе SVR3.2 этот параметр управлял всеми индексными дескрипторами файлов систем всех типов.

В системе SVR4.0 механизм vnode заменяет переключатель файловой системы, a NINODE определяет только число индексных дескрипторов файлов "s5". В SVR4.0 таблица индексных дескрипторов файлов фактически является связанным списком. Каждый элемент имеет 204 Кбайта.

Эмпирическое правило - выделить 100 для каждого мегабайта памяти, допуская что "s5" - главный используемый тип файловой системы. Использование

"sar -v" помогает убедиться, что этот параметр установлен правильно.

NS5INODE

Параметр удален.

UFSNINODE

Количество элементов индексных дескрипторов файлов системы ufs. Если главной файловой системой является ufs, тогда должно быть выделено приблизительно 100 элементов индексных дескрипторов файлов на каждый мегабайт памяти.

NDQUOT

Размер таблицы ядра пространства, выделенного для файловой системы ufs.

Для каждого пользователя - 1 элемент; поэтому значение NDQUOT должно быть больше максимального числа, пользователей, которые могут войти в систему, если ufs - главный тип файловой системы.

Если выделенное пространство задействовано, тогда элементы таблицы ограничивают количество выделенного дискового пространства.

Если элементов нет, на операторском терминале печатается сообщение "dquot table full". Если это происходит, нужно увеличить значение NDQUOT.

NRNODE

Максимальное количество структур mode, которое выделяется для NFS (файловой системы сети). Значение по умолчанию 300.

S52KNBUF

Раньше определял сколько 2 Кбайтов буферов системы нужно выделить. Этот параметр не функционирует в SVR4.0.

S52KNHBUF

Раньше определял, сколько ячеек хэш-таблицы нужно выделить для 2 Кбайтов буферов. Этот параметр не функционирует в системе SVR4.0.

Параметры подкачки

Следующие параметры используются ядром системы и следующим процессом подкачки pageout, которые отвечают за освобождение области памяти по мере надобности:

VHNDFRAC

Раньше управлял параметром следующего процесса подкачки в SVR3.2. Заново реализован в SVR4.0.

AGEINTERVAL

Раньше управлял параметром следящего процесса подкачки в SVR3.2. Заново реализован в SVR4.0.

GPGSLO

Определяет нижнюю отметку свободной памяти в страницах, чтобы следящий процесс pageout начал изъятие страниц из процессов. Значение по умолчанию 25.

Чтобы сделать следящий процесс более активным, увеличьте значение; уменьшите значение, чтобы сделать следящий процесс менее активным (это должно быть целое число >=0).

GPGSHI

Ранее управлял параметром следящего процесса подкачки в SVR3.2. Заново реализован в SVR4.0.

MAXSC

Ранее управлял параметром следящего процесса подкачки в SVR3.2. Заново реализован в SVR4.0.

MAXFC

Ранее - параметр следящего процесса подкачки в SVR3.2. Заменяется параметрами SVMMLIN и HVMMLIN.

MAXUMEM

Ранее определял максимальный размер пространства виртуального адреса пользователя в страницах в SVR3.2; DFN MINARMEM определяет минимальное количество страниц памяти для текстов и сегментов данных пользовательских процессов.

MINASMEM

Пороговое значение, определяющее количество страниц памяти и подкачки для целей системы.

MINAKMEM

Пороговое значение минимального количества страниц, зарезервированное как непостоянное пороговое значение kmem_alloc во избежание тупиковых ситуаций.

M1NHIDUSTK

Ранее ассоциировался с местом пользовательского стека в SVR3.2. Этот параметр не функционирует в SVR4.0.

MINUSTKGAP

Ранее ассоциировался с местом пользовательского стека в SVR3.2. Этот параметр не функционирует в SVR4.0.

PAGES_UNLOCK

Данный параметр использовался в ранней версии SVR4 и остался формальным параметром.

Параметры STREAMS

Параметры, приведенные ниже, связаны с обработкой потоков данных:

NQUEUE

Ранее определял количество очередей STREAMS для конфигурации. Очереди выделяются динамически.

NSTREAM

Ранее определял количество структур "Stream_head" для конфигурации. Эти структуры выделяются динамически.

NSTRPUSH

Максимальное количество модулей, которые можно запустить в поток. Используется для предотвращения использования всех имеющихся очередей в одном потоке со стороны ошибочного пользовательского процесса. По умолчанию это значение 9, на практике же существующие прикладные программы помещают в поток самое большее 4 модуля.

NSTREVENT

Ранее определял начальное количество ячеек памяти потока для конфигурации. Выделяются динамически.

MAXSEPGCNT

Ранее определял количество дополнительных страниц памяти, которые динамически распределяются. Этот параметр не функционирует в SVR4.0.

NMUXLINK

Ранее определял максимальное число связей мультиплексоров для конфигурирования. Распределяется динамически.

STRMSGSZ

Максимально допустимый размер порции данных любого сообщения STREAMS. Значение устанавливается довольно большое, чтобы разместить защищенные данные (с максимальным пакетным размером) всех конфигурированных модулей STREAMS. Значение 0 указывает на отсутствие верхнего предела.

STRCTLSZ

Максимально допустимый размер контрольной порции данных любого сообщения STREAMS. Контрольная порция данных сообщения putmsg (2) не подлежит ограничению по пакетному размеру, поэтому вводимое здесь значение - единственно возможный способ ограничения контрольной части сообщения. Рекомендуемое значение 1024 - более чем достаточно для существующих прикладных программ.

STRTHRESH

Максимальное общее количество байтов, обычно допускаемое для распределения потоков данных. Когда порог перейден, пользователям без привилегий не разрешается открывать потоки, помещать модули в потоки или записывать на потоковые устройства; то же самое относится к параметру ENOSR (он вне ресурсов потоков).

Привилегированным пользователям разрешается делать все. Обратите внимание, что пороговое значение относится только к выходным данным, поэтому на входные

данные это не влияет. Значение 0 обозначает, что порога нет.

STRLOFRAC

Ранее определял процент блоков данных данного класса, в котором автоматически не выполнялись запросы на выделение блоков с низким приоритетом. Этот параметр не функционирует в SVR4.0.

STRMEDFRAC

Ранее определял процент остановов, при котором не выполнялось распределение блоков со средним приоритетом. Этот параметр не функционирует в SVR4.0.

NLOG

Определяет количество номеров устройств, имеющихся в аналоговом интерфейсе драйвера регистрации (/dev/sp), поддерживаемых системой.

NUMSP

Определяет количество устройств программного канала STREAMS, поддерживаемых системой.

NUMTIM

Максимальное количество модулей STREAMS, которые можно ввести в интерфейс транспортной библиотеки (ТЫ). Это значение контролирует количество структур данных, используемых для хранения данных конфигурации модулей, введенных в потоки.

NUMTRW

Определяет количество структур данных для считывания/записи в ТЫ, которое нужно выделить в пространстве данных ядра системы.

NUMSAD

Количество номеров устройств, имеющееся в драйвере администратора потоков (SAD).

NSTRPHASH

Размер внутренних ячеек хэш-таблицы. Этот параметр не нужно изменять, если количество драйверов в системе не станет очень большим.

NAUTOPUSH

Количество устройств, которые можно сконфигурировать для автопроталкивания в стек.

Если SAD_SAP ioctl не выполняется с еггпо, установленным в значение ENOSR, тогда это количество нужно увеличить.

Параметры взаимодействия процессов

Следующие настраиваемые параметры связаны с сообщениями о взаимодействии процессов, семафорами и общими данными:

MSGMAP

Определяет размер контрольной карты, используемо? для работы с разделами сообщений. Значение по умолчани 100. Каждый элемент содержит 8 байтов.

MSGMAX

Определяет максимальный размер сообщения. Значение по умолчанию 2048. Хотя максимально возможный размер, который может обработать ядро системы - 64 килобайта, ограничение mtune 8192.

MSGMNB

Определяет максимальную длину очереди сообщени Значение по умолчанию 4096.

MSGMNI

Определяет максимальное количество очередей сообщений в системе. Значение по умолчанию 50.

MSGSSZ

Определяет размер в байтах размера сообщения. Сообщения состоят из непрерывной последовательности сегментов сообщений, размер которых позволяет уместит текст.

Значение по умолчанию 8. Значение MSGSSZ дол> быть меньше 128 Кбайтов.

MSGTQL

Определяет количество заголовков сообщений в системе и количество сообщений, ожидающих обработки. Значение по умолчанию 40. Каждый элемент содержит 12 байтов.

MSGSEG

Определяет количество сегментов сообщений. Значение по умолчанию 1024.

SEMMAP

Определяет размер контрольной карты, используемой для установки значений семафора. Значение по умолчанию 10. Каждый элемент содержит 8 байтов.

SEMMNI

Определяет количество идентификаторов семафора в ядре системы. Это число уникальных установок семафора, которые могут действовать в любое заданное время. Значение по умолчанию 10, Каждый элемент содержит 32 байта.

SEMVMX

Определяет максимальное значение семафора. Значение по умолчанию 32767. Это значение максимальное для этого параметра.

SEMAEM

Определяет установку максимального значения на выходе, псевдоним semadj. Это значение используется, когда значение семафора становится больше или равно абсолютному значению semop (2), если у программы нет своего собственного значения. Значение по умолчанию 16384. Это максимальное значение для данного параметра.

SHMMAX

Определяет максимальный размер сегмента общей области памяти. Значение по умолчанию 524288.

SHMMIN

Определяет минимальный размер сегмента общей области памяти. Значение по умолчанию 1.

SHMMNI

Определяет максимальное количество идентификаторов общей области памяти во всей системе. Значение по умолчанию 100. Каждый элемент содержит 112 байтов.

SHMSEG

Определяет количество подсоединенных сегментов общей области памяти на один процесс. Значение по умолчанию 6. Максимального значения для этого параметр] нет. Максимальное количество сегментов общей области памяти на один процесс не зависит от того, сколько есть у процесса неиспользованного пространства.

SHMALL

Ранее определял максимальное количество используемых сегментов текста в общей области памяти. Этот параметр не функционирует в SVR4.0.

Параметры общих удаленных файлов

Есть несколько параметров, которые можно настраивать для наилучшего соответствия способу использования общих удаленных файлов.

Параметры общих удаленных файлов контролируют объем ресурсов системы, выделяемых для совместного использования удаленных файлов.

У каждого поставщика транспорта сети тоже могут быть настраиваемые параметры, которые могут влиять на показатели эффективности этой особой сети.

Учтите, что эти параметры не влияют на вашу систем если не реализован пакет расширений RFS.

NRCVD

Максимальное число дескрипторов приемников. Система создает один дескриптор приемника для каждого файла или каталога, ссылки на которые делает удаленный пользователь, и один - для каждого процесса в вашей ЭВ ожидающего отклика на удаленный запрос.

Если вы ограничиваете количество дескрипторов приемников, вы тем самым ограничиваете количество локальных файлов и каталогов, одновременный доступ к которым могут иметь удаленные пользователи. Результатом выхода за границы будут сообщения об ошибках для команд удаленных пользователей.

NSNDD

Максимальное число дескрипторов отправителей. Для каждого дистанционного ресурса, на который ссылаются ваши пользователи, система создает дескриптор отправителя. Дескриптор отправителя также выделяется для каждого процесса отправителя и каждого сообщения, ожидающего в очереди приема. Можно изменить это значение до того предела, который равен количеству удаленных файлов и каталогов, к которым одновременно может обратиться ваша ЭВМ.

Это, в свою очередь, ограничивает количество действий пользователей по совместному использованию удаленных файлов. Результат выхода за допустимые границы - сообщения об ошибках для пользовательских команд.

NSRMOUNT

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

NADVERTISE

Таблица объявленных ресурсов. Раньше устанавливал максимум ресурсов, которые вы можете объявить. Этот параметр не функционирует в SVR4.0.

MAXGDP

Виртуальные каналы. Есть две связи (виртуальные каналы), установленные в сети между вами и каждой машиной, совместно с которой вы используете ресурсы. Одно соединение для каждой машины, ресурсы которой вы монтируете, и одно - для каждого компьютера, который монтирует ваши ресурсы. Виртуальный канал создается, когда компьютер впервые монтирует ресурс из другого канала, и демонтируется, когда демонтируется последний ресурс. Этот параметр ограничивает число виртуальных каналов общих удаленных файлов, которые могут быть открытыми в сети.

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

MINSERVE

Минимальное количество процессов спецпроцессора. Ваша система использует спецпроцессор для обработки удаленных запросов на ресурсы. Этот параметр устанавливает, сколько процессов спецпроцессора действует в вашем компьютере.

MAXSERVE

Максимальное количество процессов спецпроцессора. Когда имеется больше удаленных запросов на ресурсы, чем может обработать минимум процессоров, ваш компьютер может временно создать дополнительные. Этот параметр устанавливает общее максимальное количество процессов спецпроцессора (MINSERVE плюс количество динамически создаваемых параметров).

NRDUSER

Данное значение определяет количество элементов дескриптора приемника user, которое нужно выделить. Каждый элемент представляет использование в машине пользователя одного из ваших файлов или каталогов.

Один дескриптор приемника выделяется для каждого файла или каталога с удаленным доступом (NRCVD); могут быть и множественные элементы дескриптора приемника user для каждого пользователя, применяющего файл или каталог (NRDUSER). Эти элементы используются во время восстановления. Это значение должно быть примерно в 1,5 раза больше значения NRCVD.

RFHEAP

Ранее определял размер в байтах области памяти для информации RFS. Этот параметр не функционирует в SVR4.0.

NREMOTE

Буферы с удаленным доступом. Ранее устанавливал минимальное количество локальных буферов из общей области буферов, зарезервированных для считывания данных удаленных ресурсов. Этот параметр не функционирует в SVR4.0.

RCACHETIME

Время использования кэша. Интервал в секундах, который должен исчезнуть после последнего обновления файла до того, как будет заново разрешено использование кэша для файла.

RFS_VHIGH

Ранее определял наибольший номер версии RFS, с которой взаимодействует ваш компьютер. Этот параметр не функционирует в SVR4.0.

RFS_BL

Ранее определял наименьший номер версии RFS, с которой взаимодействует ваш компьютер. Этот параметр не функционирует в SVR4.0.

RFJHAXKMEM

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

Параметры XENIX

DSTFLAG

Временный признак для поддержки вызова системы XENIX ftime(). Этот параметр устанавливает значение timeb.dstflag, возвращенное вызовом системы ftime().

NSCRN

Количество мультиэкранов для поддержки системы XENIX

NEMAP

Количество отображений ввода/вывода для поддержк отображения символов системы XENIX European.

TIMEZONE

Параметр устанавливает значение timeb.timezone, возвращенное вызовом команды ftime().

XSEMMAX

Определяет количество семафоров в системе XENIX. Значение по умолчанию и максимальное значение 60.

XSDSEGS

Определяет количество сегментов в общих данных системы. Значение по умолчанию 25.

XSDSLOTS

Определяет максимальное количество подключений сегментов общих данных XENIX, допускаемое системой. Значение по умолчанию и максимальное значение 3.

Различные параметры

DO386B1

Контролирует использование Bl Stepping как

программное решение проблем при производстве первых микросхем 386. Этот параметр нельзя устанавливать в "1".

DO387CR3

Контролирует установку разрядов высшего порядка i управляющем регистре Control Register 3 (CR3) при монтировании микросхемы 80387. Этот параметр используется для управления программными решениями проблем синхронизации 386/387 при производстве первых микросхем.

DMAEXCL

Данный параметр управляет программным замком, который ограничивает 4-канальный контроллер прямою

доступа в память DMA работой только одного канала одновременно. Это значит не следует использовать его возможность передавать данные одновременно по отдельным каналам. Таким было программное решение проблем, связанных с запуском микросхем первых выпусков. Установка параметра в 1 приводит к использованию одного канала. Поддерживается только для драйверов типа XENIX.

MAXDMAPAGE

Пропускная способность физического контроллера прямого доступа в память DMA в страницах. В 386 контроллере каждая страница содержит 4096 байтов. В процессорах с 24-х разрядными контроллерами DMA этот параметр устанавливается в 4096 страниц.

В процессорах с 28-х разрядными контроллерами DMA он устанавливается в 65536. В машинах с 32-х разрядными контроллерами он устанавливается в 0. Нулевое значение указывает, что не требуется проверка со стороны ядра системы перед началом работы DMA.

DMAABLEBUF

Число страниц DMA для резервирования. Значение по умолчанию 70 страниц.

KDBSYMSIZE

Это размер таблицы символов, внутренней по отношению к расширению отладчика ядра системы. Если отладчик ядра системы не установлен в вашей системе, тогда этот параметр не действует.

SYSSEGSZ

Объем пространства виртуального адреса для распределения. Используется либо для kma, где виртуальные адреса резервируются в физической памяти, либо для памяти устройства, отображаемой в ядро системы. Значение по умолчанию 2048 (8 Мбайтов области памяти), максимальное значение 16 Мбайтов. Чтобы увеличить максимальное значение, нужно изменить таблицу виртуальных адресов ядра системы.

PIOSEGSZ

Объем пространства виртуального адреса для программируемого ввода/вывода. Текущее минимальное, максимальное и значение по умолчанию каждое равно 1024. Его нельзя менять; оно было превращено в настраиваемый параметр для возможного будущего расширения.

SEGMAPSZ

Объем пространства виртуального адреса для отображений ядра системы пользовательских запросов на считывание/запись. Текущая реализация допускает максимально 4 Мбайта памяти ядра системы для пользовательских запросов на ввод/вывод. Текущее минимальное, максимальное и значение по умолчанию каждое равно 1024. Его нельзя изменять; оно было превращено в настраиваемый параметр для возможного будущего расширения.

Параметры драйверов устройств

NUMXT

Определяет количество xt уровней, которые сконфигурировали подустройства для поддержки устройств с растровым дисплеем с поточной адресацией.

NUMSXT

Определяет количество уровней оболочки системного ядра, конфигурируемых подустройствами.

NCPYRIGHT

Определяет размер структуры данных ядра системы, используемой для печати сообщений об инициализации. Пользователям не следует изменять этот параметр.

NKDVTTY

Ранее проверял количество виртуальных терминалов (ttys), поддерживаемых драйвером операторской клавиатуры. В SVR4.0. параметр не действует и заменяется информацией файла /etc/default/workstations.

PRFMAX

Максимальное количество текстовых символов, которое может обработать система построения профиля программы (/dev/prf).

CMF

Признак операторского сообщения. Этот параметр используется для расширения System Message (sysmsg) - системных сообщений. Если этого расширения в вашей системе нет, этот параметр не действует.

COM2CONS

Данный параметр используется в расширениях системных сообщений (sysmsg). Он управляет использованием /dev/ttyOl (com 2 port) как операторским терминалом, даже если присутствует интегральная клавиатура/дисплей. Если расширения нет в вашей системе, этот параметр не действует.

RIDEOUT

Данный параметр используется расширением Remote Maintenance Circuit Driver (Дистанционное обслуживание драйвера канала связи). Если этого расширения в вашей системе нет, этот параметр не действует.

MNR.ON

Данный параметр используется расширением Remote Maintenance Circuit Driver (Дистанционное обслуживание драйвера канала связи). Если этого расширения в вашей системе нет, этот параметр не действует.

SANECNT

Данный параметр используется расширением Remote Maintenance Circuit Driver (Дистанционное обслуживание драйвера канала связи). Если этого расширения в вашей системе нет, этот параметр не действует.

USANEON

Данный параметр используется расширением Remote Maintenance Circuit Driver (Дистанционное обслуживание драйвера канала связи). Если этого расширения в вашей системе нет, этот параметр не действует.

Параметры Asyncio

NAIOSYS

Максимальное количество известных системных вызовов асинхронного ввода/вывода. Используегся модуле "async", не являющимся частью основной системы SYR4.0.

MINAIOS

Минимальное количество процессоров асинхронного ввода/вывода. Используется модулем "async", не являющимся частью основной системы SVR4.0.

MAXAIOS

Максимальное количество процессоров асинхронной ввода/вывода. Используется модулем "async", не являющимся частью основной системы SVR4.0.

AIOTIMEOUT

Количество секунд, в течение которых процессор асинхронного ввода/вывода ожидает начала работы. Используется модулем "async", не являющимся частью основной системы SVR4.0.

NAIOPROC

Допустимое количество запросов на асинхронный ввод/вывод на один процесс. Используется модулем "asyn< не являющимся частью основной системы SVR4.0.

Параметры событий

MEVQUEUES

Максимальное количество структур событий ядра системы (evkev_t) для распределения. Используется моду; "events", не являющимся частью основной системы SVR4

MEVKEVS

Максимальное количество структур очереди событи (evqueue_t) для распределения. Используется модулем "events", не являющимся частью основной системы SVR4

MEVEXPREFS

Максимальное количество структур ссылок на выражения о событиях (evexref_t) для распределения. Используется модулем "events", не являющимся частью основной системы SVR4.0.

MEVEXPRS

Максимальное количество выражений со структурами событий (evexpr_t) для распределения. Используется модулем "events", не являющимся частью основной системы SVR4.0.

MEVTERMS

Максимальное количество структур термов событий (evterm_t) для распределения. Используется модулем "events", не являющимся частью основной системы SVR4.0.

MEVSEXPRS

Максимальное количество структур выполненных выражений о событиях (evsexpr_t) для распределения. Используется модулем "events", не являющимся частью основной системы SVR4.0.

MEVSTERMS

Максимальное количество структур выполненных термов событий (evsterm_t) для распределения. Используется модулем "events", не являющимся частью основной системы SVR4.0.

MEVTIDS

Максимальное количество структур идентификаторов прерываний (evtid_t) для распределения.

Используется модулем "events", не являющимся частью основной системы SVR4.0.

MEVRETRYS

Максимальное количество структур повторной передачи (evretry_t) для распределения. Используется модулем "events", не являющимся частью основной системы SVR4.0.

MEVEXITS

Максимальное количество структур выхода событий (evexit_t) для распределения. Используется модулем "event! не являющимся частью основной системы SVR4.0.

MEVSIGS

Максимальное количество сигнальных структур событий (evsig_t) для распределения. Используется модуле "events", не являющимся частью основной системы SVR4.(

MEVSTRDS

Максимальное количество структур данных потока (evd_stream_t) для распределения. Используется модулем "events", не являющимся частью основной системы SVR4.(

MEVDIRENTS

Максимальное количество элементов каталога (dirent_t) для распределения. Используется модулем "events не являющимся частью основной системы SVR4.0.

EVDATA

Максимальное количество байтов, выделяемых для хранения данных, зависящих от типа событий, и для други различных целей. Используется модулем "events", не являющимся частью основной системы SVR4.0.

EVTIDHTS

Количество элементов в хэш-таблице идентификаторов внутренних прерываний. Параметр должен быть числом, являющимся степенью числа 2. Используется модулем "events", не являющимся частью основной системы SVR4.0.

EVFNHTS

Количество элементов в хэш-таблице файловых имен Значение параметра должно быть числом, являющимся степенью числа 2. Используется модулем "events", не являющимся частью основной системы SVR4.0.

EVMAXEV

Максимальное количество событий по умолчанию, допускаемых в очереди. Используется модулем "events", не являющимся частью основной системы SVR4.0.

EVMAXDPE

Максимальное количество по умолчанию байтов данных, допустимых для одного события. Используется модулем "events", не являющимся частью основной системы SVR4.0.

EVMAXMEM

Максимальное общее количество байтов данных (по умолчанию), разрешенных в памяти для всех событий в очереди событий. Используется модулем "events", не являющимся частью основной системы SVR4.0.

EVMAXTRAPS

Максимальное количество по умолчанию выражений с прерываниями для одного процесса. Используется модулем "events", не являющимся частью основной системы SVR4.0.

EVMAXETERMS

Максимальное количество термов по умолчанию в одном выражении. Используется модулем "events", не являющимся частью основной системы SVR4.0.

Параметры диспетчера/планировщика/таймера

HRTIME

Данный параметр используется для определения размера массива hrtimes. Массив используется для сохранения дорожки от запроса на переход в режим ожидания или на аварийный сигнал для генератора импульсов реального времени.

HRVTIME

Параметр используется для определения размера массива itimes. Массив используется для сохранения дорожки запросов на аварийный сигнал для того, чтобы генератор тактовых импульсов мог измерить виртуальное время пользовательского процесса.

RTMAXPRI

Диапазон, в котором пользователи могут регулировать пользовательский приоритет процесса реального времени, от -RTMAXPRI до +RTMAXPRI.

RTNPROCS ......

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

TSMAXUPRI

Диапазон, в котором пользователи могут регулировать пользовательский приоритет процесса разделения времени, от -TSMAXUPRI до +TSMAXPRI.

Планирование конфигурации с более высокими значениями позволяет пользователям тщательнее контролировать приоритет их процессов (учтите, что только привилегированный пользователь может повысить приоритет). Значение по умолчанию 20 - это степень контроля, эквивалентная той, что была в прошлом в интерфейсе nice (2).

TSNPROCS

Определяет размер таблицы, содержащей информацию о приоритете для процессов разделения времени.

MAXCLSYSPRI

Максимальный глобальный приоритет, используемый классом планировщиков SYS для планирования процессов ядра системы. Изменение этого параметра изменяет диапазон приоритетов и может значительно повлиять на работу системы.

Как правило, нет необходимости изменять этот параметр, если вы не добавляете новые классы планировщиков или заново не конфигурируете приоритеты других сконфигурированных классов.

Параметры границ ресурса (структура rlimit)

Следующие параметры представляют значения по умолчанию в границах ресурса процесса, использующихся для объявления структуры rlimit. В системе SVR4.0. команда ulimit (1) возвращает пользователю несколько новых границ ядра системы, взятых из структуры rlimib

В следующих параметрах префикс S обозначает гибкие границы, префикс Н - жесткие границы. Любой пользовательский процесс может изменить свои гибкие

границы до соответствующей жесткой границы. Только root может увеличить (расширить) жесткие границы. Установка параметра в OxTFFFFFFF указывает на неопределенную границу.

SCPULIM

Гибкая граница с максимальным значением объединяла пользовательское и системное CPU время в секундах, разрешаемое процессом. Сигнал SIGXCPU посылается процессам, время CPU которых превышает это значение.

HCPULIM

Максимальное значение SCPULIM.

SFSZLIM

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

К тому же запись будет неудачной с ошибкой EFBIG. Этот параметр замещает параметр ULIMIT системы SRV3.2., существуют способы преодоления этой границы ядра системы на уровне пользователей, например, команда ulimit (1) и строка ULIMIT в каталоге /etc/default/login.

SDATLIM

Максимальное значение SFSZLIM.

SDATLIM

Гибкая граница, определяющая максимальный размер в байтах динамической области процесса. Если процесс пытается расширить свою динамическую область за пределами этой границы, используя brk (2), попытка потерпит неудачу и сообщение об ошибке будет установлено в значение ENOMEM.

HDATLIM

Максимальное значение SDATLIM.

SSTKLIM

Гибкая граница, определяющая максимальный размер в байтах сегмента стека для процесса. Это определяет границу автоматического роста стека с помощью системы. Сигнал SIGSEGV посылается процессам, пытающимся увеличить стек за пределы его значения. Если процесс не организован так, чтобы улавливать этот сигнал в отдельном стеке, процесс прекратится.

HSTKLIM

Максимальное значение SSTKLIM.

SCORLIM

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

Гибкая граница 0 предотвращает создание файлов ядра.

HCORLIM

Максимальное значение SCORLIM.

SFNOLIM

Гибкая граница, определяющая максимальное число открытых файлов, которое может иметь процесс. Когда этот предел превзойден, попытки открыть файлы терпят неудачу и сообщение об ошибке будет установлено в EMFILE. Обратите внимание, что этот параметр замещает параметр NOFILE системы SRV3.2.

HFNOLIM

Максимальное значение SFNOLIM.

SVMMLIM

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

HVMMLIM

Максимальное значение SVMMLIM.

Когда и что настраивать

Некоторые системы Unix одновременно поддерживают десятки пользователей. По мере добавления пользователей к этим системам добавляются аппаратные средства с дополнительной памятью и параметры системы настраиваются так, чтобы ядро системы Unix могло более эффективно работать.

Это зачастую включает назначение дополнительной памяти пространству данных ядра. Обычно это позволяет системе поддерживать больше пользователей.

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

В системе SVR4.0. необходимость перенастраивать систему сокращается для тех ситуаций, когда добавляется память или ожидается, что систему будет использовать больше пользователей. И все это благодаря динамическому распределению структур критических данных ядром системы.

Особые случаи

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

Это можно выполнить, если стать привилегированным пользователем и изменить "ulimit" для процесса оболочки ядра shell командой ulimit (1) или путем изменения строки ULIMIT в файле /etc/default/login. Альтернативное г, решение - модифицировать систему SFNOLIM для всех пользователей.

Сообщения ядра системы о превышении границ системы

Бывают случаи, когда ядро системы Unix рекомендует превысить границы системы. Эти сообщения поступают на консоль оператора.

Некоторые сообщения только рекомендательные, в других случаях распечатываются дополнительные

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

Если такие сообщения возникают, необходимо обратиться к соответствующему настраиваемому параметру за дополнительной информацией.

Кэш-буферы

Системы Unix используют буферы памяти для хранения данных, записанных или считанных с диска. Буферы используются повторно.

В системе SVR3.2 и ранних системах Unix размер кэш-буфера соответствовал значению настраиваемого параметра главной системы.

В системе SVR4.0 буферы распределяются системой как нужно.

Изменение существующего параметра ядра системы

Файл stune используется для изменения настраиваемого параметра системы из его значения по умолчанию в файле mtune. В файле stune имеются только те параметры, которые будут установлены в значения, отличающиеся от требуемых по умолчанию системой.

Хотя основная система определяет лишь несколько значений в stune, в пакетах расширений драйверов устройств могут быть дополнительные элементы. Файл stune можно отредактировать, чтобы изменить значение, уже помещенное туда, и добавить дополнительный параметр, который вы хотите установить в значение, отличающееся от значения по умолчанию в файле mtune.

В файле /etc/conf/bin дается сценарий idtune для упрощения модификации и добавления элемента stune. Этот сценарий особенно полезен при подготовке пакетов расширений ПО, которые нужны для изменения параметра системы.

Данная команда использует индивидуальные параметры системы, осуществляет поиск в файле stune и изменяет существующее значение или добавляет параметр к файлу stune, если он не определен. Выбранное значение всегда должно быть в пределах от минимального до максимального значения в файле ratune.

Хотя не рекомендуется устанавливать значение параметра за пределы, указанные в файле mtune, если требуется, чтобы параметр был установлен в значение выше, чем это разрешено, вы можете отрегулировать пределы.

Переконфигурация ядра системы для разрешения новых параметров

После модификации файла stune нужно повторно выполнить конфигурацию системы с помощью команды /etc/conf/bin/idbuild. Затем систему нужно закрыть и заново запустить.

С помощью команды idbuild строится новое ядро системы Unix и устанавливается файл, который используется при закрытии системы. Новое ядро системы Unix будет связано с /stand/unix; оно автоматически выполняется при следующем повторном запуске.

Для модификации параметра выполните следующие действия:

1. Модифицируйте файл /etc/conf/cf .d/stune. Это можно сделать или отредактировав файл stune, или выполнив команду idtune.

2. Выполните команду /etc/conf/bin/idbuild.

3. Выполните команду cd /, чтобы попасть в корневой каталог и наберите:

/etc/shutdown -16 -g0 -у

Что делать, если система не запускается

Если новое ядро системы не запускается должным образом, возможно это связано с удаленными ЭВМ. Это может случиться, если параметр системы или комбинация нескольких измененных параметров построили слишком большое ядро системы Unix для начальной загрузки или ядро, которое не инициализируется должным образом. В таком случае для восстановления системы выполняются следующие шаги:

1 .Вставить гибкий диcк N1 ПО основной системы.

2. Загрузить систему с гибкого диска.

3. После запроса системы вставить гибкий диск N2.

4. Когда появится подсказка Strike RETURN to install the Unix system on your hard disk, нажать Del, чтобы выйти из программы инсталляции.

5. Проверить и смонтировать жесткий диск, затем скопировать ядро системы с помощью следующих команд:

/etc/fs/bfs/fsck -у /dev/dsk/0s10

/etc/fs/bfs/mount /dev/dsk/0s10 /mnt j

cp /unix /mnt/stand/unix

umount /dev/dsk/0s10

6. Удалить гибкий диск и загрузить восстановленное ядро системь!

7. Изменить параметры файла /etc/conf/cf.d/stune, установив их в их первоначальные значения и выполнить команду idbuild, затем сделать начальную загрузку системы.


Оглавление

Предыдущая страница

Следующая страница

GNU OCXE GNU LINUX
Сайт управляется системой uCoz