Файл: операционные системы для заочного отделения.doc

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 17.06.2021

Просмотров: 1649

Скачиваний: 5

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

Тема 1. История развития операционных систем. Типы операционных систем.

1.1 Определение операционной системы

1. 2 История развития операционных систем

Тема 2. Основные характеристики и принципы построения операционных систем.

Основные характеристики ОС

Принципы построения ОС

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

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

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

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

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

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

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

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

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

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

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

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

Тема 4. Диаграмма перехода процесса

Основные состояния процесса:

Дополнительные состояния процесса:

Операции над процессами

Основная концепция обработки прерываний

Тема 5. Контекст процесса и переключение контекста

Переключения контекста в EC ЭВМ

Тема 6. Синхронизация и кооперация процессов

Тема 7. Тупики: условия возникновения тупиков, предотвращения тупиков

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

Тема 9. Понятие виртуальной памяти

Тема 10. Страничная организация. Сегментная организация. Странично-сегментная организация. Двухуровневая страничная организация

Тема 11. Управление процессорами и заданиями в однопроцессорном вычислительном комплексе. Алгоритмы планирования процессов

Тема 12. Управление процессорами и заданиями в мультипроцессорном вычислительном комплексе

Тема 13. Управление периферийными устройствами. Эволюция систем ввода-вывода, каналы ввода вывода. Регистры и команды ввода вывода.

Тема 15. Способы доступа и организации файлов. Распределение файлов на диске

Тема 16. Требования и тенденции построения ОС

Тема 17. UNIX и MS Windows NT

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

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

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

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

Стратегия размещения, определяющая, куда помещать поступающую программу.

а) "первый подходящий" участок (эффективность по времени размещения);

б) "наиболее подходящий" участок (эффективность по объему);

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

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

Существуют 4 вида организации реальной памяти:

  1. Однопрограммная организация памяти с выделением непрерывной области одному пользователю. Это самая простая организация, которая использовалась на первых ЭВМ и на микро-ЭВМ, а также и на первых персональных компьютерах (PC) (рисунок 5.2).

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

Достоинства: простота защиты оперативной памяти. Для защиты требуется пара регистров, определяющих границы доступа ОП.

Недостатки: Простаивает ЦП, а, следовательно, и ОП, и устройства ввода/вывода. Неэффективное использование ЭВМ даже при наличии потока заданий, когда задания формируются в пакеты (режим PCP для ЕС ЭВМ).

  1. Мультипрограммная организация с фиксированными разделами. ОП при загрузке ОС статически разбивается на ряд разделов фиксированного размера, в каждом из которых может выполняться одно задание (режим MFT OC в ЕС ЭВМ, MP?? фирмы Digital Research для 8 и 16 – разрядных процессоров Intel 8080, 8086).

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

Достоинства: большая загрузка ЦП и повышение пропускной способности.

Недостатки:

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


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

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

3. Области памяти выделяются непрерывные из участков свободной памяти в соответствии с реализованными стратегиями размещения. При окончании заданий соседние свободные участки ОП объединяются. Защита памяти аналогичная режиму с фиксированными разделами.

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

Недостатки: внешняя фрагментация памяти - образование неиспользованных участков в целом может давать большие потери объема и мультипрограммирования.

Рисунок 3. Мультипрограммная организация с фиксированными разделами

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

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

Недостатками этого метода являются:

а) используется время ЦП на уплотнение;

б) во время уплотнения ОС прекращает выполнение процессов пользователей (неприемлемо для СРВ).

Страничная организация памяти реализует концепцию несвязного распределения памяти ЭВМ и означает

а) разделение ОП ЭВМ на блоки фиксированной длины размером от 1 до 4 Kb

б) разделение адресного пространства программы загрузчиком на страницы фиксированного размера, равного длине блока;

в) динамически поблочно выдается память программам в любом месте ЭВМ;

г) аппаратная поддержка соответствия номеров блоков ОП ЭВМ и страниц процесса по соответствующей таблице отображения страниц.

Достоинства:

1.Отсутствие внешней фрагментации (достаточно разделов для больших программ).

2.Внутренняя фрагментация ограничена размером блока ОП ЭВМ < 1 -4 кб.

Рисунок 4. Мультипрограммная организация с переменными разделами

Общий итог развития форм организации реальной ОП - практически полная ликвидация фрагментации.


Общие недостатки реальной ОП:

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

ЕC ЭВМ – 24 - разрядные адресные регистры определяют допустимое адресное пространство размером 16 Мб, реально же устанавливается объем памяти 512 Кб - 8 Мб.

Рисунок 5. Таблица отображения страниц (ТОС):

Pentium может адресовать своими 32-разрядными регистрами 4 Gb ОП, реально на компьютере устанавливается значительно меньший объем памяти (32-192 Mb). Не трудно представить какой огромный размер виртуальной ОП будет доступен с использованием анонсированного фирмой Intel 64 - разрядного процессора Merced.

(Логический) неэффективное использование РОП ввиду необходимости загрузки в ОП задания пользователя целиком, в то время как 85 процентов времени выполнения программ реализуется обычно 5-10% команд программ.

Все проблемы привели к появлению концепции виртуальной памяти как воплощения идеи виртуализации ресурсов.


Модуль 5. Управление основной памятью

Тема 9. Понятие виртуальной памяти

Концепция виртуальной памяти

Четыре способа организации виртуальной памяти

Стратегия вталкивания

Стратегия размещения

Стратегия выталкивания (замещения)

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

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

Итак, виртуальной памятью называется основная память процесса, адресное пространство которого соответствует диапазону непосредственной адресации системы команд ЭВМ и которая обычно не совпадает с объемом реальной памяти ЭВМ.

EC ЭВМ> 24 разрядами адресует 16 Мб памяти машины.

Операционная система позволяет одновременно работать N процессов > N* 16 мб.

Начиная с Intel 386 (32 разрядные МП) – для каждого процесса выделяет адресное пространство размером 4 Gb. Одновременно работает N процессов > N* 4 Gb.

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

1.Обеспечить возможность создания и выполнения на ЭВМ программ максимально допустимого размера.

2.Облегчить жизнь программиста, сняв с него проблемы, связанные с ограниченным объемом РОП.

3.Устранить временную фрагментацию, максимально эффективно используя ОП ЭВМ, которая образуется при отсутствии необходимого участка программы/данных в РОП и определяется временем, необходимым для размещения необходимых данных в РОП.

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


В ОС с реальной ОП привязка адресного пространства к реальным адресам осуществляется статически до выполнения программы на все время выполнения.

Концепция виртуальной памяти

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

Виртуальная память - это моделирование оперативной памяти во внешней памяти.

Механизм отображения виртуальных и реальных адресов устанавливает между ними соответствие и называется динамическим преобразованием адресов (ДПА).

Компьютер здесь уже выступает как логическое устройство, а не физическая машина с уникальными характеристиками. ДПА поддерживается на аппаратно-микропрограммном уровне. В МП Intel, начиная с 386 процессора, выполняется поддержка виртуальной памяти.

Такая процедура выполняется для EC ЭВМ - ряд 2 и выше, для СМ ЭВМ- 1700, для IBM PC – I386 и выше.

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

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

Рисунок 1.  Динамическое преобразование адресов

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

Еще один вопрос, который необходимо решать: Каким сделать размер блока?

Увеличение размера блока приводит к уменьшению размера таблицы отображения блоков, но увеличивает время обмена и, наоборот, уменьшение размера блока приводит к увеличению таблиц и уменьшению времени обмена с внешней памятью.

Блоки могут быть фиксированного размера (страницы) и переменного размера (сегменты). В этой связи существует четыре способа организации виртуальной памяти:

1.Динамическая страничная организация.

2.Сегментная организация.

3.Комбинированная сегментно-страничная организация.

4.Двухуровневая страничная организация.

Виртуальные адреса в страничных и сегментных системах являются двухкомпонентными и представляют собой упорядоченную пару (p,d), где p - номер блока (страницы либо сегмента), в которой размещается элемент, а d - смещение относительно начального адреса этого блока. Преобразование виртуального адреса V=(p,d) в адрес реальной памяти r осуществляется следующим образом. При активизации очередного процесса в специальный регистр процессора загружается адрес таблицы отображения блоков данного процесса. В соответствии с номером блока p из таблице отображения блоков, считывается строка, в которой устанавливается соответствие между номерами виртуальных и физических страниц для страниц, загруженных в оперативную память, или делается отметка о том, что виртуальная страница выгружена на диск. Кроме того, в таблице страниц содержится управляющая информация, такая как признак модификации страницы, признак невыгружаемости (выгрузка некоторых страниц может быть запрещена), признак обращения к странице (используется для подсчета числа обращений за определенный период времени) и другие данные, формируемые и используемые механизмом виртуальной памяти. К считанному физическому адресу размещения выбранного блока добавляется размер смещения d и вычисляется требуемый реальный адрес.