Можно выделить три класса программного обеспечения:
– системное программное обеспечение;
– пакеты прикладных программ (прикладное программное обеспечение);
– инструментарий технологии программирования (инструментальные средства для разработки ПО).
Системное ПО направлено:
– на создание операционной среды функционирования других программ;
– на обеспечение надежной и эффективной работы самого компьютера и вычислительной сети;
– на проведение диагностики и профилактики аппаратуры компьютера и вычислительных сетей;
– на выполнение вспомогательных технологических процессов (копирование, архивация, восстановление файлов программ и БД и т.п.).
Системное ПО (System Software) – совокупность программ и программных комплексов для обеспечения работы компьютера и вычислительных сетей.
Прикладное ПО служит программным инструментарием для решения функциональных задач и является самым многочисленным классом ПО. В данный класс входят программные продукты, выполняющие обработку информации различных предметных областей. Таким образом, прикладное ПО – комплекс взаимосвязанных программ для решения задач определенного класса предметной области.
Инструментарий технологии программирования обеспечивает процесс разработки программ и включает специализированное ПО, которое является инструментальными средствами разработки. ПО данного класса поддерживает все технологические этапы процесса проектирования, программирования, отладки и тестирования создаваемых программ. Пользователями данного ПО являются системные и прикладные программисты.
Системное ПО. В составе системного ПО можно выделить две составляющие: базовое и сервисное программное обеспечение.
Базовое ПО – минимальный набор программных средств, обеспечивающих работу компьютера.
Сервисное ПО – программы и программные комплексы, которые расширяют возможности базового ПО и организуют более удобную среду работы пользователя.
В базовое ПО входят операционная система, операционные оболочки (текстовые, графические), сетевая операционная система.
Компьютер выполняет действия в соответствии с предписаниями программы, созданной на одном из языков программирования. При работе пользователя на компьютере часто возникает необходимость выполнять операции с прикладной программой в целом, организовывать работу внешних устройств, проверять работу различных блоков, копировать информацию и т.д. Эти операции используются для работы с любой программой. Поэтому целесообразно из всего многообразия операций, выполняемых компьютером, выделить типовые и реализовать их с помощью специализированных программ, которые следует принять в качестве стандартных средств, поставляемых вместе с аппаратной частью. Программы, организующие работу устройств и не связанные со спецификой решаемой задачи, вошли в состав комплекса программ, названного операционной системой.
Операционная система – совокупность программных средств, обеспечивающих управление аппаратной частью компьютера и прикладными программами, а также взаимодействием между собой и пользователем.
Прикладное ПО. Классификация прикладных программных средств:
– текстовые редакторы – для ввода и редактирования текстовых данных;
– текстовые процессоры – позволяют не только вводить и редактировать текст, но и форматировать, т.е. оформлять, текст;
– графические редакторы – для создания и обработки графических изображений. Различают растровые, векторные и 3D-редакторы;
– системы управления данными. Базами данных являются огромные массивы данных, организованные в табличные структуры;
– электронные таблицы – комплексные средства для хранения различных типов данных и их обработки;
– системы автоматизированного проектирования (CAD-системы) – для автоматизации проектно-конструкторских работ;
– экспертные системы – для анализа данных, содержащихся в базах данных, и выдачи рекомендаций по запросу пользователей;
– редакторы HTML (веб-редакторы) – для создания и редактирования веб-документов;
– браузеры – средства просмотра веб-страниц;
– интегрированные системы делопроизводства – для автоматизации рабочего места руководителя;
– бухгалтерские системы – специализированные системы, сочетающие в себе функции текстовых и табличных редакторов, электронных таблиц и систем управления базами данных;
– финансовые аналитические системы – используются в банковских и биржевых структурах;
– геоинформационньте системы – для автоматизации картографических и геодезических работ на основе информации, полученной топографическими и аэрокосмическими методами;
– системы видеомонтажа – для цифровой обработки видеоматериала, их монтажа, создания видеоэффектов, наложения звука, титров и субтитров;
– обучающие, развивающие, справочные, развлекательные программы;
– коммуникационные пакеты для организации взаимодействия пользователей с удаленными абонентами или информационными ресурсами сети;
– средства электронной почты (Pegasys Mail);
– настольные издательские системы – для автоматизации процесса верстки полиграфических изданий (PageMaker, CorelDRAW, Photoshop и т.д.). Обеспечивают информационную технологию компьютерной издательской деятельности: форматирование и редактирование текстов, автоматическую разбивку текста на страницы, компьютерную верстку печатной страницы, монтирование графики, подготовку иллюстраций и т.п.;
– программные средства мультимедиа. Основное значение данных программных средств – создание и использование аудио- и видеоинформации для расширения информационного пространства пользователя (различные БД компьютерных произведений искусства, библиотеки звуковых записей и т.д.);
– системы искусственного интеллекта – программы оболочки для создания экспертных систем путем наполнения баз знаний и правил логического вывода; готовые экспертные системы для принятия решений в рамках определенных предметных областей; системы анализа и распознавания речи, текста и т.п. Примеры систем искусственного интеллекта: FIDE, MYSIN, Guru и др.
Классификация служебных программ:
– диспетчеры файлов (файловые менеджеры). С помощью этих программ выполняется большинство операций, связанных с обслуживанием файловой структуры;
– средства сжатия данных (архиваторы) для создания архивов;
– средства просмотра и воспроизведения;
– средства диагностики программного и аппаратного обеспечения;
– средства контроля (мониторинга) – позволяют следить за процессами, происходящими в компьютерной системе;
– средства коммуникации – позволяют создавать соединения с удаленными компьютерами, обслуживают передачу сообщений электронной почты, работу с телеконференциями и т.д.;
– средства обеспечения компьютерной безопасности. Схема иерархической модели программно-аппаратных средств компьютера:
– интерфейс пользователя;
– языки программирования;
– интегрированные среды разработки прикладных программ – компиляторы, интерпретаторы, генераторы отчетов;
– исполняемые файлы прикладных программ;
– операционная система;
– ядро операционной системы;
– виртуальная машина – ассемблерный уровень;
– микропрограммная среда управления аппаратными средствами;
– логические схемы аппаратных средств.