[ Страница назад | Страница вперед | Содержание | Индекс | Библиотека | Юридическая информация | Поиск ]

Программирование: Разработка и отладка программ


Глава 26. Контроллер системных ресурсов

В этом разделе описан Контроллер системных ресурсов (SRC), предназначенный для управления сложными подсистемами.

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

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

Дополнительная информация о требованиях, которые накладываются на программы SRC, приведена в следующих разделах:


Взаимодействие подсистем с SRC

В SRC подсистемой называется программа или набор связанных программ, созданный в виде отдельного модуля, предназначенного для решения конкретной задачи. Дополнительная информация о свойствах подсистемы приведена в разделе "Контроллер системных ресурсов - Обзор" книги Руководство по управлению системой AIX 5L версии 5.1: Операционная система и устройства.

Субсервер, называемый в UNIX демоном, - это процесс, которым управляет подсистема.

SRC работает с объектами из класса объектов SRC. При этом подсистемы определяются в SRC как объекты подсистем, а субсерверы - как объекты типа субсервер. Структура, связанная с объектом каждого типа, описана в файле usr/include/sys/srcobj.h.

В SRC предусмотрены команды для работы с объектами подсистем, субсерверов, а также группами подсистем. Группой подсистем называется группа любых пользовательских подсистем. Объединение подсистем в группы позволяет выполнить одну команду сразу для нескольких подсистем. Кроме того, для группы подсистем можно создать общий метод уведомления об ошибках.

SRC обменивается данными с подсистемами путем отправки сигналов и обмена пакетами с запросами и ответами. Помимо сигналов SRC поддерживает обмен данными через сокеты и очереди сообщений IPC. Для описания обмена данными между подсистемами и SRC в API SRC предусмотрено несколько функций (Список дополнительных функций SRC). Кроме того, в API SRC предусмотрены функции для обмена данными между клиентскими программами и SRC.

SRC и команда init

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

SRC вызывает команду init только при добавлении главного демона SRC, srcmstr, в файл inittab. (Демон srcmstr указан в файле inittab по умолчанию.) В этом случае команда init запускает демон srcmstr во время запуска системы, как и любой другой процесс. Права на запуск демона srcmstr есть только у системного администратора и членов системной группы.

Компиляция программ, взаимодействующих с демоном srcmstr

Для того чтобы программа могла работать с демоном srcmstr, в ней нужно указать файл /usr/include/spc.h, а во время компиляции подключить библиотеку libsrc.a. Для программ, обменивающихся данными с SRC путем сигналов, этого делать не нужно.

Операции SRC

Для работы с SRC подсистема должна обмениваться данными с демоном srcmstr двумя способами:

Все подсистемы SRC должны поддерживать команду stopsrc. Эта команда применяется SRC для завершения работы подсистем и их субсерверов с помощью сигналов SIGNORM (обычное завершение), SIGFORCE (принудительное завершение) или SIGCANCEL (отмена).

Кроме того, подсистема может поддерживать команды startsrc, lssrc-l, traceson, tracesoff и refresh, функцию отправки подробного отчета о своем состоянии и отчета о состоянии субсервера, а также функцию уведомления об ошибках SRC. Дополнительная информация по этому вопросу приведена в файле Создание подсистем, взаимодействующих с SRC.

Функции SRC

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

Связанная информация

Контроллер системных ресурсов - Обзор

Основные сведения о Объекты SRC

Основные сведения о Способы обмена данными с SRC

Создание подсистем, взаимодействующих с SRC

Определение подсистемы в SRC

Список дополнительных функций SRC

Глава 17, Администратор объектных данных (ODM).


[ Страница назад | Страница вперед | Содержание | Индекс | Библиотека | Юридическая информация | Поиск ]