Что такое findslide.org?

FindSlide.org - это сайт презентаций, докладов, шаблонов в формате PowerPoint.


Для правообладателей

Обратная связь

Email: Нажмите что бы посмотреть 

Яндекс.Метрика

Презентация на тему Управление памятью

Содержание

Виртуальная памятьОсновная идея заключается в разбиении программы на части, и в память эти части загружаются по очереди.Программа при этом общается с виртуальной памятью, а не с физической.
Управление памятью Виртуальная памятьОсновная идея заключается в разбиении программы на части, и в память Страничная организация памятиСтраницы - это части, на которые разбивается пространство виртуальных адресов.Страничные блоки - Страничная организация памятиСтраничное прерывание - происходит, если процесс обратился к странице, которая не Страничная организация памятиПрисутствие/отсутствие - загружена или незагружена в памятьЗащита - виды доступа, Хранение страничной памяти на дискеПосле запуска процесса он занимает определенную память, на Алгоритмы замещения страницИдеальный алгоритм заключается в том, что бы выгружать ту страницу, Алгоритм NRU (Not Recently Used)Используются биты обращения (R-Referenced) и изменения (M-Modified) в АлгоритмыFIFO (первая прибыла – первая выгружена)Алгоритм «вторая попытка»Подобен FIFO, но если R=1, Алгоритм «Часы»Чтобы избежать перемещения страниц по списку, можно использовать указатель, который перемещается по списку. Алгоритм LRU (Least Recently Used)Поддерживать список, в котором выстраивать страницы по количеству LRUОбращения к страницам: 0 1 2 3 2 1 0 3 2 3 Алгоритм «рабочий набор»Замещение страниц по запросу - когда страницы загружаются по требованию, а Алгоритм WSClockИспользуются битов R и M, а также время последнего использования.
Слайды презентации

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

Виртуальная памятьОсновная идея заключается в разбиении программы на части, и в

части, и в память эти части загружаются по очереди.
Программа

при этом общается с виртуальной памятью, а не с физической.


Слайд 3 Страничная организация памяти
Страницы - это части, на которые разбивается

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

пространство виртуальных адресов.
Страничные блоки - единицы физической памяти.
Страницы всегда имеют

фиксированный размер. Передача данных между ОЗУ и диском всегда происходит в страницах.

Х - обозначает не отображаемую страницу в физической памяти.


Слайд 4 Страничная организация памяти
Страничное прерывание - происходит, если процесс обратился

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

к странице, которая не загружена в ОЗУ (т.е. Х).

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


Слайд 5 Страничная организация памяти
Присутствие/отсутствие - загружена или незагружена в

Страничная организация памятиПрисутствие/отсутствие - загружена или незагружена в памятьЗащита - виды

память
Защита - виды доступа, например, чтение/запись.
Изменение - изменилась ли

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


Слайд 6 Хранение страничной памяти на диске
После запуска процесса он

Хранение страничной памяти на дискеПосле запуска процесса он занимает определенную память,

занимает определенную память, на диске сразу ему выделяется такое

же пространство. Поэтому файл подкачки должен быть не меньше памяти. А в случае нехватки памяти даже больше. Как только процесс завершится, он освободит память и место на диске.
На диске всегда есть дубликат страницы, которая находится в памяти.
Этот механизм наиболее простой.

Слайд 7 Алгоритмы замещения страниц
Идеальный алгоритм заключается в том, что

Алгоритмы замещения страницИдеальный алгоритм заключается в том, что бы выгружать ту

бы выгружать ту страницу, которая будет запрошена позже всех.

Этот алгоритм не осуществим, т.к. нельзя знать какую страницу, когда запросят. Можно лишь набрать статистику использования.


Слайд 8 Алгоритм NRU (Not Recently Used)
Используются биты обращения (R-Referenced)

Алгоритм NRU (Not Recently Used)Используются биты обращения (R-Referenced) и изменения (M-Modified)

и изменения (M-Modified) в таблице страниц.
При обращении бит R

выставляется в 1, через некоторое время ОС не переведет его в 0.
M переводится в 0, только после записи на диск.
Благодаря этим битам можно получить 4-ре класса страниц:
не было обращений и изменений (R=0, M=0)
не было обращений, было изменение (R=0, M=1)
было обращение, не было изменений (R=1, M=0)
было обращений и изменений (R=1, M=1)

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


Слайд 9 Алгоритмы
FIFO (первая прибыла – первая выгружена)
Алгоритм «вторая попытка»
Подобен

АлгоритмыFIFO (первая прибыла – первая выгружена)Алгоритм «вторая попытка»Подобен FIFO, но если

FIFO, но если R=1, то страница переводится в конец

очереди, если R=0, то страница выгружается. Часто используемая страница никогда не покинет память, но приходится часто перемещать страницы по списку.



Слайд 10 Алгоритм «Часы»
Чтобы избежать перемещения страниц по списку, можно

Алгоритм «Часы»Чтобы избежать перемещения страниц по списку, можно использовать указатель, который перемещается по списку.

использовать указатель, который перемещается по списку.


Слайд 11 Алгоритм LRU (Least Recently Used)
Поддерживать список, в котором

Алгоритм LRU (Least Recently Used)Поддерживать список, в котором выстраивать страницы по

выстраивать страницы по количеству использования. Эта реализация очень дорога.
В

таблице страниц добавляется запись - счетчик обращений к странице. Чем меньше значение счетчика, тем реже она использовалась.
Машина с n страничными блоками. n X n – матрица. При обращении к блоку k, аппаратура сначала присваивает всем битам строки k значение 1, затем всем биты столбца k присваивает 0.
В любой момент времени строка, двоичное значение которой наименьшее, является не использовавшейся дольше всего.

Слайд 12 LRU
Обращения к страницам: 0 1 2 3 2

LRUОбращения к страницам: 0 1 2 3 2 1 0 3 2 3

1 0 3 2 3


Слайд 13 Алгоритм «рабочий набор»
Замещение страниц по запросу - когда страницы

Алгоритм «рабочий набор»Замещение страниц по запросу - когда страницы загружаются по требованию,

загружаются по требованию, а не заранее, т.е. процесс прерывается

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







Т.е. рабочий набор выходит в насыщение, значение w(k,t) в режиме насыщения может служить для рабочего набора, который необходимо загружать до запуска процесса.
Алгоритм заключается в том, чтобы определить рабочий набор, найти и выгрузить страницу, которая не входит в рабочий набор.
Этот алгоритм можно реализовать, записывая, при каждом обращении к памяти, номер страницы в специальный сдвигающийся регистр, затем удалялись бы дублирующие страницы. Но это дорого.
В принципе можно использовать множество страниц, к которым обращался процесс за последние t секунд.
Текущее виртуальное время (Tv) - время работы процессора, которое реально использовал процесс.
Время последнего использования (Told) - текущее время при R=1, т.е. все страницы проверяются на R=1, и если да то текущее время записывается в это поле.
Теперь можно вычислить возраст страницы (не обновления) Tv-Told, и сравнить с t, если больше, то страница не входит в рабочий набор, и страницу можно выгружать.
Получается три варианта:
если R=1, то текущее время запоминается в поле время последнего использования
если R=0 и возраст > t, то страница удаляется
если R=0 и возраст =< t, то эта страница входит в рабочий набор


  • Имя файла: upravlenie-pamyatyu.pptx
  • Количество просмотров: 104
  • Количество скачиваний: 0