Главная » Просмотр файлов » М.М. ГОРБУНОВ-ПОСАДОВ - Системное обеспечение пакетов прикладных программ

М.М. ГОРБУНОВ-ПОСАДОВ - Системное обеспечение пакетов прикладных программ (1184225), страница 24

Файл №1184225 М.М. ГОРБУНОВ-ПОСАДОВ - Системное обеспечение пакетов прикладных программ (М.М. ГОРБУНОВ-ПОСАДОВ - Системное обеспечение пакетов прикладных программ.pdf) 24 страницаМ.М. ГОРБУНОВ-ПОСАДОВ - Системное обеспечение пакетов прикладных программ (1184225) страница 242020-08-19СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 24)

Далее при формировании расчетнойцепочки, обеспечивающей последовательное выполнение несколькихмодулей, необходимо предусмотреть включение в эту цепочку надлежащихпреобразователей значений выходных параметров модулей в форматывходных параметров.На рис.4.1 изображен пример подобной цепочки, обеспечивающейсовместное выполнение нестандартизированных модулей А, В и С спомощью преобразователей Tl, T2 и ТЗ.Здесь все выходные/входные параметры модулей проходят черезпреобразователи, причем преобразователь T2 два выходных параметра (а1модуля А и b2 модуля В) превращает в три входных параметра (с1, с2 и сЗмодуля С).Если бы для проведения реакторных расчетов требовалось составитьтолько одну цепочку, подобную изображенной на рис.4.1, то создаватькакие-либо системные средс-тва для поддержки этой работы, разумеется, не было бы смысла.

Однако,как показал предварительный анализ, число различных модульных цепочек,возникающих при решении задач реакторной защиты, составляет несколькодесятков, причем в каждую цепочку включается обычно 5-6функциональных модулей и несколько преобразователей. Хотя такиемасштабы конструирования относительно невелики (напомним, что всистеме Сафра реально конструируются десятки тысяч различных вариантоврасчетных программ), тем не менее здесь уже вполне оправдано применениенекоторого регулярного подхода, поддержанного соответствующимисистемными средствами.Такой комплекс языковых и системных средств, обеспечивающихсоздание Пакетов прикладных программ на базе Нестандартизированныхпрограммных Фондов, предоставляет система ПНФ [118-120].

Эта системаразработана в ИПМ имени М.В.Келдыша АН СССР для ЭВМ БЭСМ-6 врамках операционной системы Диспак и мониторной системы Дубна.4.2. Основные понятия системы ПНФНестандартизированный программный фонд составляют программы,которые функционально полностью охватывают предметную областьнекоторого научно-технического приложения, но не могут бытьнепосредственно сопряжены между собой, так как они были написанынезависимо, без учета их возможного совместного использования в рамкахрешения одной задачи. Элементы нестандартизированного фонда будемназывать квазимодулями (в отличие от модулей, допускающихнепосредственное сопряжение). В приложениях, связанных с решениембольших комплексных задач, в частности, в задачах реакторной защиты,квазимодули характеризуются большими размерами, сложной логическойструктурой и значительной информационной рассогласованностью.Система ПНФ предоставляет средства для превращения квазимодулей вмодули, пригодные для совместной работы под управлением этой системы.Таким образом, использование системы ПНФ позволяет превратитьнестандартизированный программный фонд в пакет прикладных программ,поддерживающий конструирование расчетных цепочек из модулей пакета.Рассмотрим технологию создания пакета прикладных программ с помощьюсистемы ПНФ.Работа по созданию пакета начинается с анализа расчетных контекстов,т.е.

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

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

В заголовке модулязаписываются значения характеристик его параметров. Состав описанияпараметра определяется форматом этого параметра: для каждой характеристики из числа составляющих формат необходимо указать ее значение дляданного параметра. Например, чтобы указать, что описываемый параметрразмещается в неименованном СОММОN-блоке, необходимо в качествезначения характеристики РАЗМЕЩЕНИЕ задать слово COMMON(РАЗМЕЩЕНИЕ =СОММОN).Итак, в качестве входных данных преобразователь использует значенияхарактеристик параметров, заданные в заголовках модулей.

Входные ивыходные данные преобразователя могут иметь как различные, так исовпадающие форматы. В последнем случае различие преобразуемых параметров обусловлено отличающимися значениями одних и тех жехарактеристик. Преобразователь может контролировать, имеют липередаваемые ему данные надлежащие форматы.Отметим, что преобразователь может, вообще говоря, осуществлятьсопряжение для групп параметров (это необходимо, в частности, когдаодному и тому же физическомуобъекту в разных модулях соответствует различное число параметров).Создание заголовков и преобразователей завершает формированиефункционального и системного наполнений пакета. Теперь квазимодули,снабженные заголовками, превратились в полноценные модули, пригодныедля конструирования из них расчетных цепочек.

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

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

Следует иметь в виду, что приводимое ниже описание языка нельзярассматривать как инструкцию, поскольку для упрощения изложения в немизменены или опущены некоторые второстепенные конструкции.4.3. Характеристики параметров модуляДля каждого включаемого в пакет квазимодуля необходимо выявить иописать в его заголовке в качестве входных или выходных параметровследующие величины:- входные и выходные файлы квазимодуля, расположеннные навнешней памяти;- скаляры и массивы, которые передаются от этого квазимодуля кдругим или от других к этому и либо располагаются в СОММОN-блоках,либо вводятся в качестве исходных данных задания.Синтаксис описания каждого из параметров модуля (квазимодуль споявлением заголовка превращается в модуль, и это позволяет намупотреблять термин «параметр модуля») имеет следующий вид:<описание параметра модуля> ::= <имя параметра>(<список характеристик)<список характеристик> ::= <характеристика>[, <характеристика>] ...<характеристика> ::= <имя характеристики>= <значение характеристики[(<порожденный список характеристик>)]<порожденный список характеристик> ::=<список характеристик><имя характеристики> ::= <слово><значение характеристики> ::= <целое> | <слово> |(<список целых>)<список целых> ::= <целое> [, <целое>] ...где <слово> - последовательность символов длиной не более 12,начинающаяся с буквы и состоящая из букв, цифр и символов «.» и «-»;<целое> - целая константа без знака.Таким образом, описание параметра модуля представляет собой списокего характеристик.

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

Считается, чтоперечень характеристик, входящих в тот или иной формат, задаетсявнешними по отношению к системе ПНФ средствами, т.е. вручную.Поэтому система не может проверить, все ли требуемые форматомхарактеристики параметра включены в заголовок модуля. Тем не менее приописании параметра рекомендуется указывать имя соответствующего емуформата, поскольку это позволяет впоследствии выявить такие грубыеошибки, как обращение к преобразователю с не предназначенным для негоформатом входных данных. Характеристика ФОРМАТ записывается в видеФОРМАТ = <слово>где <слово> задает имя формата.Характеристика ВИД указывает, является ли описываемый параметрвходным (значение ВХОД), выходным (ВЫХОД) или модифицируемым(ВХОД-ВЫХОД).Характеристика РАЗМЕЩЕНИЕ определяет место размещенияпараметра в оперативной памяти или на внешнем носителе.РАЗМЕЩЕНИЕ=ОП означает, что описываемый параметр модуляпринадлежит некоторому СОММОN-блоку; в порожденном спискехарактеристик указывается имя этого COMMON-блока (имя не задается,если блок не помечен), длина COMMON-блока, длина параметра и,возможно, смещение относительно начала COMMON-блока:РАЗМЕЩЕНИЕ=ОП([ИМЯ-COMMON=<идентификатор>,]ДЛИНА-COMMON=<целое>,[СМЕЩЕНИЕ=<целое>,]ДЛИНА=<целое>)PA3MEЩЕНИЕ=COMMON означает, что описываемый параметрзанимает весь COMMON-блок:РАЗМЕЩЕНИЕ=COMMON([ИМЯ-COMMON=<идентификатор>,]ДЛИНА=<целое>)РАЗМЕЩЕНИЕ=ВП означает, что параметр размещается в указанномместе внешней памяти; координаты этого места задаются математическимномером устройства и номером зоны (тракта); в порожденном спискехарактеристик указываются математический номер устройства, смещение (взонах) от начала внешнего носителя и длина параметра в зонах:РАЗМЕЩЕНИЕ=ВП(НОМЕР=<целое>[,СМЕЩЕНИЕ=<целое>][,ДЛИНА=<целое>])РАЗМЕЩЕНИЕ=КАНАЛ означает, что параметр располагается навнешней памяти, обращение к которой производится с указанием номераканала; в порожденном списке характеристик указываются номер канала имаксимальное число зон, которое может занять описываемая величина:РАЗМЕЩЕНИЕ=КАНАЛ(НОМЕР=<целое>[,ДЛИНА=<целое>])РАЗМЕЩЕНИЕ=ВВФАЙЛ означает, что параметр представляет собойвводной файл мониторной системы Дубна.РАЗМЕЩЕНИЕ=ПКозначает,чтоописываемыйпараметррасполагается во вводном файле мониторной системы Дубна; впорожденном списке характеристик указываются номер записи в файле,смещение (номер позиции символа, по умолчанию - 0), длина параметра(количество элементов массива, по умолчанию - 1), формат Фортрана, покоторому вводится элемент массива, и число позиций, занимаемое однимэлементом массива:РАЗМЕЩЕНИЕ=ПК(НОМЕР=<целое>[,СМЕЩЕНИЕ=<целое>][,ДЛИНА=<целое>],FORMAT=<слово>,ЧПОЗ=<целое>)4.4.

Характеристики

Список файлов книги

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6367
Авторов
на СтудИзбе
310
Средний доход
с одного платного файла
Обучение Подробнее