ИНФОРМАТИКА, ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА И УПРАВЛЕНИЕ
УДК 681.324
С. А. Зинкин
РАЗРАБОТКА ИНТЕЛЛЕКТУАЛЬНЫХ СИСТЕМ УПРАВЛЕНИЯ ВНЕШНЕЙ ПАМЯТЬЮ ЭВМ И СЕТЕЙ С РАСШИРЕННЫМИ ФУНКЦИОНАЛЬНЫМИ ВОЗМОЖНОСТЯМИ
Рассмотрены вопросы проектирования интеллектуальных систем управления внешней памятью (СУВП) на основе функционального подхода, учитывающего в первую очередь состав и взаимосвязь функций системы, а также информационно-управляющие потоки, циркулирующие в СУВП. Наряду с диаграммами потоков данных для описания потоков управления, устанавливающих порядок выполнения функциональных модулей, используются сценарии с темпоральными операциями.
Введение
Функциональные подходы к проектированию информационно-вычислительных систем, основанные на выделении функций, реализуемых системой, и их взаимосвязей, в настоящее время находят широкое применение. В качестве примера можно привести ряд известных в литературе подходов: функционально-структурный подход, предполагающий формирование дерева функций системы и построение обобщенных операторных моделей; подход, основанный на построении информационно-потоковых схем параллельных многопроцессорных систем с общим управлением; подход, основанный на иерархической декомпозиции функций системы и покрытии их унифицированными программно-аппаратными модулями. Существуют и другие способы функционального описания систем, например, с помощью функциональных и операционных схем, диаграмм потоков данных.
Использование указанных функциональных подходов при проектировании интеллектуальных СУВП в силу их специфики может вызвать определенные трудности. Следует отметить прежде всего невычислительный характер процессов, протекающих в СУВП, последовательное выполнение операций, некритичность времени выполнения некоторых операций и связанная с этим возможность программной реализации функций, необходимость согласования скоростей передачи интерфейсов ввода-вывода центральной ЭВМ и внешних запоминающих устройств (ВЗУ). Кроме того, следует отметить отсутствие гибких процедур перехода от функционального описания к структуре аппаратно-программных средств системы. Для представления функциональной структуры СУВП будем использовать диаграммы потоков данных (ДПД) специального вида. Достоинством ДПД является возможность совмещения разных уровней абстракции при описании элементов функциональной
структуры как в плане их физической реализации, так и в плане взаимодействия элементов, например, возможность представления как байтового, так и файлового обмена информацией. По существу, ДПД являются определенной семантической интерпретацией графовой модели СУВП, в которой вершинам графа соответствуют функциональные модули (ФМ), представляющие собой определенным образом графически оформленные блоки, имеющие множество входов и выходов. Недостатком ранее использованных ДПД является отсутствие управляющих связей между ФМ, что не позволяет судить, хотя бы в общем виде, о динамике протекающих в СУВП процессов.
1 Парадигма согласования и координации процессов и объектов и ее использование при структурной реализации многофункциональных СУВП
При моделировании реальной технической системы цепочка рассуждений в сети абстрактных машин (СеАМ) [1, 2] позволяет получить заключение
о состоянии процесса. Например, при моделировании системы ВЗУ может быть получено заключение о завершении позиционирования головок записи-считывания или о завершении операции ввода-вывода в целом.
Выполнение модуля СеАМ интерпретируется некоторым агентом или группой агентов. Выполнение правил-продукций модулей СеАМ и связанное с ним обновление фактов (функций и предикатов в некотором пространстве) могут влиять на систему и окружающую ее среду. При использовании модулей СеАМ в качестве непосредственно выполняемых спецификаций в реальной системе обработки и хранения данных некоторым фактам соответствуют специальные агенты-демоны, вызываемые путем модификации определенных функций СеАМ. При интерпретации СеАМ в реализованной на ЭВМ или на базе вычислительной сети поведенческой модели системы демоны могут выполнять роль различного рода сервисных процедур для сбора статистических данных о функционировании реализуемой системы, для управления списками текущих и планируемых событий, для реализации параллельного или квази-параллельного режима исполнения процессов в модели и др. Правила, представленные модулями СеАМ, объединяются в единую систему посредством глобального пространства функций и предикатов.
Таким образом, формализм СеАМ возможно использовать в качестве языка инженерии знаний для основанного на правилах условных замещений функций и предикатов иерархического, управляемого событиями дискретного концептуального моделирования.
Исходя из анализа требований к современным СУВП, сформируем дерево функций, используя для этого индексную и точечную нотацию.
Дерево функций содержит следующие уровни и подуровни:
I уровень:
^0 - управление ВЗУ.
II уровень:
- организация сопряжения с интерпретатором СеАМ;
^2 - организация сопряжения с ВЗУ;
^3 - ведение и поддержка каталогов;
¥4 - инструкции интерпретатора и запросы оператора;
^5 - контроль и диагностика;
F6 - управление и обмен данными с интерпретатором;
F7 - управление и обмен данными с ВЗУ.
Проведем декомпозицию выделенных базовых функций СУВП и определим нижний уровень иерархии.
III уровень:
- функция F1 :
F11 - обмен данными в параллельной форме с интерпретатором;
F12 - управление обменом информацией с интерпретатором;
F13 - хранение служебной информации;
- функция F2:
F21 - обмен данными в параллельной форме ВЗУ;
F22 - управление обменом информацией ВЗУ ;
F23 - хранение служебной информации;
- функция F3:
F31 - анализ команды СУВП;
F32 - включение файлов в каталог;
F33 - исключение файла из каталога;
F34 - поиск файла в каталоге;
F35 - чтение и передача каталога;
F3 6 - формирование результатов выполнения команды СУВП;
- функция F4:
F41 - анализ инструкций интерпретатора СеАМ;
F42 - трансляция инструкций интерпретатора и запросов оператора в команды СУВП;
F43 - управление реконфигурацией ВЗУ ;
F4.4 - управление электропитанием;
F45 - планирование и диспетчеризация команд СУВП;
F46 - анализ результатов выполнения команды СУВП;
F4 7 - формирование информации о состоянии СУВП;
F4.8 - сбор и анализ трасс-обращений к файлам;
- функция F5:
F51 - анализ команды СУВП;
F52 - обработка прерываний по ошибкам аппаратуры;
F53 - обработка прерываний по ошибкам программного обеспечения; F54 - повторный запуск команд СУВП;
F55 - формирование результатов выполнения команды СУВП;
- функция F6:
F61 - анализ команды СУВП;
F62 - прием данных из интерпретатора СеАМ;
F63 - передача данных в интерпретатор;
F6.4 - формирование результатов выполнения команды СУВП;
F65 - формирование служебной информации;
F6 6 - управление аппаратными ресурсами;
F67 - оформление инструкций интерпретатора СеАМ;
- функция F7:
F71 - анализ команды СУВП;
F72 - трансляция команды СУВП в инструкции интерфейса ВЗУ ;
F73 - планирование и диспетчеризация инструкций интерфейса внешних ЗУ;
^7.4 - прием данных от ВЗУ;
^7.5 - передача данных в ВЗУ;
^7.6 - формирование результатов выполнения команды СУВП;
¥7 7 - формирование служебной информации;
^7.8 - управление аппаратными ресурсами.
2 Диаграммные макроопределения и сценарии управления внешней памятью ЭВМ
Общая структура интеллектуальной СУВП представлена на рис. 1. В работе [3] для описания функционирования СУВП использовались диаграммные макроопределения (ДМО). В настоящей работе мы будем рассматривать иерархию ДМО как разновидность иерархических сценарных моделей, предложенных в работах [4-6].
Канал ввода-вывода
хост-системы
На рис. 2 представлено ДМО высшего уровня дерева функций СУВП. При составлении ДМО высшего уровня сделаны следующие предположения: обмен информацией между интерпретатором СеАМ и ВЗУ осуществляется с использованием согласующей буферной памяти (БП), поэтому отсутствует связь по данным между ФМ ^4, ¥6 и ^7, в то время как информация, необходимая для нормальной работы ФМ, передается в виде параметров команд
СУВП или инструкций интерпретатора СеАМ; режим чтения каталога в собственную память интерпретатора предусматривает предварительную передачу информации в БП. Звездочками на рисунках обозначены результаты выполнения команд.
Данные Данные Данные Данные Данные
Рис. 2 Диаграммное макроопределение (управление ВЗУ)
Выполнение инструкции интерпретатора разбивается на три фазы: начальную фазу выполнения инструкции и фазу окончания инструкции. Начальная фаза заключается в формировании команды СУВП в соответствии с полученной инструкцией. Представим процесс выполнения инструкции в виде цепочки последовательно реализуемых действий, где каждому действию соответствует выполнение определенной операции отдельным или совокупностью ФМ; описание и реализация темпоральных операций Т (непосредственное следование) и ||' (перекрытие временных интервалов).
Обозначим через (ФМ7 ||' ФМ;) действие, при выполнении которого 7-й и ]-й ФМ работают одновременно и зависимо друг от друга, причем порядок следования модулей определяет направление передачи информации. Тогда цепочка действий, соответствующих начальной фазе, имеет вид
ц = (Я ||- Я) Т Я,,
где фрагмент (Я1 ||' Я6) описывает операцию приема и форматирования инструкции интерпретатора СеАМ. Фаза окончания инструкции заключается в передаче интерпретатором информации о состоянии СУВП и представлена следующей цепочкой действий:
¿2 = Я Т (Яб ||- Я1) т Я 4,
в которой возврат к модулю Я4 означает выдачу результата выполнения команды СУВП модулем Я6 после завершения обмена данными с интерпретатором. Так как символ Я4 встречается второй раз, в цепочке он отмечен одним штрихом.
При каждом новом вхождении имени функционального модуля в одну и ту же цепочку будем добавлять к нему новый штрих. Ниже в общем виде
представлены цепочки действий, соответствующие фазам выполнения основных инструкций интерпретатора.
1. Чтение каталога:
Ьз = Р4 т (Рз у *6) Т Р4 Т Р !!' РО Т р" ,
где фрагмент (Р3 !!' Р6) описывает операцию предварительной передачи каталога в БП.
2. Поиск по каталогу:
¿4 = *4 Т Рз Т Р/.
3. Чтение данных из ВЗУ:
¿5 = Р4 Т (Р!!' Р2) Т Р/ Т Р !!' Р) Т р" Т (Рб!!' *1) Т р/" ,
где фрагмент (Р7 !!' Р2) описывает операцию трансляции команды СУВП в инструкцию интерфейса ВЗУ и передачу управляющей информации во внешнее ЗУ; (Р2 !!' Р7) описывает операцию загрузки БП данными, поступающими из ВЗУ.
4. Запись данных в ЗУ:
¿6 = *4 Т (Р !!' Рб) Т Р/ Т (Р!!' Рг) Т р”Т (Р7 !!' Р2)* Т р/" ,
где фрагмент (Р1 !!' Р6) описывает операцию загрузки БП данными, поступающими из собственной памяти интерпретатора, а фрагмент (Р7 Ц' Р2) описывает операцию передачи данных из БП в ВЗУ.
На рис. 3 и 4 представлены ДМО, соответствующие модулям Р6 и Р7.
Занятие или
Рис. 3 Диаграммное макроопределение Р6 (управление и обмен данными с интерпретатором СеАМ)
Определим процесс физической реализации функциональной структуры СУВП как процесс построения физической структуры в заданном конструктивном базисе с учетом заданных функциональных требований. В конструктивном плане такой процесс сводится к решению задачи покрытия функциональной структуры определенным базовым набором физических структур.
Код, параметры
_ инструкции ИВЗУ
К7.3 Конец планирования к Р7.2 Инструкции ВЗУ
Код, параметры
Рис. 4 Диаграммное макроопределение Р7 (управление и обмен данными с ВЗУ)
Для перехода к физической структуре СУВП необходимо выделить функционально полное множество физических элементов, из которых формируется структура, и множество связей между ними. Множество типов аппаратных структур задается следующим образом: Р - процессорный блок; М -блок памяти; I - интерфейсное оборудование. Осуществим переход от функциональной структуры СУВП к физической с учетом использования многопортовой БП, для которой возможно параллельное выполнение операций обмена информацией с центральной ЭВМ в режиме прямого доступа к памяти и ВЗУ. На рис. 5 представлена физическая структура реализации модулей, составляющих к уровню р (управление ВЗУ), построенная при учете темпоральных операций в сценариях, описанных цепочками /,1-£6, и условий перехода от темпоральных сценариев к пространственным.
БП
Интерпретатор К1 СеАМ
Файловый
процессор
<----►
Кб
І1
І9
'
к,
Мз
Г
Рі <-і
Мі
Г
Із
М, Р,
І6
Р 2
М2
Оператор
—►
ВЗУ —►
Машина базы
данных <-------►
Рб Мб
Р 5 М5
Рис. 5 Физическая реализация интеллектуальной системы управления ВЗУ
I
I
,
5
I
2
I
10
7
Область истинности (отношение развертывания) предиката D для данной структуры формируется модулем СеАМ, выполняющим следующие правила обновлений:
Mvp = [Ostait]({D(Fi, Ii) ^ true, D(F2,I2) ^ true, D(F3, P6) ^ true,
D(F4, P4) ^ true, D(F5, P5) ^ true, D(F6, P1) ^ true,
D(F7, P2) ^ true} v Re), по завершении выполнения которых функциональные модули размещаются на конструктивных модулях интеллектуальной СУВП. Здесь a^t - признак готовности системы к загрузке. Выполнение данного модуля СеАМ в реальной системе сопровождается загрузкой соответствующего программного обеспечения в основную память процессорных модулей, составляющих СУВП. Рисунок 6 иллюстрирует построение СУВП на базе типовой мульти-микропроцессорной системы с общедоступной мультипроцессорной шиной. Здесь и далее аббревиатура LM обозначает локальную основную память, а IP -выделенный интерфейсный модуль. Пунктиром обозначен процессорный элемент P0 с локальной памятью, включение которого в структуру необходимо при централизованном управлении работой СУВП; при децентрализованном управлении необходимость в выделенном процессоре отсутствует. На рис. 7 приведена структура СУВП на основе коммутатора, реализованная в инфраструктуре локальной сети.
I------------1
I LM(Mo') <¡1
LM(Mi)
LM(M2')
LM(M3)
LM(M,')
И-
4i-
LM(M5')
A
4i-
LM(M6)
Файловый
процессор
С:
Интерпретатор
СеАМ
С:
Pi
I /о
Л
/і, ІЗ, /4, /
/2, /3, /4, /i0
/4i /5
/3, /б, /7, /8
/P(/9) С
<=>
/P(/2)
Mi
M2
M3
M4
M6
/Р(/б)
Модули ВЗУ =>@ ^60 N5B
« /р(/іо) «
Оператор
Машина базы данных
v
Рис. б СУВП на базе мультимикропроцессорной системы
р
3
p
/
р
/
р
Модули ВЗУ
Рис. 7 Структура мультимикропроцессорной системы управления ВЗУ на основе коммутатора
3 Функционально-структурная реализация машин баз данных и знаний в составе интеллектуальных систем управления внешней памятью ЭВМ и сетей
В рамках исследований в области технической имитации интеллекта большое значение придается разработке систем управления базами знаний (БЗ) как одного из важнейших инструментальных средств новой информационной технологии. К основным функциям управления БЗ относятся [7]: поддержка пользовательского интерфейса; пополнение и редактирование БЗ; логический вывод; поддержка целостности и непротиворечивости знаний; реорганизация БЗ. Отметим, что системы управления БЗ (СУБЗ) могут быть встроены в информационно-управляющую систему, например в систему управления внешней памятью ЭВМ, с целью ее интеллектуализации. БЗ и соответственно СУБЗ можно классифицировать по ряду признаков, основным из которых является модель представления знаний. В настоящее время используются основные модели представления знаний на основе логики предикатов, систем продукций, семантических сетей, фреймов. В данной работе в качестве модели представления знаний используются сети абстрактных ма-
шин (СеАМ). В зависимости от выбранной модели существенно различается не только представление, но и алгоритмы обработки знаний, а также аппаратные средства их реализации.
Любую операцию отдельного устройства СУВП или его блока можно описать определенной последовательностью действий, тип и характер реализации которых задается аппаратно-программной структурой СУВП. Структура программного обеспечения СУВП определяется с помощью отображения полученных алгоритмов на многоуровневую древовидную структуру физической среды (ФС). Рассмотрим физическую реализацию машины базы данных (МБД) на основе ее дерева функций:
I уровень:
Р0 - управление реляционной базой данных.
II уровень:
Р - организация сопряжения с интерпретатором СеАМ;
Р2 - управление и обмен данными с интерпретатором;
Р3 - организация сопряжения с файловым процессором (ФП);
Р4 - управление и обмен данными с ФП;
- ведение и поддержка справочника отношений базы данных; управление буфером данных;
Р6 - интерпретация запросов;
Р7 - контроль и диагностика;
Р8 - реализация операций реляционной алгебры и агрегатных функций.
III уровень:
- функция Р6:
Р6.1 - анализ инструкций интерпретатора СеАМ;
Р62 - трансляция инструкций интерпретатора СеАМ в последовательность команд МБД;
Р63 - поддержка мультипрограммного режима работы МБД;
Р64 - планирование и диспетчеризация команд МБД;
Р65 - анализ результатов выполнения команд;
Р66 - формирование информации о состоянии МБД, изменение схемы базы данных;
Р67 - сбор и анализ трасс-обращений к базе данных.
На рис. 8 приведено диаграммное макроопределение ВМ0, представляющее функцию Р0. Здесь данные 1 - программа реализации инструкции интерпретатора СеАМ; данные 2 - справочник отношений в базе данных; данные 3 - результаты выполнения отдельных реляционных операций и отношения базы данных. Звездочками отмечены результаты выполнения инструкций МБД.
На рис. 9 приведена аппаратная структура МБД в предположении использования многопортовой буферной памяти, причем появление дополнительных блоков интерфейсного оборудования объясняется характером взаимодействия процессорных блоков.
Область истинности (отношение развертывания) предиката В для данной структуры формируется модулем СеАМ, выполняющим следующие правила обновлений:
Mmbd = [astart]({D(Fb Ii) ^ true, D(F2, P1) ^ true, D(F3,I2) ^ true,
D(F4, P2) ^ true, D(F5, P5) ^ true, D(F6, P4) ^ true,
D(F7, P4) ^ true, D(F8, P6) ^ true} v Re), по завершении выполнения которых функциональные модули размещаются на конструктивных модулях МБД. Здесь, как и ранее, а,^ - признак готовности системы к загрузке. Выполнение данного модуля СеАМ в реальной системе сопровождается загрузкой соответствующего программного обеспечения в основную память процессорных модулей, составляющих МБД.
Данные
Данные
Данные
Данные
Интерпретатор Fi СеАМ
h
f2_ <-->
Ft, F7
M4
БП
M3
Pi
M1
P4
P 2
F4
*-
M2
F3 —>
ФП
F5
P5 M5
f8
6 P Мб
Рис. 9 Аппаратная структура МБД с использованием буферной памяти
h
h
3
4
I
2
I
5
I,
6
I
7
Рисунок 10 иллюстрирует построение МБД на базе типовой мульти-микропроцессорной системы с общедоступной мультипроцессорной шиной, а на рис. 11 приведена структура МБД на основе коммутатора, реализуемая в среде локальной сети.
Рис. 10 СУВП на базе типовой мультимикропроцессорной системы
Интерпретатор
СеАМ
Мл
Л
м2
м3
тт~
~~Т
Р4
м.
тгг
1 І I I
м5
Коммутатор
Мб
Рис. 11 Структура мультимикропроцессорной МБД на основе коммутатора
р
р
ФП
I
I
I
I
I
р
р
Заключение
Предложенные методы предназначены для построения аппаратнопрограммных средств для реализации механизмов логического вывода, управления базой знаний, обеспечения интеллектуального интерфейса с пользователем. В отличие от работы [8], предложенная здесь реализация предполагает сетевую реализацию и развитое самоуправление в иерархической памяти. Кроме того, предполагается, что предложенные методы, основанные на механизмах исполняемых спецификаций сетей абстрактных машин и активных семантических сетей, предложенных в работах автора [1-6], позволят сделать шаг к преодолению семантического разрыва между инфраструктурой классической мультипроцессорной системы и алгоритмическими структурами, обеспечивающими внутреннюю и внешнюю интеллектуализацию СУВП.
Список литературы
1. Зинкин, С. А. Сети абстрактных машин высших порядков в проектировании систем и сетей хранения и обработки данных (базовый формализм и его расширения) / С. А. Зинкин // Известия высших учебных заведений. Поволжский регион. Технические науки. - 2007. - № 3. - С. 13-22.
2. Зинкин, С. А. Сети абстрактных машин высших порядков в проектировании систем и сетей хранения и обработки данных (механизмы интерпретации и варианты использования) / С. А. Зинкин // Известия высших учебных заведений. Поволжский регион. Технические науки. - 2007. - № 4. - С. 37-50.
3. Зверев, С. Л. Интеллектуализация систем внешней и массовой памяти ЭВМ / С. Л. Зверев, С. А. Зинкин, Б. М. Раков // Вопросы радиоэлектроники. - 1990. -Вып. 13. - С. 43-58. - (Электронная вычислительная техника).
4. Зинкин, С. А. Алгебра сценариев для спецификации операционной семантики активных сетей хранения и обработки данных / С. А. Зинкин // Известия высших учебных заведений. Поволжский регион. Технические науки. - 2004. - № 2. -С. 96-107.
5. Зинкин, С. А. Самомодифицируемые сценарные модели функционирования
систем и сетей хранения и обработки данных (базовый формализм и темпоральные операции) / С. А. Зинкин // Известия высших учебных заведений. Поволж-
ский регион. Технические науки. - 2007. - № 1. - С. 3-12.
6. Зинкин, С. А. Самомодифицируемые сценарные модели функционирования систем и сетей хранения и обработки данных (реализация и свойства сценарных моделей) / С. А. Зинкин // Известия высших учебных заведений. Поволжский регион. Технические науки. - 2007. - № 2. - С. 13-21.
7. Представление и использование знаний / под ред. Х. Уэно, М. Исидзука. - М. :
Мир, 1989. - 220 с.
8. Мото-ока, Т. Японский проект вычислительных систем пятого поколения / Т. Мото-ока // Высокоскоростные вычисления. Архитектура, производительность, прикладные алгоритмы и программы суперЭВМ / под ред. Я. Ковалика. - М. : Радио и связь. - 1988. - С. 90-105.