d9e5a92d

Программные средства для вычислительных работ

Данная тема включает в себя следующие разделы:
1 Классификация программного обеспечения (ПО).
2 Системное ПО. Операционные системы.
3 Инструментальное ПО. Среды программирования.
4 Сервисное ПО: архиваторы, антивирусные программы, утилиты.
5 Основные виды прикладного ПО.
5.1 Программные средства работы с текстом.
5.2 Программные средства работы с графикой.
5.3 Программные средства работы со звуком.
6 Программные средства для вычислительных работ.
7 Системы искусственного интеллекта.
8 Программные средства автоматизации управления.
9 Базы данных. Геоинформационные системы.


1 КЛАССИФИКАЦИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ (ПО)
Программное обеспечение современного компьютера очень разнообразно в соответствии с многообразием задач, решаемых пользователями с его помощью, и множеством операций, выполняемых устройствами компьютера. Все программные модули взаимосвязаны через управляющие (системные) программы.

Часть модулей работает во взаимодействии с пользователем, часть - автоматически.

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

Но большинство команд пользователя выполняется именно с их помощью.

В совокупности они называются системным программным обеспечением. К нему традиционно относят:
- программы начальной загрузки компьютера. Они хранятся в ПЗУ (постоянном запоминающем устройстве) и обеспечивают проверку работоспособности основных устройств компьютера после его включения и передачу управления операционной системе. Часто называются базовым ПО;
- операционные системы (ОС), необходимые для управления согласованной работой всех устройств и программ компьютера, выполнения команд пользователя;
- файловая система;
- операционные оболочки, предназначенные для обеспечения удобного для пользователя способа работы с файлами и запуска прикладных программ;
- драйверы устройств, обеспечивающие программную поддержку работы конкретных устройств (в последнее время входят в состав операционной системы).
Другой класс программного обеспечения - прикладное ПО. Именно оно предназначено для решения пользователем задач из самых различных предметных областей - математики, лингвистики, делопроизводства, управления и т.д.

Существуют самые разные классификации прикладного ПО.

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

В результате многократного удаления/записи файлов на диске появляется много небольших пустых мест.

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

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

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

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

ПРИМЕР

Путь C:\TEXT\GLAVA1\p1.txt означает, что файл p1.txt (скорее всего текстовый) находится в каталоге GLAVA1, который, в свою очередь, находится в каталоге TEXT на диске С: .
2 СИСТЕМНОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ.ОПЕРАЦИОННЫЕ СИСТЕМЫ
Частью программного обеспечения, наиболее тесно взаимодействующей с аппаратной частью компьютера, является системное программное обеспечение и, прежде всего операционная система.
Операционная система играет роль посредника между пользователем, программами и оборудованием компьютера. Она обеспечивает возможность запуска программ, поддерживает работоспособность устройств, предоставляет средства проверки и настройки различных компонентов.

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

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

Краткий исторический экскурс

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

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

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

Диалоговый режим позволил в значительной степени повысить эффективность процесса разработки и отладки программы, дал возможность пользователю обнаруживать и исправлять ошибки за считанные секунды или минуты вместо того, чтобы ждать, пока будут получены результаты пакетной обработки.
ОС третьего поколения (1970-е гг.) были многорежимными. Некоторые из них обеспечивали работу сразу во всех известных режимах:
- пакетную обработку;
- разделение времени;
- режим реального времени и мультипроцессорный режим.
Названные системы были громоздкими и дорогостоящими; кроме того, они значительно усложняли процедуру использования ЭВМ, так как пользователю, для того, чтобы заставить такую ОС выполнять простейшие действия, необходимо было изучать сложнейшие языки управления заданиями, чтобы описать задание и требуемые для них ресурсы.
К началу 1980-х гг. проблема совместимости различных компьютерных систем стала одной из серьезных проблем, которую можно было решить с помощью нового подхода к построению операционных систем. Основу системы должно было составлять микроядро (microkernel), написанное специально для данного процессора.

Все ее прочие части выделяются в отдельные модули, независящие от типа процессора, которые взаимодействуют с ним и между собой.

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

Наиболее часто используемые программы помещаются в ядро системы, и они постоянно находятся в оперативной памяти машины, и менее используемые программы или утилиты, размещаются на внешнем запоминающем устройстве (диске) и вызываются в ОЗУ по мере необходимости.
Большинство современных ОС для ПК являются многозадачными (мультипрограммными). Их преимущество состоит в том, что пользователь может одновременного работать с несколькими приложениями, а также обмениваться данными между приложениями.

Основными недостатками являются большая требовательность к ресурсам компьютера, а также то, что при возникновении неисправимой ошибки в одном из приложений все приложения системы, как правило, заканчивают свою работу, что может повлечь за собой потерю данных.
Операционные системы разделяются на два больших класса:
- ОС общего назначения (стандартные), наиболее известные среди которых MicroSoft DOS, MicroSoft Winows 95/98, Windows 2000 Professional, ATT Unix, IBM OS/2, Apple МacOS, SunOS;
- сетевые ОС, которые, наряду с функциями стандартных ОС, реализуют задачи, связанные с аппаратными ресурсами и файлами, находящимися на различных узлах сети. Наиболее известные среди них Novell NetWare, UNIX, LUNIX, Windows NT, Windows ME (Millenium Edition), OS/2 LAN Server, OS/2 SMP, Solaris.
Операционная система создается, как правило, в расчете на определенные типы компьютеров и часто не может работать на другой аппаратной платформе. В свою очередь, прикладные программы, особенно общего назначения, также создаются для работы под управлением конкретной ОС и часто не могут использоваться с ОС другого типа.
Пример. Фирма IBM устанавливает на своих персональных компьютерах такие ОС, как MS-DOS, Windows и их разновидности.

Фирма Apple использует преимущественно MacOS для своих Macintosh PowerPC. Фирма Sun - SunOS и Solaris.

Системы UNIX и Linux реализованы для различных аппаратных платформ.
К числу основных характеристик операционных систем относятся:
- разрядность;
- поддержка многопроцессорности;
- многозадачность;
- работа в реальном (все программы и данные располагаются в одной области ОП) или защищенном (программы и данные хранятся раздельно в соответствии с их важностью в системе) режиме;
- поддержка многопользовательского режима;
- переносимость, т.е. возможность ОС работать на компьютерах, базирующихся на центральных процессорах с различной архитектурой.
Приведем характеристики некоторых ОС.
СР/М - 8-разрядная, однопользовательская, однопроцессорная ОС. Предоставляет пользователю лишь самый необходимый набор средств для управления ресурсами ПЭВМ, доступа к файловым системам и организации диалога.
MS-DOS - 16-разрядная, однопользовательская, однопроцессорная ОС, позволяющая работать только в реальном режиме.
Windows NT - 32-разрядная, многопользовательская, многозадачная, переносимая, многопроцессорная ОС, работающая в защищенном режиме. Имеет встроенные сетевые возможности.
OS/2 - 32-разрядная, многопользовательская, многозадачная ОС, предназначенная для работы с процессорами семейства Intel. Работает в защищенном режиме, имеет встроенные сетевые возможности.
UNIX - 32-разрядная, многопользовательская, многозадачная, переносимая ОС, располагающая встроенными сетевыми возможностями. Ориентирована на эффективную поддержку процесса разработки программного обеспечения.

Имеют развитую файловую систему, мощный командный язык, обеспечивают программирование доступа ко всем типам внешних устройств. Реализована для различных аппаратных платформ.

Некоторые разновидности этой ОС: LINUX (Intel), AIX (IBM), A/UX (Macintosh), ULTRIX (DEC).
Если ОС является посредником между пользователем и аппаратным обеспечением компьютера, то посредником между пользователем и программным обеспечением являются так называемые операционные оболочки.
Операционная оболочка делает более удобной работу пользователя с прикладными программами и файловой системой. Они предназначены для того, чтобы:
- облегчить пользователю выполнение операций над файлами, таких как быстрый поиск, копирование, удаление и пр.;
- сделать более удобным запуск на выполнение приложений;
- обеспечить возможность быстрого перехода от одного приложения к другому при многозадачном режиме работы и т.п.
Norton Commander - одна из наиболее известных оболочек, работавших под управлением DOS.
Сама DOS поддерживала командный пользовательский интерфейс, т.е. для выполнения любой операции необходимо было ввести с клавиатуры текст команды, состоявшей из кода операции, параметров, задающих режим выполнения операции, и операнды, над которыми эта операция производилась.
Например, для копирования файлаprimer.txt с диска а: на диск с: необходимо задать команду: copy a:\primer.txt c:
Интерфейс Norton Commander можно назвать фиксированным меню. Каждый пункт меню имеет свое строго фиксированное положение на экране.

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

Первыми ПК с графическим пользовательским интерфейсом были компьютеры Macintosh фирмы Apple, оснащеные операционной системой MacOS. Графический интерфейс характерен и для семейства операционных
систем Windows.
В графических интерфейсах информация и команды представляются в виде пиктограмм, и пользователь выполняет те или иные операции, указывая на эти пиктограммы. Причем, пользователь может выбрать только те пиктограммы, которые соответствуют нужным ему операциям, и разместить их на экране дисплея так, как ему удобно.
Операционной оболочкой системы Windows является диспетчер программ (Program Manager). Для работы с файлами используются специальные программы - Диспетчер файлов (File Manager), Мой компьютер, Far Manager и др.
К системному программному обеспечению относятся и драйверы устройств (device driver), т.е. программы, обеспечивающие взаимодействие операционной системы с физическим устройством. Драйвер обрабатывает прерывания обслуживаемого устройства, поддерживает очередь запросов и преобразует запросы в команды управления устройством.
Раньше при подключении нового устройства пользователю самому необходимо было заботиться о том, чтобы драйвер этого устройства был в соответствующем каталоге ОС. Значительная емкость современных винчестеров позволяет хранить драйверы большинства известных устройств и при подключении нового устройства ОС может подобрать ему наиболее подходящий драйвер.

В этом случае говорят, что ОС поддерживает технологию Plag Play (подключай и работай).
И еще немного истории.
Принято считать, что первую операционную систему для своего компьютера IBM - 701 разработала Исследовательская лаборатория фирмы General Motors в начале 1950 гг. В 1955 г. совместно с фирмой North Aviation, Исследовательской лабораторией была создана операционная система для компьютера IBM - 704.
Считается, что более-менее завершенную форму операционные системы приобрели к середине 1960 гг. в компьютерах третьего поколения. К числу исторически первых операционных систем можно отнести системы DOS/360, OS/360, созданные фирмой IBM.

Операционная система с разделением времени Compatible Time Sharing System, разработанная Массачусетсом технологическом институте в 1963 г., состояла примерно из 32 тыс. слов памяти по 36 бит каждое. Годом позже была создана фирмой IBM система OS/360, состоящая более чем из миллиона машинных команд.
Разработчики фирмы IBM сделали все компьютеры System/360 совместимые по архитектуре, предусмотрели возможность применения на всех таких компьютерах одной и той же операционной системы - OS/360, и заложили совместимость программного обеспечения при переходе от менее мощных машин к более мощным, т.е. новые версии операционных систем должны работать и с прикладными программами, созданными для более ранних версий. Таким образом возникла ставшая сегодня практически стандартом концепция семейства совместимых компьютеров, но появление новых компьютеров определяет появление новых операционных систем.
В 1975 г. Г. Килдэл разработал операционную систему СР/М, которая долгое время считалась наиболее универсальной, а ее различные версии использовались в 1992 г. более чем миллионом пользователей в мире.
Чуть позже Т. Петерсон написал ОС SCP86DOS для микропроцессора 8086. Он слегка усовершенствовал распространенную в то время систему СР/М и назвал свое произведение QDOS - Quick and Diftu Operation System, что можно приблизительно перевести как операционная система на скорую руку.
В 1980 г. фирма IBM приступила к выпуску персональных компьютеров, рассчитанных на пользователей, не подготовленных в области информатики. Предоставить такую программу вызвался Билл Гейтс, президент малоизвестной в то время компании Microsoft.

Фирма Microsoft купила у Тима Петерсона лицензию на QDOS, отбросила в сокращении первую букву Q, а то, что осталось, переименовало в MS-DOS (MicroSoft Disk Operating System - дисковая ОС). Операционная система DOS превратилась в стандартное программное обеспечение, а доходы о ее продажи, заложили основу финансового могущества Microsoft.
5 ОСНОВНЫЕ ВИДЫ ПРИКЛАДНОГО ПРОГРАMMНОГО ОБЕСПЕЧЕНИЯ Электронные записные книжки, текстовые редакторы, текстовые процессоры, редакционноиздательские системы), программы-переводчики, программы автореферирования текста, программы и программные модули проверки орфографии, подбора синонимов, лингвистические корректоры, системы, осуществляющие интеллектуальный поиск и интеллектуальную обработку текстов, размещенных в сетях и др.
Основные функции текстового редактора:
- обеспечение ввода текста с клавиатуры или из существующего файла;



Содержание раздела