Модуль 2. Архитектура вычислительной системы


Тема 3. Общая структура программного  обеспечения и операционных систем ЭВМ

Структура ОС

Управление процессами

Управление основной памятью

Управление внешней памятью

Подсистема управления устройствами ввода/вывода

Подсистема управления файлами

Защита системы

Сетевое обеспечение

Командный интерфейс системы

Сервисы операционных систем

Особенности методов построения


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

АО определяет внешнюю архитектуру ЭВМ, в том числе:

В современной ЭВМ АО состоит из двух слоев:

  1. Собственно технические средства аппаратуры, включающие в свой состав:
  1. Микропрограммное обеспечение - набор микропрограмм, которые на основе системы микрокоманд и внутренних регистров МП в сверхбыстром постоянном запоминающем устройстве (ПЗУ) и перепрограммируемом ПЗУ (ППЗУ), реализуют практически все аппаратные блоки ЭВМ.

В настоящее время, каждый блок компьютера представляет собой микро-ЭВМ с некоторым функциональным набором команд (адаптер, контроллер, блок управления, блок сопряжения). Теперь для того, чтобы модифицировать функциональность компьютерного оборудования, можно перепрограммировать ПЗУ. Таким образом, можно изменить, например, базовую систему ввода/вывода (BIOS) IBM PC или протокол передачи данных модема.

Микропрограммная реализация ЭВМ обеспечивает:

    1. Технологичность изготовления ЭВМ, снижение расходов на изготовление конкретных аппаратных блоков.
    2. Легкость расширения и изменения внешней архитектуры ЭВМ.
    3. Повышение производительности ВС посредством погружения ПО на микропрограммный уровень.

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

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

Инструментальное программное обеспечение (ИПО) включает средства, предназначенные для автоматизации программирования:

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

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

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

Следует отметить, что трансляторы обычно не включаются в состав ОС и поставляются отдельно. Границу между ИПО и БПО трудно установить и они образуют общесистемное ПО. ОС MS DOS поставляется в составе: ОС + утилиты + ASM + отладчик +редактор текстов + редактор связей.

Общесистемное программное обеспечение и аппаратное обеспечение образуют вычислительный комплекс.

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

ППО включает системы управления базами данных (СУБД) и Банков данных (БнД), системы телеобработки, различные объектно-проблемно-функционально-ориентированные пакеты прикладных программ, библиотеки программ, программные оболочки и т.д. Все они оформляются или поставляются в виде комплексов программных средств.

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

Таким образом, граница между любыми уровнями ПС аморфна, так как существуют сетевые ОС, а также ОС интегрированные с СУБД.

Общая архитектура ВС представляет собой следующий комплекс  (см. рис.1).

Image44.gif (21055 bytes)

Рисунок.1 Общий состав ОС

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

Для работы с системными программами используются следующие языковые средства:

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

Image45.gif (35150 bytes)

Рисунок 2. Обобщенная структура Управляющей программы.

Структура ОС.

В состав операционной системы входят следующие подсистемы:

  1. Управление процессами;
  2. Управление основной памятью;
  3. Управление внешней памятью;
  4. Управление устройствами ввода/вывода;
  5. Управление файлами;
  6. Защита системы;
  7. Сетевая поддержка;
  8. Командный интерфейс системы.

Управление процессами

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

Управление основной памятью

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

Управление внешней памятью

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

Подсистема управления устройствами ввода/вывода

Подсистема ввода/вывода состоит из:

Подсистема управления файлами

Файл представляет собой набор взаимосвязанной информации, определенной при создании. Кроме собственно данных, файлы представляют программы, как в исходном, так и в объектном виде.

Подсистема ОС отвечает за следующие действия в связи с управлением файлами:

Защита системы

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

Механизм защиты должен:

Сетевое обеспечение

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

Командный интерфейс системы

Множество команд в ОС предназначено для выполнения функций управления, которые имеют дело с

Программа, которая читает и интерпретирует команды управления, называется различным образом:

Их функцией является принять и выполнить очередное утверждение.

Сервисы операционных систем

Особенности методов построения

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

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

Наличие нескольких прикладных сред дает возможность в рамках одной ОС одновременно выполнять приложения, разработанные для нескольких ОС.

Многие современные операционные системы поддерживают одновременно прикладные среды MS-DOS, Windows, UNIX (POSIX), OS/2 или хотя бы некоторого подмножества из этого популярного набора. Концепция множественных прикладных сред наиболее просто реализуется в ОС на базе микроядра, над которым работают различные серверы, часть которых реализуют прикладную среду той или иной операционной системы.

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

Характерными признаками распределенной организации ОС являются: