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

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

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

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

Наконец, части программ, связанные свзаимодействием с конкретной операционной системой, фиксированнымобразом выделяются и документируются.Проект OLYMPUS получил широкое международное признание.Журнал Computer physics communications регулярно публикует алгоритмы,разработанные в рамках этого проекта, которые используются многимиорганизациями в различных странах, в том числе в СССР.СоглашениясущественнооблегчаютпроведениеOLYMPUSвычислительного эксперимента и при отсутствии средств системнойподдержки.

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

Поэтому для формирования вариантов им приходилосьиспользовать универсальный текстовый процессор, составляя для каждогорасчета задания размером до нескольких сотен строк.Соглашения OLYMPUS поддерживает и описываемый в следующейглаве пакет прикладных программ Сафра. Однако в этом пакете, в отличиеот системных разработок авторов OLYMPUS, на первый план выдвигаетсязадача автоматизации конструирования программ вычислительногоэксперимента.Глава 3СИСТЕМА САФРА: КОНСТРУИРОВАНИЕ ПРОГРАММВЫЧИСЛИТЕЛЬНОГО ЭКСПЕРИМЕНТА3.1.

Технология конструированияСафра [115] - Система Автоматизации Физических РАсчетов предназначена для поддержки конструирования программ вычислительногоэксперимента. Ключевой проблемой вычислительного эксперимента с точкизрения программирования является организация многочисленныхизменений программ, отражающих различные решения, принимаемые входе эксперимента. Такие решения могут быть связаны и с модификациейисследуемой математической модели, и с выбором того или иногочисленного метода, и с пересмотром некоторых элементов алгоритма. Но влюбом из этих случаев изменение решений неизбежно влечет за собойизменение программы.Принимаемые в ходе эксперимента решения обычно не являютсяокончательными, нередко приходится возвращаться к отвергнутым наранних стадиях эксперимента моделям, методам или алгоритмам.

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

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

. .case материал ofсталь: < моделирование стали > ;медь: < моделирование меди >end { case }. . .Тогда, присваивая с помощью исходных данных расчета переменной«материал» значения «сталь» или «медь», можно переключать алгоритммоделирования с одного материала на другой. С точки зрения организациипоследующих изменений основной результат такого построения заключаетсяв том, что в программе неявно, но достаточно четко определено место дляразмещения новых фрагментов алгоритма, моделирующих новые материалы:такие фрагменты записываются в виде новых ветвей оператора выбора.Рассмотренное решение можно упрекнуть за то, что в немнепроизводительно расходуется оперативная память, поскольку впрограмму включаются все имеющиеся ветви выбора, а фактически в любомрасчете используется лишь одна из них.

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

. .Теперь фрагменты алгоритма, соответствующие различным материалам,оформляются в виде самостоятельных текстовых объектов и помещаются вспециализированный архив под соответствующими именами: «сталь»,«медь» и т.д. Для формирования расчетной программы, моделирующейповедение устройства, изготовленного из определенного материала, следуетзадать соответствие между именем, записанным в операторе INSERT(«материал»), и именем, под которым хранится соответствующий фрагменталгоритма (например, «сталь»):материал = стальСафра построит программу, заменив оператор INSERT указаннымфрагментом.С точки зрения технологичности внесения последующих измененийприведенное решение принципиально отличается от рассматривавшегосявыше использования оператора выбора. Здесь появление фрагментаалгоритма,соответствующегоновомуматериалу,невызываетредактирования уже имеющихся текстов программ.

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

. .CALL МАТЕРИАЛ. . .Все альтернативные фрагменты алгоритма представляют собойподпрограммы с одним и тем же именем МАТЕРИАЛ, однако вспециализированный архив они помещаются под различными именами:«сталь», «медь» и т.д. Далее с точки зрения пользователя Сафрыформирование расчетных программ выполняется точно так же, как и дляоператора INSERT, - указывается соответствие между именем подпрограммы и именем, под которым хранится в архиве ее реализация. Например:материал = стальНа большинстве вычислительных установок, в частности, на ЭВМБЭСМ-6, для которой разрабатывалась Сафра, штатные системные средстване позволяют организовать эффективное использование описаннойтехнологии.

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

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

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

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

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

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