Информационные и расчетные задачи в составе программного обеспечения
Согласно определению, данному в гл. 1, АИС представляет собой совокупность трех взаимосвязанных компонентов: технических средств, программных средств и организационных мероприятий. Под техническими средствами понимаются ЭВМ, устройства ввода и вывода информации (печатающие устройства, графопостроители, сканеры, плоттеры, мониторы и т.д.), устройства долговременного хранения информации (накопители на магнитной ленте или магнитном диске), сетевое оборудование и каналы связи. Технические средства АИС сами по себе не в состоянии решить какой-либо задачи. Для того чтобы АИС начала функционировать, в ЭВМ необходимо ввести программу, описывающую алгоритм работы технических средств по переработке информации в интересах решения конкретной практической задачи.
Совокупность математических методов, алгоритмических языков и алгоритмов, характеризующих логические и математические возможности ЭВМ, называется математическим обеспечением ЭВМ. Алгоритмы, входящие в математическое обеспечение, реализуются в ЭВМ аппаратно или программно. Аппаратная реализация алгоритмов предполагает наличие в составе ЭВМ технических устройств, преобразующих входные сигналы в выходные по жесткому, неизменяемому алгоритму.
Комплекс программ, описаний и инструкций, обеспечивающих создание и отладку программ и решение задач на ЭВМ, называется программным обеспечением (ПО) ЭВМ. По существу, ПО — это записанное на входном языке ЭВМ математическое обеспечение ЭВМ. Одно и то же математическое обеспечение может быть реализовано для различных типов ЭВМ различным ПО.
Поскольку математические методы и алгоритмы неразрывно связаны с программами, их реализующими, на практике вместо терминов «математическое обеспечение» и «программное обеспечение» часто используется термин «математическое и программное обеспечение».
При анализе состава математического и программного обеспечения ЭВМ будем вести речь о ПО, имея в виду, что аналогичный состав имеет и соответствующее математическое обеспечение.
Вариант типовой структуры ПО ЭВМ представлен на рис. 1.2 [53, 54].
ПО ЭВМ состоит из двух частей: общего программного обеспечения (ОПО) и специального программного обеспечения (СПО).
Общее программное обеспечение. Представляет собой комплекс программ, предназначенных для обеспечения работы ЭВМ в различных режимах и снижения трудоемкости создания и отладки программ пользователей.
Основные функции ОПО:
· автоматическое управление вычислительным процессом в различных режимах работы ЭВМ при минимальном вмешательстве оператора, программиста, конечного пользователя в этот процесс;
· обеспечение возможности подготовки программ к решению на ЭВМ с помощью средств автоматизации программирования;
· рациональное распределение ресурсов ЭВМ при одновременном решении нескольких задач, что значительно повышает эффективность использования ЭВМ;
· разграничение доступа различных пользователей к данным, хранимым и обрабатываемым в ЭВМ, и обеспечение защиты данных;
· контроль, диагностика и локализация неисправностей ЭВМ и т.д.
По назначению и функциональным особенностям ОПО делится на две взаимосвязанные части: общее системное программное обеспечение (ОСПО) и общее прикладное программное обеспечение (ОППО).
Общее системное программное обеспечение. В состав ОСПО входят операционная система (ОС), системы программирования (СП) и программы контроля и диагностики состояния ЭВМ.
1. Операционной системой называется комплекс программ, осуществляющих управление вычислительным процессом, обеспечивающих связь пользователя с ЭВМ на этапах запуска задач и реализующих наиболее общие алгоритмы обработки информации на данной ЭВМ. Главная функция ОС — обеспечение эффективной работы ЭВМ и всех внешних устройств в различных режимах работы.
Под режимом работы понимается способ организации выполнения в ЭВМ задания или нескольких заданий одновременно. Основными режимами работы являются: монопольный, многопрограммный (мультипрограммный) и режим разделения времени.
В монопольном режиме все устройства ЭВМ заняты выполнением только одного задания, являющегося основной единицей работы ЭВМ. Задание может включать несколько пунктов, выполняемых ОС последовательно. Например, задание может включать:
1) трансляцию программы;
2) компоновку оттранслированной программы;
3) запуск программы на счет.
При монопольном режиме все ресурсы ЭВМ используются по мере надобности для отработки очередного пункта задания. С точки зрения загрузки ЭВМ этот режим наименее эффективен, так как в процессе обработки одного задания различные устройства ЭВМ работают с неодинаковой нагрузкой или вообще простаивают значительную часть времени. Однако этот режим наиболее удобен для пользователя, так как время решения задачи при этом минимально. В настоящее время монопольный режим наиболее широко используется в микроЭВМ (прежде всего персональных ЭВМ).
Для увеличения производительности и эффективности использования ЭВМ за счет организации параллельной работы основных устройств применяется мультипрограммный режим работы.
В этом режиме ОС принимает к исполнению сразу несколько заданий. При достаточно большом количестве одновременно находящихся в памяти ЭВМ заданий этот режим обеспечивает практически полную загрузку всех устройств.
Мультипрограммный режим является основным в работе ЭВМ серий ЕС и СМ (такие ЭВМ по-прежнему используются весьма широко). Кроме того, он находит частичное применение и в персональных ЭВМ высокой производительности, что позволяет пользователю одновременно ввести в ЭВМ несколько заданий. Применение мультипрограммного режима на «больших» ЭВМ позволило обеспечить пакетную обработку задач, при которой пользователи передавали задание оператору, оператор формировал пакеты этих заданий, пропускал их через ЭВМ и затем возвращал пользователям результаты решения сразу по всем заданиям, составляющим очередной пакет.
Пакетная обработка заданий позволяет существенно повысить эффективность работы ЭВМ, но крайне неудобна для пользователя, поскольку он связан с ЭВМ не непосредственно, а через оператора. Наличие этого промежуточного звена приводит к существенному увеличению суммарного времени решения задачи.
Для приближения пользователя к ЭВМ и устранения оператора как промежуточного звена между пользователем и ЭВМ были созданы ОС, реализующие особый вид мультипрограммного режима —режима разделения времени. Реализация режима разделения времени приводит к тому, что пользователи получают связь с ЭВМ поочередно на небольшой промежуток времени. Если этот промежуток времени невелик и невелико количество одновременно работающих пользователей, то каждый работающий пользователь не будет ощущать прерывистой связи с ЭВМ. Таким образом, создается впечатление, что пользователь работает один на некоторой воображаемой ЭВМ.
Недостатком режима разделения времени является уменьшение скорости вычислений пропорционально числу одновременно работающих пользователей. Однако, несмотря на этот недостаток, режим разделения времени является основным режимом работы всех современных ЭВМ, обслуживающих несколько пользователей.
Основными элементами ОС являются: процессор языка управления, супервизор и файловая система.
Процессор языка управления представляет собой программу, предназначенную для распознавания и преобразования команд пользователя и оператора ЭВМ в машинное представление с целью их последующей обработки.
Основными функциями супервизора являются: контроль загруженности различных устройств ЭВМ заданиями; распределение оперативной памяти между заданиями; защита одновременно решаемых заданий (задач) друг относительно друга; запуск операций ввода-вывода и т.д. По своему месту в программном обеспечении ЭВМ супервизор занимает положение посредника между аппаратным обеспечением ЭВМ и всем другим программным обеспечением машины.
Файловая система образуется программами, которые поддерживают ведение всей совокупности файлов (наборов данных) в ЭВМ. Основными функциями этой системы являются поиск требуемых файлов, модификация информации в файлах, перемещение файлов, копирование файлов, удаление файлов.
2. Системы программирования предназначены для обеспечения создания и отладки программ пользователей, написанных на каком-либо языке программирования (PASCAL, С, C++, FORTRAN и т. д.). В настоящее время для этих целей широко используются так называемые среды программирования (разработки программ) — например, продукты фирмы Borland DELPHI пли Builder C++, позволяющие быстро создавать качественные приложения.
3. Программы контроля и диагностики состояния ЭВМ предназначены для осуществления непрерывного контроля работы основных устройств ЭВМ, а также поиска неисправных блоков и узлов ЭВМ в случае обнаружения отказов или устойчивых сбоев.
Общее прикладное программное обеспечение. (Включает пакеты прикладных программ (ППП), системы управления базами данных (СУБД), интеграторы и другие прикладные программные системы). Особенностью объектов ОППО является то, что эти средства не требуют от пользователей при решении ими конкретных практических задач на ЭВМ проведения операций, связанных с программированием.
Под ППП понимается совокупность готовых к решению программ, объединяемых в пакет по единому содержательному признаку с помощью дополнительной управляющей программы. Данная программа автоматизирует и упрощает стандартную схему использования готовых программ на ЭВМ. Основными функциями управляющей программы являются: поддержание диалоговой (дружественной) формы получения информации от пользователя (обычно это режим меню); вызов соответствующих программ из пакета с целью решения ими содержательных задач, поставленных пользователем; выдача пользователю выходных данных по решенным задачам в удобной форме.
В настоящее время ППП наряду с СУБД являются самой распространенной формой прикладного программного продукта для массового пользователя. Среди ППП выделяются пакеты трех типов: проблемно-ориентированные, интегрированные и инструментальные.
Проблемно-ориентированные ППП структурно являются наиболее простыми. Они состоят из программ, которые нацелены на решение фиксированного числа задач из относительно узкой предметной области. При этом каждой частной задаче соответствует вполне определенная программа ее решения. В функции управляющей программы входит распознавание в запросе пользователя имени и атрибутов той задачи, которую он выбирает для решения, и запуск соответствующей программы на исполнение.
Интегрированные ППП являются расширением ППП первого типа путем их наращивания такими программами, которые автоматизируют все (или большинство) сопутствующих операций, выполняемых лицом, пользующимся пакетом. К числу указанных программ наиболее часто относятся текстовый редактор, СУБД, графический редактор, реже — электронная таблица и др. В отличие от самостоятельных версий этих программ данные версии носят упрощенный характер, достаточный лишь для решения задач из соответствующей предметной области.
Инструментальные ППП отличаются отсутствием в них программ, строго ориентированных на решение конкретных практических задач. Данные пакеты состоят из программ, каждая из которых может рассматриваться как необходимый элемент решения задач из некоторой предметной области. Таким образом, при использовании данных ППП пользователь в своем запросе указывает структуру элементов, которая реализует прикладную задачу. Управляющая программа пакета на основе заданной структуры элементов создает соответствующую рабочую программу решения требуемой прикладной задачи и затем передает ей управление. В последнее время появились так называемые интеллектуальные ППП (см. разд. IV).
Специальное программное обеспечение. Объекты СПО, как правило, поставляются совместно с ЭВМ. Оно носит универсальный характер в том смысле, что позволяет создать любую программу, совместимую с аппаратными и вычислительными возможностями конкретной ЭВМ, и провести на ней расчеты. ОПО, по существу, является инструментом создания СПО — комплекса программ, предназначенных для решения конкретных управленческих, исследовательских или производственных задач. Конкретное содержание СПО полностью определяет вид конкретной АИС и, конечно, зависит от ее типа.
СПО, так же как и ОПО, состоит из двух частей: специального системного программного обеспечения (ССПО) и специального прикладного программного обеспечения (СППО). ССПО выполняет в АИС функции, аналогичные функциям ОС в ОПО.
Необходимость ССПО в вычислительных комплексах экономического назначения обусловливается двумя причинами: обеспечением требования поддержки особых (специальных) режимов проведения вычислительных работ в этих комплексах; необходимостью управления функционированием специальных устройств.
СППО представляет собой комплекс программ, каждая из которых реализует тот или иной алгоритм переработки информации. Данные программы принято называть задачами, и, хотя это название нельзя признать удачным, оно в настоящее время является общепринятым. Задачи являются основными элементами АИС, в том числе и экономического назначения, поскольку они определяют ее возможности как средства автоматизации деятельности должностных лиц при управлении персоналом.