1 / 24

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

Основы операционных систем. Часть III. Управление памятью. Лекция 8. Простейшие схемы управления памятью. Иерархия памяти. Регистры. Стоимость одного бита. Время доступа. Объем. Кэш. Оперативная память. Управляется менеджером памяти. Вторичная память. Управляется ОС.

ciqala
Download Presentation

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

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

More Related