Математическая энциклопедия

Математическое Обеспечение

ЭВМ, программное обеспечение, — совокупность программ и программных комплексов, посредством к-рых происходит преобразование алгоритмов программы пользователя, записанных на алгоритмич. языках высокого уровня, в последовательность команд, понимаемых электроникой ЭВМ, организуется автоматич. прохождение задач пользователей на ЭВМ, обеспечивается эффективное использование оборудования ЭВМ (см. [1] — [4]). Появление М. о. было вызвано необходимостью повышения производительности труда программистов и специалистов, эксплуатирующих ЭВМ. Действительно, команды вычислительной машины представляют собой с точки зрения возможности записи алгоритма весьма элементарные операции, и запись алгоритма (программирование) в виде последовательности этих команд является трудоемкой работой. Это стимулировало создание средств автоматизации программирования. Происходило укрупнение операций, понимаемых электроникой машины, но это не решило проблемы. Даже у современных ЭВМ команды, как правило, представляют собой элементарные операции. Существенно больший успех был достигнут на пути создания программных средств, облегчающих программирование. Первым шагом было создание М. о., позволяющего программировать на автокоде. Программа на автокоде фактически представляет собой ту же последовательность команд ЭВМ, но записанных символическими обозначениями — в мнемоническом виде. Преобразование мнемонич. кода программы в команды машины осуществляют специальные программы — ассемблеры. Затем появились макроассемблеры, к-рые дали возможность использовать в текстах программ макрооператоры, обеспечивающие выполнение группы команд машины. Следующим этапом автоматизации программирования было создание алгоритмических языков высокого уровня. Имеется свыше тысячи алгоритмич. языков различного назначения, применение к-рых существенно сокращает затраты на разработку и создание программ. Первым, получившим широкое распространение, стал язык фортран. Затем появились языки алгол, алгамс, а в СССР и язык альфа, предназначенные в основном для проведения научно-технич. расчетов. Для записи алгоритмов обработки экономич. информации был создан язык кобол. Алголоподобный язык паскаль имеет средства для описания структуры данных. Для работы с текстовой информацией предназначены языки лисп, снобол, амбит, сдл и др. Для описания алгоритмов проведения аналитич. реобразований на ЭВМ получила широкое распространение система Reduce, а в СССР и язык аналитик (см. [5]). Как развитие и обобщение языков фортран, алгол и кобол появились языки ПЛ/1 и алгол-68. Параллельно с развитием языковых средств велись работы по созданию библиотек стандартных программ. Имеются тысячи подпрограмм, программ и программных комплексов, в к-рых реализованы алгоритмы общего и специального назначения с использованием методов вычислительной математики. Среди них: вычисление элементарных и специальных функций, линейная алгебра, счет интегралов, численное решение обыкновенных дифференциальных уравнений и уравнений с частными производными, метод наименьших квадратов и др. Стандартные программы организованы в виде библиотек подпрограмм, записанных на магнитные ленты или диски, так что они легко доступны. Для вызова подпрограммы достаточно поставить в программе оператор обращения к ней. Наиболее часто применяемые подпрограммы хранятся в виде стандартных модулей загрузки на языке, весьма близком к кодам ЭВМ. Как правило, трансляторы с алгоритмич. языков выдают результат своей работы в виде последовательности отдельных подпрограмм и процедур, к-рые сразу же после трансляции записываются во временную библиотеку в виде стандартных модулей загрузки. Последующее объединение отдельных подпрограмм в рабочую программу в кодах ЭВМ с соответствующей настройкой осуществляет загрузчик либо перед началом счета (статич. загрузчик), либо во время счета в момент вызова конкретной подпрограммы (динамич. загрузчик). В нек-рых системах объединение отдельных оттранслированных ранее частей программ в единую программу осуществляет т. н. редактор связей, а загрузчик только располагает готовую программу в памяти машины. Наряду с пополнением библиотеки стандартных подпрограмм все большее распространение получает практика создания пакетов прикладных программ, рассчитанных на решение не отдельной задачи, а целого класса задач. Пакет программ представляет собой совокупность подпрограмм, работающих под управлением головной программы. Режим работы пакета задается посредством специализированного проблемно-ориенти рованного языка, чаще всего являющегося подмножеством обычного профессионального языка или жаргона. Современные ЭВМ наряду со средствами, облегчающими написание и отладку программ, оснащаются также программными комплексами, обеспечивающими эффективное использование самих ЭВМ путем организации автоматич. прохождения задач (управление заданиями), управления данными, динамич. распределения памяти, внешних устройств (управления ресурсами). Совокупность этих программных средств наз. операционной системой (ОС) ЭВМ (см. [1]- [4], [6]). OG стали неотъемлемой частью вычислительных систем. Без ОС невозможно функционирование ЭВМ, т. к. управление работой внешних устройств, обмен информацией, организация взаимодействия отдельных элементов ЭВМ в значительной мере осуществляются посредством программ, входящих в ОС. Под управлением ОС функционируют трансляторы с алгоритмич. языков, системы программ, облегчающих программирование и отладку (в том числе и в диалоговом режиме), а также обеспечивающих работу с графич. информацией. ОС предоставляют средства для работы с большими массивами данных, для ведения файлов (последовательность групп данных, как правило, одинаковой структуры), создания баз данных и различного рода информационно-поисковых систем. ОС обеспечивает использование ЭВМ в составе многомашинных комплексов, в сетях ЭВМ. Кроме языковых средств, облегчающих программирование, пользователю также предоставляется возможность управления работой ОС посредством управляющих операторов (перфокарт), к-рые вводятся в ЭВМ вместе с программой. В зависимости от режима работы, к-рый обеспечивается ОС, различают три типа использования ЭВМ. 1) Пакетная обработка программ заключается в автоматич. прохождении (решении) потоков задач на ЭВМ, в том числе и в мультипрограммном режиме. Примерами ОС, обеспечивающих такой режим работы, являются ОС ЕС и ДОС ЕС для машин единой серии (см. [1], [8]) и машин фирмы ИБМ; системы ОС ДУБНА и ОС ДИСПАК для БЭСМ-6 (см. [91); система NOS/BE для машин фирмы Control Data. 2) Режим разделения времени дает возможность одновременно обслуживать многих пользователей, работающих с терминалов, связанных с ЭВМ, в том числе находящихся на больших расстояниях от нее. В качестве примеров ОС, обеспечивающих работу в таком режиме, можно назвать одну из ранних экспериментальных систем MULTICS и систему TSS/360 для машин ИБМ. В крупных вычислительных системах режим разделения времени, как правило, обеспечивается операционными системами, к-рые одновременно ведут счет и в режиме пакетной обработки. При этом взаимодействие с ОС происходит посредством специальных подсистем, работающих под управлением основной ОС. В NOS/BE это — система Intercom, в ОС ДУБНА — мультитайп, в ОС ДИСПАК — система ДИМОН (см. [10]), в ОС ЕС — ДУУВЗ и СРВ (см. [11]). При работе с терминалов на ЭВМ, ведущей счет в пакетном режиме, пользователям предоставляются в режиме разделения времени только средства для набора, редактирования программ и их запуска на счет. Трансляция программ и счет идут в обычном режиме пакетной обработки, как правило, с высшим приоритетом. Пользователи имеют возможность просмотреть результат прохождения задач и, если необходимо, заново их отредактировать и вновь запустить на счет. Программа может обращаться к терминалу и в реальном времени, как к внешнему устройству ЭВМ, для ввода-вывода информации в режиме диалога. Системы режима разделения времени часто оснащаются трансляторами, работающими в режиме интерпретации, когда отдельная инструкция (оператор языка) преобразуется в коды ЭВМ и выполняется сразу же после ее набора на терминале. 3) Операционные системы реального времени обеспечивают функционирование ЭВМ на линии с внешним оборудованием, к-рое в произвольные моменты времени может посылать в ЭВМ информацию, требующую оперативной обработки в момент ее поступления. ОС такого типа предназначены для управления экспериментальными и технологии, установками, работающими на линии с ЭВМ (см. [121, [13], [14], [15]). Нередко в роли ОС реального времени выступают соответствующим образом доработанные ОС пакетного режима. ЭВМ, предназначенные для работы на линии с оборудованием (управляющие ЭВМ), имеют технические и программные средства, облегчающие создание программ и их функционирование в реальном времени. Понятия и терминология в области М. о. и системного программирования еще не четко установились. Ранее в состав ОС включались трансляторы, теперь большинство исследователей относят их к прикладным программам, работающим под управлением ОС. Разными учеными название компонент ОС, а часто и разбиение ОС на отдельные компоненты делается по-разному. Это связано главным образом с быстрым развитием этой области науки и непрерывным появлением новых понятий. Кроме рассмотренного выше М. о. ЭВМ общего назначения (операционные системы и прикладные пакеты общего назначения), имеется и продолжает активно создаваться М. о., нацеленное на решение конкретных проблем в различных отраслях науки, техники и народного хозяйства. Программные проблемно-ориентированные комплексы создаются с использованием языковых средств и других возможностей, предоставляемых ОС ЭВМ. Объем этого М. о. намного превосходит объем М. о. ЭВМ общего назначения. В крупных институтах ядерной физики и физики высоких энергий используются десятки (иногда более сотни) ЭВМ разного класса в основном для управления и съема информации с экспериментальных установок. Для каждой такой установки созданы специализированные ОС реального времени или разделения времени (см. [16]). Специализированные ОС обеспечивают функционирование не. Часть систем работает в режиме автоматич. опознавания событий и их изображений. Кроме специализированных ОС, в состав М. о. экспериментов также входят большие комплексы программ, предназначенные для обработки экспериментальной информации. Система программ для обработки фильмовой информации имеет объем в десятки тысяч операторов фортрана, она создана в рамках модульной системы программирования ГИДРА (см. [17]). Система ГИДРА предоставляет пользователю средства для редактирования, организации хранения различных версий программ, для создания версий программ для конкретной трековой камеры, эксперимента и типа доступной электронной машины. В системе нашли воплощение все современные достижения программирования: модульный принцип, структурное программирование, самодокументирование, динамич. распределение оперативной памяти, удобные средства генерации. Создание конкретной версии программы сводится к написанию последовательности строк, укаывающих тип измерительного устройства, этап обработки и форму выдачи информации, и к заданию числовой информации, описывающей параметры трековой камеры (константы оптич. системы, карта магнитного поля) и топологию изучаемых событий. Результатом работы системы является текст программы на фортране, сгенерированный из модулей, хранящихся в системе или введенных пользователем. Не только для ядерной физики, но и для многих других отраслей науки и техники созданы большие проблемно-ориентированные комплексы программ (см. [18]). Среди них комплексы программ для обработки информации в молекулярной биологии и кристаллофизике (см. [19]), электро- (ЭПАК) и сейсморазведке (СЕИСПАК) полезных ископаемых (см. [20]), программные комплексы для автоматизации проектирования (см. [21] ), для автоматизированных систем управления(АСУ) в народном хозяйстве и многие др. Как правило, создание программы для решения той или другой задачи с использованием проблемно-ориентированных систем сводится к подготовке ее описания на языке, являющемся управляющим, входным языком системы и построенным на основе определений и понятий, используемых в данной области науки, техники. Таким образом, М. о. ЭВМ можно представить в виде двух уровней. Первый уровень — комплекс программ, входящих в ОС или работающих под ее непосредственным управлением, к-рый является общим М. о., поставляемым вместе с вычислительной системой. Кроме программ собственно ОС, в общее М. о. входят в первую очередь трансляторы с машинно-ориентированных и широко распространенных процедурно-ориентированных алгоритмич. языков, а также библиотеки стандартных подпрограмм общего назначения. Второй уровень представлен проблемно-ориентированными программными комплексами. Они являются, как правило, надстройкой над общим М. о. первого уровня и создаются с использованием языковых средств и др. возможностей, представляемых М. о. первого уровня. Проблемно-ориентированное М. о. по общей организации и назначению можно разбить на два типа. Первый — это программные комплексы, создаваемые на универсальных ЭВМ общего назначения с использованием средств, представляемых М. о. Они предназначены для решения определенных классов задач или обработки данных. С точки зрения связи с ОС ЭВМ эти комплексы являются обычными прикладными программами. Второй тип представлен специализированными ОС реального времени или управляющими программами, к-рые создаются как с использованием средств, предоставляемых стандартными ОС ЭВМ, так и без их использования. Это М. о. управляет сложными электронными и электромеханич. системами, в к-рых ЭВМ составляют только часть из всего оборудования системы. Лит.:[1] К о р о л е в Л. Н., Структуры ЭВМ и их математическое обеспечение, 2 изд., М., 1978; [2] Криницкий Н. А., Миронов Г. А., Фролов Г. Д., Программирование и алгоритмические языки, 2 изд., М., 1979; [3] Ф л о р е с А., Программное обеспечение, пер. с англ., М., 1971; [4] Донован Д т., Системное программирование, пер. с англ., М., 1975; [5] Г л у ш к о в В. М. [и др.], "Кибернетика", 1971, № 3, с. 102-34; [6] К а т ц а н Г. (мл.), Операционные системы, пер. с англ., М., 1978; [7] В е л ь б и ц к и й И. В., Технология производства программ на базе Л-метаязыка, в кн.: Системное и теоретическое программирование, т. 1, Киш., 1974; [8] Система математического обеспечения ЕС ЭВМ, М., 1974; [9] Мазный Г. Л., Программирование на БЭСМ-6 в системе "Дубна", М., 1978; [10] Усов С. А., Диалоговый монитор Димон, М., 1979; [11] П е л е д о в Г. В., Р а й к о в Л. Д., в кн.: Вычислительная техника социалистических стран, в. 2, М., 1977, с 78-82; [12] Глушков В. М., Автоматизированные системы управления, в кн.: Тр. Всесоюзной конференции по программированию "ВКП-2", Новосиб., 1970; [13] Виленкин С. Я., Трахтенгерц Э. А., управляющих вычислительных машин, М., 1972; [14] Мартин Д ж., Программирование для вычислительных систем реального времени, пер. с англ., М., 1975; [15] Тезисы докладов [1-го Всесоюзного симпозиума по математическому обеспечению вычислительных систем, работающих в реальном масштабе времени], К., 1972; [16] Говорун Н. Н., Иванченко 3. М., "Программирование", 1976, №.4, с. 52-65; [17] Говорун Н. Н. [и д р.], "Физика элементарных частиц и атомного ядра", 1975, т. 6, в. 3, с. 742-75; [18] Сергиенко И. В., Парасюк И. Н., Тукалевская Н. И., Автоматизированные системы обработки данных, К., 1976; [19] Рентгеновский структурный анализ, в кн.: БСЭ, 3 изд., т. 22, с. 23-27; [20] Безрук И. А., Сафонов А. С..в кн.: Прикладная геофизика, в. 98, М., 1980; [21] Г л у ш к о в В. М., Капитонова Ю. В., Лятичевский А. А., "Кибернетика", 1970, № 4, с. 1 — 6. Н. Н. Говорун.



ScanWordBase.ru — ответы на сканворды
в Одноклассниках, Мой мир, ВКонтакте