Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Информатика, 1.2, 1 курс, 1 семестр / 3. Архитектура современных аппаратно-программных средств / Архитектура современных аппаратно-программных средств (часть 2)

.docx
Скачиваний:
3
Добавлен:
27.11.2024
Размер:
37.89 Кб
Скачать

Программное обеспечение

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

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

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

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

Системное программное обеспечение

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

Операционные системы

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

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

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

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

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

Пользовательский интерфейс – набор сервисных услуг, предоставляемых пользователю для управления функционированием компьютера. Пользовательский интерфейс может включать командный язык, набор утилит и сервисов по управлению файловой системой и работой компьютера.

Программный интерфейс – набор услуг, упрощающих программисту программирование рутинных операций. Например, функции API в Windows, прерывания int 21h в DOS.

Примеры ОС:

  • Семейство DOS (disk operating system)

  • Семейство Unix

  • OS/2

  • Семейство Windows

  • Linux

Сервисные системы

Сервисные системы – это системы, дополняющие и расширяющие пользовательский и программный интерфейс ОС. Сервисные системы делятся на:

  • Интерфейсные системы

  • Оболочки

  • Утилиты

Интерфейсные системы – это системы, расширяющие пользовательский и программный интерфейс. Пример Windows 3.1 по отношению к MS DOS.

Оболочки – модифицируют только пользовательский интерфейс. Примеры: NC, VC, Far

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

Инструментальные системы и прикладное ПО

Инструментальные системы

Инструментальные средства – совокупность программных продуктов обеспечивающих разработку информационного ПО и формальных языков, поддерживающих эти продукты.

Системы программирования – совокупность языка программирования и средств обеспечивающих выполнение программ, составленных на этом языке.

Язык программирования – система обозначений для точного описания алгоритмов и данных. Языки программирования достаточно подробно рассмотрены нами в модуле 2. Приведем основные понятия средств программирования.

Транслятор – программа, осуществляющая перевод с одного языка программирования на другой.

Компилятор – разновидность транслятора, переводящая программы, составленные на языках высокого уровня на машинный язык.

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

Рисунок демонстрирует поэтапное применение компилятора и компоновщика

Интерпретатор – программ обрабатывающая исходный код поблочно. Небольшой код переводится в машинный язык и выполняется. Примеры: Basic, FoxPro

Отладчик (Debuger) – программное средство позволяющее выполнять программы с выводом промежуточных результатов.

Системы программирования – совокупность средств включающие редактор кода программы, компилятор, компоновщик или интерпретатор, отладчик, средства визуального проектирования. Примеры: Turbo Pascal, Delphi, Borland C++, Borland C# Builder, Visual Studio .Net

Системы управления базами данных

Вторым составляющим инструментальных систем являются системы управления базами данных (СУБД). СУБД – программное средство, обеспечивающее централизованное управление базами данных (БД). БД – совокупность специальным образом организованных наборов данных, хранящихся на ЭВМ. Реляционные БД – наиболее распространенные БД, данные в которых хранятся в виде взаимосвязанных таблиц.

И так, реляционные базы представляются в виде таблиц. Каждая строчка таблицы описывает разнородную информацию об одном объекте, например о студенте, и называется записью в БД. Каждый столбец таблицы описывает однородную информацию об одном свойстве объекта, например год рождения, и называется полем в БД.

Структура таблиц является основой создания БД. Наиболее эффективной является нормализованная БД. Нормализация БД позволяет:

  • уменьшить избыточность БД;

  • обеспечить целостность БД;

  • обеспечить быстрый доступ к данным

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

Прикладное программное обеспечение

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

  • Текстовые редакторы (MS Word)

  • Графические редакторы (Adobe Photoshop, Corel Draw)

  • Средства для работы с электронными таблицами (MS Excel)

  • Математические пакеты (MathCAD)

  • Системы автоматизированного проектирования САПР (AutoCAD, Compass graphic)

  • Банки данных и информационно-поисковые системы

  • Обучающие программы

  • Средства коммуникации (MS Outlook, ICQ)