3.8. Ограничения ядра

3.8. Ограничения ядра

Большинству реализаций System V IPC свойственно наличие внутренних ограничений, налагаемых ядром. Это, например, максимальное количество очередей сообщений или ограничение на максимальное количество семафоров в наборе. Характерные значения этих ограничений приведены в табл. 6.2, 11.1 и 14.1. Большая часть ограничений унаследована от исходной реализации System V. 

ПРИМЕЧАНИЕ

Раздел 11.2 книги [1] и глава 8 [6] описывают реализацию очередей сообщений, семафоров и разделяемой памяти в System V. Некоторые из этих ограничений описаны уже там.

К сожалению, некоторые из накладываемых ограничений достаточно жестки, поскольку они унаследованы от исходной реализации, базировавшейся на системе с небольшим адресным пространством (16-разрядный PDP-11). К счастью, большинство систем позволяют администратору изменять некоторые из установленных по умолчанию ограничений, но необходимые для этого действия специфичны для каждой версии Unix. В большинстве случаев после внесения изменений требуется перезагрузка ядра. К сожалению, в некоторых реализациях для хранения некоторых параметров до сих пор используются 16-разрядные целые, а это уже устанавливает аппаратные ограничения.

В Solaris 2.6, например, таких ограничений 20. Их текущие значения можно вывести на экран, используя команду sysdef. Учтите, что вместо реальных значений будут выведены нули, если соответствующий модуль ядра не загружен (то есть средство не было ранее использовано). Это можно исключить, добавив к файлу /etc/system любой из нижеследующих операторов. Файл /etc/system считывается в процессе перезагрузки системы:

set msgsys:msginfo_msgseg = значение

set msgsys:msginfo_msgssz = значение

set msgsys:msginfo_msgtql = значение

set msgsys:msginfo_msgmap = значение

set msgsys:msginfo_msgmax = значение

set msgsys:msginfo_msgmnb = значение

set msgsys:msginfo_msgmni = значение

set semsys:seminfo_semopm = значение

set semsys:seminfo_semume = значение

set semsys:seminfo_semaem = значение

set semsys:seminfo_semmap = значение

set semsys:seminfo_semvmx = значение

set semsys:seminfo_semmsl = значение

set semsys:seminfo_semmni = значение

set semsys:seminfo_semmns = значение

set semsys:seminfo_semmnu = значение

set shmsys:shminfo_shmmin = значение

set shmsys:shminfo_shmseg = значение

set shmsys:shminfo_shmmax = значение

set shmsys:shminfo_shmmni = значение

Последние шесть символов имени слева от знака равенства представляют собой переменные, перечисленные в табл. 6.2, 11.1 и 14.1.

В Digital Unix 4.0B программа sysconfig позволяет узнать или изменить множество параметров и ограничений ядра. Ниже приведен вывод этой команды, запущенной с параметром –q. Команда выводит текущие ограничения для подсистемы ipc. Некоторые строки в выводе, не имеющие отношения к средствам IPC System V, были опущены:

alpha % /sbin/sysconfig –q ipc

ipc:

msg-max = 8192

msg-mnb = 16384

msg-mni = 64

msg-tql = 40

shm-max = 4194304

shm-min = 1

shm-mni = 128

shm-seg = 32

sem-mni = 16

sem-msl = 25

sem-opm = 10

sem-ume = 10

sem-vmx = 32767

sem-aem = 16384

num-of-sems = 60

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

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

1.5 Ограничения

Из книги Процессы жизненного цикла программных средств автора Автор неизвестен


Ограничения

Из книги Симуляция частичной специализации автора Кузнецов Павел

Ограничения Приведенная техника симуляции частичной специализации обладает некоторыми ограничениями по сравнению с «настоящей» частичной специализацией шаблонов классов.Одним из наиболее заметных ограничений является то, что дискриминирующие функции,


Ограничения

Из книги Управление исходными текстами. Часть 1. Краткое руководство по CVS автора Рыженков Илья

Ограничения CVS не является заменой управлению проектами, это всего лишь один из инструментов команды. Также этот инструмент сам по себе не содержит механизмов автоматический сборки (build system), регрессионного тестирования (regression testing), взаимодействия разработчиков (collaboration)


Ограничения

Из книги Обработка баз данных на Visual Basic®.NET автора Мак-Манус Джеффри П


2.4.6. Ограничения

Из книги MySQL: руководство профессионала автора Паутов Алексей В

2.4.6. Ограничения Имеется ряд ограничений в alpha-версии Falcon. В дальнейшем они постепенно будут сниматься:Не работает SELECT FOR UPDATE. Для Alpha-версии максимальная длина ключа ограничена 1100 байтами. Уровни изоляции Serializable не обеспечиваются. Конфигурация времени ожидания для


2.8.2. Ограничения CSV

Из книги TCP/IP Архитектура, протоколы, реализация (включая IP версии 6 и IP Security) автора Фейт Сидни М

2.8.2. Ограничения CSV Важно: тип памяти CSV не поддерживает индексацию.Выделение разделов не обеспечивается для таблиц, использующих CSV. Начиная с MySQL 5.1.12, больше не возможно создать разбитую на разделы таблицу CSV (Глюк


5.18.5 Ограничения на IP-адрес

Из книги Разработка приложений в среде Linux. Второе издание автора Джонсон Майкл К.

5.18.5 Ограничения на IP-адрес Набор доступных IP-адресов существенно сокращается из-за применения специальных форматов для широковещательных рассылок и таблиц маршрутизации. Стандарт RFC 1122 Requirements for Internet Hosts — Communication Layers (Требования к хостам Интернета — уровни


7.5.4. Ограничения

Из книги Сначала мобильные! автора Вроблевски Люк

7.5.4. Ограничения Несмотря на то что Electric Fence выполняет неплохую работу по обнаружению переполнения буферов, выделенных malloc(), он не помогает отслеживать проблемы ни с глобальными, ни с локальными данными. Electric Fence также не обнаруживает утечки памяти, потому решать эту


2 Ограничения

Из книги Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ автора Борри Хелен

2 Ограничения НЕСОМНЕННО, НЕВЕРОЯТНЫЙ РОСТ использования Интернета через мобильные устройства связан с улучшением их характеристик, однако сами эти устройства имеют и серьезные ограничения. У них маленькие экраны, телефонные сети зачастую ненадежны, да и доставать


Ограничения

Из книги Операционная система UNIX автора Робачевский Андрей М.

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


Ограничения UNIQUE

Из книги автора

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


Ограничения

Из книги автора

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


Ограничения

Из книги автора

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


Ограничения PSQL

Из книги автора

Ограничения PSQL Существуют некоторые ограничения языка для кодов в модулях PSQL.* Операторы, использующие подмножество языка определения данных (DDL) SQL Firebird, не разрешены в PSQL[111].* Операторы управления транзакциями недопустимы в PSQL, потому что хранимые процедуры и триггеры


Ограничения

Из книги автора

Ограничения При удалении процедуры существуют ограничения.* Только пользователь SYSDBA и владелец процедуры могут ее удалять.* Процедура, находящаяся в использовании в любой другой транзакции, не может быть удалена. Это является особой проблемой в системах, где процедуры


Ограничения

Из книги автора

Ограничения UNIX является многозадачной системой. Это значит, что несколько процессов конкурируют между собой при доступе к различным ресурсам. Для "справедливого" распределения разделяемых ресурсов, таких как память, дисковое пространство и т.п., каждому процессу