Управление
<<  Управление памятью Управление инновациями  >>
Однозадачная система без подкачки на диск
Однозадачная система без подкачки на диск
Многозадачность с фиксированными разделами (2)
Многозадачность с фиксированными разделами (2)
Моделирование многозадачности
Моделирование многозадачности
Анализ производительности многозадачных систем
Анализ производительности многозадачных систем
Подкачка (2)
Подкачка (2)
Подкачка (2)
Подкачка (2)
Подкачка (5)
Подкачка (5)
Управление памятью с помощью битовых массивов
Управление памятью с помощью битовых массивов
Управление памятью с помощью связных списков
Управление памятью с помощью связных списков
Управление памятью с помощью связных списков
Управление памятью с помощью связных списков
Страничная организация памяти (2)
Страничная организация памяти (2)
Страничная организация памяти (5)
Страничная организация памяти (5)
Таблица страниц
Таблица страниц
Многоуровневые таблицы страниц
Многоуровневые таблицы страниц
Структура элемента таблицы страниц
Структура элемента таблицы страниц
Буферы быстрого преобразования адреса (TLB) (2)
Буферы быстрого преобразования адреса (TLB) (2)
Инвертированные таблицы страниц
Инвертированные таблицы страниц
Алгоритмы замещения страниц (3)
Алгоритмы замещения страниц (3)
Сегментация
Сегментация
Сравнения страничной и сегментной организации памяти
Сравнения страничной и сегментной организации памяти
Реализация
Реализация
Селектор в системе Pentium
Селектор в системе Pentium
Дескриптор программного сегмента в системе Pentium
Дескриптор программного сегмента в системе Pentium
Преобразование пары (селектор, смещение) в физический адрес
Преобразование пары (селектор, смещение) в физический адрес
Отображение линейного адреса на физический адрес
Отображение линейного адреса на физический адрес
Защита в системе Pentium
Защита в системе Pentium
Картинки из презентации «Управление памятью» к уроку экономики на тему «Управление»

Автор: student. Чтобы познакомиться с картинкой полного размера, нажмите на её эскиз. Чтобы можно было использовать все картинки для урока экономики, скачайте бесплатно презентацию «Управление памятью.ppt» со всеми картинками в zip-архиве размером 344 КБ.

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

содержание презентации «Управление памятью.ppt»
Сл Текст Сл Текст
1Управление памятью. Системное и 40для чтения или записи слово в физической
прикладное программное обеспечение. памяти с тем же самым адресом. Когда
Малышенко Владислав Викторович. 1. используется виртуальная память,
2Модуль управления памятью. Часть виртуальные адреса не передаются напрямую
операционной системы, отвечающая за шиной памяти. Вместо этого они передаются
управление памятью, называется модулем диспетчеру памяти (MMU - Memory Management
управления памятью или менеджером памяти. Unit), который отображает виртуальные
Он следит за тем, какая часть памяти адреса на физические адреса памяти. 40.
используется в данный момент, а какая ? 41Страничная организация памяти (4).
свободна; при необходимости выделяет Рассмотрим компьютер, который может
память процессам и по их завершении формировать 16-разрядные адреса, от 0 до
освобождает ресурсы; управляет обменом 64 К. Это виртуальные адреса. Однако у
данных между оперативной памятью и диском, этого компьютера только 32 Кбайт
если память слишком мала для того, чтобы физической памяти, поэтому, хотя программы
вместить все процессы. 2. размером 64 Кбайт могут быть написаны, они
3Основное управление памятью. Системы не могут целиком быть загружены в память и
управления памятью можно разделить на два запущены. Полная копия образа памяти
класса: Перемещающие процессы между программы размером до 64 Кбайт должна
оперативной памятью и диском во время их присутствовать на диске, но в таком виде,
выполнения (то есть осуществляющие чтобы ее можно было по мере надобности
подкачку процессов целиком (swapping) или переносить в память по частям.
использующие страничную подкачку Пространство виртуальных адресов разделено
(paging)); Не перемещающие процессы между на единицы, называемые страницами.
оперативной памятью и диском во время их Соответствующие единицы в физической
выполнения. 3. памяти называются страничными блоками
4Основное управление памятью. Второй (page frame). Страницы и их блоки имеют
вариант проще. Следует помнить, что всегда одинаковый размер. В этом примере
обычный и постраничный варианты подкачки в они равны 4 Кбайт, но в реальных системах
значительной степени являются использовались размеры страниц от 512 байт
искусственными процессами, вызванными до 64 Кбайт. Передача данных между ОЗУ и
отсутствием достаточного количества диском всегда происходит в страницах. 41.
оперативной памяти для одновременного 42Страничная организация памяти (5). 42.
хранения всех программ. Если же 43Страничная организация памяти (6).
когда-нибудь оперативная память настолько Сама по себе возможность отображения 16
увеличится в размерах, что ее будет виртуальных страниц на любой из восьми
достаточно, аргументы в пользу той или страничных блоков с помощью установки
иной схемы управления памятью могут стать соответствующей карты в диспетчере памяти
устаревшими. 4. не решает проблемы, заключающейся в том,
5Основное управление памятью. что размер виртуального адресного
Программное обеспечение растет еще пространства больше физической памяти. Так
быстрее, чем память; поэтому вполне как у нас есть только восемь физических
возможно, что потребность в рациональном и страничных блоков, только восемь
эффективном управлении памятью будет виртуальных страниц воспроизводятся в
существовать всегда. В 80-е годы многие физической памяти. Другие страницы не
университеты использовали системы отображаются. В фактическом аппаратном
разделения времени для работы десятков обеспечении страницы, физически
(более-менее довольных) пользователей на присутствующие в памяти, отслеживаются с
машинах VAX с объемом памяти 4 Мбайт. помощью бита присутствия/отсутствия. 43.
Сейчас компания Microsoft рекомендует для 44Страничная организация памяти (7). Что
индивидуальной работы в системе Windows происходит, если программа пытается
2000 устанавливать на компьютер, по воспользоваться неотображаемой страницей,
меньшей мере, 64 Мбайт оперативной памяти. например, с помощью инструкции MOV
Дальнейшее развитие в сторону REG.32780 которая обращается к байту 12 на
мультимедийных систем накладывает еще виртуальной странице 8 (начинающейся с
большие требования на память. Таким адреса 32768)? Диспетчер памяти замечает,
образом, весьма вероятно, что качество что страница не отображается, и инициирует
управления этой частью компьютера будет прерывание центрального процессора,
актуальным по крайней мере в течение передающее управление операционной
следующего десятилетия. 5. системе. Такое прерывание называется
6Однозадачная система без подкачки на ошибкой из-за отсутствия страницы или
диск. Самая простая из возможных схем страничным прерыванием (page fault).
управления памятью заключается в том, что Операционная система выбирает
в каждый конкретный момент времени малоиспользуемый страничный блок и
работает только одна программа, при этом записывает его содержимое на диск. Затем
память разделяется между программами и она считывает с диска страницу, на которую
операционной системой. Три варианта такой произошла ссылка, в только что
схемы: Операционная система может освободившийся блок, изменяет карту
находиться в нижней части памяти, то есть отображения и запускает заново прерванную
в ОЗУ (оперативное запоминающее команду. 44.
устройство, RAM (Random Access Memory - 45Таблица страниц. 45.
память с произвольным доступом)) ; 46Таблица страниц (2). Виртуальный адрес
Операционная система может располагаться в делится на номер виртуальной страницы
самой верхней части памяти - в ПЗУ (старшие биты) и сдвиг (младшие биты).
(постоянное запоминающее устройство, ROM Например, при 16-разрядных адресах и
(Read-Only Memory - память только для размере страницы 4 Кбайт старшие 4 бита
чтения)); Третий способ: драйверы могут указывать одну из 16 виртуальных
устройств могут находиться наверху в ПЗУ, страниц, а нижние 12 бит могут определять
а остальная часть системы - в ОЗУ, байт смещения (от 0 до 4095) внутри
расположенной ниже. 6. выбранной страницы. Однако разбиение
7Однозадачная система без подкачки на страницы на 3,5 или какое-нибудь другое
диск. 7. число битов также возможно. Разные части
8Однозадачная система без подкачки на подразумевают различные размеры страниц.
диск. Первая модель раньше применялась на Номер виртуальной страницы используется
мэйнфреймах и мини-компьютерах, но в как индекс в таблице страниц для поиска
настоящее время практически не записи этой страницы. По записи в таблице
употребляется. Вторая схема сейчас страниц находится номер физического блока
используется на некоторых карманных страницы (если это имеет место). Данный
компьютерах и встроенных системах. Третья номер присоединяется к старшим разрядам
модель устанавливалась на ранних числа смещения, замещая номер виртуальной
персональных компьютерах (например, страницы и тем самым формируя физический
работающих с MS-DOS), при этом часть адрес, который может быть послан в память.
системы в ПЗУ носила название BIOS (Basic 46.
Input Output System - базовая система 47Таблица страниц (3). Несмотря на столь
ввода-вывода). Когда система организована простое описание, существует две важные
таким образом, в каждый конкретный момент проблемы, которые необходимо решить:
времени может работать только один Таблица страниц может быть слишком
процесс. Как только пользователь набирает большой; Отображение должно быть быстрым.
команду, операционная система копирует 47.
запрашиваемую программу с диска в память и 48Таблица страниц (4). Первый пункт
выполняет ее, а после окончания процесса следует из того факта, что современные
выводит на экран символ приглашения и ждет компьютеры используют по крайней мере
новой команды. Получив команду, она 32-разрядные виртуальные адреса. При
загружает новую программу в память, размере страницы, скажем, 4 Кбайт,
записывая ее поверх предыдущей. 8. 32-разрядное адресное пространство будет
9Многозадачность с фиксированными состоять из одного миллиона страниц. При
разделами. Однозадачные системы сложно одном миллионе страниц в виртуальном
использовать где-либо еще, кроме адресном пространстве таблица страниц
простейших встроенных систем. Большинство должна состоять из одного миллиона
современных систем позволяет одновременный записей. Второй пункт - это вывод из того
запуск нескольких процессов. факта, что преобразование виртуальных
Многозадачность увеличивает загрузку адресов в физические должно быть выполнено
процессора. Самый легкий способ достижения для каждого обращения к ячейке памяти.
многозадачности представляет собой простое Типичная команда процессора включает в
разделение памяти на n разделов. Такое себя слово-команду и часто также операнд
разбиение можно выполнить, например, памяти. В результате необходимо сделать
вручную при запуске системы. Когда задание 1,2 или иногда больше обращений к таблице
поступает в память, его можно расположить страниц за команду. 48.
во входной очереди к наименьшему разделу, 49Таблица страниц (5). Потребность в
достаточно большому для того, чтобы огромном, но при этом быстром страничном
вместить это задание. Так как в данной отображении накладывает существенные
схеме размер разделов неизменен, все ограничения на способы построения
пространство в разделе, не используемое компьютеров. Хотя проблема наиболее
работающим процессом, пропадает. серьезно встает для старших моделей
Недостаток сортировки входящих работ по семейства, она также появляется и для
отдельным очередям становится очевидным, младших моделей, когда стоимость и
когда к большому разделу нет очереди, в то соотношение цена/производительность имеют
время как к маленькому выстроилось критическое значение. Простейшее
довольно много задач. 9. конструкторское решение заключается в
10Многозадачность с фиксированными поддержании таблицы страниц, состоящей из
разделами (2). 10. массива быстрых аппаратных регистров с
11Моделирование многозадачности. При одной записью для каждой виртуальной
использовании многозадачности повышается страницы, индексированного по номерам
эффективность загрузки центрального виртуальных страниц. Недостатком является
процессора. Грубо говоря, если средний его потенциально высокая стоимость.
процесс выполняет вычисления только 20 % Необходимость загрузки полной таблицы в
от того времени, которое он находится в регистры при каждом контекстном
памяти, то при присутствии в памяти переключении наносит ущерб
одновременно пяти процессов центральный производительности. Другая крайность
процессор должен быть занят все время. заключается в том, что таблица страниц
Более совершенная модель рассматривает целиком располагается в оперативной
эксплуатацию центрального процессора с памяти. Тогда все необходимое оборудование
точки зрения теории вероятности. состоит из одного-единственного регистра,
Предположим, что процесс проводит часть р указывающего на начало таблицы страниц.
своего времени в ожидании завершения Такая схема позволяет изменять карту
операции ввода-вывода. Если в памяти памяти при контекстном переключении путем
находится одновременно n процессов, перезагрузки только одного регистра. 49.
вероятность того, что все n процессов ждут 50Многоуровневые таблицы страниц. 50.
ввод-вывод, равна рn. Тогда степень 51Многоуровневые таблицы страниц (2).
загрузки центрального процессора будет Чтобы обойти проблему необходимости
выражаться формулой: Степень загрузки постоянного хранения в памяти огромных
центрального процессора = 1 - рn. 11. таблиц страниц, многие компьютеры
12Моделирование многозадачности. 12. используют многоуровневую таблицу страниц.
13Моделирование многозадачности Простой пример представлен 32-разрядный
(пример). Предположим, что компьютер имеет виртуальный адрес, который разделен на
32 Мбайт памяти, 16 Мбайт отдано 10-разрядное поле РТ1, 10-разрядное поле
операционной системе, а каждая программа РТ2 и 12-разрядное поле Offset (смещение).
пользователя занимает по 4 Мбайт. При Так как под смещение отведено 12 бит,
таких заданных размерах одновременно можно страницы имеют размер 4 Кбайт, и их всего
загрузить в память четыре пользовательские 220. Секрет метода многоуровневой таблицы
программы. При 80 % времени на ожидание страниц заключается в том, чтобы избегать
ввода-вывода в среднем мы получим постоянного содержания в памяти всех
загруженность процессора равной 1-0,84, таблиц страниц. В частности, те части,
или около 60 %. Добавление еще 16 Мбайт которые не нужны в данный момент, не
памяти позволит системе повысить степень должны храниться в памяти. Предположим,
многозадачности от четырех до восьми и например, что процессу нужно 12 Мбайт,
таким образом повысить степень загрузки младшие 4 Мбайт памяти для текста
процессора до 83 %. Другими словами, программы, следующие 4 Мбайт для данных и
дополнительные 16 Мбайт увеличат старшие 4 Мбайт для стека. Между верхом
производительность на 38 %. Еще 16 Мбайт данных и низом стека образуется гигантский
могли бы повысить загрузку процессора с 83 свободный участок, который не
до 93 %, таким образом, увеличив используется. 51.
производительность всего лишь на 12 %. С 52Структура элемента таблицы страниц.
помощью этой модели владелец компьютера Номер страничного блока Бит присутствия
может решить, что первые 16 Мбайт Бит изменения Бит Обращения Бит блокировки
оперативной это хорошее вложение капитала, КЭШа. 52.
а вторые - нет. 13. 53Структура элемента таблицы страниц
14Анализ производительности (2). Наиболее важным полем является Номер
многозадачных систем. 14. страничного блока. Прежде всего, задачей
15Анализ производительности отображения страниц является определение
многозадачных систем (2). Описанную выше этой величины. За этим полем следует бит
модель также можно применить для анализа Присутствия/отсутствия. Если этот бит
систем пакетной обработки. Например, равен 1, запись имеет силу и может
рассмотрим компьютерный центр, в котором использоваться. Если он равен 0,
среднее время ожидания ввода-вывода виртуальная страница, которой
задачами равно 80 %. Однажды утром соответствует эта запись, в данный момент
подаются на выполнение 4 задания. Первая отсутствует в памяти. Обращение к записи в
задача, поступившая в 10 утра, требует 4 таблице страниц, у которой этому биту
мин работы процессора. Тогда при 80 % присвоено нулевое значение, приводит к
времени ожидания ввода-вывода за каждую страничному прерыванию. 53.
минуту своего нахождения в памяти задача 54Структура элемента таблицы страниц
использует только 12с времени процессора, (2). Биты Защиты говорят о том, какие
даже если нет никаких других параллельных разрешены виды доступа к этой странице. В
заданий, также желающих занять процессор. простейшей форме это поле содержит один
Остальные 48с процесс проводит в ожидании бит, равный 1 для чтения/записи и равный 0
ввода-вывода. Таким образом, задача должна только для чтения. Биты Изменения и
находиться в памяти по крайней мере 20 мин Обращения отслеживают использование
для того, чтобы процессор сделал работу, страницы. Когда страница записывается,
требующую на самом деле всего 4 мин, и это аппаратура автоматически устанавливает бит
все при отсутствии конкуренции на право Изменение.. Этот бит учитывается, когда
использования процессора. 15. операционная система решает освободить
16Анализ производительности страничный блок. Если страница в нем была
многозадачных систем (3). Что же изменена (то есть она «грязная»), то ее
происходит дальше? С 10:00 до 10:10 утра в новая версия должна быть переписана на
памяти находится целиком первая задача и диск. Если она не была модифицирована (то
выполняется половина работы (10 мин работы есть страница «чистая»), ее можно просто
процессора). Когда в 10:10 поступает удалить из памяти, так как все еще
второе задание, загрузка процессора действительна копия на диске. Этот бит
увеличивается с 0,20 до 0,36 вследствие иногда называют грязным битом, так как он
более высокой степени многозадачности. отражает состояние страницы. 54.
Однако при циклическом планировании каждое 55Структура элемента таблицы страниц
задание получает для себя половину времени (2). Бит Обращения устанавливается всякий
процессора, поэтому за каждую минуту раз, когда происходит обращение к странице
нахождения в памяти выполняется часть для чтения или записи. Его значение
задачи, требующая 0,18 мин работы помогает операционной системе при выборе
процессора. Заметим, что добавление второй страницы для удаления из памяти, когда
задачи обходится первой задаче всего в 10 случается ошибка из-за отсутствия
% ее производительности. Время страницы. Последний бит позволяет
использования процессора за минуту запретить кэширование страницы. Это
реального времени уменьшилось с 0,20 мин свойство важно для страниц, отображающихся
до 0,18 мин. В 10:15 утра поступает третье не на память, а на регистры устройств.
задание. В этот момент для первой задачи Если операционная система находится в
процессор отработал 2,9 мин, для второй - цикле ожидания ответа от некоторого
0,9 мин. Степень многозадачности теперь устройства ввода-вывода, которому была
равна 3, каждое задание получает для себя только что дана команда, существенно,
0,16 мин работы процессора за минуту чтобы аппаратура продолжала получать слово
реального времени. Тогда с 10:15 до 10:20 из устройства. 55.
утра для каждого из трех заданий процессор 56Буферы быстрого преобразования адреса
работает по 0,8 мин. В 10:20 утра (TLB). Небольшое аппаратное устройство,
поступает четвертая задача. 16. служащие для отображения виртуальных
17Настройка адресов и защита. адресов в физические без прохода по
Многозадачность вносит две существенные таблице страниц. Это устройство,
проблемы, требующие решения, - это называемое буфером быстрого преобразования
настройка адресов для перемещения адреса (TLB - Translation Lookaside
программы в памяти и защита. Разные задачи Buffer) или иногда ассоциативной памятью.
запущены по различным адресам. Когда Оно обычно находится внутри диспетчера
программа компонуется компоновщик должен памяти и состоит из нескольких записей. В
знать, с какого адреса будет начинаться этом примере их восемь, но фактически
программа в памяти. Например, предположим, записей редко бывает больше 64. Каждая
что первая команда представляет собой запись содержит информацию об одной
вызов процедуры с абсолютным адресом 100 странице, а именно: номер виртуальной
внутри двоичного файла, создаваемого страницы, бит, устанавливаемый при
компоновщиком. Если эта программа изменении страницы, код защиты и номер
загружается в раздел 1 (по адресу 100 К), физического страничного блока. 56.
команда обратится к абсолютному адресу 57Буферы быстрого преобразования адреса
100, который находится внутри операционной (TLB) (2). 57.
системы. Эта проблема известна как 58Программное управление буфером TLB.
проблема перемещения программ в памяти или Многие современные RISC-компьютеры,
настройки адресов. Одним из возможных включая машины SPARC, MIPS, Alpha и HP PA,
решений является модификация команд во выполняют почти все страничное управление
время загрузки программы в память. 17. программно. На этих машинах записи буферы
18Настройка адресов и защита (2). TLB явно загружаются операционной
Настройка адресов во время загрузки не системой. Когда происходит неудачный поиск
решает проблемы защиты. Вредоносные в буфере TLB, диспетчер памяти вместо
программы всегда могут создать новую того, чтобы переходить к таблице страниц
команду и перескочить на нее. Поскольку для поиска и выбора необходимой страницы,
при такой системе программы предпочитают формирует ошибку буфера TLB и передает
использовать абсолютную адресацию памяти, проблему в руки операционной системы.
а не адреса относительно какого-либо Система должна найти страницу, удалить
регистра, не существует способа, который запись из буфера TLB, ввести новую запись
позволил бы запретить программе построение и перезапустить прерванную инструкцию.
команды, обращающейся к любому слову в Если буфер TLB имеет небольшой размер
памяти для его чтения или записи. В (скажем, 64 записи) для понижения частоты
многопользовательских системах крайне неудачных пропусков, программное
нежелательно разрешать процессам чтение управление буфером, оказывается, является
или запись в область памяти, принадлежащую приемлемо результативным. Главная выгода
другим пользователям. 18. здесь заключается в намного более простом
19Настройка адресов и защита (3). устройстве диспетчера памяти. 58.
Альтернативное решение сразу обеих проблем 59Инвертированные таблицы страниц. 59.
(защиты и перераспределения) заключается в 60Инвертированные таблицы страниц (2).
оснащении машины двумя специальными Традиционные таблицы страниц, тип которых
аппаратными регистрами, называемыми мы описывали до сих пор, требуют по одной
базовым и предельным регистрами. При записи на каждую виртуальную страницу.
планировании процесса в базовый регистр Если адресное пространство состоит из 232
загружается адрес начала раздела памяти, а байт с размером страницы 4096 байт, тогда
в предельный регистр помещается длина в таблице страниц должно быть больше
раздела. К каждому автоматически миллиона записей. При этом таблица страниц
формируемому адресу перед его передачей в будет занимать минимум 4 Мбайт. Однако
память прибавляется содержимое базового поскольку 64-разрядные компьютеры
регистра. Базовый и предельный регистры встречаются все чаще, ситуация радикально
защищаются аппаратно, чтобы не допустить меняется. Если теперь адресное
их изменений пользовательскими пространство увеличилось до 252 байт с
программами. Неудобство этой схемы размером страницы 4 Кбайт, нам требуется
заключается в том, что требуется выполнять таблица страниц с 252 записями. Если
операции сложения и сравнения при каждом каждая запись равна 8 байтам, таблица
обращении к памяти. Операция сравнения займет больше 30 Тбайт. Выделение 30 Тбайт
может быть выполнена быстро, но сложение - только для таблицы страниц нереально
это медленная операция. 19. сейчас и не будет реальным когда-либо в
20Подкачка. Организация памяти в виде будущем. Следовательно, для 64-разрядного
фиксированных разделов проста и эффективна страничного виртуального пространства
для работы с пакетными системами. Каждое необходимо другое решение. 60.
задание загружается в раздел памяти и 61Инвертированные таблицы страниц (2,5).
остается там до своего завершения. До тех Одним из таких решений является
пор пока в памяти может храниться инвертированная таблица страниц. В этой
достаточное количество задач нет причин модели таблица содержит по одной записи на
что-либо усложнять. Но совершенно другая страничный блок в реальной памяти, а не на
ситуация сложилась с системами разделения страницу в виртуальном адресном
времени или персональными компьютерами, пространстве. Например, при 64-разрядных
ориентированными на работу с графикой. виртуальных адресах, размере страниц 4
Существуют два основных подхода к Кбайт и 256 Мбайт оперативной памяти
управлению памятью, зависящие (отчасти) от инвертированная таблица страниц потребует
доступного аппаратного обеспечения. Самая всего лишь 65 536 записей. Каждая запись
простая стратегия, называемая свопингом отслеживает, что (процесс, виртуальная
(swapping) или обычной подкачкой, страница) расположено в данном страничном
заключается в том, что каждый процесс блоке. 61.
полностью переносится в память, работает 62Инвертированные таблицы страниц (3).
некоторое время и затем целиком Хотя инвертированные таблицы страниц
возвращается на диск. Другая стратегия, экономят значительное количество места, по
носящая название виртуальной памяти, крайней мере, когда виртуальное адресное
позволяет программам работать даже тогда, пространство намного больше, чем
когда они только частично находятся в физическая память, они имеют серьезный
оперативной памяти. 20. недостаток: перевод виртуального адреса в
21Подкачка (2). 21. физический становится намного сложнее.
22Подкачка (3). Работа системы свопинга. Когда процесс n обращается к виртуальной
На начальной стадии в памяти находится странице р, аппаратное обеспечение не
только процесс А. Затем создаются или может больше найти физическую страницу,
загружаются с диска процессы В и С. используя номер р в качестве индекса в
Процесс А выгружается на диск. Затем таблице страниц. Вместо этого оно должно
появляется процесс D, а процесс В производить поиск записи (n, р) во всей
завершается. Наконец, процесс А снова инвертированной таблице страниц. Более
возвращается в память. Основная разница того, этот поиск должен выполняться при
между фиксированными разделами и каждом обращении к памяти, а не только при
непостоянными разделами заключается в том, страничном прерывании. Операция поиска в
что во втором случае количество, таблице размером 64 К при каждой ссылке к
размещение и размер разделов изменяются памяти вовсе не увеличит скорость вашей
динамически по мере поступления и машины. Выйти из этого затруднительного
завершения процессов. Гибкость схемы, в положения можно, используя буфер быстрого
которой нет ограничений, связанных с преобразования адреса (TLB). Если буфер
определенным количеством разделов, и TLB может содержать все часто используемые
каждый из разделов может быть очень страницы, трансляция адреса будет
большим или совсем маленьким, улучшает происходить так же быстро, как и с
использование памяти, но, кроме того, обычными таблицами страниц. Но при
усложняет операции размещения процессов и неудачном поиске в буфере TLB поиск в
освобождения памяти, а также отслеживание инвертированной таблице страниц должен
происходящих изменений. 22. выполняться программно. Один из возможных
23Подкачка (4). Когда в результате способов усовершенствовать его -
подкачки процессов с диска в памяти поддерживать хэш-таблицу виртуальных
появляется множество неиспользованных адресов. Все виртуальные страницы,
фрагментов, их можно объединить в один находящиеся в данный момент в памяти и
большой участок, передвинув все процессы в имеющие одинаковое значение хэш-функции,
сторону младших адресов настолько, сцепляются друг с другом. Если хэш-таблица
насколько это возможно. Такая операция состоит из такого же количества ячеек,
называется уплотнением или сжатием памяти. сколько в машине физических страниц,
Обычно ее не выполняют, потому что на нее средняя цепочка будет длиной только в одну
уходит много времени работы процессора. запись, что значительно увеличит скорость
Например, на машине с 256 Мбайт отображения адресов. Как только найден
оперативной памяти, которая может номер страничного блока, новая пара
копировать 4 байта за 40 нс, уплотнение (виртуальная, физическая) помещается в
всей памяти займет около 2,7 с. Еще один буфер TLB. Инвертированные таблицы страниц
момент, на который стоит обратить в настоящее время используются на
внимание: сколько памяти должно быть некоторых рабочих станциях компаний IBM и
предоставлено процессу, когда он создается Hewlett-Packard и будут встречаться все
или скачивается с диска? Если процесс чаще, так как 64-разрядные машины получают
имеет фиксированный никогда не все более широкое распространение. 62.
изменяющийся размер, размещение происходит 63Алгоритмы замещения страниц. Когда
просто: операционная система предоставляет происходит страничное прерывание,
точно необходимое количество памяти, ни операционная система должна выбрать
больше, ни меньше, чем нужно. Однако если страницу для удаления из памяти, чтобы
область данных процесса может расти, освободить место для страницы, которую
например, в результате динамического нужно перенести в память. Если удаляемая
распределения памяти из кучи, как страница была изменена за время своего
происходит во многих языках присутствия в памяти, ее необходимо
программирования, проблема предоставления переписать на диск, чтобы обновить копию,
памяти возникает каждый раз, когда процесс хранящуюся там. Однако если страница не
пытается увеличиться. 23. была модифицирована (например, она
24Подкачка (5). 24. содержит текст программы), копия на диске
25Управление памятью. Если память уже является самой новой и ее не надо
выделяется динамически, этим процессом переписывать. Тогда страница, которую
должна управлять операционная система. нужно прочитать, просто считывается поверх
Существует два способа учета использования выгружаемой страницы. Хотя в принципе
памяти: битовые массивы, иногда называемые можно при каждом страничном прерывании
битовыми картами; списки свободных выбирать случайную страницу для удаления
участков. 25. из памяти, производительность системы
26Управление памятью с помощью битовых заметно повышается, когда предпочтение
массивов (2). При работе с битовым отдается редко используемой странице. Если
массивом память разделяется на единичные выгружается страница, обращения к которой
блоки размещения размером от нескольких происходят часто, велика вероятность, что
слов до нескольких килобайт. Размер вскоре опять потребуется ее возврат в
единичного блока представляет собой важный память, что даст в результате
вопрос стадии разработки системы. Чем дополнительные издержки. Теме разработки
меньше единичный блок, тем больше алгоритмов замены страницы было посвящено
потребуется битовый массив. Однако даже много работ, как теоретических, так и
при маленьком единичном блоке, равном экспериментальных. Следует отметить, что
четырем байтам, для 32 битов памяти проблема «страничного обмена» также встает
потребуется 1 бит в карте. Тогда память и в других областях конструирования
размером в 32n будет использовать n битов компьютеров. Например, у большинства
в карте, таким образом, битовая карта компьютеров есть один или несколько кэшей,
займет всего лишь 1/33 часть памяти. состоящих из используемых в последнее
Битовый массив предоставляет простой время 32-байтовых или 64-байтовых блоков
способ отслеживания слов в памяти памяти. Когда кэш заполнен, необходимо
фиксированного объема, потому что размер выбрать некоторые блоки для удаления. Эта
битовой карты зависит только от размеров проблема практически аналогична замещению
памяти и единичного блока. Основная страниц лишь с одной разницей,
проблема, возникающая при этой схеме, заключающейся в меньшем масштабе времени
заключается в том, что при решении (операция должна быть выполнена за
переместить k-блочный процесс в память несколько наносекунд, а не миллисекунд,
модуль управления памяти должен найти в как для замены страниц). Причиной для
битовой карте серию из k следующих друг за более короткого промежутка времени
другом нулевых битов. 26. является то, что неудачный поиск блока в
27Управление памятью с помощью битовых кэше обрабатывается из основной памяти, в
массивов. 27. которой не тратится время на поиск нужного
28Управление памятью с помощью связных цилиндра диска и нет задержки из-за его
списков (2). Другой способ отслеживания вращения. Второй пример встречается на
состояния памяти предоставляет поддержка web-серверах. Сервер может хранить
связных списков занятых и свободных определенное количество часто используемых
фрагментов памяти, где сегментом является web-страниц в своей кэш-памяти. Однако
или процесс, или участок между двумя когда кэш-память заполняется целиком и
процессами. Память, представлена в виде происходит обращение к новой странице,
связного списка сегментов. Каждая запись в должно приниматься решение о том, какую из
списке указывает, является ли область страниц выгружать. Здесь применимы те же
памяти свободной (Н, от hole - дыра) или рассуждения, что и для страниц в
занятой процессом (Р, process); адрес, с виртуальной памяти, с той разницей, что
которого начинается эта область; ее длину; web-страницы никогда не изменяются в кэше,
содержит указатель на следующую запись. поэтому для них всегда есть свежая копия
28. на диске. В системе виртуальной памяти
29Управление памятью с помощью связных страницы в оперативной памяти могут быть
списков. 29. «чистыми» или «грязными». 63.
30Управление памятью с помощью связных 64Алгоритмы замещения страниц (2).
списков (2). корректировка списка требует Оптимальный алгоритм Алгоритм NRU – не
замены Р на Н. в две записи соединяются в использовавшаяся в последнее время
одну, а список становится на запись страница Алгоритм FIFO – первым прибыл –
короче. объединяются три записи, а из первым обслужен Алгоритм «вторая попытка»
списка удаляются два пункта. Такая Алгоритм «часы» Алгоритм LRU – страница,
структура упрощает поиск предыдущей записи не использовавшаяся дольше всего
и оценку возможности соединения. 30. Программное моделирование алгоритма LRU
31Управление памятью с помощью связных Алгоритм «рабочий набор» Алгоритм WSClock.
списков. 31. 64.
32Управление памятью с помощью связных 65Алгоритмы замещения страниц (3). 65.
списков (3). Если процессы и свободные 66Сегментация. 66.
участки хранятся в списке, отсортированном 67Сегментация. Таблицы компилятора.
по адресам, существует несколько Исходный текст. Символьная таблица,
алгоритмов для предоставления памяти содержащая имена и атрибуты переменных.
процессу, создаваемому заново (или для Таблица констант. Дерево грамматического
существующих процессов, скачиваемых с разбора, содержащее синтаксический анализ
диска). Допустим, менеджер памяти знает, программы. Стек, используемый для
сколько памяти нужно предоставить. процедурных вызовов внутри компилятора.
Алгоритмы поиска свободного участка 67.
памяти: «первого подходящего участка» 68Таблицы компилятора. Виртуальное
«следующий подходящий участок» «самый адресное пространство. Стек вызовов.
подходящий участок». 32. Дерево синтаксического анализа. Таблица
33Управление памятью с помощью связных констант. Исходный текст. Таблица
списков (3). Простейший алгоритм кодировки символов. 68.
представляет собой выбор первого 69Сегментация. Определение. Сегменты ?
подходящего участка. Менеджер памяти множество полностью независимых адресных
просматривает список областей до тех пор, пространств, каждый сегмент содержит
пока не находит достаточно большой линейную последовательность адресов от 0
свободный участок. Затем этот участок до некоторого разрешенного максимума.
делится на две части: одна отдается Различные сегменты могут быть различной
процессу, а другая остается длины, длина сегментов может изменяться во
неиспользуемой. Так происходит всегда, время выполнения. Адрес в сегментированной
кроме статистически нереального случая или двумерной памяти, состоит из двух
точного соответствия свободного участка и частей: номер сегмента и адрес внутри
процесса. Это быстрый алгоритм, потому что сегмента. 69.
поиск уменьшен настолько, насколько 70Сегментация. Таблицы компилятора. 70.
возможно. 33. 71Сегментация. Преимущества. Сегмент -
34Управление памятью с помощью связных это логический объект. Сегмент может иметь
списков (3). Алгоритм «следующий в составе процедуру, массив, стек или
подходящий участок» действует с набор скалярных переменных. Каждая
минимальными отличиями от правила «первый процедура занимает отдельный сегмент,
подходящий». Он работает так же, как и компоновка отдельно скомпилированных
первый алгоритм, но всякий раз, когда процедур происходит намного проще. П3. П3.
находит соответствующий свободный П2. П2. Процедура. П1. П1. Стек вызовов.
фрагмент, он запоминает его адрес. И когда Дерево синтаксического анализа. Таблица
алгоритм в следующий раз вызывается для констант. Исходный текст. Таблица
поиска, он стартует с того самого места, кодировки символов. 71.
где остановился в прошлый раз вместо того, 72Сегментация. Совместное использование.
чтобы каждый раз начинать поиск с начала Совместное использование процедур и данных
списка, как это делает алгоритм «первый несколькими процессами. Пример: Библиотека
подходящий». 34. совместного доступа. В сегментированных
35Управление памятью с помощью связных системах графические библиотеки могут
списков (3). Алгоритм называется «самый располагаться в отдельном сегменте и
подходящий участок». Он выполняет поиск по совместно использоваться несколькими
всему списку и выбирает наименьший по процессами. В принципе в системах с чистой
размеру подходящий свободный фрагмент. страничной организацией памяти реализовать
Вместо того чтобы делить большую незанятую это намного сложнее. 72.
область, которая может понадобиться позже, 73Сегментация. Защита. У различных
этот алгоритм пытается найти участок, сегментов могут быть разные виды защиты.
близко подходящий к действительно Сегмент процедуры может быть определен как
необходимым размерам. Пример работы исполняемый. К сегменту чисел можно
алгоритмов «первый подходящий» и «самый разрешить режим доступа чтение/запись.
подходящий». Если необходим блок размером Защита полезна при обнаружении ошибок
2, правило «первый подходящий» предоставит программирования. В сегментированной
область по адресу 5, а схема «самый памяти пользователь осведомлен о том, что
подходящий» разместит процесс в свободном представляет собой каждый сегмент. Так как
фрагменте по адресу 18. 35. каждый сегмент содержит только один тип
36Виртуальная память. Проблема объектов, он может иметь защиту,
размещения программ, оказавшихся слишком соответствующую этому конкретному типу.
большими и поэтому не помещавшихся в 73.
доступной физической памяти. Обычно 74Сравнения страничной и сегментной
принималось решение о разделении программы организации памяти. 74.
на части, называемые оверлеями (overlays). 75Реализация. Отличия. Страницы имеют
Оверлей 0 обычно запускался первым. После фиксированный размер, сегменты не имеют
окончания своего выполнения он вызывал фиксированного размера. 75.
следующий оверлей. Некоторые оверлейные 76Реализация. 76.
системы были очень сложными, позволяющими 77Pentium. Пример реализации. 77.
одновременно находиться в памяти 78Сегментация с использованием страниц:
нескольким оверлеям. 36. Intel Pentium. Виртуальная память на
37Виртуальная память. Разработанный компьютере Pentium использует сегментную и
метод известен как виртуальная память. страничную организацию. Система Pentium
Основная идея виртуальной памяти поддерживает 16К независимых сегментов,
заключается в том, что объединенный размер каждый до 1 млрд 32-разрядных слов. Основа
программы, данных и стека может превысить виртуальной памяти системы Pentium состоит
количество доступной физической памяти. их двух таблиц: локальной таблицы
Операционная система хранит части дескрипторов LDT (Local Descriptor Table);
программы, использующиеся в настоящий глобальной таблицы дескрипторов GDT
момент, в оперативной памяти, остальные - (Global Descriptor Table). 78.
на диске. Например, программа размером 16 79Сегментация с использованием страниц:
Мбайт сможет работать на машине с 4 Мбайт Intel Pentium. У каждой программы есть
памяти, если тщательно продумать, какие 4 своя собственная таблица LDT, глобальная
Мбайт должны храниться в памяти в каждый таблица дескрипторов одна. Таблица LDT
момент времени. При этом части программы, описывает сегменты, локальные для каждой
находящиеся на диске и в памяти, будут программы, включая ее код, данные, стек и
меняться местами по мере необходимости. т.д. Таблица GDT несет информацию о
Виртуальная память может также работать в системных сегментах, включая саму
многозадачной системе при одновременно операционную систему. 79.
находящихся в памяти частях многих 80Доступ к сегменту. Операционная
программ. 37. система Pentium сначала загружает селектор
38Страничная организация памяти. для сегмента в один из шести сегментных
Большинство систем виртуальной памяти регистров машины. регистр CS содержит
используют технику, называемую страничной селектор для сегмента кода команд, регистр
организацией памяти (paging). На любом DS хранит селектор для сегмента данных.
компьютере существует множество адресов в Каждый селектор представляет собой
памяти, к которым может обратиться 16-разрядный номер. Один из битов
программа. Когда программа использует селектора несет информацию о том, является
следующую инструкцию MOV REG.1000 она ли данный сегмент локальным или
делает это для того, чтобы скопировать глобальным. Тринадцать битов определяют
содержимое памяти по адресу 1000 в регистр номер записи в таблице дескрипторов. 2
REG. Адреса могут формироваться с бита относятся к проблемам защиты и будут
использованием индексации, базовых описаны позже. Дескриптор 0 является
регистров, сегментных регистров и другими запрещенным. 80.
путями. 38. 81Селектор в системе Pentium. 81.
39Страничная организация памяти (2). 39. 82Дескриптор программного сегмента в
40Страничная организация памяти (3). Эти системе Pentium. 82.
программно формируемые адреса, называемые 83Преобразование пары (селектор,
виртуальными адресами, формируют смещение) в физический адрес. 83.
виртуальное адресное пространство. На 84Отображение линейного адреса на
компьютерах без виртуальной памяти физический адрес. 84.
виртуальные адреса подаются 85Защита в системе Pentium. 85.
непосредственно на шину памяти и вызывают
Управление памятью.ppt
http://900igr.net/kartinka/ekonomika/upravlenie-pamjatju-250582.html
cсылка на страницу

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

другие презентации на тему «Управление памятью»

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

«Управление компьютером» - Основной частью системного ПО является операционная система(ОС), управляющая почти каждым действием компьютера. Использование файловой структуры позволяет осуществлять: Прикладное ПО представляет собой систему, предназначенную для решения задач определенного класса. Системное ПО отвечает за управление аппаратными ресурсами, а так же осуществляет непосредственный диалог с пользователем.

«Управление организацией» - 5.1. Власть, лидерство, управление. Подходы к пониманию сути лидерства. Норма управляемости. Лидерами же становятся не по воле организации. Делегирование, ответственность и полномочия. Задачи контроллинга явно выходят за пределы чистого контроля. Слишком большая норма управляемости может вызвать возникновение сложных проблем.

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

«Стратегические разработки» - Освещение в СМИ. Решение Экспертного Совета. Количество обученных, зарегистрированных предпринимателей и созданных предприятий. Поставщики. Цель. Отдел стратегических разработок. Управление финансами. Конкретные ожидаемые результаты. Конкретные ожидаемые результаты.Механизм оценки результатов. Мэр. Система стратегического управления городом.

«Школы управления» - Системный подход в управлении. Школы «человеческих отношений» и «поведенческих наук» в современном менеджменте. Подготовка. Количественная школа в современном менеджменте. Количественная школа управления (50-80-е гг.). (Разработка универсальных принципов на основе идей школы научного управления). Поведенческая (бихевиористская) школа.

Управление

18 презентаций об управлении
Урок

Экономика

125 тем
Картинки