Разработка интеллектуальных систем управления внешней памятью ЭВМ и сетей с расширенными функциональными возможностями

ИНФОРМАТИКА, ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА И УПРАВЛЕНИЕ

УДК 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

LM

LM

LM

И-

4i-

LM

A

4i-

LM

Файловый

процессор

С:

Интерпретатор

СеАМ

С:

Pi

I /о

Л

/і, ІЗ, /4, /

/2, /3, /4, /i0

/4i /5

/3, /б, /7, /8

/P(/9) С

<=>

/P

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.