'

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

Понравилась презентация – покажи это...





Слайд 0

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


Слайд 1

Часть III. Управление памятью Лекция 8. Простейшие схемы управления памятью


Слайд 2

Иерархия памяти Вторичная память Оперативная память Кэш Регистры Стоимость одного бита Время доступа Объем Управляется ОС Управляется менеджером памяти


Слайд 3

Принцип локальности Большинство реальных программ в течение некоторого отрезка времени работает с небольшим набором адресов памяти – это принцип локальности Принцип локальности связан с особенностями человеческого мышления


Слайд 4

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


Слайд 5

Связывание адресов Другие объектные модули Загрузчик Двоичный образ в памяти Системные библиотеки Динамические библиотеки Процессор и БУП Исходная программа Компилятор Объектный модуль Редактор связей Загрузочный модуль Этап компиляции Этап загрузки Этап выполнения


Слайд 6

Логическое адресное пространство Символьное адресное пространство – совокупность всех допустимых идентификаторов переменных Логическое адресное пространство – совокупность всех допустимых адресов, с которыми работает процессор Физическое адресное пространство – совокупность всех доступных физических адресов в вычислительной системе


Слайд 7

Функции ОС и hardware для управления памятью Отображение логического адресного пространства процесса на физическое адресное пространство Распределение памяти между конкурирующими процессами Контроль доступа к адресным пространствам процессов Выгрузка процессов (целиком или частично) во внешнюю память Учет свободной и занятой памяти


Слайд 8

Однопрограммная вычислительная система ОС ОС 0 Процесс пользователя Процесс пользователя


Слайд 9

Схема с фиксированными разделами ОС 0 Раздел 1 Раздел 2 Раздел 3 Задание 1 Задание 2 Задание 3 Задание 4 Очередь заданий Очереди заданий Процесс 1 Процесс 2 Процесс 3


Слайд 10

Внутренняя фрагментация ОС 0 Раздел 1 Раздел 2 Раздел 3 Процесс 1 Процесс 2 Процесс 3 Внутренняя фрагментация – «потеря» части памяти, выделенной процессу, но не используемой им


Слайд 11

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


Слайд 12

Схема с динамическими разделами ОС 0 200 1000 Очередь заданий 1 2 3 4 5 200 300 250 10 5 20 250 70 8 15 P1 время 10 400 P2 время 5 700 P3 время 20 950 P4 время 8 650 P1 время 5 P3 время 16 P3 время 11 P4 время 4 P5 270


Слайд 13

Схема с динамическими разделами Стратегии размещения нового процесса в памяти Первый подходящий (first-fit). Процесс размещается в первое подходящее по размеру пустое место Наиболее подходящий (best-fit). Процесс размещается в наименьшее подходящее по размеру пустое место Наименее подходящий (worst-fit). Процесс размещается в наибольшее пустое место


Слайд 14

Схема с динамическими разделами ОС 0 200 1000 Очередь заданий 5 70 15 P1 время 5 400 700 P3 время 16 950 P4 время 8 650


Слайд 15

Схема с динамическими разделами ОС 0 200 1000 P1 время 5 400 700 P3 время 15 950 P4 время 8 650 Внешняя фрагментация – невозможность использования памяти, неиспользуемой процессами, из-за ее раздробленности Возможна и внутренняя фрагментация при почти полном заполнении процессом пустого фрагмента


Слайд 16

Схема с динамическими разделами ОС 0 200 1000 400 700 950 P4 650 P5 270 520 770 P3 Сборка мусора CPU Сегментный регистр + Память Логический адрес Физический адрес MMU – БУП


Слайд 17

Линейное непрерывное отображение Логическое адресное пространство Физическое адресное пространство 0 100 N N+100


Слайд 18

Линейное кусочно-непрерывное отображение Логическое адресное пространство Физическое адресное пространство Page 0 Page 1 Page 2 Page 3 Page 4 Кадр 0 Кадр 1 Кадр 2 Кадр 3 Кадр 4 Кадр 5 Кадр 6 Кадр 7 Кадр 8 Логический адрес = Npage*size + offset (Npage, offset) Физический адрес = Nframe*size + offset (Nfrаme, offset) Страничная организация памяти 0 1 2 3 4 Таблица страниц 3 4 6 7 1 Npage -> Nframe Серый цвет – занятое место Свойственна внутренняя фрагментация


Слайд 19

Линейное кусочно-непрерывное отображение Страничная организация памяти CPU Логический адрес offset page Таблица страниц кадр Память Физический адрес offset кадр MMU атрибуты


Слайд 20

Линейное кусочно-непрерывное отображение Логическое адресное пространство Физическое адресное пространство Логический адрес – двумерный = (Nseg, offset) Физический адрес линейный = физический адрес начала сегмента + offset Сегментная организация памяти Сегмент 1 Сегмент 2 Сегмент 3 Серый цвет – занятое место 0 0 0 Свойственна внешняя фрагментация


Слайд 21

Линейное кусочно-непрерывное отображение Сегментная организация памяти CPU Логический адрес offset Nseg Таблица сегментов Память Физический адрес Максимальный размер сегмента +


Слайд 22

Линейное кусочно-непрерывное отображение Сегментная организация памяти CPU Логический адрес offset Nseg Таблица сегментов Память Физический адрес Максимальный размер сегмента Offset <= размер + ошибка нет да


Слайд 23

Линейное кусочно-непрерывное отображение Сегментно-страничная организация памяти CPU Логический адрес Offset внутри сегмента Nseg Таблица сегментов Память Физический адрес Максимальный размер сегмента Offset у сегмента <= размер нет да Page Offset Размер страницы ошибка кадр Page Offset Таблица страниц Кадр


×

HTML:





Ссылка: