Операционное окружение
Операцио́нное окруже́ние (англ. operating environment) — среда, в которой пользователь запускает программу. Например, операционное окружение DOS состоит из всех команд DOS, доступных пользователю. С другой стороны, операционное окружение Macintosh включает в себя графический интерфейс пользователя, использующий иконки и меню вместо команд.
В различных операционных системах состав среды окружения может сильно различаться.
К составу среды окружения обычно относят:
- системные переменные
- Текущие пути на различных дисках (в случае поддержки нескольких дисков операционной системой)
- Точка монтирования каталогов (в том числе корневого), используется в unix-подобных операционных системах для обеспечения режима «тюрьмы» (англ. jail)
- Связь стандартных потоков ввода-вывода с файловыми хэндлерами или устройствами (используется для перенаправления ввода-вывода)
- Ограничения на количество одновременно открытых файлов, стеков и т. д.
- Набор прав (обычно соответствует правам пользователя, запустившего процесс, но может изменяться как в сторону большего набора прав, так и в сторону ужесточения)
- Дисковые квоты, ограничение на максимальный объём оперативной памяти, загрузки процессоров и т. д.
- Значения показателей использования ресурсов, получаемые от родительского процесса (на некоторых системах)
Между операционным окружением и shell пролегает очень тонкая грань. Исторически shell создавались как интерфейс к операционной системе. Он не добавлял новых возможностей и свойств. В задачу shell входило создание более удобного пользовательского интерфейса. Но со временем появились «интеллектуальные» shell. И в данный момент есть некоторые отличия между интеллектуальным shell и операционным окружением.
|
Также операционное окружение иногда называют контролирующей программой (control program).
В сфере бизнеса существует понятие стандартного операционного окружения (SOE — Standart Operating Environment)
Состав конкретной ОС во многом зависит от конкретной ориентации, сферы применения ОС. Современные ОС имеют подвижные границы и могут включать различные компоненты общесистемного программного обеспечения (ОСПО). Состав ОС в целом определяется современной архитектурой вычислительной системы (ВС), которая представляет собой иерархическую совокупность аппаратного обеспечения (АО) и программного обеспечения (ПО), реализующих процесс решения задач на ЭВМ. Каждый слой состоит из множества элементов и решает свои задачи.
АО определяет внешнюю архитектуру ЭВМ, в том числе:
- машинный язык как систему команд процессора;
- программно-адресуемые регистры;
- организационную схему адресации ОП (реальная/виртуальная, линейная/сегментная);
- фиксирует порядок взаимодействия всех аппаратных блоков: ЦП, оперативных запоминающих устройств (ОЗУ), каналов внешних запоминающих устройств (ВЗУ), периферийных устройств (ПУ).
В современной ЭВМ АО состоит из двух слоев:
Собственно технические средства аппаратуры, включающие в свой состав:
- электрические цепи;
- вентили, триггеры, интегральные схемы (ИС), большие интегральные схемы (БИС), микропроцессоры (МП);
- Микропрограммное обеспечение - набор микропрограмм, которые на основе системы микрокоманд и внутренних регистров МП в сверхбыстром постоянном запоминающем устройстве (ПЗУ) и перепрограммируемом ПЗУ (ППЗУ), реализуют практически все аппаратные блоки ЭВМ.
В настоящее время, каждый блок компьютера представляет собой микро-ЭВМ с некоторым функциональным набором команд (адаптер, контроллер, блок управления, блок сопряжения). Теперь для того, чтобы модифицировать функциональность компьютерного оборудования, можно перепрограммировать ПЗУ. Таким образом, можно изменить, например, базовую систему ввода/вывода (BIOS) IBM PC или протокол передачи данных модема.
|
Микропрограммная реализация ЭВМ обеспечивает:
- Технологичность изготовления ЭВМ, снижение расходов на изготовление конкретных аппаратных блоков.
- Легкость расширения и изменения внешней архитектуры ЭВМ.
- Повышение производительности ВС посредством погружения ПО на микропрограммный уровень.
Микропрограммный уровень, как правило, не доступен для ПО ВС и программируется с помощью программаторов (специальных устройств). Современные же ПЗУ (Flash ПЗУ) можно перепрограммировать с помощью пользовательской программы без специализированных устройств.
ПО специализирует АО на решение конкретных задач и состоит их 4 слоев. Базовое программное обеспечение (БПО) – самый низкий уровень ПО ВС, который предназначается для обеспечения общего управления ЭВМ и организации работы всех системных и прикладных программ. В состав БПО включается средства генерации ОС, управляющая программа, утилиты, комплекс программ технического обслуживания (КПТО).
Инструментальное программное обеспечение (ИПО) включает средства, предназначенные для автоматизации программирования:
|
- программирование решения задачи на подходящем языке;
- поддержка на этапах отладки и тестирования;
- разделение программ на части и объединение в требуемом порядке в программу.
ИПО включает системы программирования, редактирования текстов и отладки, редакторы исходных текстов, ассемблеры, компиляторы и интерпретаторы, редактор связей, абсолютный и перемещаемый загрузчик. Из числа этих средств общие для всех компоненты – редактор связей и загрузчик, всегда включаются в состав ОС.
Задача редактора связей – сборка модулей (частей программ), написанных в разное время и, возможно, разными людьми, на разных языках программирования, в единую программу.
Задача загрузчика – размещение выполняемой программы в ОП и настройка перемещаемых (относительных) адресов констант по месту размещения.
Следует отметить, что трансляторы обычно не включаются в состав ОС и поставляются отдельно. Границу между ИПО и БПО трудно установить и они образуют общесистемное ПО. ОС MS DOS поставляется в составе: ОС + утилиты + ASM + отладчик +редактор текстов + редактор связей.
Общесистемное программное обеспечение и аппаратное обеспечение образуют вычислительный комплекс.
Прикладное программное обеспечение (ППО) предназначается для автоматизации проектирования прикладных программных комплексов на основе универсальных программных средств, позволяющих решать целые классы задач.
ППО включает системы управления базами данных (СУБД) и Банков данных ( БнД), системы телеобработки, различные объектно-проблемно-функционально-ориентированные пакеты прикладных программ, библиотеки программ, программныеоболочки и т.д. Все они оформляются или поставляются в виде комплексов программных средств.
ППП – это комплекс взаимосвязанных прикладных средств, позволяющих решать определенный класс задач. Следует отметить, что такие прикладные ПС как СУБД, расширяют возможности систем управления данными ОС и СТО (системы телеобработки). Они объединяют информационно-программные ресурсы различных ЭВМ в единое целое и относятся по своему назначению к ОС и лишь их возникновение в более позднее время, в сравнении с ОС, относит их к ППО (хотя в современные версии ОС встраиваются средства работы в сети и СУБД).
Таким образом, граница между любыми уровнями ПС аморфна, так как существуют сетевые ОС, а также ОС интегрированные с СУБД.
Общая архитектура ВС представляет собой следующий комплекс (см. рис.1).
Рисунок.1 Общий состав ОС
ППО – прикладное программное обеспечение. Это программы и программные комплексы (ПК), решающие конкретные задачи, и автоматизирующие потребность в вычислениях конечных пользователей ВС, собственно то, ради чего создавалась ЭВМ.
Для работы с системными программами используются следующие языковые средства:
· средства (возможно языковые) генерации ОС;
· системные директивы;
· язык управления заданием процедур для командных режимов работы
· командный язык и процедуры диалогового режим, подмножеством которого является операторский язык.
Основным исполнительным компонентным ядром ОС, реализующим главное назначение ОС, - управление ресурсами ВС, является управляющая программа, общая структура и функции которой определяются обобщенной структурой вычислительного комплекса. Обобщенная структура управляющей программы имеет вид, представленный на рисунке 2.
Структура ОС.
В состав операционной системы входят следующие подсистемы:
1. Управление процессами;
2. Управление основной памятью;
3. Управление внешней памятью;
4. Управление устройствами ввода/вывода;
5. Управление файлами;
6. Защита системы;
7. Сетевая поддержка;
8. Командный интерфейс системы.
Управление процессами
Процесс - это программа в стадии выполнения. Процессу необходимы определенные ресурсы, включая процессорное время, память, файлы и устройства ввода/вывода для выполнения своих задач. ОС отвечает за следующие действия в связи с управлением процессами:
· создание и удаление процессов;
· приостановка и возобновление процессов;
· обеспечение механизмов для синхронизации процессов;
· обеспечение механизмов для взаимодействия процессов.
Управление основной памятью
Память представляет собой большой массив слов или байт, каждый из которых имеет собственный адрес. Это хранилище данных, к которым обеспечивается быстрый доступ, распределенный между процессором и устройствами ввода/вывода. Основная память энергозависимое устройство и теряет содержимое в случае разрушения системы. ОС отвечает за следующие действия в связи с управлением памятью:
· ведет учет о том, какая часть памяти в настоящий момент используется;
· принимает решение о загрузке процессов при освобождении пространства ОП;
· распределяет и освобождает пространство ОП в соответствии с действующими стратегиями.