Слайд 2
Ядро ОС
Ядро ОС – совокупность управляющих программ, которые
должны постоянно присутствовать в ОП и обеспечивать функционирование с
минимальными задержками.
Слайд 3
Размещение в памяти пользовательских программ
Простое непрерывное распределение.
Цель:
минимальные затраты на реализацию: каждый конкретный момент времени допускается
существование одной пользовательской программы. Одна из стратегий управления памятью – минимизация затрат на реализацию.(например, в каждый момент времени допускается существование 1-ой пользовательской программы.) Характерны для ЭВМ 1-го поколения и начала 2-го. Пользователю выделяется вся ОП, не занятая ядром ОС. Пользовательские программы хранятся в очереди работ во внешней памяти. Управляющая программа (одни из компонентов ОС) и должна определять завершение одной работы и обеспечить загрузку и начало выполнения следующей. Эта программа называется монитор-пакетной обработки.
Недостатки:
невозможно использовать процессор при чтении исходных данных.
не используется часть ОП (все программы одинакового размера невозможно);
иногда отказываются от защиты памяти.
Слайд 4
Размещение в памяти пользовательских программ
Распределение с несколькими непрерывными
разделами. Мультипрограммирование сокращает расходы времени и памяти. Несколько программ
одновременно находятся в ОП. Цель: максимальная загрузка процессора. Раздел = зоне. У разделов существуют границы
Разделы с фиксированными границами. В простом механизме мультипрограммирования количество, размер и размещение разделов фиксировано. Неэффективно используется оперативная память. Низкие затраты на реализацию. Фрагментация памяти – появляются не использованные фрагменты ОП.
Разделы с подвижными границами используют для избавления от фрагментаций. Размеры разделов соответствуют размеру работ. Для этого используется управляющая программа – планировщик памяти.
Подвижные разделы. В процессе выполнения задачи раздел может перемещаться. Из двух небольших формирует один большой раздел – это уплотнение памяти | проблемы при перемещении программ |.
Слайд 5
SWOPPING
Откачка – это запись раздела ОП во внешнюю
память (на магнитный диск). Для продолжения выполнения программы необходима
подкачка – загрузка ранее выгруженной программы с диска в ОП.
SWOPPING позволяет заново распределять память для работы не запуская работу с самого начала. Повторное распределение памяти называется перераспределением.
Перераспределение необходимо в следующих случаях:
Возможность выполнять много малоактивных работ
Освободить память, занятую работой, которая требует вмешательства оператора
Более эффективно использовать другие ресурсы: процессор и др
Освободить память для работы с более высоким приоритетом
Использует программы оверлейной структуры
Недостатки:
защита разделов (адресного пространства) надо защищать не только системные программы, но и другие пользовательские программы;
определение числа и размера разделов.
Слайд 6
Разрывные распределения
Физическая память - часть вычислительной машины, физическое
устройство или среда для хранения данных, используемых в вычислениях,
в течение определённого времени.
Отображение - это такой способ работы с файлами в некоторых операционных системах, при котором всему файлу или некоторой непрерывной части этого файла ставится в соответствие определённый участок памяти (диапазон адресов оперативной памяти). При этом чтение данных из этих адресов фактически приводит к чтению данных из отображенного файла,
Слайд 7
Разрывные распределения
Виртуальная память - технология управления памятью ЭВМ,
разработанная для многозадачных операционных систем. При использовании данной технологии
для каждой программы используются независимые схемы адресации памяти, отображающиеся тем или иным способом на физические адреса в памяти ЭВМ
Виртуальный адрес – адрес внутри виртуальной памяти
Виртуальное адресное пространство – это совокупность виртуальных адресов
Слайд 8
Сегментная организация памяти
Все адресное пространство делится на произвольное
количество сегментов различной длины.
В программе адрес должен состоять из
двух частей:
- номер сегмента
- смещение внутри сегмента
Для каждой задачи строится таблица сегментов. В ЭВМ имеется регистр таблицы сегментов. Регистр содержит начальный адрес таблицы сегментов выполняемой задачи.
Формирование абсолютного адреса: к адресу таблицы сегментов прибавляется номер сегмента, получается адрес описания сегмента. Описание содержит три поля:
признак наличия сегмента в ОП
адрес начала сегмента
длина сегмента
Сегменты задачи могут произвольно располагаться в памяти (не занимают непрерывное пространство).
Слайд 9
Страничная организация памяти
Виртуальная память делится на страницы фиксированной
длины. Соответствия между виртуальными и физическими страницами определяются по
таблице страниц.
В аппаратуре имеется регистр страниц. Виртуальный адрес состоит из двух частей:
- (№) страница
- индекс
Структура таблицы содержит два поля:
- признак наличия страницы в ОП
- номер страницы
Формирование номера записи в таблице страниц: к содержимому регистра прибавляется номер страницы, взятый из виртуального адреса. Если страница отсутствует, следовательно осуществляется ее подкачка и осуществляется формирование физического адреса, индекс складывается со вторым полем (адресом начала страницы).
Например: 2 10 бит – 10 разрядов – смещение. Адрес: 22 старших разряда.
Слайд 10
Сегментно-страничная организация памяти
Используется из-за проблемы неполных страниц
Заданный
пользователем адрес состоит из 3 компонентов и физический адрес
формируется в 3 этапа! Содержит достоинства и сегментной, и страничной организации за счет лишнего обращения к памяти.
Смещение в сегменте рассматривается как страница и индекс в странице.
Виртуальный адрес состоит из трех компонентов:
сегмент;
страница;
смещение.
Обращение к памяти происходит в 3 цикла:
таблица сегментов;
таблица страниц;
к странице – к конкретному адресу внутри страницы.
Слайд 11
Функции ОС при управлении памятью
- управление свободной памятью.
ОС должно контролировать свободную память.
- уплотнение памяти
Слайд 12
Управление свободной памятью
Необходимо ОС иметь информацию о свободной
памяти и распределять свободную память по запросу других задач.
Это выполняет планировщик памяти.
Для увеличения размера непрерывного раздела памяти используется откачка и подкачка страниц.
Пользователь может не освободить при завершении работы динамически выделенную память, затребованную при выполнении работы. ОС должна сама освобождать эту память.