Программное обеспечение Вагин Евгений Сергеевич, ассистент Институт кибернетики

реклама
Программное обеспечение
Вагин Евгений Сергеевич, ассистент
Институт кибернетики
Программное обеспечение
Любая вычислительная система состоит из технического
(аппаратного) обеспечения (hardware) и функционирует, решает
задачи с помощью программного обеспечения (software).

Программа (алгоритм) – набор инструкций, на формальном языке,
описывающий порядок действий исполнителя для достижения
результата за конечное число действий.

Программное обеспечение (ПО) – совокупность программ,
использующихся на вычислительных системах.

Пакет прикладных программ (ППП) – набор взаимосвязанных
модулей для решения определенного класса задач некоторой
предметной области.
Классификация ПО
Программное обеспечение делят на:

Системное ПО – ПО позволяющее управлять всеми ресурсами
компьютера (ЦП, ОП, ВУ) и осуществляет общую организацию
процесса обработки информации и интерфейс (взаимодействие) с
пользователем.


Прикладное ПО – ПО предназначенная для выполнения
определенных пользовательских задач и рассчитанная на
непосредственное взаимодействие с пользователем.


Пример: Операционные системы Windows, Linux
Пример: Adobe Photoshop, Microsoft Word, Google Chrome
Инструментальное ПО – предназначено для создания
оригинальных программных средств.

Пример: Microsoft Visual Studio, Eclipse, Delphi
Классификация ПО
Программное обеспечение
Системное
Операционные
системы (ОС)
Драйверы устройств
Сервисное ПО
Операционные
оболочки
Прикладное
ПО общего
назначения
Проблемноориентированное
ПО
ПО, расширяющее
функции ОС
Пакеты
прикладных
программ
Инструментальное
Отладчики
Трансляторы
Библиотеки
стандартных
программ
Визуальные среды
программирования
Системное ПО

Операционная система (ОС) – совокупность программ, предназначенных
для управления ресурсами компьютера и организации взаимодействия с
пользователем.

Драйвер — ПО, с помощью которого другое программное обеспечение
(операционная система) получает доступ к аппаратному обеспечению
некоторого устройства.

Сервисного ПО (утилиты) - программы, предназначенные для решения
узкого круга вспомогательных задач.

Операционные оболочки - называют надстройку над операционной
системой, существенно облегчающую работу пользователя и
предоставляющую ему ряд дополнительных сервисных услуг.
Инструментальное ПО

Ассемблеры
компьютерные
программы,
осуществляющие
преобразование программы в форме исходного текста на языке
ассемблера в машинные команды в виде объектного кода.

Транслятор – программа или техническое средство выполняющее
преобразование программы, представленной на одном из языков
программирования, в программу состоящую и машинных команд.


Компилятор - транслятор программы, составленной на исходном языке
высокого уровня, в эквивалентную программу на низкоуровневом языке,
близком машинному коду.

Интерпретатор - программа выполняющая пооператорный (покомандный,
построчный) анализ, обработка и тут же выполнение исходной программы или
запроса.
Компоновщик (редактор связей) - программы, которые производят
компоновку - принимают на вход один или несколько объектных модулей
и собирают по ним исполнимый модуль.
Инструментальное ПО

Отладчик (debugger) - является модулем среды разработки или
отдельным приложением, предназначенным для поиска ошибок в
программе.

Библиотеки подпрограмм — сборники подпрограмм или объектов,
используемых для разработки программного обеспечения.

Специализированные редакторы исходных текстов — текстовые
редакторы для создания и редактирования исходного кода программ.
Специализированный редактор исходных текстов может быть отдельным
приложением, или быть встроен в интегрированную среду разработки
(IDE).

Редакторы графического интерфейса – ПО для визуального
редактирования интерфейса программы.

Интегрированная среда разработки (англ. IDE, Integrated development
environment) — система программных средств, используемая
программистами для разработки программного обеспечения (ПО).

Пример: Microsoft Visual Studio, Eclipse, Delphi.
Прикладное ПО


Общего назначения:

средства обработки текстовой информации;

электронные таблицы;

средства обработки графической информации;

средства компьютерной коммуникации;

средства развлекательного назначения;
Специального назначения

системы управления базами данных;

системы управления базами знаний и экспертные системы;

системы распознавания образов и принятия решений;

средства численных и символьных вычислений;

Геоинформационные системы;
ПО обработки текстовой информации
Основные функции:

создание и редактирование текстового документа, включая: вставки,
удаления, копирование, перемещение текста в документе, поиск и замену
элементов в документе, добавление в документ текстовой и графической
информации:

форматирование и распечатку документов с выбором размера бумаги и
форматов, а также с указанием числа копий и выводимой части
документа;

выравнивание документа по указанным границам с автоматической
обработкой переноса строк;

возможность создания документа по стандартному шаблону;

использование различных шрифтов, стилей и т.д.;

размещение в документе таблиц, диаграмм, рисунков, фотографий и т.д.,

а также ряд других функций, состав которых определяется уровнем и
назначением конкретного ПС.
ПО для обработки графической информации

Два типа представления графической информации:

Векторный - изображение формируются из базовых графических
объектов, для каждого из которых задаются координаты опорных точек, а
также цвет, толщина и стиль линии его контура;


Пример: Corel Draw
Растровый – изображение, представляющее собой сетку пикселей или
цветных точек (обычно прямоугольную) на мониторе и других
отображающих устройствах).

Пример: Adobe Photoshop, Microsoft Paint.
Кроме обработки статически изображений существует ПО для работы с :

3D графикой;

Видео данными;

Анимацией;
Электронные таблицы

Под электронными таблицами понимают программные средства обработки
крупноформатных электронных динамических таблиц.

Средства данного типа обрабатывают таблицы, состоящие из строк и
столбцов, на пересечении которых располагаются клетки.

В электронных таблицах есть средства для графического отображения
результатов обработки.

Решения многих вычислительных задач, которые раньше можно было
осуществить только с помощью программирования, стало возможно
реализовать через математическое моделирование в электронной
таблице.
ПО компьютерной коммуникации

Браузер (от англ. Web browser) — прикладное программное обеспечение
для просмотра веб-страниц; содержания веб-документов, компьютерных
файлов и их каталогов; управления веб-приложениями; а также для
решения других задач.

Пример: Microsoft Internet Explorer, Google Chrome, Mozilla Firefox

Клиент электронной почты, почтовый клиент — программное
обеспечение, устанавливаемое на компьютере пользователя и
предназначенное для получения, написания, отправки и хранения
сообщений электронной почты.

Пример: Microsoft Outlook, The Bat

Система мгновенного обмена сообщениями (англ. Instant messaging, IM)
— программы для обмена сообщениями в реальном времени через
Интернет. Могут передаваться текстовые сообщения, звуковые сигналы,
изображения, видео, а также производиться такие действия, как
совместное рисование или игры.

Пример: ICQ, QIP, Skype
ПО развлекательного назначения

Компьютерная игра — компьютерная программа, служащая для организации
игрового процесса, связи с партнёрами по игре, или сама выступающая в
качестве партнёра.

Медиаплеер — компьютерная программа, предназначенная для
воспроизведения файлов мультимедиа-контента.
СУБД

База данных — представленная в объективной форме совокупность
самостоятельных материалов, систематизированных таким образом, чтобы
эти материалы могли быть найдены и обработаны с помощью ЭВМ.

Система управления базами данных (СУБД) — совокупность
программных и лингвистических средств общего или специального
назначения, обеспечивающих управление созданием и использованием
баз данных.

Основные функции СУБД:

Управление данными во внешней памяти ЭВМ;

Управление данными в оперативной памяти с использованием дискового кэша;

Журнализация изменений, резервное копирование и восстановление базы
данных после сбоев;

Поддержка языков СУБД.
СУБД

Система управления базами данных (СУБД) — совокупность
программных и лингвистических средств общего или специального
назначения, обеспечивающих управление созданием и использованием
баз данных.

Компоненты СУБД:

ядро, которое отвечает за управление данными во внешней и оперативной
памяти и журнализацию;

процессор языка базы данных, обеспечивающий оптимизацию запросов на
извлечение и изменение данных и создание, как правило, машиннонезависимого исполняемого внутреннего кода;

подсистему поддержки времени исполнения, которая интерпретирует
программы манипуляции данными, создающие пользовательский интерфейс с
СУБД;

а также сервисные программы (внешние утилиты), обеспечивающие ряд
дополнительных возможностей по обслуживанию информационной системы.
Классификация СУБД

По модели данных:

Иерархическая модель данных - используется представление
в виде древовидной (иерархической) структуры, состоящей из
объектов (данных) различных уровней.
Достоинства: 1) эффективное использование памяти ЭВМ; 2) высокая
скорость выполнения основных операций над данными; 3) удобство
работы с иерархически упорядоченной информацией.
Недостатки: 1) громоздкость такой модели для обработки информации
с достаточно сложными логическими связями; 2) трудность в
понимании ее функционирования обычным пользователем.

Сетевая модель данных - может быть представлена как
развитие и обобщение иерархической модели данных,
позволяющее отображать разнообразные взаимосвязи данных в
виде произвольного графа.
Достоинства: 1) эффективность в использовании памяти компьютера;
2) высокая скорость выполнения основных операций над данными;
3) огромные возможности (большие, чем у иерархической модели)
образования произвольных связей.
Недостатки: 1) высокая сложность и жесткость схемы базы данных,
которая построена на ее основе; 2) трудность для понимания и
выполнения обработки информации в базе данных
непрофессиональным пользователем.
Классификация СУБД

По модели данных:

Реляционная модель данных - модель ориентирована на
организацию данных в виде двумерных таблиц.
Каждая реляционная таблица представляет собой двумерный
массив и обладает следующими свойствами:

Каждый элемент таблицы является одним элементом данных;

Каждый столбец обладает своим уникальным именем;

Одинаковые строки в таблице отсутствуют;

Все столбцы в таблице однородные, то есть все элементы в
столбце имеют одинаковый тип;

Порядок следования строк и столбцов может быть
произвольным;
Достоинства: 1) понятность 2) простота 3) удобство практической
реализации;
Недостатки: 1) ) отсутствие стандартных средств идентификации
отдельных записей; 2) сложность описания иерархических и
сетевых связей.
Классификация СУБД



По модели данных:

Объектно-ориентированная модель данных - модель, в которых информация
представлена в виде объектов, как в объектно-ориентированных языках
программирования.

Объектно-реляционная модель данных - объединяют в себе черты
реляционной и объектной моделей.
По степени распределённости:

локальные – все части СУБД размещаются на одной ЭВМ;

распределенные – части СУБД могут размещаться на 2 и более ЭВМ;
По способу доступа:

Файл-серверные – по средствам файловых блокировок;

Клиент-серверные – по средствам запросов;

Встраиваемые – по средствам подключаемых библиотек;
Язык SQL
SQL (англ. structured query language — «язык структурированных запросов») —
формальный непроцедурный язык программирования, применяемый для
создания, модификации и управления данными в произвольной реляционной базе
данных, управляемой соответствующей системой управления базами данных
(СУБД).
Типы запросов:


запросы на изменение в структуре базы данных (добавление/удаление
полей/таблиц/баз данных);

запросы на получение структуры данных;

запросы на получение данных;

запросы на добавление/изменение/удаление новых данных (записей);

настройка СУБД.
Пример запросов:

Выборка всех данных из таблицы table1:
SELECT * FROM table1;

Создание таблицы table1 с полями user_id и username :
CREATE TABLE table1 (‘user_id’ , ‘username’);
Специализированное ПО

Экспертная система — ПО, способная частично заменить специалистаэксперта в разрешении проблемной ситуации.

База знаний (англ. knowledge base) — это особого рода база данных,
разработанная для оперирования знаниями (метаданными). База знаний
содержит структурированную информацию, покрывающую некоторую
область знаний, для использования кибернетическим устройством (или
человеком) с конкретной целью.

Геоинформационная система (ГИС) — система сбора, хранения, анализа
и графической визуализации пространственных (географических) данных
и связанной с ними информации о необходимых объектах.

Система распознавания образа — ПО способное классифицировать и
идентифицировать предметы, явления, процессы, сигналы, ситуации и т.
п. объекты, которые характеризуются конечным набором некоторых
свойств и признаков.
Операционная система

Операционная система (ОС) – совокупность программ, предназначенных для
управления ресурсами компьютера и организации взаимодействия с
пользователем.

Операционная система обычно хранится во внешней памяти компьютера — на
диске. При включении компьютера она считывается с дисковой памяти и
размещается в ОЗУ.

Компоненты операционной системы:


Загрузчик - системное программное обеспечение, обеспечивающее загрузку
операционной системы непосредственно после включения компьютера;

Ядро - центральная часть операционной системы, управляющая выполнением
процессов, ресурсами вычислительной системы и предоставляющая процессам
координированный доступ к этим ресурсам. Основными ресурсами являются
процессорное время, память и устройства ввода-вывода;

Командный процессор - интерпретатор команд операционной системы,
обеспечивающий интерфейс для взаимодействия пользователя с функциями
системы;

Драйверы устройств - ПО, с помощью которого операционная система получает
доступ к аппаратному обеспечению некоторого устройства;

Встроенное программное обеспечение;
Операционные системы реального времени – ОС с гарантированным
временем реакции на событие, используются в системах технологического
управления атомными станциями, химическими производствами и пр.
Основные функции ОС
Основные функции ОС:

Исполнение запросов программ (ввод и вывод данных, запуск и остановка
других программ и др.).

Загрузка программ в оперативную память и их выполнение.

Стандартизованный доступ к периферийным устройствам (устройства
ввода-вывода).

Управление оперативной памятью (распределение между процессами,
организация виртуальной памяти).

Управление доступом к данным на энергонезависимых носителях (таких
как жёсткий диск, оптические диски и др.), организованным в той или
иной файловой системе.

Обеспечение пользовательского интерфейса.

Сохранение информации об ошибках системы.
Классификация ОС

По предназначению:

для персональных компьютеров (домашний, офисный, ноутбук);

для серверов (СУБД, Web-сервера, Высокопроизводительные);

для встроенных систем;

По разрядности кода: 16,32,64 бита.

Поддержка многозадачности:




Однозадачные (MS DOS);

Многозадачные (Windows, Linux);
Поддержка многопользовательского режима:

Однопользовательские (MS DOS);

Многопользовательские (Windows, Linux);
Вид многозадачности:

Не вытесняющая многозадачность (Windows 3.11);

Вытесняющая многозадачность (Windows, Linux);
Поддержка многопроцессорности;
СПАСИБО ЗА ВНИМАНИЕ!
Скачать